From fd2fb99394003391a27ae3ab7766fe3198c5b539 Mon Sep 17 00:00:00 2001 From: Jeeva Kandasamy Date: Wed, 7 Jul 2021 06:32:52 +0530 Subject: [PATCH 01/56] update go version in Dockerfile --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 95dcea5..565e142 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM golang:1.13.1 +FROM golang:1.16 WORKDIR /gotty COPY . /gotty From 4109b117fe663f36cda3ea4d0e107ff7b4d0a207 Mon Sep 17 00:00:00 2001 From: Steve Biedermann Date: Tue, 9 Nov 2021 17:23:04 +0100 Subject: [PATCH 02/56] add quiet flag to disable logging --- main.go | 6 ++++++ server/options.go | 1 + 2 files changed, 7 insertions(+) diff --git a/main.go b/main.go index 41c8839..54e3f90 100644 --- a/main.go +++ b/main.go @@ -4,6 +4,7 @@ import ( "context" "fmt" "log" + "io/ioutil" "os" "os/signal" "strings" @@ -63,6 +64,11 @@ func main() { } } + if appOptions.Quiet { + log.SetFlags(0) + log.SetOutput(ioutil.Discard) + } + utils.ApplyFlags(cliFlags, flagMappings, c, appOptions, backendOptions) if c.IsSet("credential") { diff --git a/server/options.go b/server/options.go index 6652679..24fa515 100644 --- a/server/options.go +++ b/server/options.go @@ -32,6 +32,7 @@ type Options struct { WSOrigin string `hcl:"ws_origin" flagName:"ws-origin" flagDescribe:"A regular expression that matches origin URLs to be accepted by WebSocket. No cross origin requests are acceptable by default" default:""` Term string `hcl:"term" flagName:"term" flagDescribe:"Terminal name to use on the browser, one of xterm or hterm." default:"xterm"` EnableWebGL bool `hcl:"enable_webgl" flagName:"enable-webgl" flagDescribe:"Enable WebGL renderer" default:"true"` + Quiet bool `hcl:"quiet" flagName:"quiet" flagDescribe:"Don't log" default:"false"` TitleVariables map[string]interface{} } From cd23910b1a75be5e118729a3871ad0c1581a382f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Wed, 12 Jan 2022 14:12:39 -0800 Subject: [PATCH 03/56] Add @jkandasa as a contributor --- .all-contributorsrc | 9 +++++++++ README.md | 3 ++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index eca02fd..e9c4b8a 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -333,6 +333,15 @@ "contributions": [ "code" ] + }, + { + "login": "jkandasa", + "name": "Jeeva Kandasamy", + "avatar_url": "https://avatars.githubusercontent.com/u/1004403?v=4", + "profile": "https://github.com/jkandasa", + "contributions": [ + "code" + ] } ], "contributorsPerLine": 7 diff --git a/README.md b/README.md index 265a2ff..c50c088 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # ![](https://raw.githubusercontent.com/sorenisanerd/gotty/master/resources/favicon.ico) GoTTY - Share your terminal as a web application -[![All Contributors](https://img.shields.io/badge/all_contributors-36-orange.svg?style=flat-square)](#contributors-) +[![All Contributors](https://img.shields.io/badge/all_contributors-37-orange.svg?style=flat-square)](#contributors-) [![GitHub release](http://img.shields.io/github/release/sorenisanerd/gotty.svg?style=flat-square)][release] @@ -243,6 +243,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Devan Lai

💻 +
Jeeva Kandasamy

💻 From 1ca998e9e3db954d0f9832ec4680afd803cb860d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Wed, 12 Jan 2022 14:14:20 -0800 Subject: [PATCH 04/56] Add @hardliner66 as a contributor --- .all-contributorsrc | 9 +++++++++ README.md | 3 ++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/.all-contributorsrc b/.all-contributorsrc index e9c4b8a..ab4177d 100644 --- a/.all-contributorsrc +++ b/.all-contributorsrc @@ -342,6 +342,15 @@ "contributions": [ "code" ] + }, + { + "login": "hardliner66", + "name": "Steve Biedermann", + "avatar_url": "https://avatars.githubusercontent.com/u/2937272?v=4", + "profile": "https://twitch.tv/iamhardliner", + "contributions": [ + "code" + ] } ], "contributorsPerLine": 7 diff --git a/README.md b/README.md index c50c088..30ee11e 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # ![](https://raw.githubusercontent.com/sorenisanerd/gotty/master/resources/favicon.ico) GoTTY - Share your terminal as a web application -[![All Contributors](https://img.shields.io/badge/all_contributors-37-orange.svg?style=flat-square)](#contributors-) +[![All Contributors](https://img.shields.io/badge/all_contributors-38-orange.svg?style=flat-square)](#contributors-) [![GitHub release](http://img.shields.io/github/release/sorenisanerd/gotty.svg?style=flat-square)][release] @@ -244,6 +244,7 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d
Devan Lai

💻
Jeeva Kandasamy

💻 +
Steve Biedermann

💻 From dcb153c8a4d59530dd30bb31b9732c9063f3d0ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Wed, 12 Jan 2022 15:34:32 -0800 Subject: [PATCH 05/56] go fmt --- main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/main.go b/main.go index 54e3f90..d5832fb 100644 --- a/main.go +++ b/main.go @@ -3,8 +3,8 @@ package main import ( "context" "fmt" - "log" "io/ioutil" + "log" "os" "os/signal" "strings" From 817b5c8133c1f282314184a8b1671cdeb0b290e4 Mon Sep 17 00:00:00 2001 From: flechaig Date: Fri, 25 Mar 2022 09:05:07 +0100 Subject: [PATCH 06/56] Avoid HTTP 401 error on manifest.json due to CORS Because of CORS, the manifest.json request returns an HTTP 401 error. Explaination: https://github.com/koajs/basic-auth/issues/19 --- resources/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/resources/index.html b/resources/index.html index fe45cb7..7ac9aaf 100644 --- a/resources/index.html +++ b/resources/index.html @@ -2,7 +2,7 @@ {{ .title }} - + From a9fbc070ac79b1a65cc4a8b48a3e855255170eea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Mon, 28 Mar 2022 15:05:51 -0700 Subject: [PATCH 07/56] Add generated data to git --- .gitignore | 2 +- .vscode/launch.json | 16 + Makefile | 46 +- bindata/static/css/index.css | 7 + bindata/static/css/xterm.css | 170 ++ bindata/static/css/xterm_customize.css | 19 + bindata/static/favicon.ico | Bin 0 -> 4286 bytes bindata/static/icon.svg | 66 + bindata/static/icon_192.png | Bin 0 -> 7030 bytes bindata/static/index.html | 18 + bindata/static/js/gotty.js | 3 + bindata/static/js/gotty.js.LICENSE.txt | 139 ++ bindata/static/js/gotty.js.map | 1 + bindata/static/manifest.json | 15 + js/package-lock.json | 1994 ++++++++++++++++++++++-- 15 files changed, 2352 insertions(+), 144 deletions(-) create mode 100644 .vscode/launch.json create mode 100644 bindata/static/css/index.css create mode 100644 bindata/static/css/xterm.css create mode 100644 bindata/static/css/xterm_customize.css create mode 100644 bindata/static/favicon.ico create mode 100644 bindata/static/icon.svg create mode 100644 bindata/static/icon_192.png create mode 100644 bindata/static/index.html create mode 100644 bindata/static/js/gotty.js create mode 100644 bindata/static/js/gotty.js.LICENSE.txt create mode 100644 bindata/static/js/gotty.js.map create mode 100644 bindata/static/manifest.json diff --git a/.gitignore b/.gitignore index d98b130..503eb0c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,4 @@ gotty -bindata/static builds +js/dist js/node_modules/* diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..55f1ee1 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,16 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "Launch GoTTY", + "type": "go", + "request": "launch", + "mode": "debug", + "program": "${workspaceFolder}", + "args": ["-a", "127.0.0.1", "-w", "bash"] + } + ] +} \ No newline at end of file diff --git a/Makefile b/Makefile index 2e02dc3..bcaa59f 100644 --- a/Makefile +++ b/Makefile @@ -9,50 +9,28 @@ gotty: main.go assets server/*.go webtty/*.go backend/*.go Makefile docker: docker build . -t gotty-bash:$(VERSION) -.PHONY: assets +.PHONY: all docker assets assets: bindata/static/js/gotty.js bindata/static/index.html bindata/static/icon.svg bindata/static/favicon.ico bindata/static/css/index.css bindata/static/css/xterm.css bindata/static/css/xterm_customize.css bindata/static/manifest.json bindata/static/icon_192.png -.PHONY: all -all: gotty docker +all: gotty -bindata/static: - mkdir -p bindata/static +bindata/static bindata/static/css bindata/static/js: + mkdir -p $@ -bindata/static/icon.svg: bindata/static resources/icon.svg - cp resources/icon.svg bindata/static/icon.svg +bindata/static/%: resources/% | bindata/static/css + cp "$<" "$@" -bindata/static/index.html: bindata/static resources/index.html - cp resources/index.html bindata/static/index.html +bindata/static/css/%.css: resources/%.css | bindata/static + cp "$<" "$@" -bindata/static/manifest.json: bindata/static resources/manifest.json - cp resources/manifest.json bindata/static/manifest.json - -bindata/static/favicon.ico: bindata/static resources/favicon.ico - cp resources/favicon.ico bindata/static/favicon.ico - -bindata/static/icon_192.png: bindata/static resources/icon_192.png - cp resources/icon_192.png bindata/static/icon_192.png - -bindata/static/js: bindata/static - mkdir -p bindata/static/js - -bindata/static/css: bindata/static - mkdir -p bindata/static/css - -bindata/static/css/index.css: bindata/static/css resources/index.css - cp resources/index.css bindata/static/css/index.css - -bindata/static/css/xterm_customize.css: bindata/static/css resources/xterm_customize.css - cp resources/xterm_customize.css bindata/static/css/xterm_customize.css - -bindata/static/css/xterm.css: bindata/static/css js/node_modules/xterm/css/xterm.css - cp js/node_modules/xterm/css/xterm.css bindata/static/css/xterm.css +bindata/static/css/xterm.css: js/node_modules/xterm/css/xterm.css | bindata/static + cp "$<" "$@" js/node_modules/xterm/dist/xterm.css: cd js && \ npm install -bindata/static/js/gotty.js: js/src/* js/node_modules/webpack +bindata/static/js/gotty.js: js/src/* | js/node_modules/webpack cd js && \ npx webpack @@ -89,4 +67,4 @@ release: ghr -draft ${VERSION} ${OUTPUT_DIR}/dist # -c ${GIT_COMMIT} --delete --prerelease -u sorenisanerd -r gotty ${VERSION} clean: - rm -fr gotty builds js/dist bindata/static + rm -fr gotty builds js/dist bindata/static js/node_modules diff --git a/bindata/static/css/index.css b/bindata/static/css/index.css new file mode 100644 index 0000000..26c6f33 --- /dev/null +++ b/bindata/static/css/index.css @@ -0,0 +1,7 @@ +html, body, #terminal { + background: black; + height: 100%; + width: 100%; + padding: 0%; + margin: 0%; +} \ No newline at end of file diff --git a/bindata/static/css/xterm.css b/bindata/static/css/xterm.css new file mode 100644 index 0000000..831a89c --- /dev/null +++ b/bindata/static/css/xterm.css @@ -0,0 +1,170 @@ +/** + * Copyright (c) 2014 The xterm.js authors. All rights reserved. + * Copyright (c) 2012-2013, Christopher Jeffrey (MIT License) + * https://github.com/chjj/term.js + * @license MIT + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + * + * Originally forked from (with the author's permission): + * Fabrice Bellard's javascript vt100 for jslinux: + * http://bellard.org/jslinux/ + * Copyright (c) 2011 Fabrice Bellard + * The original design remains. The terminal itself + * has been extended to include xterm CSI codes, among + * other features. + */ + +/** + * Default styles for xterm.js + */ + +.xterm { + position: relative; + user-select: none; + -ms-user-select: none; + -webkit-user-select: none; +} + +.xterm.focus, +.xterm:focus { + outline: none; +} + +.xterm .xterm-helpers { + position: absolute; + top: 0; + /** + * The z-index of the helpers must be higher than the canvases in order for + * IMEs to appear on top. + */ + z-index: 5; +} + +.xterm .xterm-helper-textarea { + padding: 0; + border: 0; + margin: 0; + /* Move textarea out of the screen to the far left, so that the cursor is not visible */ + position: absolute; + opacity: 0; + left: -9999em; + top: 0; + width: 0; + height: 0; + z-index: -5; + /** Prevent wrapping so the IME appears against the textarea at the correct position */ + white-space: nowrap; + overflow: hidden; + resize: none; +} + +.xterm .composition-view { + /* TODO: Composition position got messed up somewhere */ + background: #000; + color: #FFF; + display: none; + position: absolute; + white-space: nowrap; + z-index: 1; +} + +.xterm .composition-view.active { + display: block; +} + +.xterm .xterm-viewport { + /* On OS X this is required in order for the scroll bar to appear fully opaque */ + background-color: #000; + overflow-y: scroll; + cursor: default; + position: absolute; + right: 0; + left: 0; + top: 0; + bottom: 0; +} + +.xterm .xterm-screen { + position: relative; +} + +.xterm .xterm-screen canvas { + position: absolute; + left: 0; + top: 0; +} + +.xterm .xterm-scroll-area { + visibility: hidden; +} + +.xterm-char-measure-element { + display: inline-block; + visibility: hidden; + position: absolute; + top: 0; + left: -9999em; + line-height: normal; +} + +.xterm { + cursor: text; +} + +.xterm.enable-mouse-events { + /* When mouse events are enabled (eg. tmux), revert to the standard pointer cursor */ + cursor: default; +} + +.xterm.xterm-cursor-pointer { + cursor: pointer; +} + +.xterm.column-select.focus { + /* Column selection mode */ + cursor: crosshair; +} + +.xterm .xterm-accessibility, +.xterm .xterm-message { + position: absolute; + left: 0; + top: 0; + bottom: 0; + right: 0; + z-index: 10; + color: transparent; +} + +.xterm .live-region { + position: absolute; + left: -9999px; + width: 1px; + height: 1px; + overflow: hidden; +} + +.xterm-dim { + opacity: 0.5; +} + +.xterm-underline { + text-decoration: underline; +} diff --git a/bindata/static/css/xterm_customize.css b/bindata/static/css/xterm_customize.css new file mode 100644 index 0000000..8e4ddd9 --- /dev/null +++ b/bindata/static/css/xterm_customize.css @@ -0,0 +1,19 @@ +.terminal { + font-family: "DejaVu Sans Mono", "Everson Mono", FreeMono, Menlo, Terminal, monospace, "Apple Symbols"; +} + +.xterm-overlay { + font-family: "DejaVu Sans Mono", "Everson Mono", FreeMono, Menlo, Terminal, monospace, "Apple Symbols"; + border-radius: 15px; + font-size: xx-large; + color: black; + background: white; + opacity: 0.75; + padding: 0.2em 0.5em 0.2em 0.5em; + position: absolute; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); + user-select: none; + transition: opacity 180ms ease-in; +} \ No newline at end of file diff --git a/bindata/static/favicon.ico b/bindata/static/favicon.ico new file mode 100644 index 0000000000000000000000000000000000000000..e97f5d618392fa24050bbc0daa0e0ccedfc10189 GIT binary patch literal 4286 zcmc(jdrVVT9LMjn7i$55maZ4wEKdQ&$zpJV1|QSKWsew^37WWPkYri5B@E-j2Jv6B z#Vxvrnm7~xFebvp&1}=Lm(yv~ZMvb*-WFQ=;9*;YVta4z{q1*7TWs%cp|m8s&9C>| zb06Q&?{UsOEyLV{AA^A*-^{TrhS4z$Q;LRN%o;S(Pd7Zr+!wY`52Js`xDf3qnhy;U zGWB(y%{k4p+74i~oynLF?>mYX(H0ZZjpj@LBfx6D7LwE_%pzex-HBOihd3mC`c-5& z6-D%l0NfdfYqKPb(Q#-P#fdczV1OIyuQ^5zx^@^&#bjU?gI(LA@hQt)qa&QLw*V8 zXVZ;Ar8p4%1N%Hcwq0)zgZBQuc)myV_lf$<^9eJQt};snrO2R;WzdCvJ^Y22>hFGU zlxir&fb58d&|Hvu+gNRdBL}_UbO=;` z&?>-*W4EEF|P>CZw%2`ko;6v^n-mc z#7HlQ^EEo+hxN7H|B1ttKE`2DwOL%e)a?K9tWP43x$x^GJY8#pWrY@4UuA_3^q*{; zk%y|Xejqu@*O;K?&0+ZbV-I|`SJ@8i9}-%3U6YCpr{epM`X$w7*wkQ?Mn;3+n-HP? zSvzR%?E~Ux4(>Osw1U?o0?$jZZL^)`o8*e*pIj5y(ryHG8QlSly(Ax-G5*(>p=wh< zbetZC!(VzugT^F9YKuI(X}b&jcO(!53AVrBNN_xa$E@mRkj?r5=Z9E^XnoRNgbWpH zEl^ft77Yuz0LEE*#eK37oRR18ucXa(C*I%;60^fE|PdFBq zf5e<3g9-HNzj-$M`#`il$^G)D`r)r0Kh@u}{}vRk;GlRV2lhXonv!))~wu9xeR z{5Q3@!0io!C<2(U)-PVY0|U0ueCYNB;iavPVC4OfDuY~~9G9&&Lu0cGy3hGw>^4H+ z=0TpH&ikP8T^E!rHw*JMCO+~GNQFU3pY)M9kX#(^3eCBD54wTWCg~^Viy!Cs`8laG z#M6&3963Hl{ono3C=@-xQEhq;#;CZGmVFLbAD-dKSi1sZDBsU7Zz{)LInJmlB4hTp({=atunE^1c$B7vz1iW2vwL*DsmK zpfJX!>ytfaCY|ZdONEP(AtQDjH=Q;)hx*c7G8B{}L!9-j0t?Z;IfwexAG)4RjDcv^ cq4mx+1Fj|gdR6@278r|Ow7T%$0RP+WUvXyEA^-pY literal 0 HcmV?d00001 diff --git a/bindata/static/icon.svg b/bindata/static/icon.svg new file mode 100644 index 0000000..bbb78c0 --- /dev/null +++ b/bindata/static/icon.svg @@ -0,0 +1,66 @@ + +image/svg+xml \ No newline at end of file diff --git a/bindata/static/icon_192.png b/bindata/static/icon_192.png new file mode 100644 index 0000000000000000000000000000000000000000..29a3cf90b12db0d893a1fcd095110d079d3e6b12 GIT binary patch literal 7030 zcmXwe1y~ec)c!0>H;61Hok}c?bho4eF8%~*>F!t>lopU~kVd4tOA%O+kP>0(PIt*~ z{r>-No@eIXGv_?#o_S`@Iq!WZR!>KbgpiI9000sVb!7w0*!%Cq$HiO?mK^ag1Ga~v z#&dkk5r}UUgOLeb)n9sGZvRsOAX>I82h5DtQ^my7(8b2n=Z(8H;N#=N|JK>T!}5)* zHNT6yZT6uw9RSdsX(%f^_su!T4alIH$-M9R)E;mpBn%yQ{qP!yy^EU?rN>Fj)wgHsHpR6Xai|PC{%mE-B|9OoFd=IUw0B7W3bD!9 z$?P`rF`n`JOBR7+6}6L9Df?o1>+HAo+|#Y=@f;W9T*Iv(v#5rt_RCISF3cFJDh`-n zo72H#fp-(LMk!p|sjE#0BcW|pgh3PwxBw!LM{#h$z5iGG<>@ekNNKdgVANHC!&piZ zow}n%+#%Q`bH<*7KU7K7zW8DaWq~mG5{(Ozrql~ce5MxdU-o3e4!$W$G#id;AkMI_ zl8tR(u|jo^29zL5i%R2CNL5?WH$Rhma_>UjuLNMmlh?d#ca=FeIHY}0(n0TyJ|rIe z?clLoeBapL{JTCLA9(tUvqP+bME6fxYkDzrLsdM5brgJq?lgxPAEZz7@Bgk}H@*_P z7jnHKLasGWu@v)nlMvhrAru`IEtQS)^LNotj=Mpmbs5w@r8!6>ng`f;%zX`u-mxxh z6nV`Pc~Mv8wHZ#OJqP5^sP3O2kpjNH4n;!uTyntYidg0zdcb6F;S8(fx?{u0_RYZJ z%;Q}xNH0>Z5BQnlLFJ4+_ifB<{+Pch>*@#kYFv(L-Nelzw?C#9QlrdDx{_O4czCW! zd}bixBDjrbmRr4% zcf>125h4_qqD0`=EUzIog{k!hjpX92B&+Um!zd%o;~Oor6t)u3D`FST=d6_w1BSW{ zb#QB%QBw-*0t_LvlpsyKrC83^mKH7Spt3iLhkVp)t>@F8_1DVi{cN(ps1*GDYS+%e z&(d1>&Ds}YbhIbI&-~zQ(kd;$SJ`2V3*#Dy6z=fLZpVk~Hl_!%xiE!FuXC~bjtOzE zf9=D=D>z&M71tRzR#z968#y#`3Yg2wW9-$%U6z}%d>mjLDa-FBw zOUCGeLr)T~PsUj0&7|yt@eW{%RCD}0ocF6e+mt8>ui|QowO&|Z^%e88aPQWKndzz} z-cD-n*GAv^IV%LZ!dt4elA`r}&=FO{y@9gWAL|sx(&))yO{C*4ZW+83Lh*PM*V9Mj zAqRiUiihpw7l%wKAqqwoKGL;NxWTJ1!Te5IOSzLoz2Wo?D{ak+nA;N$VrM@>)z%Q? z0qd3Q3ROOi{P0OTphge(>!P`?Foj;0Ef&PlK2ZjjJ}16g(@=ixi(9fc@cNtOLa@F1 zIJ|oBkdDCt_#O8v<1?B9CD5wZNCn83)suFSErV;i(BlyHbKKXEeEBbw9aXMKemzXQ z(2GnnDVtNUJR-+0;}j`C0c*PqXX5nB)`u{0arIog=72Qs?+i1JXVj|AR$>1F*SJ55 zH4Hy89LAJLI_%ZYG+JZouBjkRmsX1Po|}tgyq5R!C+7X(WW}h{C!r!vD>dVAhDf_ zkx!3@esu+YkRVd)Eako4l3L9**DrcJ0AKk{#F!X5QnbqRuzHkC*NrE2&BB*c8|%rJ z&D&I$OYKybZn7Yq?TgKJWx8keIxdqdt@<5V`WhqROy3Ou&eJEpY z4HVU!H4E>JPS0k90NlBKg+o<^O-zh0lrb_OGYY)z zx0=wv=tV;~*(!u>G>T2;tXvKXv!VRy4p!^&l8XyXX40c4sOah-zdN}XUzTlk&y2KZ zZ&NG>-JC&emO0Tj4-Kxp7YlG>?rh%gbO)V9)oC%iarR?AT9xDPIUl?_P!1uV6~14) zCfps#TG=Zc@O*6IU5bH%eZPKv7RgTPM>owX#7ClT^un5n+9tzPPJNJd9MG(2b5dgy zva3%qEKESob_+P=WgLW=Nd0{Cfi*TaMp(Z7DaOHmz|YnHcC$OV8aSt?;Z19f6T+T894Lcl^F0l10rhk0&X0-Olg%V}pqO zO-iBQW7H_;+)nE29>nSTkN+#kIo!gQ=NIeSGTD_X|GUdDY<~0)F z!Ex(X+*!h8*5V-(LXW5>_BWk&Spg=AII6`{R@O;raZk$u`J>#w@->z9+KGd~DTK|< z*z+6kUNvSmNqolm411}=*$#dGWiGXv&>~n3BC8YVP5NW2CN2Z-zV0EdIheX{n)YHh zt5Y6n-y;vYjMU#tLMEg}+rz>gFHZ6!^Ki0m!t+^Me+FjV%zx`qy|*L_H?W^|;=z>q zaD)ax@0Rz_dY^{dQuEFEd6>}YQsUwiP4iszyg?2XF7x>_*RtUI@`aDiDC{zsze1Yg zfegIakCO?yl9}S3jbc(4NK`IlI!yiWJ93-2gDz~JGKU(>c22sQ--BW8xkYKhIpd`CXC=Q&Vp%)N=0r7*SoH(^i;>IgZ z<={(ci^*F`>E!XT)|4ehc?YGKG&@IB;In=b04RL12i^G{l5^(9lNJTLrKSwIB1);d zQyIS4B&qI_jerkNbWeChfPjLv!#eZv;p|BJQ3gl(o0bseeKbV(*WZt=cvxPdxDWI6 zp+#PKmc+fCueI;)gz;ak!ABoY6dKJipN@N|ciz~x9qdrzZ#$5Fw)+}Raa1WW3;+cY z?*w-c`OK~-1_%Qk^Ye3y;}b3lzpIzWzKV?uW8~!I&IBygLf*k*2Mo!yhZ546y~zR2 zYNs_dMWs2t!f#n0cQ?=q?|NJ8Z@Dyd)n*J*)i*Qmjd`DfNjtzf^7?w0WG%(}%^eK^ z1KD69ygkHqn*htjL`PAndP1_}--h7~2qgRM{x8o%l#20;R2lGo zp6-dHM=2;_AfPF$_ngR>I%Hqc$bF#cSVu-JBRy}@S<&&^`~G18D%{TM%IU;!HM^5d zxc@rxk%93l%81|cSm1Tc)YUhN_BBl1;{~5VHnhnShupT;W~LI)k&fevmQ(M)lFFGn zSm)P@02ie`$KGB9Q9Q?mRMF%nZ48B84&<*|aPK0C9P4DLZ_#JlUF(ddBizqfUq5GT z_B{pjivT2c9lly?tia1Ozmw;wY`*BnRA#qtB5H5(rPm$HC0uCivU`aA)jnPXL7*CB zRrUlXf9E}fYJ~um^Po;1St1D!*8%l6vP@wgYm`q&<_eJObEfuD#{<9BP>Y)l+FCjs z8*gTwfvWqj(OK2QqPVMqPI98`HUM}17c*+&g7Y%nf}7vn#79qy>kP|8TZ)4Il>2P4 z13wrm-x6{^869SmN{}QHVJGMUk;L+R#>5O%@F<70<3v-}C?a=k)t2)ytA5pEC zK1#_QE4O|*UZI)hX}QJY8#_z8p$+bi3x3qrf1YbT(iCd@WC9keBZ-e@_x!_qkKZ^M zQ3l*`Kvnt%xkBvP6N}n@&B-J&DA_jFv5fLFr!R9xzl>M`4KMpcIAyLr7;?%1+(R5R z0n;@STWY49JVO{DO8^NvG>+*yrk_3tYM5-$(FXO=UW#LLzsUf9>g*?51n0a0j@u?o|i_Ikb5Rx^wno8a* zu&|wL@}l1q=+7{fbqdcaJjrw5kFH(e zAsZl3Dv~K^O3(4M*ZQL{}UtFPUN?-S#%#3>%EnbYY zoXhoBUXp5FGV|xWG@1Qov`x|$S_5IgJmL$=Wn!k!7 zP0&AxB#t&G@u$tN*~l+G{lLE^oT7pti++{ z&Q!myV}UO0m9YnZvY&!2oo|T)8*CGt1A)wTRfcxYTn=3G*8*inzK>MS1Zcd>oZ+62 zUKqRdt_B2n$ToN3;(z)r3Y$UGlu=4OIep`Qk+1KG!1@-oQ7?fq#~wDvPSwVGEg)?< zqR7J+YM@WL*(9+pvbEiLXsCDJ{5|DRQ#_dJLvY@8iazVk-E@BadcN~_bZc`Bh`Vxz zu4ea@*fz~`wdeIB5GkSFU_3atUYw- zlV(g(NlaoJN*4t<;{8`>@`qJ3y4i1E^Z6gO<1rhvmrF$coLI&WIit|JZoHO>esF?~ zb!_|`8Te|CBx#Bs-8YX7w@!29YTi(ZxL*!rsKpm*!kfB9Oq#q_iW{*=zuY2>DNreX z$}|fDmz;aQW?}*tENPz|w=k;QZyuRE9^)4x`Hp!$PMSaaWS6<|KTW0hj;42r_x;FJ zAE%wU@d*Q3XZ*p;e^?{~oM!*fpjIAiciiv6V;dCPSWmt>Y?}n|#pS&=y-K`W`?!kL zO``JS^juhRxM>)Wl&d^SEQ=joLjRejxj`6icX}7^#PD`7|EGqM`mOXgzGZ>#+~PbM z5il22`|3ev;ogR^D{8Liq0r?vNrB<~JbgSIdiDMMgI<-rt1sGrFc@vBrX7LYOOxol z85sGZf?PeMy1zJbLr&jg75^y9G-{#!i!IzFW9O6%*qs2Wz6ikA&EU# zEsyBODV7pYia75E>)p3M9P4okhcyH}w@p2zz`Du;^Jblzr`z!vrF4N}M7jmKqeTV; z`$)#kB2LIc_^JjRcg=aQ=z%4b|y?iS@1O1SG{ns8nwel_2d)TR2hk3}Iz6Y{}eBI}0IRHOO& zrIzB@UQ!i%3o$`~3v2J= zTI8v45a*aK2H1F`e!&ou%C2AELm4Ob%Py^Sz8Y%gDEt_xB)zUTY9!UqL8X6+=}v@w zfB5p@TQA%&1`wsZ^IP7zNT;>?Ib`9*z z7lw0_aXMng(rS-Rnk!jZh@BvzSFk@cbd8A+-mfG2Lfcl0d9A0rv`GeUJ)P!bLXTul zLSy(fD``-7Aq8g(y3{L3Jcn|!dLH-FkfhFba1JpM4uwfKRo=kToE70MAP_l8W->KXHaF32C*h?x81$L^3hHg-b`k@5VKk)w1J-tGJDG7I!Oei||V5o;L!E3#JiaUsuiXegOPdQv;7X2%+KOk1(cjC3r6$h4zzJw9vf;Aj!`^H*xeL z#d{(#s)+x$1#Pl>gpP_M@&eHfTyoM5Iuo6e?YeqK{YRqUO@REE#y2Wg8IGV0Xc3Gd ziXCJ2?nuIQ<;GQVQX=)pZJ4{A!u zlY9WRz6E+k{I|ppl%McWVYpNl^71Mc{KR3XMq|37B3&a5`zQf|2rM8lJY`OKG+MrL&f8$OBAN3G)GtbW8tu88Z zZ17MBJnpy=N|@6iKb{)4Q=^gC;Z|0bISm4i@D0Hk7zAc7pPRb!(6s)bgK3SK` zh4vcAvlY>U&WR9dw(Jib9SET4`E}j|_gv>!c-tc(ZeQQDwpHX&!^Hq~fUYO>4Z<{2Q)t+-eXQw&-mYrEaBzy`!TB#k=b8+Wp|(4 zqIjJS4urN+=3Ma3@}Vr-G3sSes`M={@Zw6oY4n zi~fXI77<%O`k8yLK=#1=VjO}#Ai;YsknKHl-8~MTny9a}4}lft9~q#bqN7}^Xdd=I DaWhQm literal 0 HcmV?d00001 diff --git a/bindata/static/index.html b/bindata/static/index.html new file mode 100644 index 0000000..fe45cb7 --- /dev/null +++ b/bindata/static/index.html @@ -0,0 +1,18 @@ + + + + {{ .title }} + + + + + + + + +
+ + + + + diff --git a/bindata/static/js/gotty.js b/bindata/static/js/gotty.js new file mode 100644 index 0000000..d8c08cf --- /dev/null +++ b/bindata/static/js/gotty.js @@ -0,0 +1,3 @@ +/*! For license information please see gotty.js.LICENSE.txt */ +(()=>{var e={276:e=>{"use strict";if(void 0!==t)throw new Error('Global "lib" object already exists.');var t={runtimeDependencies_:{},initCallbacks_:[],rtdep:function(e){var r;try{throw new Error}catch(e){var i=e.stack.split("\n");r=i.length>=3?i[2].replace(/^\s*at\s+/,""):i[1].replace(/^\s*global code@/,"")}for(var o=0;ot.length&&(t=t.repeat(e/t.length+1)),t.slice(0,e)+String(this))}),String.prototype.padEnd||(String.prototype.padEnd=function(e,t){return(e-=this.length)<=0?String(this):(void 0===t&&(t=" "),e>t.length&&(t=t.repeat(e/t.length+1)),String(this)+t.slice(0,e))}),t.colors={},t.colors.re_={hex16:/#([a-f0-9])([a-f0-9])([a-f0-9])/i,hex24:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/i,rgb:new RegExp("^/s*rgb/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*/)/s*$".replace(/\//g,"\\"),"i"),rgba:new RegExp("^/s*rgba/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*(?:,/s*(/d+(?:/./d+)?)/s*)/)/s*$".replace(/\//g,"\\"),"i"),rgbx:new RegExp("^/s*rgba?/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*(?:,/s*(/d+(?:/./d+)?)/s*)?/)/s*$".replace(/\//g,"\\"),"i"),x11rgb:/^\s*rgb:([a-f0-9]{1,4})\/([a-f0-9]{1,4})\/([a-f0-9]{1,4})\s*$/i,name:/[a-z][a-z0-9\s]+/},t.colors.rgbToX11=function(e){function r(e){return e=(257*Math.min(e,255)).toString(16),t.f.zpad(e,4)}var i=e.match(t.colors.re_.rgbx);return i?"rgb:"+r(i[1])+"/"+r(i[2])+"/"+r(i[3]):null},t.colors.x11HexToCSS=function(e){if(!e.startsWith("#"))return null;if(e=e.substr(1),-1==[3,6,9,12].indexOf(e.length))return null;if(e.match(/[^a-f0-9]/i))return null;var r=e.length/3,i=e.substr(0,r),o=e.substr(r,r),n=e.substr(r+r,r);return t.colors.arrayToRGBA([i,o,n].map((function(e){return e=parseInt(e,16),2==r?e:1==r?e<<4:e>>4*(r-2)})))},t.colors.x11ToCSS=function(e){var r=e.match(t.colors.re_.x11rgb);return r?(r.splice(0,1),t.colors.arrayToRGBA(r.map((function(e){return 1==e.length?parseInt(e+e,16):2==e.length?parseInt(e,16):(3==e.length&&(e+=e.substr(2)),Math.round(parseInt(e,16)/257))})))):e.startsWith("#")?t.colors.x11HexToCSS(e):t.colors.nameToRGB(e)},t.colors.hexToRGB=function(e){var r=t.colors.re_.hex16,i=t.colors.re_.hex24;function o(e){4==e.length&&(e=e.replace(r,(function(e,t,r,i){return"#"+t+t+r+r+i+i})));var t=e.match(i);return t?"rgb("+parseInt(t[1],16)+", "+parseInt(t[2],16)+", "+parseInt(t[3],16)+")":null}if(e instanceof Array)for(var n=0;n3?e[3]:1;return"rgba("+e[0]+", "+e[1]+", "+e[2]+", "+t+")"},t.colors.setAlpha=function(e,r){var i=t.colors.crackRGB(e);return i[3]=r,t.colors.arrayToRGBA(i)},t.colors.mix=function(e,r,i){for(var o=t.colors.crackRGB(e),n=t.colors.crackRGB(r),s=0;s<4;++s){var a=n[s]-o[s];o[s]=Math.round(parseInt(o[s])+a*i)}return t.colors.arrayToRGBA(o)},t.colors.crackRGB=function(e){var r;if(e.startsWith("rgba")){if(r=e.match(t.colors.re_.rgba))return r.shift(),r}else if(r=e.match(t.colors.re_.rgb))return r.shift(),r.push(1),r;return console.error("Couldn't crack: "+e),null},t.colors.nameToRGB=function(e){return e in t.colors.colorNames||(e=e.toLowerCase())in t.colors.colorNames||(e=e.replace(/\s+/g,""))in t.colors.colorNames?t.colors.colorNames[e]:null},t.colors.stockColorPalette=t.colors.hexToRGB(["#000000","#CC0000","#4E9A06","#C4A000","#3465A4","#75507B","#06989A","#D3D7CF","#555753","#EF2929","#00BA13","#FCE94F","#729FCF","#F200CB","#00B5BD","#EEEEEC","#000000","#00005F","#000087","#0000AF","#0000D7","#0000FF","#005F00","#005F5F","#005F87","#005FAF","#005FD7","#005FFF","#008700","#00875F","#008787","#0087AF","#0087D7","#0087FF","#00AF00","#00AF5F","#00AF87","#00AFAF","#00AFD7","#00AFFF","#00D700","#00D75F","#00D787","#00D7AF","#00D7D7","#00D7FF","#00FF00","#00FF5F","#00FF87","#00FFAF","#00FFD7","#00FFFF","#5F0000","#5F005F","#5F0087","#5F00AF","#5F00D7","#5F00FF","#5F5F00","#5F5F5F","#5F5F87","#5F5FAF","#5F5FD7","#5F5FFF","#5F8700","#5F875F","#5F8787","#5F87AF","#5F87D7","#5F87FF","#5FAF00","#5FAF5F","#5FAF87","#5FAFAF","#5FAFD7","#5FAFFF","#5FD700","#5FD75F","#5FD787","#5FD7AF","#5FD7D7","#5FD7FF","#5FFF00","#5FFF5F","#5FFF87","#5FFFAF","#5FFFD7","#5FFFFF","#870000","#87005F","#870087","#8700AF","#8700D7","#8700FF","#875F00","#875F5F","#875F87","#875FAF","#875FD7","#875FFF","#878700","#87875F","#878787","#8787AF","#8787D7","#8787FF","#87AF00","#87AF5F","#87AF87","#87AFAF","#87AFD7","#87AFFF","#87D700","#87D75F","#87D787","#87D7AF","#87D7D7","#87D7FF","#87FF00","#87FF5F","#87FF87","#87FFAF","#87FFD7","#87FFFF","#AF0000","#AF005F","#AF0087","#AF00AF","#AF00D7","#AF00FF","#AF5F00","#AF5F5F","#AF5F87","#AF5FAF","#AF5FD7","#AF5FFF","#AF8700","#AF875F","#AF8787","#AF87AF","#AF87D7","#AF87FF","#AFAF00","#AFAF5F","#AFAF87","#AFAFAF","#AFAFD7","#AFAFFF","#AFD700","#AFD75F","#AFD787","#AFD7AF","#AFD7D7","#AFD7FF","#AFFF00","#AFFF5F","#AFFF87","#AFFFAF","#AFFFD7","#AFFFFF","#D70000","#D7005F","#D70087","#D700AF","#D700D7","#D700FF","#D75F00","#D75F5F","#D75F87","#D75FAF","#D75FD7","#D75FFF","#D78700","#D7875F","#D78787","#D787AF","#D787D7","#D787FF","#D7AF00","#D7AF5F","#D7AF87","#D7AFAF","#D7AFD7","#D7AFFF","#D7D700","#D7D75F","#D7D787","#D7D7AF","#D7D7D7","#D7D7FF","#D7FF00","#D7FF5F","#D7FF87","#D7FFAF","#D7FFD7","#D7FFFF","#FF0000","#FF005F","#FF0087","#FF00AF","#FF00D7","#FF00FF","#FF5F00","#FF5F5F","#FF5F87","#FF5FAF","#FF5FD7","#FF5FFF","#FF8700","#FF875F","#FF8787","#FF87AF","#FF87D7","#FF87FF","#FFAF00","#FFAF5F","#FFAF87","#FFAFAF","#FFAFD7","#FFAFFF","#FFD700","#FFD75F","#FFD787","#FFD7AF","#FFD7D7","#FFD7FF","#FFFF00","#FFFF5F","#FFFF87","#FFFFAF","#FFFFD7","#FFFFFF","#080808","#121212","#1C1C1C","#262626","#303030","#3A3A3A","#444444","#4E4E4E","#585858","#626262","#6C6C6C","#767676","#808080","#8A8A8A","#949494","#9E9E9E","#A8A8A8","#B2B2B2","#BCBCBC","#C6C6C6","#D0D0D0","#DADADA","#E4E4E4","#EEEEEE"]),t.colors.colorPalette=t.colors.stockColorPalette,t.colors.colorNames={aliceblue:"rgb(240, 248, 255)",antiquewhite:"rgb(250, 235, 215)",antiquewhite1:"rgb(255, 239, 219)",antiquewhite2:"rgb(238, 223, 204)",antiquewhite3:"rgb(205, 192, 176)",antiquewhite4:"rgb(139, 131, 120)",aquamarine:"rgb(127, 255, 212)",aquamarine1:"rgb(127, 255, 212)",aquamarine2:"rgb(118, 238, 198)",aquamarine3:"rgb(102, 205, 170)",aquamarine4:"rgb(69, 139, 116)",azure:"rgb(240, 255, 255)",azure1:"rgb(240, 255, 255)",azure2:"rgb(224, 238, 238)",azure3:"rgb(193, 205, 205)",azure4:"rgb(131, 139, 139)",beige:"rgb(245, 245, 220)",bisque:"rgb(255, 228, 196)",bisque1:"rgb(255, 228, 196)",bisque2:"rgb(238, 213, 183)",bisque3:"rgb(205, 183, 158)",bisque4:"rgb(139, 125, 107)",black:"rgb(0, 0, 0)",blanchedalmond:"rgb(255, 235, 205)",blue:"rgb(0, 0, 255)",blue1:"rgb(0, 0, 255)",blue2:"rgb(0, 0, 238)",blue3:"rgb(0, 0, 205)",blue4:"rgb(0, 0, 139)",blueviolet:"rgb(138, 43, 226)",brown:"rgb(165, 42, 42)",brown1:"rgb(255, 64, 64)",brown2:"rgb(238, 59, 59)",brown3:"rgb(205, 51, 51)",brown4:"rgb(139, 35, 35)",burlywood:"rgb(222, 184, 135)",burlywood1:"rgb(255, 211, 155)",burlywood2:"rgb(238, 197, 145)",burlywood3:"rgb(205, 170, 125)",burlywood4:"rgb(139, 115, 85)",cadetblue:"rgb(95, 158, 160)",cadetblue1:"rgb(152, 245, 255)",cadetblue2:"rgb(142, 229, 238)",cadetblue3:"rgb(122, 197, 205)",cadetblue4:"rgb(83, 134, 139)",chartreuse:"rgb(127, 255, 0)",chartreuse1:"rgb(127, 255, 0)",chartreuse2:"rgb(118, 238, 0)",chartreuse3:"rgb(102, 205, 0)",chartreuse4:"rgb(69, 139, 0)",chocolate:"rgb(210, 105, 30)",chocolate1:"rgb(255, 127, 36)",chocolate2:"rgb(238, 118, 33)",chocolate3:"rgb(205, 102, 29)",chocolate4:"rgb(139, 69, 19)",coral:"rgb(255, 127, 80)",coral1:"rgb(255, 114, 86)",coral2:"rgb(238, 106, 80)",coral3:"rgb(205, 91, 69)",coral4:"rgb(139, 62, 47)",cornflowerblue:"rgb(100, 149, 237)",cornsilk:"rgb(255, 248, 220)",cornsilk1:"rgb(255, 248, 220)",cornsilk2:"rgb(238, 232, 205)",cornsilk3:"rgb(205, 200, 177)",cornsilk4:"rgb(139, 136, 120)",cyan:"rgb(0, 255, 255)",cyan1:"rgb(0, 255, 255)",cyan2:"rgb(0, 238, 238)",cyan3:"rgb(0, 205, 205)",cyan4:"rgb(0, 139, 139)",darkblue:"rgb(0, 0, 139)",darkcyan:"rgb(0, 139, 139)",darkgoldenrod:"rgb(184, 134, 11)",darkgoldenrod1:"rgb(255, 185, 15)",darkgoldenrod2:"rgb(238, 173, 14)",darkgoldenrod3:"rgb(205, 149, 12)",darkgoldenrod4:"rgb(139, 101, 8)",darkgray:"rgb(169, 169, 169)",darkgreen:"rgb(0, 100, 0)",darkgrey:"rgb(169, 169, 169)",darkkhaki:"rgb(189, 183, 107)",darkmagenta:"rgb(139, 0, 139)",darkolivegreen:"rgb(85, 107, 47)",darkolivegreen1:"rgb(202, 255, 112)",darkolivegreen2:"rgb(188, 238, 104)",darkolivegreen3:"rgb(162, 205, 90)",darkolivegreen4:"rgb(110, 139, 61)",darkorange:"rgb(255, 140, 0)",darkorange1:"rgb(255, 127, 0)",darkorange2:"rgb(238, 118, 0)",darkorange3:"rgb(205, 102, 0)",darkorange4:"rgb(139, 69, 0)",darkorchid:"rgb(153, 50, 204)",darkorchid1:"rgb(191, 62, 255)",darkorchid2:"rgb(178, 58, 238)",darkorchid3:"rgb(154, 50, 205)",darkorchid4:"rgb(104, 34, 139)",darkred:"rgb(139, 0, 0)",darksalmon:"rgb(233, 150, 122)",darkseagreen:"rgb(143, 188, 143)",darkseagreen1:"rgb(193, 255, 193)",darkseagreen2:"rgb(180, 238, 180)",darkseagreen3:"rgb(155, 205, 155)",darkseagreen4:"rgb(105, 139, 105)",darkslateblue:"rgb(72, 61, 139)",darkslategray:"rgb(47, 79, 79)",darkslategray1:"rgb(151, 255, 255)",darkslategray2:"rgb(141, 238, 238)",darkslategray3:"rgb(121, 205, 205)",darkslategray4:"rgb(82, 139, 139)",darkslategrey:"rgb(47, 79, 79)",darkturquoise:"rgb(0, 206, 209)",darkviolet:"rgb(148, 0, 211)",debianred:"rgb(215, 7, 81)",deeppink:"rgb(255, 20, 147)",deeppink1:"rgb(255, 20, 147)",deeppink2:"rgb(238, 18, 137)",deeppink3:"rgb(205, 16, 118)",deeppink4:"rgb(139, 10, 80)",deepskyblue:"rgb(0, 191, 255)",deepskyblue1:"rgb(0, 191, 255)",deepskyblue2:"rgb(0, 178, 238)",deepskyblue3:"rgb(0, 154, 205)",deepskyblue4:"rgb(0, 104, 139)",dimgray:"rgb(105, 105, 105)",dimgrey:"rgb(105, 105, 105)",dodgerblue:"rgb(30, 144, 255)",dodgerblue1:"rgb(30, 144, 255)",dodgerblue2:"rgb(28, 134, 238)",dodgerblue3:"rgb(24, 116, 205)",dodgerblue4:"rgb(16, 78, 139)",firebrick:"rgb(178, 34, 34)",firebrick1:"rgb(255, 48, 48)",firebrick2:"rgb(238, 44, 44)",firebrick3:"rgb(205, 38, 38)",firebrick4:"rgb(139, 26, 26)",floralwhite:"rgb(255, 250, 240)",forestgreen:"rgb(34, 139, 34)",gainsboro:"rgb(220, 220, 220)",ghostwhite:"rgb(248, 248, 255)",gold:"rgb(255, 215, 0)",gold1:"rgb(255, 215, 0)",gold2:"rgb(238, 201, 0)",gold3:"rgb(205, 173, 0)",gold4:"rgb(139, 117, 0)",goldenrod:"rgb(218, 165, 32)",goldenrod1:"rgb(255, 193, 37)",goldenrod2:"rgb(238, 180, 34)",goldenrod3:"rgb(205, 155, 29)",goldenrod4:"rgb(139, 105, 20)",gray:"rgb(190, 190, 190)",gray0:"rgb(0, 0, 0)",gray1:"rgb(3, 3, 3)",gray10:"rgb(26, 26, 26)",gray100:"rgb(255, 255, 255)",gray11:"rgb(28, 28, 28)",gray12:"rgb(31, 31, 31)",gray13:"rgb(33, 33, 33)",gray14:"rgb(36, 36, 36)",gray15:"rgb(38, 38, 38)",gray16:"rgb(41, 41, 41)",gray17:"rgb(43, 43, 43)",gray18:"rgb(46, 46, 46)",gray19:"rgb(48, 48, 48)",gray2:"rgb(5, 5, 5)",gray20:"rgb(51, 51, 51)",gray21:"rgb(54, 54, 54)",gray22:"rgb(56, 56, 56)",gray23:"rgb(59, 59, 59)",gray24:"rgb(61, 61, 61)",gray25:"rgb(64, 64, 64)",gray26:"rgb(66, 66, 66)",gray27:"rgb(69, 69, 69)",gray28:"rgb(71, 71, 71)",gray29:"rgb(74, 74, 74)",gray3:"rgb(8, 8, 8)",gray30:"rgb(77, 77, 77)",gray31:"rgb(79, 79, 79)",gray32:"rgb(82, 82, 82)",gray33:"rgb(84, 84, 84)",gray34:"rgb(87, 87, 87)",gray35:"rgb(89, 89, 89)",gray36:"rgb(92, 92, 92)",gray37:"rgb(94, 94, 94)",gray38:"rgb(97, 97, 97)",gray39:"rgb(99, 99, 99)",gray4:"rgb(10, 10, 10)",gray40:"rgb(102, 102, 102)",gray41:"rgb(105, 105, 105)",gray42:"rgb(107, 107, 107)",gray43:"rgb(110, 110, 110)",gray44:"rgb(112, 112, 112)",gray45:"rgb(115, 115, 115)",gray46:"rgb(117, 117, 117)",gray47:"rgb(120, 120, 120)",gray48:"rgb(122, 122, 122)",gray49:"rgb(125, 125, 125)",gray5:"rgb(13, 13, 13)",gray50:"rgb(127, 127, 127)",gray51:"rgb(130, 130, 130)",gray52:"rgb(133, 133, 133)",gray53:"rgb(135, 135, 135)",gray54:"rgb(138, 138, 138)",gray55:"rgb(140, 140, 140)",gray56:"rgb(143, 143, 143)",gray57:"rgb(145, 145, 145)",gray58:"rgb(148, 148, 148)",gray59:"rgb(150, 150, 150)",gray6:"rgb(15, 15, 15)",gray60:"rgb(153, 153, 153)",gray61:"rgb(156, 156, 156)",gray62:"rgb(158, 158, 158)",gray63:"rgb(161, 161, 161)",gray64:"rgb(163, 163, 163)",gray65:"rgb(166, 166, 166)",gray66:"rgb(168, 168, 168)",gray67:"rgb(171, 171, 171)",gray68:"rgb(173, 173, 173)",gray69:"rgb(176, 176, 176)",gray7:"rgb(18, 18, 18)",gray70:"rgb(179, 179, 179)",gray71:"rgb(181, 181, 181)",gray72:"rgb(184, 184, 184)",gray73:"rgb(186, 186, 186)",gray74:"rgb(189, 189, 189)",gray75:"rgb(191, 191, 191)",gray76:"rgb(194, 194, 194)",gray77:"rgb(196, 196, 196)",gray78:"rgb(199, 199, 199)",gray79:"rgb(201, 201, 201)",gray8:"rgb(20, 20, 20)",gray80:"rgb(204, 204, 204)",gray81:"rgb(207, 207, 207)",gray82:"rgb(209, 209, 209)",gray83:"rgb(212, 212, 212)",gray84:"rgb(214, 214, 214)",gray85:"rgb(217, 217, 217)",gray86:"rgb(219, 219, 219)",gray87:"rgb(222, 222, 222)",gray88:"rgb(224, 224, 224)",gray89:"rgb(227, 227, 227)",gray9:"rgb(23, 23, 23)",gray90:"rgb(229, 229, 229)",gray91:"rgb(232, 232, 232)",gray92:"rgb(235, 235, 235)",gray93:"rgb(237, 237, 237)",gray94:"rgb(240, 240, 240)",gray95:"rgb(242, 242, 242)",gray96:"rgb(245, 245, 245)",gray97:"rgb(247, 247, 247)",gray98:"rgb(250, 250, 250)",gray99:"rgb(252, 252, 252)",green:"rgb(0, 255, 0)",green1:"rgb(0, 255, 0)",green2:"rgb(0, 238, 0)",green3:"rgb(0, 205, 0)",green4:"rgb(0, 139, 0)",greenyellow:"rgb(173, 255, 47)",grey:"rgb(190, 190, 190)",grey0:"rgb(0, 0, 0)",grey1:"rgb(3, 3, 3)",grey10:"rgb(26, 26, 26)",grey100:"rgb(255, 255, 255)",grey11:"rgb(28, 28, 28)",grey12:"rgb(31, 31, 31)",grey13:"rgb(33, 33, 33)",grey14:"rgb(36, 36, 36)",grey15:"rgb(38, 38, 38)",grey16:"rgb(41, 41, 41)",grey17:"rgb(43, 43, 43)",grey18:"rgb(46, 46, 46)",grey19:"rgb(48, 48, 48)",grey2:"rgb(5, 5, 5)",grey20:"rgb(51, 51, 51)",grey21:"rgb(54, 54, 54)",grey22:"rgb(56, 56, 56)",grey23:"rgb(59, 59, 59)",grey24:"rgb(61, 61, 61)",grey25:"rgb(64, 64, 64)",grey26:"rgb(66, 66, 66)",grey27:"rgb(69, 69, 69)",grey28:"rgb(71, 71, 71)",grey29:"rgb(74, 74, 74)",grey3:"rgb(8, 8, 8)",grey30:"rgb(77, 77, 77)",grey31:"rgb(79, 79, 79)",grey32:"rgb(82, 82, 82)",grey33:"rgb(84, 84, 84)",grey34:"rgb(87, 87, 87)",grey35:"rgb(89, 89, 89)",grey36:"rgb(92, 92, 92)",grey37:"rgb(94, 94, 94)",grey38:"rgb(97, 97, 97)",grey39:"rgb(99, 99, 99)",grey4:"rgb(10, 10, 10)",grey40:"rgb(102, 102, 102)",grey41:"rgb(105, 105, 105)",grey42:"rgb(107, 107, 107)",grey43:"rgb(110, 110, 110)",grey44:"rgb(112, 112, 112)",grey45:"rgb(115, 115, 115)",grey46:"rgb(117, 117, 117)",grey47:"rgb(120, 120, 120)",grey48:"rgb(122, 122, 122)",grey49:"rgb(125, 125, 125)",grey5:"rgb(13, 13, 13)",grey50:"rgb(127, 127, 127)",grey51:"rgb(130, 130, 130)",grey52:"rgb(133, 133, 133)",grey53:"rgb(135, 135, 135)",grey54:"rgb(138, 138, 138)",grey55:"rgb(140, 140, 140)",grey56:"rgb(143, 143, 143)",grey57:"rgb(145, 145, 145)",grey58:"rgb(148, 148, 148)",grey59:"rgb(150, 150, 150)",grey6:"rgb(15, 15, 15)",grey60:"rgb(153, 153, 153)",grey61:"rgb(156, 156, 156)",grey62:"rgb(158, 158, 158)",grey63:"rgb(161, 161, 161)",grey64:"rgb(163, 163, 163)",grey65:"rgb(166, 166, 166)",grey66:"rgb(168, 168, 168)",grey67:"rgb(171, 171, 171)",grey68:"rgb(173, 173, 173)",grey69:"rgb(176, 176, 176)",grey7:"rgb(18, 18, 18)",grey70:"rgb(179, 179, 179)",grey71:"rgb(181, 181, 181)",grey72:"rgb(184, 184, 184)",grey73:"rgb(186, 186, 186)",grey74:"rgb(189, 189, 189)",grey75:"rgb(191, 191, 191)",grey76:"rgb(194, 194, 194)",grey77:"rgb(196, 196, 196)",grey78:"rgb(199, 199, 199)",grey79:"rgb(201, 201, 201)",grey8:"rgb(20, 20, 20)",grey80:"rgb(204, 204, 204)",grey81:"rgb(207, 207, 207)",grey82:"rgb(209, 209, 209)",grey83:"rgb(212, 212, 212)",grey84:"rgb(214, 214, 214)",grey85:"rgb(217, 217, 217)",grey86:"rgb(219, 219, 219)",grey87:"rgb(222, 222, 222)",grey88:"rgb(224, 224, 224)",grey89:"rgb(227, 227, 227)",grey9:"rgb(23, 23, 23)",grey90:"rgb(229, 229, 229)",grey91:"rgb(232, 232, 232)",grey92:"rgb(235, 235, 235)",grey93:"rgb(237, 237, 237)",grey94:"rgb(240, 240, 240)",grey95:"rgb(242, 242, 242)",grey96:"rgb(245, 245, 245)",grey97:"rgb(247, 247, 247)",grey98:"rgb(250, 250, 250)",grey99:"rgb(252, 252, 252)",honeydew:"rgb(240, 255, 240)",honeydew1:"rgb(240, 255, 240)",honeydew2:"rgb(224, 238, 224)",honeydew3:"rgb(193, 205, 193)",honeydew4:"rgb(131, 139, 131)",hotpink:"rgb(255, 105, 180)",hotpink1:"rgb(255, 110, 180)",hotpink2:"rgb(238, 106, 167)",hotpink3:"rgb(205, 96, 144)",hotpink4:"rgb(139, 58, 98)",indianred:"rgb(205, 92, 92)",indianred1:"rgb(255, 106, 106)",indianred2:"rgb(238, 99, 99)",indianred3:"rgb(205, 85, 85)",indianred4:"rgb(139, 58, 58)",ivory:"rgb(255, 255, 240)",ivory1:"rgb(255, 255, 240)",ivory2:"rgb(238, 238, 224)",ivory3:"rgb(205, 205, 193)",ivory4:"rgb(139, 139, 131)",khaki:"rgb(240, 230, 140)",khaki1:"rgb(255, 246, 143)",khaki2:"rgb(238, 230, 133)",khaki3:"rgb(205, 198, 115)",khaki4:"rgb(139, 134, 78)",lavender:"rgb(230, 230, 250)",lavenderblush:"rgb(255, 240, 245)",lavenderblush1:"rgb(255, 240, 245)",lavenderblush2:"rgb(238, 224, 229)",lavenderblush3:"rgb(205, 193, 197)",lavenderblush4:"rgb(139, 131, 134)",lawngreen:"rgb(124, 252, 0)",lemonchiffon:"rgb(255, 250, 205)",lemonchiffon1:"rgb(255, 250, 205)",lemonchiffon2:"rgb(238, 233, 191)",lemonchiffon3:"rgb(205, 201, 165)",lemonchiffon4:"rgb(139, 137, 112)",lightblue:"rgb(173, 216, 230)",lightblue1:"rgb(191, 239, 255)",lightblue2:"rgb(178, 223, 238)",lightblue3:"rgb(154, 192, 205)",lightblue4:"rgb(104, 131, 139)",lightcoral:"rgb(240, 128, 128)",lightcyan:"rgb(224, 255, 255)",lightcyan1:"rgb(224, 255, 255)",lightcyan2:"rgb(209, 238, 238)",lightcyan3:"rgb(180, 205, 205)",lightcyan4:"rgb(122, 139, 139)",lightgoldenrod:"rgb(238, 221, 130)",lightgoldenrod1:"rgb(255, 236, 139)",lightgoldenrod2:"rgb(238, 220, 130)",lightgoldenrod3:"rgb(205, 190, 112)",lightgoldenrod4:"rgb(139, 129, 76)",lightgoldenrodyellow:"rgb(250, 250, 210)",lightgray:"rgb(211, 211, 211)",lightgreen:"rgb(144, 238, 144)",lightgrey:"rgb(211, 211, 211)",lightpink:"rgb(255, 182, 193)",lightpink1:"rgb(255, 174, 185)",lightpink2:"rgb(238, 162, 173)",lightpink3:"rgb(205, 140, 149)",lightpink4:"rgb(139, 95, 101)",lightsalmon:"rgb(255, 160, 122)",lightsalmon1:"rgb(255, 160, 122)",lightsalmon2:"rgb(238, 149, 114)",lightsalmon3:"rgb(205, 129, 98)",lightsalmon4:"rgb(139, 87, 66)",lightseagreen:"rgb(32, 178, 170)",lightskyblue:"rgb(135, 206, 250)",lightskyblue1:"rgb(176, 226, 255)",lightskyblue2:"rgb(164, 211, 238)",lightskyblue3:"rgb(141, 182, 205)",lightskyblue4:"rgb(96, 123, 139)",lightslateblue:"rgb(132, 112, 255)",lightslategray:"rgb(119, 136, 153)",lightslategrey:"rgb(119, 136, 153)",lightsteelblue:"rgb(176, 196, 222)",lightsteelblue1:"rgb(202, 225, 255)",lightsteelblue2:"rgb(188, 210, 238)",lightsteelblue3:"rgb(162, 181, 205)",lightsteelblue4:"rgb(110, 123, 139)",lightyellow:"rgb(255, 255, 224)",lightyellow1:"rgb(255, 255, 224)",lightyellow2:"rgb(238, 238, 209)",lightyellow3:"rgb(205, 205, 180)",lightyellow4:"rgb(139, 139, 122)",limegreen:"rgb(50, 205, 50)",linen:"rgb(250, 240, 230)",magenta:"rgb(255, 0, 255)",magenta1:"rgb(255, 0, 255)",magenta2:"rgb(238, 0, 238)",magenta3:"rgb(205, 0, 205)",magenta4:"rgb(139, 0, 139)",maroon:"rgb(176, 48, 96)",maroon1:"rgb(255, 52, 179)",maroon2:"rgb(238, 48, 167)",maroon3:"rgb(205, 41, 144)",maroon4:"rgb(139, 28, 98)",mediumaquamarine:"rgb(102, 205, 170)",mediumblue:"rgb(0, 0, 205)",mediumorchid:"rgb(186, 85, 211)",mediumorchid1:"rgb(224, 102, 255)",mediumorchid2:"rgb(209, 95, 238)",mediumorchid3:"rgb(180, 82, 205)",mediumorchid4:"rgb(122, 55, 139)",mediumpurple:"rgb(147, 112, 219)",mediumpurple1:"rgb(171, 130, 255)",mediumpurple2:"rgb(159, 121, 238)",mediumpurple3:"rgb(137, 104, 205)",mediumpurple4:"rgb(93, 71, 139)",mediumseagreen:"rgb(60, 179, 113)",mediumslateblue:"rgb(123, 104, 238)",mediumspringgreen:"rgb(0, 250, 154)",mediumturquoise:"rgb(72, 209, 204)",mediumvioletred:"rgb(199, 21, 133)",midnightblue:"rgb(25, 25, 112)",mintcream:"rgb(245, 255, 250)",mistyrose:"rgb(255, 228, 225)",mistyrose1:"rgb(255, 228, 225)",mistyrose2:"rgb(238, 213, 210)",mistyrose3:"rgb(205, 183, 181)",mistyrose4:"rgb(139, 125, 123)",moccasin:"rgb(255, 228, 181)",navajowhite:"rgb(255, 222, 173)",navajowhite1:"rgb(255, 222, 173)",navajowhite2:"rgb(238, 207, 161)",navajowhite3:"rgb(205, 179, 139)",navajowhite4:"rgb(139, 121, 94)",navy:"rgb(0, 0, 128)",navyblue:"rgb(0, 0, 128)",oldlace:"rgb(253, 245, 230)",olivedrab:"rgb(107, 142, 35)",olivedrab1:"rgb(192, 255, 62)",olivedrab2:"rgb(179, 238, 58)",olivedrab3:"rgb(154, 205, 50)",olivedrab4:"rgb(105, 139, 34)",orange:"rgb(255, 165, 0)",orange1:"rgb(255, 165, 0)",orange2:"rgb(238, 154, 0)",orange3:"rgb(205, 133, 0)",orange4:"rgb(139, 90, 0)",orangered:"rgb(255, 69, 0)",orangered1:"rgb(255, 69, 0)",orangered2:"rgb(238, 64, 0)",orangered3:"rgb(205, 55, 0)",orangered4:"rgb(139, 37, 0)",orchid:"rgb(218, 112, 214)",orchid1:"rgb(255, 131, 250)",orchid2:"rgb(238, 122, 233)",orchid3:"rgb(205, 105, 201)",orchid4:"rgb(139, 71, 137)",palegoldenrod:"rgb(238, 232, 170)",palegreen:"rgb(152, 251, 152)",palegreen1:"rgb(154, 255, 154)",palegreen2:"rgb(144, 238, 144)",palegreen3:"rgb(124, 205, 124)",palegreen4:"rgb(84, 139, 84)",paleturquoise:"rgb(175, 238, 238)",paleturquoise1:"rgb(187, 255, 255)",paleturquoise2:"rgb(174, 238, 238)",paleturquoise3:"rgb(150, 205, 205)",paleturquoise4:"rgb(102, 139, 139)",palevioletred:"rgb(219, 112, 147)",palevioletred1:"rgb(255, 130, 171)",palevioletred2:"rgb(238, 121, 159)",palevioletred3:"rgb(205, 104, 137)",palevioletred4:"rgb(139, 71, 93)",papayawhip:"rgb(255, 239, 213)",peachpuff:"rgb(255, 218, 185)",peachpuff1:"rgb(255, 218, 185)",peachpuff2:"rgb(238, 203, 173)",peachpuff3:"rgb(205, 175, 149)",peachpuff4:"rgb(139, 119, 101)",peru:"rgb(205, 133, 63)",pink:"rgb(255, 192, 203)",pink1:"rgb(255, 181, 197)",pink2:"rgb(238, 169, 184)",pink3:"rgb(205, 145, 158)",pink4:"rgb(139, 99, 108)",plum:"rgb(221, 160, 221)",plum1:"rgb(255, 187, 255)",plum2:"rgb(238, 174, 238)",plum3:"rgb(205, 150, 205)",plum4:"rgb(139, 102, 139)",powderblue:"rgb(176, 224, 230)",purple:"rgb(160, 32, 240)",purple1:"rgb(155, 48, 255)",purple2:"rgb(145, 44, 238)",purple3:"rgb(125, 38, 205)",purple4:"rgb(85, 26, 139)",red:"rgb(255, 0, 0)",red1:"rgb(255, 0, 0)",red2:"rgb(238, 0, 0)",red3:"rgb(205, 0, 0)",red4:"rgb(139, 0, 0)",rosybrown:"rgb(188, 143, 143)",rosybrown1:"rgb(255, 193, 193)",rosybrown2:"rgb(238, 180, 180)",rosybrown3:"rgb(205, 155, 155)",rosybrown4:"rgb(139, 105, 105)",royalblue:"rgb(65, 105, 225)",royalblue1:"rgb(72, 118, 255)",royalblue2:"rgb(67, 110, 238)",royalblue3:"rgb(58, 95, 205)",royalblue4:"rgb(39, 64, 139)",saddlebrown:"rgb(139, 69, 19)",salmon:"rgb(250, 128, 114)",salmon1:"rgb(255, 140, 105)",salmon2:"rgb(238, 130, 98)",salmon3:"rgb(205, 112, 84)",salmon4:"rgb(139, 76, 57)",sandybrown:"rgb(244, 164, 96)",seagreen:"rgb(46, 139, 87)",seagreen1:"rgb(84, 255, 159)",seagreen2:"rgb(78, 238, 148)",seagreen3:"rgb(67, 205, 128)",seagreen4:"rgb(46, 139, 87)",seashell:"rgb(255, 245, 238)",seashell1:"rgb(255, 245, 238)",seashell2:"rgb(238, 229, 222)",seashell3:"rgb(205, 197, 191)",seashell4:"rgb(139, 134, 130)",sienna:"rgb(160, 82, 45)",sienna1:"rgb(255, 130, 71)",sienna2:"rgb(238, 121, 66)",sienna3:"rgb(205, 104, 57)",sienna4:"rgb(139, 71, 38)",skyblue:"rgb(135, 206, 235)",skyblue1:"rgb(135, 206, 255)",skyblue2:"rgb(126, 192, 238)",skyblue3:"rgb(108, 166, 205)",skyblue4:"rgb(74, 112, 139)",slateblue:"rgb(106, 90, 205)",slateblue1:"rgb(131, 111, 255)",slateblue2:"rgb(122, 103, 238)",slateblue3:"rgb(105, 89, 205)",slateblue4:"rgb(71, 60, 139)",slategray:"rgb(112, 128, 144)",slategray1:"rgb(198, 226, 255)",slategray2:"rgb(185, 211, 238)",slategray3:"rgb(159, 182, 205)",slategray4:"rgb(108, 123, 139)",slategrey:"rgb(112, 128, 144)",snow:"rgb(255, 250, 250)",snow1:"rgb(255, 250, 250)",snow2:"rgb(238, 233, 233)",snow3:"rgb(205, 201, 201)",snow4:"rgb(139, 137, 137)",springgreen:"rgb(0, 255, 127)",springgreen1:"rgb(0, 255, 127)",springgreen2:"rgb(0, 238, 118)",springgreen3:"rgb(0, 205, 102)",springgreen4:"rgb(0, 139, 69)",steelblue:"rgb(70, 130, 180)",steelblue1:"rgb(99, 184, 255)",steelblue2:"rgb(92, 172, 238)",steelblue3:"rgb(79, 148, 205)",steelblue4:"rgb(54, 100, 139)",tan:"rgb(210, 180, 140)",tan1:"rgb(255, 165, 79)",tan2:"rgb(238, 154, 73)",tan3:"rgb(205, 133, 63)",tan4:"rgb(139, 90, 43)",thistle:"rgb(216, 191, 216)",thistle1:"rgb(255, 225, 255)",thistle2:"rgb(238, 210, 238)",thistle3:"rgb(205, 181, 205)",thistle4:"rgb(139, 123, 139)",tomato:"rgb(255, 99, 71)",tomato1:"rgb(255, 99, 71)",tomato2:"rgb(238, 92, 66)",tomato3:"rgb(205, 79, 57)",tomato4:"rgb(139, 54, 38)",turquoise:"rgb(64, 224, 208)",turquoise1:"rgb(0, 245, 255)",turquoise2:"rgb(0, 229, 238)",turquoise3:"rgb(0, 197, 205)",turquoise4:"rgb(0, 134, 139)",violet:"rgb(238, 130, 238)",violetred:"rgb(208, 32, 144)",violetred1:"rgb(255, 62, 150)",violetred2:"rgb(238, 58, 140)",violetred3:"rgb(205, 50, 120)",violetred4:"rgb(139, 34, 82)",wheat:"rgb(245, 222, 179)",wheat1:"rgb(255, 231, 186)",wheat2:"rgb(238, 216, 174)",wheat3:"rgb(205, 186, 150)",wheat4:"rgb(139, 126, 102)",white:"rgb(255, 255, 255)",whitesmoke:"rgb(245, 245, 245)",yellow:"rgb(255, 255, 0)",yellow1:"rgb(255, 255, 0)",yellow2:"rgb(238, 238, 0)",yellow3:"rgb(205, 205, 0)",yellow4:"rgb(139, 139, 0)",yellowgreen:"rgb(154, 205, 50)"},t.f={},t.f.createEnum=function(e){return new String(e)},t.f.replaceVars=function(e,r){return e.replace(/%([a-z]*)\(([^\)]+)\)/gi,(function(e,i,o){if(void 0===r[o])throw"Unknown variable: "+o;var n=r[o];if(i in t.f.replaceVars.functions)n=t.f.replaceVars.functions[i](n);else if(i)throw"Unknown escape function: "+i;return n}))},t.f.replaceVars.functions={encodeURI,encodeURIComponent,escapeHTML:function(e){var t={"<":"<",">":">","&":"&",'"':""","'":"'"};return e.replace(/[<>&\"\']/g,(function(e){return t[e]}))}},t.f.getAcceptLanguages=function(e){t.f.getAcceptLanguages.chromeSupported()?chrome.i18n.getAcceptLanguages(e):setTimeout((function(){e([navigator.language.replace(/-/g,"_")])}),0)},t.f.getAcceptLanguages.chromeSupported=function(){return window.chrome&&chrome.i18n},t.f.parseQuery=function(e){e.startsWith("?")&&(e=e.substr(1));for(var t={},r=e.split("&"),i=0;ir?r:e},t.f.zpad=function(e,t){return String(e).padStart(t,"0")},t.f.getWhitespace=function(e){if(e<=0)return"";var t=this.getWhitespace;for(t.whitespace||(t.whitespace=" ");e>t.whitespace.length;)t.whitespace+=t.whitespace;return t.whitespace.substr(0,e)},t.f.alarm=function(e,r){var i,o,n=r||5e3,s=t.f.getStack(1);return i=setTimeout((function(){var t="string"==typeof e?t:e.name;t=t?": "+t:"",console.warn("lib.f.alarm: timeout expired: "+n/1e3+"s"+t),console.log(s),i=null}),n),o=function(e){return function(){return i&&(clearTimeout(i),i=null),e.apply(null,arguments)}},"string"==typeof e?o:o(e)},t.f.getStack=function(e){var t,r=e?e+2:2;try{throw new Error}catch(e){t=e.stack.split("\n")}for(var i={},o=r;o=0&&this.observers.splice(t,1)},t.PreferenceManager.Record.prototype.get=function(){return this.currentValue===this.DEFAULT_VALUE?/^(string|number)$/.test(typeof this.defaultValue)?this.defaultValue:"object"==typeof this.defaultValue?JSON.parse(JSON.stringify(this.defaultValue)):this.defaultValue:this.currentValue},t.PreferenceManager.prototype.deactivate=function(){if(!this.isActive_)throw new Error("Not activated");this.isActive_=!1,this.storage.removeObserver(this.storageObserver_)},t.PreferenceManager.prototype.activate=function(){if(this.isActive_)throw new Error("Already activated");this.isActive_=!0,this.storage.addObserver(this.storageObserver_)},t.PreferenceManager.prototype.readStorage=function(e){var t=0;function r(){0==--t&&e&&e()}var i=Object.keys(this.prefRecords_).map(function(e){return this.prefix+e}.bind(this));this.trace&&console.log("Preferences read: "+this.prefix),this.storage.getItems(i,function(i){var o=this.prefix.length;for(var n in i){var s=i[n],a=n.substr(o),c=a in this.childLists_&&JSON.stringify(s)!=JSON.stringify(this.prefRecords_[a].currentValue);this.prefRecords_[a].currentValue=s,c&&(t++,this.syncChildList(a,r))}0==t&&e&&setTimeout(e)}.bind(this))},t.PreferenceManager.prototype.definePreference=function(e,r,i){var o=this.prefRecords_[e];o?this.changeDefault(e,r):o=this.prefRecords_[e]=new t.PreferenceManager.Record(e,r),i&&o.addObserver(i)},t.PreferenceManager.prototype.definePreferences=function(e){for(var t=0;t=0&&s.splice(l,1),!this.childLists_[e][c]){var h=this.childFactories_[e](this,c);if(!h){console.warn("Unable to restore child: "+e+": "+c);continue}h.trace=this.trace,this.childLists_[e][c]=h,i++,h.readStorage(o)}}for(a=0;a=0;i--){var o=e[i],n=this.storage_.getItem(o);if("string"==typeof n)try{r[o]=JSON.parse(n)}catch(e){r[o]=n}else e.splice(i,1)}setTimeout(t.bind(null,r),0)},t.Storage.Local.prototype.setItem=function(e,t,r){this.storage_.setItem(e,JSON.stringify(t)),r&&setTimeout(r,0)},t.Storage.Local.prototype.setItems=function(e,t){for(var r in e)this.storage_.setItem(r,JSON.stringify(e[r]));t&&setTimeout(t,0)},t.Storage.Local.prototype.removeItem=function(e,t){this.storage_.removeItem(e),t&&setTimeout(t,0)},t.Storage.Local.prototype.removeItems=function(e,t){for(var r=0;r=0;i--){var o=e[i],n=this.storage_[o];if("string"==typeof n)try{r[o]=JSON.parse(n)}catch(e){r[o]=n}else e.splice(i,1)}setTimeout(t.bind(null,r),0)},t.Storage.Memory.prototype.setItem=function(e,t,r){var i=this.storage_[e];this.storage_[e]=JSON.stringify(t);var o={};o[e]={oldValue:i,newValue:t},setTimeout(function(){for(var e=0;e{let t="";switch(e){case"debug":case"warn":case"error":t=e.toUpperCase()+": "}const r=this.console_[e];this[e]=this.console_[e]=(...e)=>{this.save&&(this.data+=this.prefix_+t+e.join(" ")+"\n"),r.apply(this.console_,e)}})),["group","groupCollapsed"].forEach((e=>{const t=this.console_[e];this[e]=this.console_[e]=(e="")=>{t(e),this.save&&(this.data+=this.prefix_+e+"\n"),this.prefix_=" ".repeat(++this.prefixStack_)}}));const t=this.console_.groupEnd;this.groupEnd=this.console_.groupEnd=()=>{t(),this.prefix_=" ".repeat(--this.prefixStack_)}},t.TestManager.Suite=function(e){function r(t,r){this.testManager_=t,this.suiteName=e,this.setup(r)}return r.suiteName=e,r.addTest=t.TestManager.Suite.addTest,r.disableTest=t.TestManager.Suite.disableTest,r.getTest=t.TestManager.Suite.getTest,r.getTestList=t.TestManager.Suite.getTestList,r.testList_=[],r.testMap_={},r.prototype=Object.create(t.TestManager.Suite.prototype),r.constructor=t.TestManager.Suite,t.TestManager.Suite.subclasses.push(r),r},t.TestManager.Suite.subclasses=[],t.TestManager.Suite.addTest=function(e,r){if(e in this.testMap_)throw"Duplicate test name: "+e;var i=new t.TestManager.Test(this,e,r);this.testMap_[e]=i,this.testList_.push(i)},t.TestManager.Suite.disableTest=function(e,r){if(e in this.testMap_)throw"Duplicate test name: "+e;var i=new t.TestManager.Test(this,e,r);console.log("Disabled test: "+i.fullName)},t.TestManager.Suite.getTest=function(e){return this.testMap_[e]},t.TestManager.Suite.getTestList=function(){return this.testList_},t.TestManager.Suite.prototype.setDefaults=function(e,t){for(var r in t)this[r]=r in e?e[r]:t[r]},t.TestManager.Suite.prototype.setup=function(e){},t.TestManager.Suite.prototype.preamble=function(e,t){},t.TestManager.Suite.prototype.postamble=function(e,t){},t.TestManager.Test=function(e,t,r){this.suiteClass=e,this.testName=t,this.fullName=e.suiteName+"["+t+"]",this.testFunction_=r},t.TestManager.Test.prototype.run=function(e){try{this.testFunction_.apply(e.suite,[e,e.testRun.cx])}catch(r){if(r instanceof t.TestManager.Result.TestComplete)return;e.println("Test raised an exception: "+r),r.stack&&(r.stack instanceof Array?e.println(r.stack.join("\n")):e.println(r.stack)),e.completeTest_(e.FAILED,!1)}},t.TestManager.TestRun=function(e,t){this.testManager=e,this.log=e.log,this.cx=t||{},this.failures=[],this.passes=[],this.startDate=null,this.duration=null,this.currentResult=null,this.maxFailures=0,this.panic=!1,this.testQueue_=[]},t.TestManager.TestRun.prototype.ALL_TESTS=t.f.createEnum(""),t.TestManager.TestRun.prototype.selectTest=function(e){this.testQueue_.push(e)},t.TestManager.TestRun.prototype.selectSuite=function(e,t){for(var r=t||this.ALL_TESTS,i=0,o=e.getTestList(),n=0;n500&&this.log.warn("Slow test took "+this.msToSeconds_(e.duration)),this.log.groupEnd(),e.status==e.FAILED)this.failures.push(e),this.currentSuite=null;else{if(e.status!=e.PASSED)return this.log.error("Unknown result status: "+e.test.fullName+": "+e.status),this.panic=!0;this.passes.push(e)}this.runNextTest_()},t.TestManager.TestRun.prototype.onResultReComplete=function(e,t){this.log.error("Late complete for test: "+e.test.fullName+": "+t);var r=this.passes.indexOf(e);r>=0&&(this.passes.splice(r,1),this.failures.push(e))},t.TestManager.TestRun.prototype.runNextTest_=function(){if(this.panic||!this.testQueue_.length)return this.onTestRunComplete_();if(this.maxFailures&&this.failures.length>=this.maxFailures)return this.log.error("Maximum failure count reached, aborting test run."),this.onTestRunComplete_();var e=this.testQueue_[0],r=this.currentResult?this.currentResult.suite:null;try{r&&r instanceof e.suiteClass||(r&&this.log.groupEnd(),this.log.group(e.suiteClass.suiteName),r=new e.suiteClass(this.testManager,this.cx))}catch(e){return this.log.error("Exception during setup: "+(e.stack?e.stack:e)),this.panic=!0,void this.onTestRunComplete_()}try{this.log.group(e.testName),this.currentResult=new t.TestManager.Result(this,r,e),this.testManager.testPreamble(this.currentResult,this.cx),r.preamble(this.currentResult,this.cx),this.testQueue_.shift()}catch(e){return this.log.error("Unexpected exception during test preamble: "+(e.stack?e.stack:e)),this.log.groupEnd(),this.panic=!0,void this.onTestRunComplete_()}try{this.currentResult.run()}catch(e){this.log.error("Unexpected exception during test run: "+(e.stack?e.stack:e)),this.panic=!0}},t.TestManager.TestRun.prototype.run=function(){this.log.info("Running "+this.testQueue_.length+" test(s)"),window.onerror=this.onUncaughtException_.bind(this),this.startDate=new Date,this.runNextTest_()},t.TestManager.TestRun.prototype.msToSeconds_=function(e){return(e/1e3).toFixed(2)+"s"},t.TestManager.TestRun.prototype.summarize=function(){if(this.failures.length)for(var e=0;e1?"\n"+t.join("\n"):t.join("\n")}if(e!==t&&!(t instanceof Array&&this.arrayEQ_(e,t))){var o=r?"["+r+"]":"";this.fail("assertEQ"+o+": "+this.getCallerLocation_(1)+": "+i(e)+" !== "+i(t))}},t.TestManager.Result.prototype.assert=function(e,t){if(!0!==e){var r=t?"["+t+"]":"";this.fail("assert"+r+": "+this.getCallerLocation_(1)+": "+String(e))}},t.TestManager.Result.prototype.getCallerLocation_=function(e){try{throw new Error}catch(r){var t=r.stack.split("\n")[e+2].match(/([^/]+:\d+):\d+\)?$/);return t?t[1]:"???"}},t.TestManager.Result.prototype.println=function(e){this.testRun.log.info(e)},t.TestManager.Result.prototype.fail=function(e){arguments.length&&this.println(e),this.completeTest_(this.FAILED,!0)},t.TestManager.Result.prototype.pass=function(){this.completeTest_(this.PASSED,!0)},t.UTF8Decoder=function(){this.bytesLeft=0,this.codePoint=0,this.lowerBound=0},t.UTF8Decoder.prototype.decode=function(e){for(var t="",r=0;r1114111?t+="�":o<65536?t+=String.fromCharCode(o):(o-=65536,t+=String.fromCharCode(55296+(o>>>10&1023),56320+(1023&o)))}}else t+="�",this.bytesLeft=0,r--}return t},t.decodeUTF8=function(e){return(new t.UTF8Decoder).decode(e)},t.encodeUTF8=function(e){for(var t="",r=0;r>>6),i=1):o<=65535?(t+=String.fromCharCode(224|o>>>12),i=2):(t+=String.fromCharCode(240|o>>>18),i=3);i>0;)i--,t+=String.fromCharCode(128|o>>>6*i&63)}return t},t.wc={},t.wc.nulWidth=0,t.wc.controlWidth=0,t.wc.regardCjkAmbiguous=!1,t.wc.cjkAmbiguousWidth=2,t.wc.combining=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],t.wc.ambiguous=[[161,161],[164,164],[167,168],[170,170],[174,174],[176,180],[182,186],[188,191],[198,198],[208,208],[215,216],[222,225],[230,230],[232,234],[236,237],[240,240],[242,243],[247,250],[252,252],[254,254],[257,257],[273,273],[275,275],[283,283],[294,295],[299,299],[305,307],[312,312],[319,322],[324,324],[328,331],[333,333],[338,339],[358,359],[363,363],[462,462],[464,464],[466,466],[468,468],[470,470],[472,472],[474,474],[476,476],[593,593],[609,609],[708,708],[711,711],[713,715],[717,717],[720,720],[728,731],[733,733],[735,735],[913,929],[931,937],[945,961],[963,969],[1025,1025],[1040,1103],[1105,1105],[8208,8208],[8211,8214],[8216,8217],[8220,8221],[8224,8226],[8228,8231],[8240,8240],[8242,8243],[8245,8245],[8251,8251],[8254,8254],[8308,8308],[8319,8319],[8321,8324],[8364,8364],[8451,8451],[8453,8453],[8457,8457],[8467,8467],[8470,8470],[8481,8482],[8486,8486],[8491,8491],[8531,8532],[8539,8542],[8544,8555],[8560,8569],[8592,8601],[8632,8633],[8658,8658],[8660,8660],[8679,8679],[8704,8704],[8706,8707],[8711,8712],[8715,8715],[8719,8719],[8721,8721],[8725,8725],[8730,8730],[8733,8736],[8739,8739],[8741,8741],[8743,8748],[8750,8750],[8756,8759],[8764,8765],[8776,8776],[8780,8780],[8786,8786],[8800,8801],[8804,8807],[8810,8811],[8814,8815],[8834,8835],[8838,8839],[8853,8853],[8857,8857],[8869,8869],[8895,8895],[8978,8978],[9312,9449],[9451,9547],[9552,9587],[9600,9615],[9618,9621],[9632,9633],[9635,9641],[9650,9651],[9654,9655],[9660,9661],[9664,9665],[9670,9672],[9675,9675],[9678,9681],[9698,9701],[9711,9711],[9733,9734],[9737,9737],[9742,9743],[9748,9749],[9756,9756],[9758,9758],[9792,9792],[9794,9794],[9824,9825],[9827,9829],[9831,9834],[9836,9837],[9839,9839],[10045,10045],[10102,10111],[57344,63743],[65533,65533],[983040,1048573],[1048576,1114109]],t.wc.isSpace=function(e){var r,i=0,o=t.wc.combining.length-1;if(et.wc.combining[o][1])return!1;for(;o>=i;)if(r=Math.floor((i+o)/2),e>t.wc.combining[r][1])i=r+1;else{if(!(et.wc.ambiguous[o][1])return!1;for(;o>=i;)if(r=Math.floor((i+o)/2),e>t.wc.ambiguous[r][1])i=r+1;else{if(!(e=127&&e<160?t.wc.controlWidth:e<127?1:t.wc.isSpace(e)?0:1+(e>=4352&&(e<=4447||9001==e||9002==e||e>=11904&&e<=42191&&12351!=e||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))},t.wc.charWidthRegardAmbiguous=function(e){return t.wc.isCjkAmbiguous(e)?t.wc.cjkAmbiguousWidth:t.wc.charWidthDisregardAmbiguous(e)},t.wc.strWidth=function(e){for(var r,i=0,o=0;or);o++);if(null!=i){for(n=o,s=0;ni&&n--,e.substring(o,n)}return e.substr(o)},t.wc.substring=function(e,r,i){return t.wc.substr(e,r,i-r)},t.resource.add("libdot/changelog/version","text/plain","1.16"),t.resource.add("libdot/changelog/date","text/plain","2017-08-16"),t.rtdep("lib.Storage");var r={windowType:null,zoomWarningMessage:"ZOOM != 100%",notifyCopyMessage:"✂",desktopNotificationTitle:"♪ %(title) ♪",testDeps:["hterm.ScrollPort.Tests","hterm.Screen.Tests","hterm.Terminal.Tests","hterm.VT.Tests","hterm.VT.CannedTests"]};t.registerInit("hterm",(function(e){function i(t){r.windowType=t.type,setTimeout(e,0)}r.defaultStorage||(window.chrome&&chrome.storage&&chrome.storage.sync?r.defaultStorage=new t.Storage.Chrome(chrome.storage.sync):r.defaultStorage=new t.Storage.Local);var o=!1;if(window.chrome&&chrome.runtime&&chrome.runtime.getManifest){var n=chrome.runtime.getManifest();o=n.app&&n.app.background}o?setTimeout(i.bind(null,{type:"popup"}),0):window.chrome&&chrome.tabs?chrome.tabs.getCurrent((function(t){t&&window.chrome?chrome.windows.get(t.windowId,null,i):(r.windowType="normal",setTimeout(e,0))})):setTimeout(i.bind(null,{type:"normal"}),0)})),r.getClientSize=function(e){return e.getBoundingClientRect()},r.getClientWidth=function(e){return e.getBoundingClientRect().width},r.getClientHeight=function(e){return e.getBoundingClientRect().height},r.copySelectionToClipboard=function(e){try{e.execCommand("copy")}catch(e){}},r.pasteFromClipboard=function(e){try{return e.execCommand("paste")}catch(e){return!1}},r.notify=function(e){var i=(e,t)=>void 0!==e?e:t;null==e&&(e={});var o={body:e.body,icon:i(e.icon,t.resource.getDataUrl("hterm/images/icon-96"))},n=i(e.title,window.document.title);n||(n="hterm"),n=t.f.replaceVars(r.desktopNotificationTitle,{title:n});var s=new Notification(n,o);return s.onclick=function(){window.focus(),this.close()},s},r.Size=function(e,t){this.width=e,this.height=t},r.Size.prototype.resize=function(e,t){this.width=e,this.height=t},r.Size.prototype.clone=function(){return new r.Size(this.width,this.height)},r.Size.prototype.setTo=function(e){this.width=e.width,this.height=e.height},r.Size.prototype.equals=function(e){return this.width==e.width&&this.height==e.height},r.Size.prototype.toString=function(){return"[hterm.Size: "+this.width+", "+this.height+"]"},r.RowCol=function(e,t,r){this.row=e,this.column=t,this.overflow=!!r},r.RowCol.prototype.move=function(e,t,r){this.row=e,this.column=t,this.overflow=!!r},r.RowCol.prototype.clone=function(){return new r.RowCol(this.row,this.column,this.overflow)},r.RowCol.prototype.setTo=function(e){this.row=e.row,this.column=e.column,this.overflow=e.overflow},r.RowCol.prototype.equals=function(e){return this.row==e.row&&this.column==e.column&&this.overflow==e.overflow},r.RowCol.prototype.toString=function(){return"[hterm.RowCol: "+this.row+", "+this.column+", "+this.overflow+"]"},t.rtdep("lib.f"),r.Frame=function(e,t,r){this.terminal_=e,this.div_=e.div_,this.url=t,this.options=r||{},this.iframe_=null,this.container_=null,this.messageChannel_=null},r.Frame.prototype.onMessage_=function(e){switch(e.data.name){case"ipc-init-ok":return void this.sendTerminalInfo_();case"terminal-info-ok":return this.container_.style.display="flex",this.messageChannel_.port1.onmessage=this.onMessage.bind(this),void this.onLoad();default:return void console.log("Unknown message from frame:",e.data)}},r.Frame.prototype.onMessage=function(){},r.Frame.prototype.onLoad_=function(){this.messageChannel_=new MessageChannel,this.messageChannel_.port1.onmessage=this.onMessage_.bind(this),this.messageChannel_.port1.start(),this.iframe_.contentWindow.postMessage({name:"ipc-init",argv:[{messagePort:this.messageChannel_.port2}]},this.url,[this.messageChannel_.port2])},r.Frame.prototype.onLoad=function(){},r.Frame.prototype.sendTerminalInfo_=function(){t.f.getAcceptLanguages(function(e){this.postMessage("terminal-info",[{acceptLanguages:e,foregroundColor:this.terminal_.getForegroundColor(),backgroundColor:this.terminal_.getBackgroundColor(),cursorColor:this.terminal_.getCursorColor(),fontSize:this.terminal_.getFontSize(),fontFamily:this.terminal_.getFontFamily(),baseURL:t.f.getURL("/")}])}.bind(this))},r.Frame.prototype.onCloseClicked_=function(){this.close()},r.Frame.prototype.close=function(){this.container_&&this.container_.parentNode&&(this.container_.parentNode.removeChild(this.container_),this.onClose())},r.Frame.prototype.onClose=function(){},r.Frame.prototype.postMessage=function(e,t){if(!this.messageChannel_)throw new Error("Message channel is not set up.");this.messageChannel_.port1.postMessage({name:e,argv:t})},r.Frame.prototype.show=function(){var e=this;function t(t,r){return t in e.options?e.options[t]:r}if(e=this,this.container_&&this.container_.parentNode)console.error("Frame already visible");else{var i=r.getClientSize(this.div_),o=(t("width",640),t("height",480),i.width,i.height,this.terminal_.document_),n=this.container_=o.createElement("div");n.style.cssText="position: absolute;display: none;flex-direction: column;top: 10%;left: 4%;width: 90%;height: 80%;min-height: 20%;max-height: 80%;box-shadow: 0 0 2px "+this.terminal_.getForegroundColor()+";border: 2px "+this.terminal_.getForegroundColor()+" solid;";var s=this.iframe_=o.createElement("iframe");s.onload=this.onLoad_.bind(this),s.style.cssText="display: flex;flex: 1;width: 100%",s.setAttribute("src",this.url),s.setAttribute("seamless",!0),n.appendChild(s),this.div_.appendChild(n)}},t.rtdep("hterm.Keyboard.KeyMap"),r.Keyboard=function(e){this.terminal=e,this.keyboardElement_=null,this.handlers_=[["focusout",this.onFocusOut_.bind(this)],["keydown",this.onKeyDown_.bind(this)],["keypress",this.onKeyPress_.bind(this)],["keyup",this.onKeyUp_.bind(this)],["textInput",this.onTextInput_.bind(this)]],this.keyMap=new r.Keyboard.KeyMap(this),this.bindings=new r.Keyboard.Bindings(this),this.altGrMode="none",this.shiftInsertPaste=!0,this.homeKeysScroll=!1,this.pageKeysScroll=!1,this.ctrlPlusMinusZeroZoom=!0,this.ctrlCCopy=!1,this.ctrlVPaste=!1,this.applicationKeypad=!1,this.applicationCursor=!1,this.backspaceSendsBackspace=!1,this.characterEncoding="utf-8",this.metaSendsEscape=!0,this.passMetaV=!0,this.altSendsWhat="escape",this.altIsMeta=!1,this.altBackspaceIsMetaBackspace=!1,this.altKeyPressed=0,this.mediaKeysAreFKeys=!1,this.previousAltSendsWhat_=null},r.Keyboard.KeyActions={CANCEL:t.f.createEnum("CANCEL"),DEFAULT:t.f.createEnum("DEFAULT"),PASS:t.f.createEnum("PASS"),STRIP:t.f.createEnum("STRIP")},r.Keyboard.prototype.encode=function(e){return"utf-8"==this.characterEncoding?this.terminal.vt.encodeUTF8(e):e},r.Keyboard.prototype.installKeyboard=function(e){if(e!=this.keyboardElement_){e&&this.keyboardElement_&&this.installKeyboard(null);for(var t=0;t=32&&(r=e.charCode);r&&this.terminal.onVTKeystroke(String.fromCharCode(r)),e.preventDefault(),e.stopPropagation()}},r.Keyboard.prototype.preventChromeAppNonCtrlShiftDefault_=function(e){window.chrome&&window.chrome.app&&window.chrome.app.window&&(e.ctrlKey&&e.shiftKey||e.preventDefault())},r.Keyboard.prototype.onFocusOut_=function(e){this.altKeyPressed=0},r.Keyboard.prototype.onKeyUp_=function(e){18==e.keyCode&&(this.altKeyPressed=this.altKeyPressed&~(1<=64&&b<=95&&(i=String.fromCharCode(b-64))),u&&"8-bit"==this.altSendsWhat&&1==i.length){var b=i.charCodeAt(0)+128;i=String.fromCharCode(b)}(u&&"escape"==this.altSendsWhat||d&&this.metaSendsEscape)&&(i=""+i)}this.terminal.onVTKeystroke(i)}else console.warn("Invalid action: "+JSON.stringify(i))}else console.warn("No definition for keyCode: "+e.keyCode)},r.Keyboard.Bindings=function(){this.bindings_={}},r.Keyboard.Bindings.prototype.clear=function(){this.bindings_={}},r.Keyboard.Bindings.prototype.addBinding_=function(e,t){var i=null,o=this.bindings_[e.keyCode];if(o)for(var n=0;n",d,s(p,f),d,d],[191,"/?",d,n(c("_"),c("?")),d,d],[17,"[CTRL]",f,f,f,f],[18,"[ALT]",f,f,f,f],[91,"[LAPL]",f,f,f,f],[32," ",d,c("@"),d,d],[92,"[RAPL]",f,f,f,f],[93,"[RMENU]",f,f,f,f],[42,"[PRTSCR]",f,f,f,f],[145,"[SCRLK]",f,f,f,f],[19,"[BREAK]",f,f,f,f],[45,"[INSERT]",l("onKeyInsert_"),d,d,d],[36,"[HOME]",l("onKeyHome_"),d,d,d],[33,"[PGUP]",l("onKeyPageUp_"),d,d,d],[46,"[DEL]",l("onKeyDel_"),d,d,d],[35,"[END]",l("onKeyEnd_"),d,d,d],[34,"[PGDOWN]",l("onKeyPageDown_"),d,d,d],[38,"[UP]",l("onKeyArrowUp_"),d,d,d],[40,"[DOWN]",l("onKeyArrowDown_"),d,d,d],[39,"[RIGHT]",i("","OC"),d,d,d],[37,"[LEFT]",i("","OD"),d,d,d],[144,"[NUMLOCK]",f,f,f,f],[96,"[KP0]",d,d,d,d],[97,"[KP1]",d,d,d,d],[98,"[KP2]",d,d,d,d],[99,"[KP3]",d,d,d,d],[100,"[KP4]",d,d,d,d],[101,"[KP5]",d,d,d,d],[102,"[KP6]",d,d,d,d],[103,"[KP7]",d,d,d,d],[104,"[KP8]",d,d,d,d],[105,"[KP9]",d,d,d,d],[107,"[KP+]",d,l("onPlusMinusZero_"),d,l("onPlusMinusZero_")],[109,"[KP-]",d,l("onPlusMinusZero_"),d,l("onPlusMinusZero_")],[106,"[KP*]",d,d,d,d],[111,"[KP/]",d,d,d,d],[110,"[KP.]",d,d,d,d],[166,"[BACK]",h(a("OP","")),d,"[23~",d],[167,"[FWD]",h(a("OQ","")),d,"[24~",d],[168,"[RELOAD]",h(a("OR","")),d,"[25~",d],[183,"[FSCR]",h(a("OS","")),d,"[26~",d],[182,"[WINS]",h("[15~"),d,"[28~",d],[216,"[BRIT-]",h("[17~"),d,"[29~",d],[217,"[BRIT+]",h("[18~"),d,"[31~",d])},r.Keyboard.KeyMap.prototype.onKeyInsert_=function(e){return this.keyboard.shiftInsertPaste&&e.shiftKey?r.Keyboard.KeyActions.PASS:"[2~"},r.Keyboard.KeyMap.prototype.onKeyHome_=function(e){return!this.keyboard.homeKeysScroll^e.shiftKey?e.altey||e.ctrlKey||e.shiftKey||!this.keyboard.applicationCursor?"":"OH":(this.keyboard.terminal.scrollHome(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyEnd_=function(e){return!this.keyboard.homeKeysScroll^e.shiftKey?e.altKey||e.ctrlKey||e.shiftKey||!this.keyboard.applicationCursor?"":"OF":(this.keyboard.terminal.scrollEnd(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyPageUp_=function(e){return!this.keyboard.pageKeysScroll^e.shiftKey?"[5~":(this.keyboard.terminal.scrollPageUp(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyDel_=function(e){return this.keyboard.altBackspaceIsMetaBackspace&&this.keyboard.altKeyPressed&&!e.altKey?"":"[3~"},r.Keyboard.KeyMap.prototype.onKeyPageDown_=function(e){return!this.keyboard.pageKeysScroll^e.shiftKey?"[6~":(this.keyboard.terminal.scrollPageDown(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyArrowUp_=function(e){return!this.keyboard.applicationCursor&&e.shiftKey?(this.keyboard.terminal.scrollLineUp(),r.Keyboard.KeyActions.CANCEL):e.shiftKey||e.ctrlKey||e.altKey||e.metaKey||!this.keyboard.applicationCursor?"":"OA"},r.Keyboard.KeyMap.prototype.onKeyArrowDown_=function(e){return!this.keyboard.applicationCursor&&e.shiftKey?(this.keyboard.terminal.scrollLineDown(),r.Keyboard.KeyActions.CANCEL):e.shiftKey||e.ctrlKey||e.altKey||e.metaKey||!this.keyboard.applicationCursor?"":"OB"},r.Keyboard.KeyMap.prototype.onClear_=function(e,t){return this.keyboard.terminal.wipeContents(),r.Keyboard.KeyActions.CANCEL},r.Keyboard.KeyMap.prototype.onCtrlNum_=function(e,t){function i(e){return String.fromCharCode(e.charCodeAt(0)-64)}if(this.keyboard.terminal.passCtrlNumber&&!e.shiftKey)return r.Keyboard.KeyActions.PASS;switch(t.keyCap.substr(0,1)){case"1":return"1";case"2":return i("@");case"3":return i("[");case"4":return i("\\");case"5":return i("]");case"6":return i("^");case"7":return i("_");case"8":return"";case"9":return"9"}},r.Keyboard.KeyMap.prototype.onAltNum_=function(e,t){return this.keyboard.terminal.passAltNumber&&!e.shiftKey?r.Keyboard.KeyActions.PASS:r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onMetaNum_=function(e,t){return this.keyboard.terminal.passMetaNumber&&!e.shiftKey?r.Keyboard.KeyActions.PASS:r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onCtrlC_=function(e,t){var i=this.keyboard.terminal.getDocument().getSelection();if(!i.isCollapsed){if(this.keyboard.ctrlCCopy&&!e.shiftKey)return this.keyboard.terminal.clearSelectionAfterCopy&&setTimeout(i.collapseToEnd.bind(i),50),r.Keyboard.KeyActions.PASS;if(!this.keyboard.ctrlCCopy&&e.shiftKey)return this.keyboard.terminal.clearSelectionAfterCopy&&setTimeout(i.collapseToEnd.bind(i),50),this.keyboard.terminal.copySelectionToClipboard(),r.Keyboard.KeyActions.CANCEL}return""},r.Keyboard.KeyMap.prototype.onCtrlN_=function(e,t){return e.shiftKey?(window.open(document.location.href,"","chrome=no,close=yes,resize=yes,scrollbars=yes,minimizable=yes,width="+window.innerWidth+",height="+window.innerHeight),r.Keyboard.KeyActions.CANCEL):""},r.Keyboard.KeyMap.prototype.onCtrlV_=function(e,t){return!e.shiftKey&&this.keyboard.ctrlVPaste||e.shiftKey&&!this.keyboard.ctrlVPaste?this.keyboard.terminal.paste()?r.Keyboard.KeyActions.CANCEL:r.Keyboard.KeyActions.PASS:""},r.Keyboard.KeyMap.prototype.onMetaN_=function(e,t){return e.shiftKey?(window.open(document.location.href,"","chrome=no,close=yes,resize=yes,scrollbars=yes,minimizable=yes,width="+window.outerWidth+",height="+window.outerHeight),r.Keyboard.KeyActions.CANCEL):r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onMetaC_=function(e,t){var i=this.keyboard.terminal.getDocument();return e.shiftKey||i.getSelection().isCollapsed?t.keyCap.substr(e.shiftKey?1:0,1):(this.keyboard.terminal.clearSelectionAfterCopy&&setTimeout((function(){i.getSelection().collapseToEnd()}),50),r.Keyboard.KeyActions.PASS)},r.Keyboard.KeyMap.prototype.onMetaV_=function(e,t){return e.shiftKey||this.keyboard.passMetaV?r.Keyboard.KeyActions.PASS:r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onPlusMinusZero_=function(e,t){if(!(this.keyboard.ctrlPlusMinusZeroZoom^e.shiftKey))return"-_"==t.keyCap?"":r.Keyboard.KeyActions.CANCEL;if(1!=this.keyboard.terminal.getZoomFactor())return r.Keyboard.KeyActions.PASS;var i=t.keyCap.substr(0,1);if("0"==i)this.keyboard.terminal.setFontSize(0);else{var o=this.keyboard.terminal.getFontSize();"-"==i||"[KP-]"==t.keyCap?o-=1:o+=1,this.keyboard.terminal.setFontSize(o)}return r.Keyboard.KeyActions.CANCEL},r.Keyboard.KeyPattern=function(e){this.wildcardCount=0,this.keyCode=e.keyCode,r.Keyboard.KeyPattern.modifiers.forEach(function(t){this[t]=e[t]||!1,"*"==this[t]&&this.wildcardCount++}.bind(this))},r.Keyboard.KeyPattern.modifiers=["shift","ctrl","alt","meta"],r.Keyboard.KeyPattern.sortCompare=function(e,t){return e.wildcardCountt.wildcardCount?1:0},r.Keyboard.KeyPattern.prototype.match_=function(e,t){if(this.keyCode!=e.keyCode)return!1;var i=!0;return r.Keyboard.KeyPattern.modifiers.forEach(function(r){var o=r in e&&e[r];i&&(t||"*"!=this[r])&&this[r]!=o&&(i=!1)}.bind(this)),i},r.Keyboard.KeyPattern.prototype.matchKeyDown=function(e){return this.match_(e,!1)},r.Keyboard.KeyPattern.prototype.matchKeyPattern=function(e){return this.match_(e,!0)},r.Options=function(e){this.wraparound=!e||e.wraparound,this.reverseWraparound=!!e&&e.reverseWraparound,this.originMode=!!e&&e.originMode,this.autoCarriageReturn=!!e&&e.autoCarriageReturn,this.cursorVisible=!!e&&e.cursorVisible,this.cursorBlink=!!e&&e.cursorBlink,this.insertMode=!!e&&e.insertMode,this.reverseVideo=!!e&&e.reverseVideo,this.bracketedPaste=!!e&&e.bracketedPaste},t.rtdep("hterm.Keyboard.KeyActions"),r.Parser=function(){this.source="",this.pos=0,this.ch=null},r.Parser.prototype.error=function(e){return new Error("Parse error at "+this.pos+": "+e)},r.Parser.prototype.isComplete=function(){return this.pos==this.source.length},r.Parser.prototype.reset=function(e,t){this.source=e,this.pos=t||0,this.ch=e.substr(0,1)},r.Parser.prototype.parseKeySequence=function(){var e={keyCode:null};for(var t in r.Parser.identifiers.modifierKeys)e[r.Parser.identifiers.modifierKeys[t]]=!1;for(;this.pos 'none', else => 'right-alt'\n'none': Disable any AltGr related munging.\n'ctrl-alt': Assume Ctrl+Alt means AltGr.\n'left-alt': Assume left Alt means AltGr.\n'right-alt': Assume right Alt means AltGr.\n"],"alt-backspace-is-meta-backspace":[r.PreferenceManager.categories.Keyboard,!1,"bool","If set, undoes the Chrome OS Alt-Backspace->DEL remap, so that alt-backspace indeed is alt-backspace."],"alt-is-meta":[r.PreferenceManager.categories.Keyboard,!1,"bool","Set whether the alt key acts as a meta key or as a distinct alt key."],"alt-sends-what":[r.PreferenceManager.categories.Keyboard,"escape",["escape","8-bit","browser-key"],"Controls how the alt key is handled.\n\n escape....... Send an ESC prefix.\n 8-bit........ Add 128 to the unshifted character as in xterm.\n browser-key.. Wait for the keypress event and see what the browser \n says. (This won't work well on platforms where the \n browser performs a default action for some alt sequences.)"],"audible-bell-sound":[r.PreferenceManager.categories.Sounds,"lib-resource:hterm/audio/bell","url","URL of the terminal bell sound. Empty string for no audible bell."],"desktop-notification-bell":[r.PreferenceManager.categories.Sounds,!1,"bool",'If true, terminal bells in the background will create a Web Notification. https://www.w3.org/TR/notifications/\n\nDisplaying notifications requires permission from the user. When this option is set to true, hterm will attempt to ask the user for permission if necessary. Note browsers may not show this permission request if it did not originate from a user action.\n\nChrome extensions with the "notifications" permission have permission to display notifications.'],"background-color":[r.PreferenceManager.categories.Appearance,"rgb(16, 16, 16)","color","The background color for text with no other color attributes."],"background-image":[r.PreferenceManager.categories.Appearance,"","string","CSS value of the background image. Empty string for no image.\n\nFor example:\n url(https://goo.gl/anedTK)\n linear-gradient(top bottom, blue, red)"],"background-size":[r.PreferenceManager.categories.Appearance,"","string","CSS value of the background image size. Defaults to none."],"background-position":[r.PreferenceManager.categories.Appearance,"","string","CSS value of the background image position.\n\nFor example:\n 10% 10%\n center"],"backspace-sends-backspace":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, the backspace should send BS ('\\x08', aka ^H). Otherwise the backspace key should send '\\x7f'."],"character-map-overrides":[r.PreferenceManager.categories.Appearance,null,"value",'This is specified as an object. It is a sparse array, where each property is the character set code and the value is an object that is a sparse array itself. In that sparse array, each property is the received character and the value is the displayed character.\n\nFor example:\n {"0":{"+":"\\u2192",",":"\\u2190","-":"\\u2191",".":"\\u2193", "0":"\\u2588"}}'],"close-on-exit":[r.PreferenceManager.categories.Miscellaneous,!0,"bool","Whether or not to close the window when the command exits."],"cursor-blink":[r.PreferenceManager.categories.Appearance,!1,"bool","Whether or not to blink the cursor by default."],"cursor-blink-cycle":[r.PreferenceManager.categories.Appearance,[1e3,500],"value","The cursor blink rate in milliseconds.\n\nA two element array, the first of which is how long the cursor should be on, second is how long it should be off."],"cursor-color":[r.PreferenceManager.categories.Appearance,"rgba(255, 0, 0, 0.5)","color","The color of the visible cursor."],"color-palette-overrides":[r.PreferenceManager.categories.Appearance,null,"value","Override colors in the default palette.\n\nThis can be specified as an array or an object. If specified as an object it is assumed to be a sparse array, where each property is a numeric index into the color palette.\n\nValues can be specified as almost any css color value. This includes #RGB, #RRGGBB, rgb(...), rgba(...), and any color names that are also part of the stock X11 rgb.txt file.\n\nYou can use 'null' to specify that the default value should be not be changed. This is useful for skipping a small number of indices when the value is specified as an array."],"copy-on-select":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Automatically copy mouse selection to the clipboard."],"use-default-window-copy":[r.PreferenceManager.categories.CopyPaste,!1,"bool","Whether to use the default window copy behavior"],"clear-selection-after-copy":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Whether to clear the selection after copying."],"ctrl-plus-minus-zero-zoom":[r.PreferenceManager.categories.Keyboard,!0,"bool","If true, Ctrl-Plus/Minus/Zero controls zoom.\nIf false, Ctrl-Shift-Plus/Minus/Zero controls zoom, Ctrl-Minus sends ^_, Ctrl-Plus/Zero do nothing."],"ctrl-c-copy":[r.PreferenceManager.categories.Keyboard,!1,"bool","Ctrl+C copies if true, send ^C to host if false.\nCtrl+Shift+C sends ^C to host if true, copies if false."],"ctrl-v-paste":[r.PreferenceManager.categories.Keyboard,!1,"bool","Ctrl+V pastes if true, send ^V to host if false.\nCtrl+Shift+V sends ^V to host if true, pastes if false."],"east-asian-ambiguous-as-two-column":[r.PreferenceManager.categories.Keyboard,!1,"bool","Set whether East Asian Ambiguous characters have two column width."],"enable-8-bit-control":[r.PreferenceManager.categories.Keyboard,!1,"bool","True to enable 8-bit control characters, false to ignore them.\n\nWe'll respect the two-byte versions of these control characters regardless of this setting."],"enable-bold":[r.PreferenceManager.categories.Appearance,null,"tristate","True if we should use bold weight font for text with the bold/bright attribute. False to use the normal weight font. Null to autodetect."],"enable-bold-as-bright":[r.PreferenceManager.categories.Appearance,!0,"bool","True if we should use bright colors (8-15 on a 16 color palette) for any text with the bold attribute. False otherwise."],"enable-blink":[r.PreferenceManager.categories.Appearance,!0,"bool","True if we should respect the blink attribute. False to ignore it. "],"enable-clipboard-notice":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Show a message in the terminal when the host writes to the clipboard."],"enable-clipboard-write":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Allow the host to write directly to the system clipboard."],"enable-dec12":[r.PreferenceManager.categories.Miscellaneous,!1,"bool","Respect the host's attempt to change the cursor blink status using DEC Private Mode 12."],environment:[r.PreferenceManager.categories.Miscellaneous,{TERM:"xterm-256color"},"value","The default environment variables, as an object."],"font-family":[r.PreferenceManager.categories.Appearance,'"DejaVu Sans Mono", "Everson Mono", FreeMono, "Menlo", "Terminal", monospace',"string","Default font family for the terminal text."],"font-size":[r.PreferenceManager.categories.Appearance,15,"int","The default font size in pixels."],"font-smoothing":[r.PreferenceManager.categories.Appearance,"antialiased","string","CSS font-smoothing property."],"foreground-color":[r.PreferenceManager.categories.Appearance,"rgb(240, 240, 240)","color","The foreground color for text with no other color attributes."],"home-keys-scroll":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, home/end will control the terminal scrollbar and shift home/end will send the VT keycodes. If false then home/end sends VT codes and shift home/end scrolls."],keybindings:[r.PreferenceManager.categories.Keyboard,null,"value",'A map of key sequence to key actions. Key sequences include zero or more modifier keys followed by a key code. Key codes can be decimal or hexadecimal numbers, or a key identifier. Key actions can be specified a string to send to the host, or an action identifier. For a full explanation of the format, see https://goo.gl/LWRndr.\n\nSample keybindings:\n{\n "Ctrl-Alt-K": "clearScrollback",\n "Ctrl-Shift-L": "PASS",\n "Ctrl-H": "\'HELLO\\n\'"\n}'],"max-string-sequence":[r.PreferenceManager.categories.Encoding,1e5,"int","Max length of a DCS, OSC, PM, or APS sequence before we give up and ignore the code."],"media-keys-are-fkeys":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, convert media keys to their Fkey equivalent. If false, let the browser handle the keys."],"meta-sends-escape":[r.PreferenceManager.categories.Keyboard,!0,"bool","Set whether the meta key sends a leading escape or not."],"mouse-right-click-paste":[r.PreferenceManager.categories.CopyPaste,!0,"bool",'Paste on right mouse button clicks.\n\nThis option is activate independent of the "mouse-paste-button" setting.\n\nNote: This will handle left & right handed mice correctly.'],"mouse-paste-button":[r.PreferenceManager.categories.CopyPaste,null,[null,0,1,2,3,4,5,6],"Mouse paste button, or null to autodetect.\n\nFor autodetect, we'll use the middle mouse button for non-X11 platforms (including Chrome OS). On X11, we'll use the right mouse button (since the native window manager should paste via the middle mouse button).\n\n0 == left (primary) button.\n1 == middle (auxiliary) button.\n2 == right (secondary) button.\n\nThis option is activate independent of the \"mouse-right-click-paste\" setting.\n\nNote: This will handle left & right handed mice correctly."],"word-break-match-left":[r.PreferenceManager.categories.CopyPaste,"[^\\s\\[\\](){}<>\"'\\^!@#$%&*,;:`]","string",'Regular expression to halt matching to the left (start) of a selection.\n\nNormally this is a character class to reject specific characters.\nWe allow "~" and "." by default as paths frequently start with those.'],"word-break-match-right":[r.PreferenceManager.categories.CopyPaste,"[^\\s\\[\\](){}<>\"'\\^!@#$%&*,;:~.`]","string","Regular expression to halt matching to the right (end) of a selection.\n\nNormally this is a character class to reject specific characters."],"word-break-match-middle":[r.PreferenceManager.categories.CopyPaste,"[^\\s\\[\\](){}<>\"'\\^]*","string","Regular expression to match all the characters in the middle.\n\nNormally this is a character class to reject specific characters.\n\nUsed to expand the selection surrounding the starting point."],"page-keys-scroll":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, page up/down will control the terminal scrollbar and shift page up/down will send the VT keycodes. If false then page up/down sends VT codes and shift page up/down scrolls."],"pass-alt-number":[r.PreferenceManager.categories.Keyboard,null,"tristate","Set whether we should pass Alt-1..9 to the browser.\n\nThis is handy when running hterm in a browser tab, so that you don't lose Chrome's \"switch to tab\" keyboard accelerators. When not running in a tab it's better to send these keys to the host so they can be used in vim or emacs.\n\nIf true, Alt-1..9 will be handled by the browser. If false, Alt-1..9 will be sent to the host. If null, autodetect based on browser platform and window type."],"pass-ctrl-number":[r.PreferenceManager.categories.Keyboard,null,"tristate","Set whether we should pass Ctrl-1..9 to the browser.\n\nThis is handy when running hterm in a browser tab, so that you don't lose Chrome's \"switch to tab\" keyboard accelerators. When not running in a tab it's better to send these keys to the host so they can be used in vim or emacs.\n\nIf true, Ctrl-1..9 will be handled by the browser. If false, Ctrl-1..9 will be sent to the host. If null, autodetect based on browser platform and window type."],"pass-meta-number":[r.PreferenceManager.categories.Keyboard,null,"tristate","Set whether we should pass Meta-1..9 to the browser.\n\nThis is handy when running hterm in a browser tab, so that you don't lose Chrome's \"switch to tab\" keyboard accelerators. When not running in a tab it's better to send these keys to the host so they can be used in vim or emacs.\n\nIf true, Meta-1..9 will be handled by the browser. If false, Meta-1..9 will be sent to the host. If null, autodetect based on browser platform and window type."],"pass-meta-v":[r.PreferenceManager.categories.Keyboard,!0,"bool","Set whether meta-V gets passed to host."],"receive-encoding":[r.PreferenceManager.categories.Encoding,"utf-8",["utf-8","raw"],"Set the expected encoding for data received from the host.\n\nValid values are 'utf-8' and 'raw'."],"scroll-on-keystroke":[r.PreferenceManager.categories.Scrolling,!0,"bool","If true, scroll to the bottom on any keystroke."],"scroll-on-output":[r.PreferenceManager.categories.Scrolling,!1,"bool","If true, scroll to the bottom on terminal output."],"scrollbar-visible":[r.PreferenceManager.categories.Scrolling,!0,"bool","The vertical scrollbar mode."],"scroll-wheel-may-send-arrow-keys":[r.PreferenceManager.categories.Scrolling,!1,"bool","When using the alternative screen buffer, and DECCKM (Application Cursor Keys) is active, mouse wheel scroll events will emulate arrow keys.\n\nIt can be temporarily disabled by holding the shift key.\n\nThis frequently comes up when using pagers (less) or reading man pages or text editors (vi/nano) or using screen/tmux."],"scroll-wheel-move-multiplier":[r.PreferenceManager.categories.Scrolling,1,"int","The multiplier for the pixel delta in wheel events caused by the scroll wheel. Alters how fast the page scrolls."],"send-encoding":[r.PreferenceManager.categories.Encoding,"utf-8",["utf-8","raw"],"Set the encoding for data sent to host."],"terminal-encoding":[r.PreferenceManager.categories.Encoding,"iso-2022",["iso-2022","utf-8","utf-8-locked"],"The default terminal encoding (DOCS).\n\nISO-2022 enables character map translations (like graphics maps).\nUTF-8 disables support for those.\n\nThe locked variant means the encoding cannot be changed at runtime via terminal escape sequences.\n\nYou should stick with UTF-8 unless you notice broken rendering with legacy applications."],"shift-insert-paste":[r.PreferenceManager.categories.Keyboard,!0,"bool","Shift + Insert pastes if true, sent to host if false."],"user-css":[r.PreferenceManager.categories.Appearance,"","url","URL of user stylesheet to include in the terminal document."],"user-css-text":[r.PreferenceManager.categories.Appearance,"","multiline-string","Custom CSS text for styling the terminal."]},r.PreferenceManager.prototype=Object.create(t.PreferenceManager.prototype),r.PreferenceManager.constructor=r.PreferenceManager,r.PubSub=function(){this.observers_={}},r.PubSub.addBehavior=function(e){var t=new r.PubSub;for(var i in r.PubSub.prototype)e[i]=r.PubSub.prototype[i].bind(t)},r.PubSub.prototype.subscribe=function(e,t){e in this.observers_||(this.observers_[e]=[]),this.observers_[e].push(t)},r.PubSub.prototype.unsubscribe=function(e,t){var r=this.observers_[e];if(!r)throw"Invalid subject: "+e;var i=r.indexOf(t);if(i<0)throw"Not subscribed: "+e;r.splice(i,1)},r.PubSub.prototype.publish=function(e,t,r){var i=this.observers_[e];i&&(i=[].concat(i)),r&&(i?i.push(r):i=[r]),i&&setTimeout((function e(r){r=e&&this.setCursorPosition(this.cursorPosition.row,e-1)},r.Screen.prototype.shiftRow=function(){return this.shiftRows(1)[0]},r.Screen.prototype.shiftRows=function(e){return this.rowsArray.splice(0,e)},r.Screen.prototype.unshiftRow=function(e){this.rowsArray.splice(0,0,e)},r.Screen.prototype.unshiftRows=function(e){this.rowsArray.unshift.apply(this.rowsArray,e)},r.Screen.prototype.popRow=function(){return this.popRows(1)[0]},r.Screen.prototype.popRows=function(e){return this.rowsArray.splice(this.rowsArray.length-e,e)},r.Screen.prototype.pushRow=function(e){this.rowsArray.push(e)},r.Screen.prototype.pushRows=function(e){e.push.apply(this.rowsArray,e)},r.Screen.prototype.insertRow=function(e,t){this.rowsArray.splice(e,0,t)},r.Screen.prototype.insertRows=function(e,t){for(var r=0;r=this.rowsArray.length?(console.error("Row out of bounds: "+e),e=this.rowsArray.length-1):e<0&&(console.error("Row out of bounds: "+e),e=0),t>=this.columnCount_?(console.error("Column out of bounds: "+t),t=this.columnCount_-1):t<0&&(console.error("Column out of bounds: "+t),t=0),this.cursorPosition.overflow=!1;var i=this.rowsArray[e],o=i.firstChild;o||(o=i.ownerDocument.createTextNode(""),i.appendChild(o));var n=0;for(i==this.cursorRowNode_?t>=this.cursorPosition.column-this.cursorOffset_&&(o=this.cursorNode_,n=this.cursorPosition.column-this.cursorOffset_):this.cursorRowNode_=i,this.cursorPosition.move(e,t);o;){var s=t-n,a=r.TextAttributes.nodeWidth(o);if(!o.nextSibling||a>s)return this.cursorNode_=o,void(this.cursorOffset_=s);n+=a,o=o.nextSibling}}else console.warn("Attempt to set cursor position on empty screen.")},r.Screen.prototype.syncSelectionCaret=function(e){try{e.collapse(this.cursorNode_,this.cursorOffset_)}catch(e){}},r.Screen.prototype.splitNode_=function(e,i){var o=e.cloneNode(!1),n=e.textContent;e.textContent=r.TextAttributes.nodeSubstr(e,0,i),o.textContent=t.wc.substr(n,i),o.textContent&&e.parentNode.insertBefore(o,e.nextSibling),e.textContent||e.parentNode.removeChild(e)},r.Screen.prototype.maybeClipCurrentRow=function(){var e=r.TextAttributes.nodeWidth(this.cursorRowNode_);if(e<=this.columnCount_)this.cursorPosition.column>=this.columnCount_&&(this.setCursorPosition(this.cursorPosition.row,this.columnCount_-1),this.cursorPosition.overflow=!0);else{var t=this.cursorPosition.column;this.setCursorPosition(this.cursorPosition.row,this.columnCount_-1),e=r.TextAttributes.nodeWidth(this.cursorNode_),this.cursorOffset_r.TextAttributes.nodeWidth(e);){if(!e.hasAttribute("line-overflow")||!e.nextSibling)return-1;t-=r.TextAttributes.nodeWidth(e),e=e.nextSibling}return this.getNodeAndOffsetWithinRow_(e,t)},r.Screen.prototype.getNodeAndOffsetWithinRow_=function(e,t){for(var i=0;io)){var f=t.wc.substring(l,o,t.wc.strWidth(l)),p=new RegExp("^"+c+a),_=f.match(p);if(_){var g=o+t.wc.strWidth(_[0]);-1==g||gn.rowIndex)r();else if(i.focusNode==i.anchorNode)i.anchorOffset=this.lastRowCount_},r.ScrollPort.prototype.drawTopFold_=function(e){if(!this.selection.startRow||this.selection.startRow.rowIndex>=e)this.rowNodes_.firstChild!=this.topFold_&&this.rowNodes_.insertBefore(this.topFold_,this.rowNodes_.firstChild);else{if(!this.selection.isMultiline||this.selection.endRow.rowIndex>=e)this.selection.startRow.nextSibling!=this.topFold_&&this.rowNodes_.insertBefore(this.topFold_,this.selection.startRow.nextSibling);else for(this.selection.endRow.nextSibling!=this.topFold_&&this.rowNodes_.insertBefore(this.topFold_,this.selection.endRow.nextSibling);this.selection.startRow.nextSibling!=this.selection.endRow;)this.rowNodes_.removeChild(this.selection.startRow.nextSibling);for(;this.rowNodes_.firstChild!=this.selection.startRow;)this.rowNodes_.removeChild(this.rowNodes_.firstChild)}},r.ScrollPort.prototype.drawBottomFold_=function(e){if(!this.selection.endRow||this.selection.endRow.rowIndex<=e)this.rowNodes_.lastChild!=this.bottomFold_&&this.rowNodes_.appendChild(this.bottomFold_);else{if(!this.selection.isMultiline||this.selection.startRow.rowIndex<=e)this.bottomFold_.nextSibling!=this.selection.endRow&&this.rowNodes_.insertBefore(this.bottomFold_,this.selection.endRow);else for(this.bottomFold_.nextSibling!=this.selection.startRow&&this.rowNodes_.insertBefore(this.bottomFold_,this.selection.startRow);this.selection.startRow.nextSibling!=this.selection.endRow;)this.rowNodes_.removeChild(this.selection.startRow.nextSibling);for(;this.rowNodes_.lastChild!=this.selection.endRow;)this.rowNodes_.removeChild(this.rowNodes_.lastChild)}},r.ScrollPort.prototype.drawVisibleRows_=function(e,t){var r=this;function i(e,t){for(;e!=t;){if(!e)throw"Did not encounter target node";if(e==r.bottomFold_)throw"Encountered bottom fold before target node";var i=e;e=e.nextSibling,i.parentNode.removeChild(i)}}for(var o=this.selection.startRow,n=this.selection.endRow,s=this.bottomFold_,a=this.topFold_.nextSibling,c=Math.min(this.visibleRowCount,this.rowProvider_.getRowCount()),l=0;l=this.lastRowCount_;var t=e*this.characterSize.height+this.visibleRowTopMargin,r=this.getScrollMax_();t>r&&(t=r),this.screen_.scrollTop!=t&&(this.screen_.scrollTop=t,this.scheduleRedraw())},r.ScrollPort.prototype.scrollRowToBottom=function(e){this.syncScrollHeight(),this.isScrolledEnd=e+this.visibleRowCount>=this.lastRowCount_;var t=e*this.characterSize.height+this.visibleRowTopMargin+this.visibleRowBottomMargin;(t-=this.visibleRowCount*this.characterSize.height)<0&&(t=0),this.screen_.scrollTop!=t&&(this.screen_.scrollTop=t)},r.ScrollPort.prototype.getTopRowIndex=function(){return Math.round(this.screen_.scrollTop/this.characterSize.height)},r.ScrollPort.prototype.getBottomRowIndex=function(e){return e+this.visibleRowCount-1},r.ScrollPort.prototype.onScroll_=function(e){var t=this.getScreenSize();t.width==this.lastScreenWidth_&&t.height==this.lastScreenHeight_?(this.redraw_(),this.publish("scroll",{scrollPort:this})):this.resize()},r.ScrollPort.prototype.onScrollWheel=function(e){},r.ScrollPort.prototype.onScrollWheel_=function(e){if(this.onScrollWheel(e),!e.defaultPrevented){var t=this.scrollWheelDelta(e),r=this.screen_.scrollTop-t;r<0&&(r=0);var i=this.getScrollMax_();r>i&&(r=i),r!=this.screen_.scrollTop&&(this.screen_.scrollTop=r,e.preventDefault())}},r.ScrollPort.prototype.scrollWheelDelta=function(e){var t;switch(e.deltaMode){case WheelEvent.DOM_DELTA_PIXEL:t=e.deltaY*this.scrollWheelMultiplier_;break;case WheelEvent.DOM_DELTA_LINE:t=e.deltaY*this.characterSize.height;break;case WheelEvent.DOM_DELTA_PAGE:t=e.deltaY*this.characterSize.height*this.screen_.getHeight()}return-1*t},r.ScrollPort.prototype.onTouch=function(e){},r.ScrollPort.prototype.onTouch_=function(e){if(this.onTouch(e),!e.defaultPrevented){var t,r,i=function(e){return{id:e.identifier,y:e.clientY,x:e.clientX}};switch(e.type){case"touchstart":for(t=0;ts&&(n=s),n!=this.screen_.scrollTop&&(this.screen_.scrollTop=n)}e.preventDefault()}},r.ScrollPort.prototype.onResize_=function(e){this.syncCharacterSize(),this.resize()},r.ScrollPort.prototype.onCopy=function(e){},r.ScrollPort.prototype.onCopy_=function(e){if(this.onCopy(e),!e.defaultPrevented&&(this.resetSelectBags_(),this.selection.sync(),this.selection.startRow&&!(this.selection.endRow.rowIndex-this.selection.startRow.rowIndex<2))){var t,r,i=this.getTopRowIndex(),o=this.getBottomRowIndex(i);this.selection.startRow.rowIndexo&&(r=this.selection.startRow.rowIndex>o?this.selection.startRow.rowIndex+1:this.bottomFold_.previousSibling.rowIndex+1,this.bottomSelectBag_.textContent=this.rowProvider_.getRowsText(r,this.selection.endRow.rowIndex),this.rowNodes_.insertBefore(this.bottomSelectBag_,this.selection.endRow))}},r.ScrollPort.prototype.onBodyKeyDown_=function(e){if(this.ctrlVPaste){var t=String.fromCharCode(e.which).toLowerCase();(e.ctrlKey||e.metaKey)&&"v"==t&&this.pasteTarget_.focus()}},r.ScrollPort.prototype.onPaste_=function(e){this.pasteTarget_.focus();var t=this;setTimeout((function(){t.publish("paste",{text:t.pasteTarget_.value}),t.pasteTarget_.value="",t.screen_.focus()}),0)},r.ScrollPort.prototype.handlePasteTargetTextInput_=function(e){e.stopPropagation()},r.ScrollPort.prototype.setScrollbarVisible=function(e){this.screen_.style.overflowY=e?"scroll":"hidden"},r.ScrollPort.prototype.setScrollWheelMoveMultipler=function(e){this.scrollWheelMultiplier_=e},t.rtdep("lib.colors","lib.PreferenceManager","lib.resource","lib.wc","lib.f","hterm.Keyboard","hterm.Options","hterm.PreferenceManager","hterm.Screen","hterm.ScrollPort","hterm.Size","hterm.TextAttributes","hterm.VT"),r.Terminal=function(e){this.profileId_=null,this.primaryScreen_=new r.Screen,this.alternateScreen_=new r.Screen,this.screen_=this.primaryScreen_,this.screenSize=new r.Size(0,0),this.scrollPort_=new r.ScrollPort(this),this.scrollPort_.subscribe("resize",this.onResize_.bind(this)),this.scrollPort_.subscribe("scroll",this.onScroll_.bind(this)),this.scrollPort_.subscribe("paste",this.onPaste_.bind(this)),this.scrollPort_.onCopy=this.onCopy_.bind(this),this.div_=null,this.document_=window.document,this.scrollbackRows_=[],this.tabStops_=[],this.defaultTabStops=!0,this.vtScrollTop_=null,this.vtScrollBottom_=null,this.cursorNode_=null,this.cursorShape_=r.Terminal.cursorShape.BLOCK,this.cursorColor_=null,this.cursorBlinkCycle_=[100,100],this.myOnCursorBlink_=this.onCursorBlink_.bind(this),this.backgroundColor_=null,this.foregroundColor_=null,this.scrollOnOutput_=null,this.scrollOnKeystroke_=null,this.scrollWheelArrowKeys_=null,this.defeatMouseReports_=!1,this.bellAudio_=this.document_.createElement("audio"),this.bellAudio_.id="hterm:bell-audio",this.bellAudio_.setAttribute("preload","auto"),this.bellNotificationList_=[],this.desktopNotificationBell_=!1,this.savedOptions_={},this.options_=new r.Options,this.timeouts_={},this.vt=new r.VT(this),this.keyboard=new r.Keyboard(this),this.io=new r.Terminal.IO(this),this.enableMouseDragScroll=!0,this.copyOnSelect=null,this.mouseRightClickPaste=null,this.mousePasteButton=null,this.useDefaultWindowCopy=!1,this.clearSelectionAfterCopy=!0,this.realizeSize_(80,24),this.setDefaultTabStops(),this.setProfile(e||"default",function(){this.onTerminalReady()}.bind(this))},r.Terminal.cursorShape={BLOCK:"BLOCK",BEAM:"BEAM",UNDERLINE:"UNDERLINE"},r.Terminal.prototype.onTerminalReady=function(){},r.Terminal.prototype.tabWidth=8,r.Terminal.prototype.setProfile=function(e,i){this.profileId_=e.replace(/\//g,"");var o=this;this.prefs_&&this.prefs_.deactivate(),this.prefs_=new r.PreferenceManager(this.profileId_),this.prefs_.addObservers(null,{"alt-gr-mode":function(e){e=null==e?"en-us"==navigator.language.toLowerCase()?"none":"right-alt":"string"==typeof e?e.toLowerCase():"none",/^(none|ctrl-alt|left-alt|right-alt)$/.test(e)||(e="none"),o.keyboard.altGrMode=e},"alt-backspace-is-meta-backspace":function(e){o.keyboard.altBackspaceIsMetaBackspace=e},"alt-is-meta":function(e){o.keyboard.altIsMeta=e},"alt-sends-what":function(e){/^(escape|8-bit|browser-key)$/.test(e)||(e="escape"),o.keyboard.altSendsWhat=e},"audible-bell-sound":function(e){var r=e.match(/^lib-resource:(\S+)/);r?o.bellAudio_.setAttribute("src",t.resource.getDataUrl(r[1])):o.bellAudio_.setAttribute("src",e)},"desktop-notification-bell":function(e){e&&Notification?(o.desktopNotificationBell_="granted"===Notification.permission,o.desktopNotificationBell_||console.warn("desktop-notification-bell is true but we do not have permission to display notifications.")):o.desktopNotificationBell_=!1},"background-color":function(e){o.setBackgroundColor(e)},"background-image":function(e){o.scrollPort_.setBackgroundImage(e)},"background-size":function(e){o.scrollPort_.setBackgroundSize(e)},"background-position":function(e){o.scrollPort_.setBackgroundPosition(e)},"backspace-sends-backspace":function(e){o.keyboard.backspaceSendsBackspace=e},"character-map-overrides":function(e){null==e||e instanceof Object?(o.vt.characterMaps.reset(),o.vt.characterMaps.setOverrides(e)):console.warn("Preference character-map-modifications is not an object: "+e)},"cursor-blink":function(e){o.setCursorBlink(!!e)},"cursor-blink-cycle":function(e){e instanceof Array&&"number"==typeof e[0]&&"number"==typeof e[1]?o.cursorBlinkCycle_=e:o.cursorBlinkCycle_="number"==typeof e?[e,e]:[100,100]},"cursor-color":function(e){o.setCursorColor(e)},"color-palette-overrides":function(e){if(null==e||e instanceof Object||e instanceof Array){if(t.colors.colorPalette=t.colors.stockColorPalette.concat(),e)for(var r in e){var i=parseInt(r);if(isNaN(i)||i<0||i>255)console.log("Invalid value in palette: "+r+": "+e[r]);else if(e[i]){var n=t.colors.normalizeCSS(e[i]);n&&(t.colors.colorPalette[i]=n)}}o.primaryScreen_.textAttributes.resetColorPalette(),o.alternateScreen_.textAttributes.resetColorPalette()}else console.warn("Preference color-palette-overrides is not an array or object: "+e)},"copy-on-select":function(e){o.copyOnSelect=!!e},"use-default-window-copy":function(e){o.useDefaultWindowCopy=!!e},"clear-selection-after-copy":function(e){o.clearSelectionAfterCopy=!!e},"ctrl-plus-minus-zero-zoom":function(e){o.keyboard.ctrlPlusMinusZeroZoom=e},"ctrl-c-copy":function(e){o.keyboard.ctrlCCopy=e},"ctrl-v-paste":function(e){o.keyboard.ctrlVPaste=e,o.scrollPort_.setCtrlVPaste(e)},"east-asian-ambiguous-as-two-column":function(e){t.wc.regardCjkAmbiguous=e},"enable-8-bit-control":function(e){o.vt.enable8BitControl=!!e},"enable-bold":function(e){o.syncBoldSafeState()},"enable-bold-as-bright":function(e){o.primaryScreen_.textAttributes.enableBoldAsBright=!!e,o.alternateScreen_.textAttributes.enableBoldAsBright=!!e},"enable-blink":function(e){o.syncBlinkState()},"enable-clipboard-write":function(e){o.vt.enableClipboardWrite=!!e},"enable-dec12":function(e){o.vt.enableDec12=!!e},"font-family":function(e){o.syncFontFamily()},"font-size":function(e){o.setFontSize(e)},"font-smoothing":function(e){o.syncFontFamily()},"foreground-color":function(e){o.setForegroundColor(e)},"home-keys-scroll":function(e){o.keyboard.homeKeysScroll=e},keybindings:function(e){if(o.keyboard.bindings.clear(),e)if(e instanceof Object)try{o.keyboard.bindings.addBindings(e)}catch(e){console.error("Error in keybindings preference: "+e)}else console.error("Error in keybindings preference: Expected object")},"max-string-sequence":function(e){o.vt.maxStringSequence=e},"media-keys-are-fkeys":function(e){o.keyboard.mediaKeysAreFKeys=e},"meta-sends-escape":function(e){o.keyboard.metaSendsEscape=e},"mouse-right-click-paste":function(e){o.mouseRightClickPaste=e},"mouse-paste-button":function(e){o.syncMousePasteButton()},"page-keys-scroll":function(e){o.keyboard.pageKeysScroll=e},"pass-alt-number":function(e){null==e&&(e=!window.navigator.userAgent.match(/Mac OS X/)&&"popup"!=r.windowType),o.passAltNumber=e},"pass-ctrl-number":function(e){null==e&&(e=!window.navigator.userAgent.match(/Mac OS X/)&&"popup"!=r.windowType),o.passCtrlNumber=e},"pass-meta-number":function(e){null==e&&(e=window.navigator.userAgent.match(/Mac OS X/)&&"popup"!=r.windowType),o.passMetaNumber=e},"pass-meta-v":function(e){o.keyboard.passMetaV=e},"receive-encoding":function(e){/^(utf-8|raw)$/.test(e)||(console.warn('Invalid value for "receive-encoding": '+e),e="utf-8"),o.vt.characterEncoding=e},"scroll-on-keystroke":function(e){o.scrollOnKeystroke_=e},"scroll-on-output":function(e){o.scrollOnOutput_=e},"scrollbar-visible":function(e){o.setScrollbarVisible(e)},"scroll-wheel-may-send-arrow-keys":function(e){o.scrollWheelArrowKeys_=e},"scroll-wheel-move-multiplier":function(e){o.setScrollWheelMoveMultipler(e)},"send-encoding":function(e){/^(utf-8|raw)$/.test(e)||(console.warn('Invalid value for "send-encoding": '+e),e="utf-8"),o.keyboard.characterEncoding=e},"shift-insert-paste":function(e){o.keyboard.shiftInsertPaste=e},"terminal-encoding":function(e){o.vt.setEncoding(e)},"user-css":function(e){o.scrollPort_.setUserCssUrl(e)},"user-css-text":function(e){o.scrollPort_.setUserCssText(e)},"word-break-match-left":function(e){o.primaryScreen_.wordBreakMatchLeft=e,o.alternateScreen_.wordBreakMatchLeft=e},"word-break-match-right":function(e){o.primaryScreen_.wordBreakMatchRight=e,o.alternateScreen_.wordBreakMatchRight=e},"word-break-match-middle":function(e){o.primaryScreen_.wordBreakMatchMiddle=e,o.alternateScreen_.wordBreakMatchMiddle=e}}),this.prefs_.readStorage(function(){this.prefs_.notifyAll(),i&&i()}.bind(this))},r.Terminal.prototype.getPrefs=function(){return this.prefs_},r.Terminal.prototype.setBracketedPaste=function(e){this.options_.bracketedPaste=e},r.Terminal.prototype.setCursorColor=function(e){this.cursorColor_=e,this.cursorNode_.style.backgroundColor=e,this.cursorNode_.style.borderColor=e},r.Terminal.prototype.getCursorColor=function(){return this.cursorColor_},r.Terminal.prototype.setSelectionEnabled=function(e){this.enableMouseDragScroll=e},r.Terminal.prototype.setBackgroundColor=function(e){this.backgroundColor_=t.colors.normalizeCSS(e),this.primaryScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.alternateScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.scrollPort_.setBackgroundColor(e)},r.Terminal.prototype.getBackgroundColor=function(){return this.backgroundColor_},r.Terminal.prototype.setForegroundColor=function(e){this.foregroundColor_=t.colors.normalizeCSS(e),this.primaryScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.alternateScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.scrollPort_.setForegroundColor(e)},r.Terminal.prototype.getForegroundColor=function(){return this.foregroundColor_},r.Terminal.prototype.runCommandClass=function(e,t){var r=this.prefs_.get("environment");"object"==typeof r&&null!=r||(r={});var i=this;this.command=new e({argString:t||"",io:this.io.push(),environment:r,onExit:function(e){i.io.pop(),i.uninstallKeyboard(),i.prefs_.get("close-on-exit")&&window.close()}}),this.installKeyboard(),this.command.run()},r.Terminal.prototype.isPrimaryScreen=function(){return this.screen_==this.primaryScreen_},r.Terminal.prototype.installKeyboard=function(){this.keyboard.installKeyboard(this.scrollPort_.getDocument().body)},r.Terminal.prototype.uninstallKeyboard=function(){this.keyboard.installKeyboard(null)},r.Terminal.prototype.setCssVar=function(e,t,r="--hterm-"){this.document_.documentElement.style.setProperty(`${r}${e}`,t)},r.Terminal.prototype.setFontSize=function(e){0===e&&(e=this.prefs_.get("font-size")),this.scrollPort_.setFontSize(e),this.setCssVar("charsize-width",this.scrollPort_.characterSize.width+"px"),this.setCssVar("charsize-height",this.scrollPort_.characterSize.height+"px")},r.Terminal.prototype.getFontSize=function(){return this.scrollPort_.getFontSize()},r.Terminal.prototype.getFontFamily=function(){return this.scrollPort_.getFontFamily()},r.Terminal.prototype.syncFontFamily=function(){this.scrollPort_.setFontFamily(this.prefs_.get("font-family"),this.prefs_.get("font-smoothing")),this.syncBoldSafeState()},r.Terminal.prototype.syncMousePasteButton=function(){var e=this.prefs_.get("mouse-paste-button");if("number"!=typeof e){var t=navigator.userAgent.match(/\(X11;\s+(\S+)/);t&&"CrOS"!=t[1]?this.mousePasteButton=2:this.mousePasteButton=1}else this.mousePasteButton=e},r.Terminal.prototype.syncBoldSafeState=function(){var e=this.prefs_.get("enable-bold");if(null!==e)return this.primaryScreen_.textAttributes.enableBold=e,void(this.alternateScreen_.textAttributes.enableBold=e);var t=this.scrollPort_.measureCharacterSize(),r=this.scrollPort_.measureCharacterSize("bold"),i=t.equals(r);i||console.warn("Bold characters disabled: Size of bold weight differs from normal. Font family is: "+this.scrollPort_.getFontFamily()),this.primaryScreen_.textAttributes.enableBold=i,this.alternateScreen_.textAttributes.enableBold=i},r.Terminal.prototype.syncBlinkState=function(){this.setCssVar("node-duration",this.prefs_.get("enable-blink")?"0.7s":"0")},r.Terminal.prototype.syncMouseStyle=function(){this.setCssVar("mouse-cursor-style",this.vt.mouseReport==this.vt.MOUSE_REPORT_DISABLED?"var(--hterm-mouse-cursor-text)":"var(--hterm-mouse-cursor-pointer)")},r.Terminal.prototype.saveCursor=function(){return this.screen_.cursorPosition.clone()},r.Terminal.prototype.getTextAttributes=function(){return this.screen_.textAttributes},r.Terminal.prototype.setTextAttributes=function(e){this.screen_.textAttributes=e},r.Terminal.prototype.getZoomFactor=function(){return this.scrollPort_.characterSize.zoomFactor},r.Terminal.prototype.setWindowTitle=function(e){window.document.title=e},r.Terminal.prototype.restoreCursor=function(e){var r=t.f.clamp(e.row,0,this.screenSize.height-1),i=t.f.clamp(e.column,0,this.screenSize.width-1);this.screen_.setCursorPosition(r,i),(e.column>i||e.column==i&&e.overflow)&&(this.screen_.cursorPosition.overflow=!0)},r.Terminal.prototype.clearCursorOverflow=function(){this.screen_.cursorPosition.overflow=!1},r.Terminal.prototype.setCursorShape=function(e){this.cursorShape_=e,this.restyleCursor_()},r.Terminal.prototype.getCursorShape=function(){return this.cursorShape_},r.Terminal.prototype.setWidth=function(e){null!=e?(this.div_.style.width=Math.ceil(this.scrollPort_.characterSize.width*e+this.scrollPort_.currentScrollbarWidthPx)+"px",this.realizeSize_(e,this.screenSize.height),this.scheduleSyncCursorPosition_()):this.div_.style.width="100%"},r.Terminal.prototype.setHeight=function(e){null!=e?(this.div_.style.height=this.scrollPort_.characterSize.height*e+"px",this.realizeSize_(this.screenSize.width,e),this.scheduleSyncCursorPosition_()):this.div_.style.height="100%"},r.Terminal.prototype.realizeSize_=function(e,t){e!=this.screenSize.width&&this.realizeWidth_(e),t!=this.screenSize.height&&this.realizeHeight_(t),this.io.onTerminalResize_(e,t)},r.Terminal.prototype.realizeWidth_=function(e){if(e<=0)throw new Error("Attempt to realize bad width: "+e);var t=e-this.screen_.getWidth();if(this.screenSize.width=e,this.screen_.setColumnCount(e),t>0)this.defaultTabStops&&this.setDefaultTabStops(this.screenSize.width-t);else for(var r=this.tabStops_.length-1;r>=0&&!(this.tabStops_[r]0){if(t<=this.scrollbackRows_.length){var n=Math.min(t,this.scrollbackRows_.length),s=this.scrollbackRows_.splice(this.scrollbackRows_.length-n,n);this.screen_.unshiftRows(s),t-=n,r.row+=n}t&&this.appendRows_(t)}this.setVTScrollRegion(null,null),this.restoreCursor(r)},r.Terminal.prototype.scrollHome=function(){this.scrollPort_.scrollRowToTop(0)},r.Terminal.prototype.scrollEnd=function(){this.scrollPort_.scrollRowToBottom(this.getRowCount())},r.Terminal.prototype.scrollPageUp=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e-this.screenSize.height+1)},r.Terminal.prototype.scrollPageDown=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e+this.screenSize.height-1)},r.Terminal.prototype.scrollLineUp=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e-1)},r.Terminal.prototype.scrollLineDown=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e+1)},r.Terminal.prototype.wipeContents=function(){this.scrollbackRows_.length=0,this.scrollPort_.resetCache(),[this.primaryScreen_,this.alternateScreen_].forEach(function(e){var t=e.getHeight();t>0&&(this.renumberRows_(0,t),this.clearHome(e))}.bind(this)),this.syncCursorPosition_(),this.scrollPort_.invalidate()},r.Terminal.prototype.reset=function(){this.clearAllTabStops(),this.setDefaultTabStops(),this.clearHome(this.primaryScreen_),this.primaryScreen_.textAttributes.reset(),this.clearHome(this.alternateScreen_),this.alternateScreen_.textAttributes.reset(),this.setCursorBlink(!!this.prefs_.get("cursor-blink")),this.vt.reset(),this.softReset()},r.Terminal.prototype.softReset=function(){this.options_=new r.Options,this.options_.cursorBlink=!!this.timeouts_.cursorBlink,this.primaryScreen_.textAttributes.resetColorPalette(),this.alternateScreen_.textAttributes.resetColorPalette(),this.setVTScrollRegion(null,null),this.setCursorVisible(!0)},r.Terminal.prototype.forwardTabStop=function(){for(var e=this.screen_.cursorPosition.column,t=0;te)return void this.setCursorColumn(this.tabStops_[t]);var r=this.screen_.cursorPosition.overflow;this.setCursorColumn(this.screenSize.width-1),this.screen_.cursorPosition.overflow=r},r.Terminal.prototype.backwardTabStop=function(){for(var e=this.screen_.cursorPosition.column,t=this.tabStops_.length-1;t>=0;t--)if(this.tabStops_[t]=0;t--){if(this.tabStops_[t]==e)return;if(this.tabStops_[t]0){var s=this.screen_.shiftRows(n);Array.prototype.push.apply(this.scrollbackRows_,s),this.scrollPort_.isScrolledEnd&&this.scheduleScrollDown_()}t>=this.screen_.rowsArray.length&&(t=this.screen_.rowsArray.length-1),this.setAbsoluteCursorPosition(t,0)},r.Terminal.prototype.moveRows_=function(e,t,r){var i,o,n=this.screen_.removeRows(e,t);this.screen_.insertRows(r,n),e=this.screenSize.width&&(a=!0,s=this.screenSize.width-this.screen_.cursorPosition.column),a&&!this.options_.wraparound?(n=t.wc.substr(e,i,s-1)+t.wc.substr(e,o-1),s=o):n=t.wc.substr(e,i,s);for(var c=r.TextAttributes.splitWidecharString(n),l=0;l=0;o--)this.setAbsoluteCursorPosition(t+o,0),this.screen_.clearCursorRow()},r.Terminal.prototype.deleteLines=function(e){var t=this.saveCursor(),r=t.row,i=this.getVTScrollBottom(),o=i-r+1,n=i-(e=Math.min(e,o))+1;e!=o&&this.moveRows_(r,e,n);for(var s=0;st)this.setCssVar("cursor-offset-row","-1");else{this.options_.cursorVisible&&"none"==this.cursorNode_.style.display&&(this.cursorNode_.style.display=""),this.setCssVar("cursor-offset-row",r-e+" + "+`${this.scrollPort_.visibleRowTopMargin}px`),this.setCssVar("cursor-offset-col",this.screen_.cursorPosition.column),this.cursorNode_.setAttribute("title","("+this.screen_.cursorPosition.column+", "+this.screen_.cursorPosition.row+")");var i=this.document_.getSelection();i&&i.isCollapsed&&this.screen_.syncSelectionCaret(i)}},r.Terminal.prototype.restyleCursor_=function(){var e=this.cursorShape_;"false"==this.cursorNode_.getAttribute("focus")&&(e=r.Terminal.cursorShape.BLOCK);var t=this.cursorNode_.style;switch(e){case r.Terminal.cursorShape.BEAM:t.height="var(--hterm-charsize-height)",t.backgroundColor="transparent",t.borderBottomStyle=null,t.borderLeftStyle="solid";break;case r.Terminal.cursorShape.UNDERLINE:t.height=this.scrollPort_.characterSize.baseline+"px",t.backgroundColor="transparent",t.borderBottomStyle="solid",t.borderLeftStyle=null;break;default:t.height="var(--hterm-charsize-height)",t.backgroundColor=this.cursorColor_,t.borderBottomStyle=null,t.borderLeftStyle=null}},r.Terminal.prototype.scheduleSyncCursorPosition_=function(){if(!this.timeouts_.syncCursor){var e=this;this.timeouts_.syncCursor=setTimeout((function(){e.syncCursorPosition_(),delete e.timeouts_.syncCursor}),0)}},r.Terminal.prototype.showZoomWarning_=function(e){if(!this.zoomWarningNode_){if(!e)return;this.zoomWarningNode_=this.document_.createElement("div"),this.zoomWarningNode_.id="hterm:zoom-warning",this.zoomWarningNode_.style.cssText="color: black;background-color: #ff2222;font-size: large;border-radius: 8px;opacity: 0.75;padding: 0.2em 0.5em 0.2em 0.5em;top: 0.5em;right: 1.2em;position: absolute;-webkit-text-size-adjust: none;-webkit-user-select: none;-moz-text-size-adjust: none;-moz-user-select: none;",this.zoomWarningNode_.addEventListener("click",(function(e){this.parentNode.removeChild(this)}))}this.zoomWarningNode_.textContent=t.MessageManager.replaceReferences(r.zoomWarningMessage,[parseInt(100*this.scrollPort_.characterSize.zoomFactor)]),this.zoomWarningNode_.style.fontFamily=this.prefs_.get("font-family"),e?this.zoomWarningNode_.parentNode||this.div_.parentNode.appendChild(this.zoomWarningNode_):this.zoomWarningNode_.parentNode&&this.zoomWarningNode_.parentNode.removeChild(this.zoomWarningNode_)},r.Terminal.prototype.showOverlay=function(e,t){if(!this.overlayNode_){if(!this.div_)return;this.overlayNode_=this.document_.createElement("div"),this.overlayNode_.style.cssText="border-radius: 15px;font-size: xx-large;opacity: 0.75;padding: 0.2em 0.5em 0.2em 0.5em;position: absolute;-webkit-user-select: none;-webkit-transition: opacity 180ms ease-in;-moz-user-select: none;-moz-transition: opacity 180ms ease-in;",this.overlayNode_.addEventListener("mousedown",(function(e){e.preventDefault(),e.stopPropagation()}),!0)}this.overlayNode_.style.color=this.prefs_.get("background-color"),this.overlayNode_.style.backgroundColor=this.prefs_.get("foreground-color"),this.overlayNode_.style.fontFamily=this.prefs_.get("font-family"),this.overlayNode_.textContent=e,this.overlayNode_.style.opacity="0.75",this.overlayNode_.parentNode||this.div_.appendChild(this.overlayNode_);var i=r.getClientSize(this.div_),o=r.getClientSize(this.overlayNode_);this.overlayNode_.style.top=(i.height-o.height)/2+"px",this.overlayNode_.style.left=(i.width-o.width-this.scrollPort_.currentScrollbarWidthPx)/2+"px";var n=this;this.overlayTimeout_&&clearTimeout(this.overlayTimeout_),null!==t&&(this.overlayTimeout_=setTimeout((function(){n.overlayNode_.style.opacity="0",n.overlayTimeout_=setTimeout((function(){n.overlayNode_.parentNode&&n.overlayNode_.parentNode.removeChild(n.overlayNode_),n.overlayTimeout_=null,n.overlayNode_.style.opacity="0.75"}),200)}),t||1500))},r.Terminal.prototype.paste=function(){return r.pasteFromClipboard(this.document_)},r.Terminal.prototype.copyStringToClipboard=function(e){this.prefs_.get("enable-clipboard-notice")&&setTimeout(this.showOverlay.bind(this,r.notifyCopyMessage,500),200);var t=this.document_.createElement("pre");t.id="hterm:copy-to-clipboard-source",t.textContent=e,t.style.cssText="-webkit-user-select: text;-moz-user-select: text;position: absolute;top: -99px",this.document_.body.appendChild(t);var i=this.document_.getSelection(),o=i.anchorNode,n=i.anchorOffset,s=i.focusNode,a=i.focusOffset;i.selectAllChildren(t),r.copySelectionToClipboard(this.document_),i.extend&&(i.collapse(o,n),i.extend(s,a)),t.parentNode.removeChild(t)},r.Terminal.prototype.getSelectionText=function(){var e=this.scrollPort_.selection;if(e.sync(),e.isCollapsed)return null;var i=e.startOffset,o=e.startNode;if("X-ROW"!=o.nodeName)for("#text"==o.nodeName&&"SPAN"==o.parentNode.nodeName&&(o=o.parentNode);o.previousSibling;)o=o.previousSibling,i+=r.TextAttributes.nodeWidth(o);var n=r.TextAttributes.nodeWidth(e.endNode)-e.endOffset;if("X-ROW"!=(o=e.endNode).nodeName)for("#text"==o.nodeName&&"SPAN"==o.parentNode.nodeName&&(o=o.parentNode);o.nextSibling;)o=o.nextSibling,n+=r.TextAttributes.nodeWidth(o);var s=this.getRowsText(e.startRow.rowIndex,e.endRow.rowIndex+1);return t.wc.substring(s,i,t.wc.strWidth(s)-n)},r.Terminal.prototype.copySelectionToClipboard=function(){var e=this.getSelectionText();null!=e&&this.copyStringToClipboard(e)},r.Terminal.prototype.overlaySize=function(){this.showOverlay(this.screenSize.width+"x"+this.screenSize.height)},r.Terminal.prototype.onVTKeystroke=function(e){this.scrollOnKeystroke_&&this.scrollPort_.scrollRowToBottom(this.getRowCount()),this.io.onVTKeystroke(this.keyboard.encode(e))},r.Terminal.prototype.openUrl=function(e){window.chrome&&window.chrome.browser?chrome.browser.openTab({url:e}):window.open(e,"_blank").focus()},r.Terminal.prototype.openSelectedUrl_=function(){var e=this.getSelectionText();if((null!=e||(this.screen_.expandSelection(this.document_.getSelection()),null!=(e=this.getSelectionText())))&&!(e.length>2048||e.search(/[\s\[\](){}<>"'\\^`]/)>=0)){if(e.search("^[a-zA-Z][a-zA-Z0-9+.-]*://")<0)switch(e.split(":",1)[0]){case"mailto":break;default:e="http://"+e}this.openUrl(e)}},r.Terminal.prototype.onMouse_=function(e){if(!e.processedByTerminalHandler_){var r=!this.defeatMouseReports_&&this.vt.mouseReport!=this.vt.MOUSE_REPORT_DISABLED;if(e.processedByTerminalHandler_=!0,e.terminalRow=parseInt((e.clientY-this.scrollPort_.visibleRowTopMargin)/this.scrollPort_.characterSize.height)+1,e.terminalColumn=parseInt(e.clientX/this.scrollPort_.characterSize.width)+1,!("mousedown"==e.type&&e.terminalColumn>this.screenSize.width)){if(this.options_.cursorVisible&&!r&&(e.terminalRow-1==this.screen_.cursorPosition.row&&e.terminalColumn-1==this.screen_.cursorPosition.column?this.cursorNode_.style.display="none":"none"==this.cursorNode_.style.display&&(this.cursorNode_.style.display="")),"mousedown"==e.type&&(e.altKey||!r?(this.defeatMouseReports_=!0,this.setSelectionEnabled(!0)):(this.defeatMouseReports_=!1,this.document_.getSelection().collapseToEnd(),this.setSelectionEnabled(!1),e.preventDefault())),r)this.scrollBlockerNode_.engaged||("mousedown"==e.type?(this.scrollBlockerNode_.engaged=!0,this.scrollBlockerNode_.style.top=e.clientY-5+"px",this.scrollBlockerNode_.style.left=e.clientX-5+"px"):"mousemove"==e.type&&(this.document_.getSelection().collapseToEnd(),e.preventDefault())),this.onMouse(e);else{if("dblclick"==e.type&&this.copyOnSelect&&(this.screen_.expandSelection(this.document_.getSelection()),this.copySelectionToClipboard(this.document_)),"click"==e.type&&!e.shiftKey&&(e.ctrlKey||e.metaKey))return clearTimeout(this.timeouts_.openUrl),void(this.timeouts_.openUrl=setTimeout(this.openSelectedUrl_.bind(this),500));if("mousedown"==e.type&&(this.mouseRightClickPaste&&2==e.button||e.button==this.mousePasteButton)&&(this.paste()||console.warning("Could not paste manually due to web restrictions")),"mouseup"==e.type&&0==e.button&&this.copyOnSelect&&!this.document_.getSelection().isCollapsed&&this.copySelectionToClipboard(this.document_),"mousemove"!=e.type&&"mouseup"!=e.type||!this.scrollBlockerNode_.engaged||(this.scrollBlockerNode_.engaged=!1,this.scrollBlockerNode_.style.top="-99px"),this.scrollWheelArrowKeys_&&!e.shiftKey&&this.keyboard.applicationCursor&&!this.isPrimaryScreen()&&"wheel"==e.type){var i=this.scrollPort_.scrollWheelDelta(e),o=t.f.smartFloorDivide(Math.abs(i),this.scrollPort_.characterSize.height),n="O"+(i<0?"B":"A");this.io.sendString(n.repeat(o)),e.preventDefault()}}"mouseup"==e.type&&this.document_.getSelection().isCollapsed&&(this.defeatMouseReports_=!1)}}},r.Terminal.prototype.onMouse=function(e){},r.Terminal.prototype.onFocusChange_=function(e){this.cursorNode_.setAttribute("focus",e),this.restyleCursor_(),!0===e&&this.closeBellNotifications_()},r.Terminal.prototype.onScroll_=function(){this.scheduleSyncCursorPosition_()},r.Terminal.prototype.onPaste_=function(e){var t=e.text.replace(/\n/gm,"\r");t=this.keyboard.encode(t),this.options_.bracketedPaste&&(t="[200~"+t+"[201~"),this.io.sendString(t)},r.Terminal.prototype.onCopy_=function(e){this.useDefaultWindowCopy||(e.preventDefault(),setTimeout(this.copySelectionToClipboard.bind(this),0))},r.Terminal.prototype.onResize_=function(){var e=Math.floor(this.scrollPort_.getScreenWidth()/this.scrollPort_.characterSize.width)||0,r=t.f.smartFloorDivide(this.scrollPort_.getScreenHeight(),this.scrollPort_.characterSize.height)||0;if(!(e<=0||r<=0)){var i=e!=this.screenSize.width||r!=this.screenSize.height;this.realizeSize_(e,r),this.showZoomWarning_(1!=this.scrollPort_.characterSize.zoomFactor),i&&this.overlaySize(),this.restyleCursor_(),this.scheduleSyncCursorPosition_()}},r.Terminal.prototype.onCursorBlink_=function(){this.options_.cursorBlink?"false"==this.cursorNode_.getAttribute("focus")||"0"==this.cursorNode_.style.opacity?(this.cursorNode_.style.opacity="1",this.timeouts_.cursorBlink=setTimeout(this.myOnCursorBlink_,this.cursorBlinkCycle_[0])):(this.cursorNode_.style.opacity="0",this.timeouts_.cursorBlink=setTimeout(this.myOnCursorBlink_,this.cursorBlinkCycle_[1])):delete this.timeouts_.cursorBlink},r.Terminal.prototype.setScrollbarVisible=function(e){this.scrollPort_.setScrollbarVisible(e)},r.Terminal.prototype.setScrollWheelMoveMultipler=function(e){this.scrollPort_.setScrollWheelMoveMultipler(e)},r.Terminal.prototype.closeBellNotifications_=function(){this.bellNotificationList_.forEach((function(e){e.close()})),this.bellNotificationList_.length=0},t.rtdep("lib.encodeUTF8"),r.Terminal.IO=function(e){this.terminal_=e,this.previousIO_=null},r.Terminal.IO.prototype.showOverlay=function(e,t){this.terminal_.showOverlay(e,t)},r.Terminal.IO.prototype.createFrame=function(e,t){return new r.Frame(this.terminal_,e,t)},r.Terminal.IO.prototype.setTerminalProfile=function(e){this.terminal_.setProfile(e)},r.Terminal.IO.prototype.push=function(){var e=new r.Terminal.IO(this.terminal_);return e.keyboardCaptured_=this.keyboardCaptured_,e.columnCount=this.columnCount,e.rowCount=this.rowCount,e.previousIO_=this.terminal_.io,this.terminal_.io=e,e},r.Terminal.IO.prototype.pop=function(){this.terminal_.io=this.previousIO_},r.Terminal.IO.prototype.sendString=function(e){console.log("Unhandled sendString: "+e)},r.Terminal.IO.prototype.onVTKeystroke=function(e){console.log("Unobserverd VT keystroke: "+JSON.stringify(e))},r.Terminal.IO.prototype.onTerminalResize_=function(e,t){for(var r=this;r;)r.columnCount=e,r.rowCount=t,r=r.previousIO_;this.onTerminalResize(e,t)},r.Terminal.IO.prototype.onTerminalResize=function(e,t){},r.Terminal.IO.prototype.writeUTF8=function(e){if(this.terminal_.io!=this)throw"Attempt to print from inactive IO object.";this.terminal_.interpret(e)},r.Terminal.IO.prototype.writelnUTF8=function(e){if(this.terminal_.io!=this)throw"Attempt to print from inactive IO object.";this.terminal_.interpret(e+"\r\n")},r.Terminal.IO.prototype.print=r.Terminal.IO.prototype.writeUTF16=function(e){this.writeUTF8(t.encodeUTF8(e))},r.Terminal.IO.prototype.println=r.Terminal.IO.prototype.writelnUTF16=function(e){this.writelnUTF8(t.encodeUTF8(e))},t.rtdep("lib.colors"),r.TextAttributes=function(e){this.document_=e,this.foregroundSource=this.SRC_DEFAULT,this.backgroundSource=this.SRC_DEFAULT,this.foreground=this.DEFAULT_COLOR,this.background=this.DEFAULT_COLOR,this.defaultForeground="rgb(255, 255, 255)",this.defaultBackground="rgb(0, 0, 0)",this.bold=!1,this.faint=!1,this.italic=!1,this.blink=!1,this.underline=!1,this.strikethrough=!1,this.inverse=!1,this.invisible=!1,this.wcNode=!1,this.asciiNode=!0,this.tileData=null,this.colorPalette=null,this.resetColorPalette()},r.TextAttributes.prototype.enableBold=!0,r.TextAttributes.prototype.enableBoldAsBright=!0,r.TextAttributes.prototype.DEFAULT_COLOR=t.f.createEnum(""),r.TextAttributes.prototype.SRC_DEFAULT="default",r.TextAttributes.prototype.SRC_RGB="rgb",r.TextAttributes.prototype.setDocument=function(e){this.document_=e},r.TextAttributes.prototype.clone=function(){var e=new r.TextAttributes(null);for(var t in this)e[t]=this[t];return e.colorPalette=this.colorPalette.concat(),e},r.TextAttributes.prototype.reset=function(){this.foregroundSource=this.SRC_DEFAULT,this.backgroundSource=this.SRC_DEFAULT,this.foreground=this.DEFAULT_COLOR,this.background=this.DEFAULT_COLOR,this.bold=!1,this.faint=!1,this.italic=!1,this.blink=!1,this.underline=!1,this.strikethrough=!1,this.inverse=!1,this.invisible=!1,this.wcNode=!1,this.asciiNode=!0},r.TextAttributes.prototype.resetColorPalette=function(){this.colorPalette=t.colors.colorPalette.concat(),this.syncColors()},r.TextAttributes.prototype.isDefault=function(){return this.foregroundSource==this.SRC_DEFAULT&&this.backgroundSource==this.SRC_DEFAULT&&!this.bold&&!this.faint&&!this.italic&&!this.blink&&!this.underline&&!this.strikethrough&&!this.inverse&&!this.invisible&&!this.wcNode&&this.asciiNode&&null==this.tileData},r.TextAttributes.prototype.createContainer=function(e){if(this.isDefault())return this.document_.createTextNode(e);var t=this.document_.createElement("span"),r=t.style,i=[];this.foreground!=this.DEFAULT_COLOR&&(r.color=this.foreground),this.background!=this.DEFAULT_COLOR&&(r.backgroundColor=this.background),this.enableBold&&this.bold&&(r.fontWeight="bold"),this.faint&&(t.faint=!0),this.italic&&(r.fontStyle="italic"),this.blink&&(i.push("blink-node"),t.blinkNode=!0);var o="";return this.underline&&(o+=" underline",t.underline=!0),this.strikethrough&&(o+=" line-through",t.strikethrough=!0),o&&(r.textDecoration=o),this.wcNode&&(i.push("wc-node"),t.wcNode=!0,t.asciiNode=!1),null!=this.tileData&&(i.push("tile"),i.push("tile_"+this.tileData),t.tileNode=!0),e&&(t.textContent=e),i.length&&(t.className=i.join(" ")),t},r.TextAttributes.prototype.matchesContainer=function(e){if("string"==typeof e||3==e.nodeType)return this.isDefault();var t=e.style;return!(this.wcNode||e.wcNode||this.asciiNode!=this.asciiNode||null!=this.tileData||e.tileNode||this.foreground!=t.color||this.background!=t.backgroundColor||(this.enableBold&&this.bold)!=!!t.fontWeight||this.blink!=e.blinkNode||this.italic!=!!t.fontStyle||!!this.underline!=!!e.underline||!!this.strikethrough!=!!e.strikethrough)},r.TextAttributes.prototype.setDefaults=function(e,t){this.defaultForeground=e,this.defaultBackground=t,this.syncColors()},r.TextAttributes.prototype.syncColors=function(){var e,r=this.foregroundSource,i=this.backgroundSource,o=this.DEFAULT_COLOR,n=this.DEFAULT_COLOR;if(this.inverse&&(r=this.backgroundSource,i=this.foregroundSource,o=this.defaultBackground,n=this.defaultForeground),this.enableBoldAsBright&&this.bold&&r!=this.SRC_DEFAULT&&r!=this.SRC_RGB&&(r=(e=r)<8?e+8:e),this.invisible&&(r=i,o=this.defaultBackground),r!=this.SRC_RGB&&(this.foreground=r==this.SRC_DEFAULT?o:this.colorPalette[r]),this.faint&&!this.invisible){var s=this.foreground==this.DEFAULT_COLOR?this.defaultForeground:this.foreground;this.foreground=t.colors.mix(s,"rgb(0, 0, 0)",.3333)}i!=this.SRC_RGB&&(this.background=i==this.SRC_DEFAULT?n:this.colorPalette[i])},r.TextAttributes.containersMatch=function(e,t){if("string"==typeof e)return r.TextAttributes.containerIsDefault(t);if(e.nodeType!=t.nodeType)return!1;if(3==e.nodeType)return!0;var i=e.style,o=t.style;return i.color==o.color&&i.backgroundColor==o.backgroundColor&&i.fontWeight==o.fontWeight&&i.fontStyle==o.fontStyle&&i.textDecoration==o.textDecoration},r.TextAttributes.containerIsDefault=function(e){return"string"==typeof e||3==e.nodeType},r.TextAttributes.nodeWidth=function(e){return e.asciiNode?e.textContent.length:t.wc.strWidth(e.textContent)},r.TextAttributes.nodeSubstr=function(e,r,i){return e.asciiNode?e.textContent.substr(r,i):t.wc.substr(e.textContent,r,i)},r.TextAttributes.nodeSubstring=function(e,r,i){return e.asciiNode?e.textContent.substring(r,i):t.wc.substring(e.textContent,r,i)},r.TextAttributes.splitWidecharString=function(e){for(var r=[],i=0,o=0,n=!0,s=0;s0?0:1),s|=i,r=""+String.fromCharCode(s)+o+n,e.preventDefault();break;case"mousedown":var s=Math.min(e.button,2)+32;s|=i,r=""+String.fromCharCode(s)+o+n;break;case"mouseup":r="#"+o+n;break;case"mousemove":this.mouseReport==this.MOUSE_REPORT_DRAG&&e.buttons&&(s=32,1&e.buttons?s+=0:4&e.buttons?s+=1:2&e.buttons?s+=2:s+=3,s+=32,s|=i,r=""+String.fromCharCode(s)+o+n);break;case"click":case"dblclick":break;default:console.error("Unknown mouse event: "+e.type,e)}r&&this.terminal.io.sendString(r)}},r.VT.prototype.interpret=function(e){for(this.parseState_.resetBuf(this.decode(e));!this.parseState_.isComplete();){var t=this.parseState_.func,r=this.parseState_.pos;if(e=this.parseState_.buf,this.parseState_.func.call(this,this.parseState_),this.parseState_.func==t&&this.parseState_.pos==r&&this.parseState_.buf==e)throw"Parser did not alter the state!"}},r.VT.prototype.decode=function(e){return"utf-8"==this.characterEncoding?this.decodeUTF8(e):e},r.VT.prototype.encodeUTF8=function(e){return t.encodeUTF8(e)},r.VT.prototype.decodeUTF8=function(e){return this.utf8Decoder_.decode(e)},r.VT.prototype.setEncoding=function(e){switch(e){default:console.warn('Invalid value for "terminal-encoding": '+e);case"iso-2022":this.codingSystemUtf8_=!1,this.codingSystemLocked_=!1;break;case"utf-8-locked":this.codingSystemUtf8_=!0,this.codingSystemLocked_=!0;break;case"utf-8":this.codingSystemUtf8_=!0,this.codingSystemLocked_=!1}this.updateEncodingState_()},r.VT.prototype.updateEncodingState_=function(){var e=Object.keys(r.VT.CC1).filter((e=>!this.codingSystemUtf8_||e.charCodeAt()<128)).map((e=>"\\x"+t.f.zpad(e.charCodeAt().toString(16),2))).join("");this.cc1Pattern_=new RegExp(`[${e}]`)},r.VT.prototype.parseUnknown_=function(e){var t=this;function r(e){!t.codingSystemUtf8_&&t[t.GL].GL&&(e=t[t.GL].GL(e)),t.terminal.print(e)}var i=e.peekRemainingBuf(),o=i.search(this.cc1Pattern_);return 0==o?(this.dispatch("CC1",i.substr(0,1),e),void e.advance(1)):-1==o?(r(i),void e.reset()):(r(i.substr(0,o)),this.dispatch("CC1",i.substr(o,1),e),void e.advance(o+1))},r.VT.prototype.parseCSI_=function(e){var t=e.peekChar(),r=e.args;t>="@"&&t<="~"?(this.dispatch("CSI",this.leadingModifier_+this.trailingModifier_+t,e),e.resetParseFunction()):";"==t?this.trailingModifier_?e.resetParseFunction():(r.length||r.push(""),r.push("")):t>="0"&&t<="9"?this.trailingModifier_?e.resetParseFunction():r.length?r[r.length-1]+=t:r[0]=t:t>=" "&&t<="?"&&":"!=t?r.length?this.trailingModifier_+=t:this.leadingModifier_+=t:this.cc1Pattern_.test(t)?this.dispatch("CC1",t,e):e.resetParseFunction(),e.advance(1)},r.VT.prototype.parseUntilStringTerminator_=function(e){var t,r=e.peekRemainingBuf(),i=r.search(/(\x1b\\|\x07)/),o=e.args;return o.length||(o[0]="",o[1]=new Date),-1==i?(o[0]+=r,o[0].length>this.maxStringSequence&&(t="too long: "+o[0].length),-1!=o[0].indexOf("")&&(t="embedded escape: "+o[0].indexOf("")),new Date-o[1]>this.oscTimeLimit_&&(t="timeout expired: "+new Date-o[1]),t?(console.log("parseUntilStringTerminator_: aborting: "+t,o[0]),e.reset(o[0]),!1):(e.advance(r.length),!0)):o[0].length+i>this.maxStringSequence?(e.reset(o[0]+r),!1):(o[0]+=r.substr(0,i),e.resetParseFunction(),e.advance(i+(""==r.substr(i,1)?2:1)),!0)},r.VT.prototype.dispatch=function(e,t,i){var o=r.VT[e][t];o?o!=r.VT.ignore?"CC1"==e&&t>""&&!this.enable8BitControl?console.warn("Ignoring 8-bit control code: 0x"+t.charCodeAt(0).toString(16)):o.apply(this,[i,t]):this.warnUnimplemented&&console.warn("Ignored "+e+" code: "+JSON.stringify(t)):this.warnUnimplemented&&console.warn("Unknown "+e+" code: "+JSON.stringify(t))},r.VT.prototype.setANSIMode=function(e,t){4==e?this.terminal.setInsertMode(t):20==e?this.terminal.setAutoCarriageReturn(t):this.warnUnimplemented&&console.warn("Unimplemented ANSI Mode: "+e)},r.VT.prototype.setDECMode=function(e,t){switch(parseInt(e,10)){case 1:this.terminal.keyboard.applicationCursor=t;break;case 3:this.allowColumnWidthChanges_&&(this.terminal.setWidth(t?132:80),this.terminal.clearHome(),this.terminal.setVTScrollRegion(null,null));break;case 5:this.terminal.setReverseVideo(t);break;case 6:this.terminal.setOriginMode(t);break;case 7:this.terminal.setWraparound(t);break;case 12:this.enableDec12&&this.terminal.setCursorBlink(t);break;case 25:this.terminal.setCursorVisible(t);break;case 30:this.terminal.setScrollbarVisible(t);break;case 40:this.terminal.allowColumnWidthChanges_=t;break;case 45:this.terminal.setReverseWraparound(t);break;case 67:this.terminal.keyboard.backspaceSendsBackspace=t;break;case 1e3:this.mouseReport=t?this.MOUSE_REPORT_CLICK:this.MOUSE_REPORT_DISABLED,this.terminal.syncMouseStyle();break;case 1002:this.mouseReport=t?this.MOUSE_REPORT_DRAG:this.MOUSE_REPORT_DISABLED,this.terminal.syncMouseStyle();break;case 1010:this.terminal.scrollOnOutput=t;break;case 1011:this.terminal.scrollOnKeystroke=t;break;case 1036:this.terminal.keyboard.metaSendsEscape=t;break;case 1039:t?this.terminal.keyboard.previousAltSendsWhat_||(this.terminal.keyboard.previousAltSendsWhat_=this.terminal.keyboard.altSendsWhat,this.terminal.keyboard.altSendsWhat="escape"):this.terminal.keyboard.previousAltSendsWhat_&&(this.terminal.keyboard.altSendsWhat=this.terminal.keyboard.previousAltSendsWhat_,this.terminal.keyboard.previousAltSendsWhat_=null);break;case 47:case 1047:this.terminal.setAlternateMode(t);break;case 1048:this.savedState_.save();case 1049:t?(this.savedState_.save(),this.terminal.setAlternateMode(t),this.terminal.clear()):(this.terminal.setAlternateMode(t),this.savedState_.restore());break;case 2004:this.terminal.setBracketedPaste(t);break;default:this.warnUnimplemented&&console.warn("Unimplemented DEC Private Mode: "+e)}},r.VT.ignore=function(){},r.VT.CC1={},r.VT.ESC={},r.VT.CSI={},r.VT.OSC={},r.VT.VT52={},r.VT.CC1["\0"]=r.VT.ignore,r.VT.CC1[""]=r.VT.ignore,r.VT.CC1[""]=function(){this.terminal.ringBell()},r.VT.CC1["\b"]=function(){this.terminal.cursorLeft(1)},r.VT.CC1["\t"]=function(){this.terminal.forwardTabStop()},r.VT.CC1["\n"]=function(){this.terminal.formFeed()},r.VT.CC1["\v"]=r.VT.CC1["\n"],r.VT.CC1["\f"]=r.VT.CC1["\n"],r.VT.CC1["\r"]=function(){this.terminal.setCursorColumn(0)},r.VT.CC1[""]=function(){this.GL="G1"},r.VT.CC1[""]=function(){this.GL="G0"},r.VT.CC1[""]=r.VT.ignore,r.VT.CC1[""]=r.VT.ignore,r.VT.CC1[""]=function(e){"G1"==this.GL&&(this.GL="G0"),e.resetParseFunction(),this.terminal.print("?")},r.VT.CC1[""]=r.VT.CC1[""],r.VT.CC1[""]=function(e){e.func=function e(t){var r=t.consumeChar();""!=r&&(this.dispatch("ESC",r,t),t.func==e&&t.resetParseFunction())}},r.VT.CC1[""]=r.VT.ignore,r.VT.CC1["„"]=r.VT.ESC.D=function(){this.terminal.lineFeed()},r.VT.CC1["…"]=r.VT.ESC.E=function(){this.terminal.setCursorColumn(0),this.terminal.cursorDown(1)},r.VT.CC1["ˆ"]=r.VT.ESC.H=function(){this.terminal.setTabStop(this.terminal.getCursorColumn())},r.VT.CC1[""]=r.VT.ESC.M=function(){this.terminal.reverseLineFeed()},r.VT.CC1["Ž"]=r.VT.ESC.N=r.VT.ignore,r.VT.CC1[""]=r.VT.ESC.O=r.VT.ignore,r.VT.CC1[""]=r.VT.ESC.P=function(e){e.resetArguments(),e.func=this.parseUntilStringTerminator_},r.VT.CC1["–"]=r.VT.ESC.V=r.VT.ignore,r.VT.CC1["—"]=r.VT.ESC.W=r.VT.ignore,r.VT.CC1["˜"]=r.VT.ESC.X=r.VT.ignore,r.VT.CC1["š"]=r.VT.ESC.Z=function(){this.terminal.io.sendString("[?1;2c")},r.VT.CC1["›"]=r.VT.ESC["["]=function(e){e.resetArguments(),this.leadingModifier_="",this.trailingModifier_="",e.func=this.parseCSI_},r.VT.CC1["œ"]=r.VT.ESC["\\"]=r.VT.ignore,r.VT.CC1[""]=r.VT.ESC["]"]=function(e){e.resetArguments(),e.func=function e(t){if(this.parseUntilStringTerminator_(t)&&t.func!=e){var r=t.args[0].match(/^(\d+);(.*)$/);r?(t.args[0]=r[2],this.dispatch("OSC",r[1],t)):console.warn("Invalid OSC: "+JSON.stringify(t.args[0]))}}},r.VT.CC1["ž"]=r.VT.ESC["^"]=function(e){e.resetArguments(),e.func=this.parseUntilStringTerminator_},r.VT.CC1["Ÿ"]=r.VT.ESC._=function(e){e.resetArguments(),e.func=this.parseUntilStringTerminator_},r.VT.ESC[" "]=function(e){e.func=function(e){var t=e.consumeChar();this.warnUnimplemented&&console.warn("Unimplemented sequence: ESC 0x20 "+t),e.resetParseFunction()}},r.VT.ESC["#"]=function(e){e.func=function(e){"8"==e.consumeChar()&&this.terminal.fill("E"),e.resetParseFunction()}},r.VT.ESC["%"]=function(e){e.func=function(e){var t=e.consumeChar();if(this.codingSystemLocked_)return"/"==t&&e.consumeChar(),void e.resetParseFunction();switch(t){case"@":this.setEncoding("iso-2022");break;case"G":this.setEncoding("utf-8");break;case"/":switch(t=e.consumeChar()){case"G":case"H":case"I":this.setEncoding("utf-8-locked");break;default:this.warnUnimplemented&&console.warn("Unknown ESC % / argument: "+JSON.stringify(t))}break;default:this.warnUnimplemented&&console.warn("Unknown ESC % argument: "+JSON.stringify(t))}e.resetParseFunction()}},r.VT.ESC["("]=r.VT.ESC[")"]=r.VT.ESC["*"]=r.VT.ESC["+"]=r.VT.ESC["-"]=r.VT.ESC["."]=r.VT.ESC["/"]=function(e,t){e.func=function(e){var r=e.consumeChar();if(""==r)return e.resetParseFunction(),void e.func();var i=this.characterMaps.getMap(r);void 0!==i?"("==t?this.G0=i:")"==t||"-"==t?this.G1=i:"*"==t||"."==t?this.G2=i:"+"!=t&&"/"!=t||(this.G3=i):this.warnUnimplemented&&console.log('Invalid character set for "'+t+'": '+r),e.resetParseFunction()}},r.VT.ESC[6]=r.VT.ignore,r.VT.ESC[7]=function(){this.savedState_.save()},r.VT.ESC[8]=function(){this.savedState_.restore()},r.VT.ESC[9]=r.VT.ignore,r.VT.ESC["="]=function(){this.terminal.keyboard.applicationKeypad=!0},r.VT.ESC[">"]=function(){this.terminal.keyboard.applicationKeypad=!1},r.VT.ESC.F=r.VT.ignore,r.VT.ESC.c=function(){this.reset(),this.terminal.reset()},r.VT.ESC.l=r.VT.ESC.m=r.VT.ignore,r.VT.ESC.n=function(){this.GL="G2"},r.VT.ESC.o=function(){this.GL="G3"},r.VT.ESC["|"]=function(){this.GR="G3"},r.VT.ESC["}"]=function(){this.GR="G2"},r.VT.ESC["~"]=function(){this.GR="G1"},r.VT.OSC[0]=function(e){this.terminal.setWindowTitle(e.args[0])},r.VT.OSC[2]=r.VT.OSC[0],r.VT.OSC[4]=function(e){for(var r=e.args[0].split(";"),i=parseInt(r.length/2),o=this.terminal.getTextAttributes().colorPalette,n=[],s=0;s=o.length||("?"!=c?(c=t.colors.x11ToCSS(c))&&(o[a]=c):(c=t.colors.rgbToX11(o[a]))&&n.push(a+";"+c))}n.length&&this.terminal.io.sendString("]4;"+n.join(";")+"")},r.VT.OSC[9]=function(e){r.notify({body:e.args[0]})},r.VT.OSC[10]=function(e){var i=e.args[0].split(";");if(i){var o=t.colors.x11ToCSS(i.shift());o&&this.terminal.setForegroundColor(o),i.length>0&&(e.args[0]=i.join(";"),r.VT.OSC[11].apply(this,[e]))}},r.VT.OSC[11]=function(e){var r=e.args[0].split(";");if(r){var i=t.colors.x11ToCSS(r.shift());i&&this.terminal.setBackgroundColor(i)}},r.VT.OSC[50]=function(e){var t=e.args[0].match(/CursorShape=(.)/i);if(t)switch(t[1]){case"1":this.terminal.setCursorShape(r.Terminal.cursorShape.BEAM);break;case"2":this.terminal.setCursorShape(r.Terminal.cursorShape.UNDERLINE);break;default:this.terminal.setCursorShape(r.Terminal.cursorShape.BLOCK)}else console.warn("Could not parse OSC 50 args: "+e.args[0])},r.VT.OSC[52]=function(e){var t=e.args[0].match(/^[cps01234567]*;(.*)/);if(t){var r=window.atob(t[1]);r&&this.terminal.copyStringToClipboard(this.decode(r))}},r.VT.OSC[777]=function(e){var t;switch(e.args[0].split(";",1)[0]){case"notify":var i,o;(t=e.args[0].match(/^[^;]+;([^;]*)(;([\s\S]*))?$/))&&(i=t[1],o=t[3]),r.notify({title:i,body:o});break;default:console.warn("Unknown urxvt module: "+e.args[0])}},r.VT.CSI["@"]=function(e){this.terminal.insertSpace(e.iarg(0,1))},r.VT.CSI.A=function(e){this.terminal.cursorUp(e.iarg(0,1))},r.VT.CSI.B=function(e){this.terminal.cursorDown(e.iarg(0,1))},r.VT.CSI.C=function(e){this.terminal.cursorRight(e.iarg(0,1))},r.VT.CSI.D=function(e){this.terminal.cursorLeft(e.iarg(0,1))},r.VT.CSI.E=function(e){this.terminal.cursorDown(e.iarg(0,1)),this.terminal.setCursorColumn(0)},r.VT.CSI.F=function(e){this.terminal.cursorUp(e.iarg(0,1)),this.terminal.setCursorColumn(0)},r.VT.CSI.G=function(e){this.terminal.setCursorColumn(e.iarg(0,1)-1)},r.VT.CSI.H=function(e){this.terminal.setCursorPosition(e.iarg(0,1)-1,e.iarg(1,1)-1)},r.VT.CSI.I=function(e){var r=e.iarg(0,1);r=t.f.clamp(r,1,this.terminal.screenSize.width);for(var i=0;iT"]=r.VT.ignore,r.VT.CSI.X=function(e){this.terminal.eraseToRight(e.iarg(0,1))},r.VT.CSI.Z=function(e){var r=e.iarg(0,1);r=t.f.clamp(r,1,this.terminal.screenSize.width);for(var i=0;ic"]=function(e){this.terminal.io.sendString("[>0;256;0c")},r.VT.CSI.d=function(e){this.terminal.setAbsoluteCursorRow(e.iarg(0,1)-1)},r.VT.CSI.f=r.VT.CSI.H,r.VT.CSI.g=function(e){e.args[0]&&0!=e.args[0]?3==e.args[0]&&this.terminal.clearAllTabStops():this.terminal.clearTabStopAtCursor(!1)},r.VT.CSI.h=function(e){for(var t=0;t=i.colorPalette.length)continue;i.foregroundSource=a}else if(39==n)i.foregroundSource=i.SRC_DEFAULT;else if(n<48)i.backgroundSource=n-40;else if(48==n){var s;if(null!=(s=r(o)))i.backgroundSource=i.SRC_RGB,i.background=s,o+=5;else{var a;if(null==(a=t(o)))break;if(o+=2,a>=i.colorPalette.length)continue;i.backgroundSource=a}}else i.backgroundSource=i.SRC_DEFAULT;else n>=90&&n<=97?i.foregroundSource=n-90+8:n>=100&&n<=107&&(i.backgroundSource=n-100+8)}i.setDefaults(this.terminal.getForegroundColor(),this.terminal.getBackgroundColor())}else i.reset()},r.VT.CSI[">m"]=r.VT.ignore,r.VT.CSI.n=function(e){if(5==e.args[0])this.terminal.io.sendString("0n");else if(6==e.args[0]){var t=this.terminal.getCursorRow()+1,r=this.terminal.getCursorColumn()+1;this.terminal.io.sendString("["+t+";"+r+"R")}},r.VT.CSI[">n"]=r.VT.ignore,r.VT.CSI["?n"]=function(e){if(6==e.args[0]){var t=this.terminal.getCursorRow()+1,r=this.terminal.getCursorColumn()+1;this.terminal.io.sendString("["+t+";"+r+"R")}else 15==e.args[0]?this.terminal.io.sendString("[?11n"):25==e.args[0]?this.terminal.io.sendString("[?21n"):26==e.args[0]?this.terminal.io.sendString("[?12;1;0;0n"):53==e.args[0]&&this.terminal.io.sendString("[?50n")},r.VT.CSI[">p"]=r.VT.ignore,r.VT.CSI["!p"]=function(){this.reset(),this.terminal.softReset()},r.VT.CSI.$p=r.VT.ignore,r.VT.CSI["?$p"]=r.VT.ignore,r.VT.CSI['"p']=r.VT.ignore,r.VT.CSI.q=r.VT.ignore,r.VT.CSI[" q"]=function(e){var t=e.args[0];0==t||1==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BLOCK),this.terminal.setCursorBlink(!0)):2==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BLOCK),this.terminal.setCursorBlink(!1)):3==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.UNDERLINE),this.terminal.setCursorBlink(!0)):4==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.UNDERLINE),this.terminal.setCursorBlink(!1)):5==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BEAM),this.terminal.setCursorBlink(!0)):6==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BEAM),this.terminal.setCursorBlink(!1)):console.warn("Unknown cursor style: "+t)},r.VT.CSI['"q']=r.VT.ignore,r.VT.CSI.r=function(e){var t=e.args,r=t[0]?parseInt(t[0],10)-1:null,i=t[1]?parseInt(t[1],10)-1:null;this.terminal.setVTScrollRegion(r,i),this.terminal.setCursorPosition(0,0)},r.VT.CSI["?r"]=r.VT.ignore,r.VT.CSI.$r=r.VT.ignore,r.VT.CSI.s=function(){this.savedState_.save()},r.VT.CSI["?s"]=r.VT.ignore,r.VT.CSI.t=r.VT.ignore,r.VT.CSI.$t=r.VT.ignore,r.VT.CSI[">t"]=r.VT.ignore,r.VT.CSI[" t"]=r.VT.ignore,r.VT.CSI.u=function(){this.savedState_.restore()},r.VT.CSI[" u"]=r.VT.ignore,r.VT.CSI.$v=r.VT.ignore,r.VT.CSI["'w"]=r.VT.ignore,r.VT.CSI.x=r.VT.ignore,r.VT.CSI["*x"]=r.VT.ignore,r.VT.CSI.$x=r.VT.ignore,r.VT.CSI.z=function(e){if(!(e.args.length<1)){var t=e.args[0];if(0==t){if(e.args.length<2)return;this.terminal.getTextAttributes().tileData=e.args[1]}else 1==t&&(this.terminal.getTextAttributes().tileData=null)}},r.VT.CSI["'z"]=r.VT.ignore,r.VT.CSI.$z=r.VT.ignore,r.VT.CSI["'{"]=r.VT.ignore,r.VT.CSI["'|"]=r.VT.ignore,r.VT.CSI["'}"]=r.VT.ignore,r.VT.CSI["'~"]=r.VT.ignore,t.rtdep("lib.f"),r.VT.CharacterMap=function(e,t){this.description=e,this.GL=null,this.glmapBase_=t,this.sync_()},r.VT.CharacterMap.prototype.sync_=function(e){if(!this.glmapBase_&&!e)return this.GL=null,delete this.glmap_,void delete this.glre_;this.glmap_=e?Object.assign({},this.glmapBase_,e):this.glmapBase_;var r=Object.keys(this.glmap_).map((e=>"\\x"+t.f.zpad(e.charCodeAt(0).toString(16))));this.glre_=new RegExp("["+r.join("")+"]","g"),this.GL=e=>e.replace(this.glre_,(e=>this.glmap_[e]))},r.VT.CharacterMap.prototype.reset=function(){this.glmap_!==this.glmapBase_&&this.sync_()},r.VT.CharacterMap.prototype.setOverrides=function(e){this.sync_(e)},r.VT.CharacterMap.prototype.clone=function(){var e=new r.VT.CharacterMap(this.description,this.glmapBase_);return this.glmap_!==this.glmapBase_&&e.setOverrides(this.glmap_),e},r.VT.CharacterMaps=function(){this.maps_=r.VT.CharacterMaps.DefaultMaps,this.mapsBase_=this.maps_},r.VT.CharacterMaps.prototype.getMap=function(e){return this.maps_.hasOwnProperty(e)?this.maps_[e]:void 0},r.VT.CharacterMaps.prototype.addMap=function(e,t){this.maps_===this.mapsBase_&&(this.maps_=Object.assign({},this.mapsBase_)),this.maps_[e]=t},r.VT.CharacterMaps.prototype.reset=function(){this.maps_!==r.VT.CharacterMaps.DefaultMaps&&(this.maps_=r.VT.CharacterMaps.DefaultMaps)},r.VT.CharacterMaps.prototype.setOverrides=function(e){for(var t in this.maps_===this.mapsBase_&&(this.maps_=Object.assign({},this.mapsBase_)),e){var i=this.getMap(t);void 0!==i?(this.maps_[t]=i.clone(),this.maps_[t].setOverrides(e[t])):this.addMap(t,new r.VT.CharacterMap("user "+t,e[t]))}},r.VT.CharacterMaps.DefaultMaps={},r.VT.CharacterMaps.DefaultMaps[0]=new r.VT.CharacterMap("graphic",{"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"}),r.VT.CharacterMaps.DefaultMaps.A=new r.VT.CharacterMap("british",{"#":"£"}),r.VT.CharacterMaps.DefaultMaps.B=new r.VT.CharacterMap("us",null),r.VT.CharacterMaps.DefaultMaps[4]=new r.VT.CharacterMap("dutch",{"#":"£","@":"¾","[":"IJ","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"}),r.VT.CharacterMaps.DefaultMaps.C=r.VT.CharacterMaps.DefaultMaps[5]=new r.VT.CharacterMap("finnish",{"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"}),r.VT.CharacterMaps.DefaultMaps.R=new r.VT.CharacterMap("french",{"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"}),r.VT.CharacterMaps.DefaultMaps.Q=new r.VT.CharacterMap("french canadian",{"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"}),r.VT.CharacterMaps.DefaultMaps.K=new r.VT.CharacterMap("german",{"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"}),r.VT.CharacterMaps.DefaultMaps.Y=new r.VT.CharacterMap("italian",{"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"}),r.VT.CharacterMaps.DefaultMaps.E=r.VT.CharacterMaps.DefaultMaps[6]=new r.VT.CharacterMap("norwegian/danish",{"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"}),r.VT.CharacterMaps.DefaultMaps.Z=new r.VT.CharacterMap("spanish",{"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"}),r.VT.CharacterMaps.DefaultMaps[7]=r.VT.CharacterMaps.DefaultMaps.H=new r.VT.CharacterMap("swedish",{"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"}),r.VT.CharacterMaps.DefaultMaps["="]=new r.VT.CharacterMap("swiss",{"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}),t.resource.add("hterm/audio/bell","audio/ogg;base64","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"),t.resource.add("hterm/images/icon-96","image/png;base64","iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAYAAADimHc4AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK7OHOkAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAAZiS0dEAP8A/wD/oL2nkwAAAAlwSFlzAAAuIwAALiMBeKU/dgAAFKhJREFUeNrtXXlsXMd5/30z8649uDzEmxRFibIsOXZ8VInTJFYSW3actE1ctWkctEF6I0VRFEWAoihQoAjQFmiBogWaIEADFCmQXklto04TO0ndWI4bxZalWHJinTYtkRJFkctzl9zd977+8c49+UjuipbCD1y+9+ae75vvmJlv3gO2YRu2YRu2YRu2YUuAtroBN3nfeKsaSXWurarvRvUrTnlccV/5a3lDReRKFdc4Za6nzvW2b7OIpwZh7N37iHYiPztyvy4iqA00Tng/WXH1f3GQsFki0Qbz+cAV12jeRkTwwUd2yfsVI89OjbLrwnoJILw8EoAOIAFgLwDTCxcAJBEJIiIAgoiICAIgIgIBJGpdPRCRq3sPCBAJAii8QgAk/PIFkSBBQvh3QRkQXtECBKpxH9br5hMikhcg4QV4dYkgARFBSkmlUmnp7LmLX8rl8q95OPKJ0DQCkPeTEcQrAD179+7+7LsP3vtJw9A1ZvbwFfQM/r1/AyD64KLBv5JHIaIwIpI5GIbevd82r0I3OMjvJfOo5ffCqw1EhIRlQQi3a37p0atfTVB22PhIuHt95tnnBr75zHN/AGASoYjyxVVTCOCPfOWN9sGfue+df/L4r3z8MSGUOv3aWYDIq43BEXXEQRPCQK5qFleFMdduOwMV3WKUBXFVyVXhtm3jrjtvw13vuL1uPXGAAUghkGlLPXJ9ZvZzL738oz8HsOhFF2u3aH0E8JEvAWhe+n2PHD70Z7/xmccfLBSK9M1nX0AqnYFSKiB7fIiOzg3k21BeYHW1gMkr1/DBB+6HkGLTxmRfbxf9+qc/8WszM9lzF99468twxZCAq5wbQiMCREWPBkDXde3eI489+he/+1u/et/c3AK+/uSzyLTvgK7rm+tBE4CZA1HRaFT7oqNQKCCdsqBp61GD9eHBD77XunJ16o/+6q+/cLJYLP2fhzfGGkRYiwBRK2fnL/3iRz7/uT/8nfuuz2Txla8+hXRbJ6QUKBaLuJmgVLJRKuShlIBpatiEFApACIFHH/lA//NHj33qe0ePvQJXEa/JnHEIoABYd925/zOPf+JjBxMJC//yxX+GYaZgGAZse00ue1uByyWMQrGEldVVKCWbQgAA6OnegQP7997zvaPH2gGsIpQidWuoRwA/o2/bDz70off+nFIa/fczz2Pq2hzSbRksLCxsNT43BI7jYCW/ihd/cBKWZTZhQcFV9qMjQ0gmEwm4hkqsOVEjDogq37bOjvaElBKLizmYVgKWZW01HjeOLGaAbUipoJTWHAKwa4KYpmHCJUB0lQCoU0scK0gCMJRSqqOjHel0EqZpIpFIbDUeNwwOM2y7gO4dnWhrSzVFBDEzMpkULNM04BIgFsS1ggxNUzKVSiCRsEBEUEoFiRq2v5HNXjMd18pSHVeZnuuniZaopIIQBAIhnUqgvb1tU3OBKFiWCdMydABWBH+bIoCvA3RNU9KyDOiahG2XAAAzszO4NHkZINcKALuddRHi3VWFReLcWy8dhxO5aFpvkhamD5HFwQQuStgwLPpsOza45GD/yD4MDw2jVCrCMHSkUwmws3kCMADD0GCZpialMG3bia4trVsJ+xkJAKSUStM0oWsSQrgTGdu2MXllEmezF/HRhz+C4b6hyEgrnyjVLLzhcho1iFsDiGomOzt+Ds/8z7PIzmfR39eP1dVVSOEijR0nRsFrg1ISpmkoQ9cTufxKrBbHmoUoJZWmlPDXRZgdMDNsx8HuXbtx3zvvhRQKTdFmLQACoT2dwY9efRWlvA1m1xJy2IEggkPrnUvXB9M0lGkaiVx+xR/ADQuPRQAppaY0JfzOBB0joFAs4Oyb59E0Y7pF4DDDdmw47LgygQHbbs7Ij4JpGMIwjGRFcF0xFJcDdE0pUb3YQ1hYWsDFSxff7vgHMyO3kkMGiaAPzScAwzB0YVlmAuHo3zQHkKaUppTHAUQBLQnAYm4J41feCldAGeHe2FaCq9fdXQMP8qt5sB6OlGbP4pkBwzBgGHoKMdcIG82Ew0RK6UqTxHAJEHSBCLmVHCavXwUcwGpXMJIS2YnVhrq01cAOQxkC7YMG5i6vwi65LV4trIK10GJyHLvpTTR0DZZlJtEEMxR+IVJJTSlFAFdZL47joFgswrEZ3X06Dv3eAH787Vm8/t0s8nMld9PjBhHCN1G7dlm490g3rIzCt/5yHIWiA5dxGQ5HOcBpatuYGZquwTSNTXMAogVoSukuAXwlzFUpSRCyl1cx+VoOBz/Zi93vyeDE16bx1iuLsIsOSLSWCuwwEh0a9h/uxDs+2gWnxDj+79dQKjhlg4bZl/vkiaDmtkvXNFimmURMJ4VYOkBpSldSug91TDYiIDdXwtEvTeDNlxZw3y/34PDnduLCi/M4+eQ0Zt5cCdI1G/FKFxg5mME9R7rRMWTi/AtzOPnENLKXV2tyrA+lFqzkKk3BNI0k3BWE5swDXA7wlm0bFEkEODbjzWPzmDqTw4HDnbjz57swdHcKp56+jte/k0VurtRUInSPJXD3Y90YfXcbZt7I49t/M45LJ5ZgF7lMAbsN9BfiXE5uthXEzFBK+TpAhrVunAAEeEp4DQ4oyyQI+fkSjn/tGsZfWcA9j3Xjvk/0Yte72vD8FyZw/Y2VauRsAA483ImDn+oF28DL/zqFn3wni/xcESSoTvkExxdBBNilFnCAlLBMM+Hhdk3HtThoIE1TulTuDlscAgAuNxCA6XN5HP+Pa8heWsHAgSQyA0ZzFr8IGHhHCukeHedfmMOpb8wgly021jXkTsjYm9C0YjNJSgFvHuAP7qbMA3TpcwAo1ooDOwwjKTH2QDvu/lg3lCnwg69cxcSpJc8dZJPgACeeuAYhgf0Pd6JjyMArX5/GlZ8sg23U5TCf+ESt0QFCCFiWYcF131kT4lhBpDSXAMy+Eq1PAXYAIYHBu9O490g3evclMf7yAk785zSuX8i7Y68ZOoCA6xdW8N2/u4TRd2dw75FuPPqnu3Dmu7N49RszWLiyGvgGRfM47HjNdzmg6U6kRLAs02wGAXwieBwgggoaMUD7oI67fmEHbjvUgfmrBTz395fw5ksLKK26pmgzO0wCsFcZ576XxeTpZdzxaCfu+HAXRg624eST0zh/dB6FXDjK3TUgVwQREUot0AFCEEx3U8ZoBgEAVwdoUnheFnWGLztA1y4Tj/zxCIyUwI+emsaPn5nF8qyvFFs0D/C805Zni3jpq1MY/+EC7jnSg/f+5gB69yXw/BcnYBfDIeMrYaLW6ACAYFmmjpi7YqpmCRWMq2maLgIOqFcUQ7MErp5ZxqmnZ0Jx0+IJWNBIr5qpszl852/fwp73ZNC3PwmhKCQAUWCGAu5MuNlriEQEy6zaFauLhHg6QClNejte9YQICcL1i3k8/4UJd/bZZHETGwGCYK8yzjw3h4vHFmAXym19dxfNE0EtcqkxTVPTdd0qFApRPNaEtcxQAiA0TelCeKvRDTSoXWTYJb5ho75Rq0kApbwDrphrOREd0Ip5AOBuyhiGHsttpB4BohiUmqZpgel4Mx1qournYCbcUg4wpLccUasVZVCLAJUZhKaUTp5hvTWCpXnAcEIOsG00fxuVYRq6MA3dX5JuCGt5xhEAqWkq4IC4M+GYbV0/bLJ6h92dmlaJIG9ThkyzbE9gQ0rYB6lpSgUc0CT8C0nQzPUvCDk2o7iysUU0gmsFcSCCnJZspeq6BtPUk3HSxrGChKZpmu/U2gwKsMPo2Z/E+397AELFL48EMHFqGd//x0k49gYwR+VWUGvmAQxD12GZZgox1tpiuSa6HOCJIJ8umxo5hELOxvSFPEiuIxcR5idXNzVqqwnQXBZghr8r5m/KbHgxzs+oNE1T/sBvhggiAcyOr+B//+FyUzsfD0ERM7RFIkjTgj2BNTmgnhUUXcd2N4SpBUp4C6DVHABmaEr5+8L+rtiGlTADUK4I8kJ8XeDDes/KAw37zPUSrYUn5tpJOJqE4ThOSACn+RzAAKSU/p7AmgI2phWkyeB4ZqQiAsFZtkFOZI+Ao7SgytVgeJoQVBkf+HRGrxVhVBFGqHj24imSP3psFUAylYCSEsWSDdu2y86WNQukuytmIdwVq3tSJo5zrtI0JUMjiAJzbrB/AA8YRnCWNnLON3JuFyEiIj8AZen9Vc0wL0JkRtMgGlfjDHBwDSLKzwp7dRZL+aYivZwAApZlWnAPt0TxuSYBKocCA1BKUxIgMBy0taUAOCiVikilUkin0/FbFnEz3xxQLGMg6rpemX9paQm37x2DlLLMU6IZIITwOUCraEAVERotR4ccoDQJAI7DGBrsx8MP3o+nv/V9dHf3BAc1IjguO00d+OpHffYrw5ir09WMi5wd4PC8QLDHXHGmIHr1G8dgsOOgoyOJB973LjR/KSLYFYtuymxYCZOUUtM8z2i/w48cPgTTMPDD46eQX1mG768Smqq+qAFEROwIQSASZVdBAiQIQggI8q7+c/AjSCEgZBgm/TgZ3stovKy4RsqzLBMjOweRSiXhNOFwRi0CmJbhE2BTm/KspNQ0pcrMVaUkDj/0fnzg0P0olkqhs+4a71xoeA0LKCurIrhmf2rJzca9cl0Um3U0qZoAqNwV25AS9pEdnA2IguM4kFLC95bYLPiiJYIjtEI83BggWKapCSEsx3E2txinlPJOx9z8k7AbBUTBSRkrl8tv+GUdDIClksphFsvL+ZacKLn1gL3V0DICrOuQXvSohUNE2rnz41QqcdPNtVsRGEBbOgnbdkjTVKUZWgWqRn4fHABOoVBcNE2ztHPnoL7NAfHANHS8dPzE0sxMdsILqvsGrXocEGRYXFx67fUz5y729e7Yw4ADjumb2AJoWq2xCtrwdh0TQRz74YmLpZI9HitHjTCCa0KZANKGoX88lUo+pCmlhBASYMmAjE76Ea4CoNyerDYuUZHRXwiq2Pan8r/yNkcMAiqvv+pwFFWmpQqbl6isaqoVVtajsJfB0piXwCEidhyHp6/PHpudnfs8gDm4b07xX+xXBnEW43jv2Ojo73/20x+ezc47Fy6MN/IOXZ+ZxBvIE6eeCovbn0FXzjXqt4urEsVlGsPQ8NFHP0RP/dez4sv/9G8ZuK8wq2uKxtkRs+44cNs7e3t61NEXXwVIVUye1o+f+nnXsT1ZlrwiH9dKjLp+TZVhoRNy/Jb5PrPjlyfAzDiwf28vgD4AV+AuS5dq5au3FuS/I0IB6B3bM7L7wsW3IJSBjvb2ls0gb3YgIiym0hi/NImB/p5Mpi09Or+weBqu+CliHYtx/ruCpGWZu3cOD/Sceu08ioUiFhcX12rHTy0QEXTdwKVLV7B/326tt3fHnvmFRQMu8v03aAERIjTyC5IAtJGdg/s7OjLmbHYBXV29TVt6uFVB13VMXZtFwrIwMNA3dvbcGxaAFYQb9LE5QAFI7Nk9cgdAyOeL2CFlS8XPrbDUoZTC4lIexVIJw0P9IwDScBVxzVOT9QggvbiuvWOjY9nsPBxmLC0tbc+G1wApJWyHMTObxcjwYB+ALgBTCN8+WTYpa0QAQUTDu0eH+ycmp5BOtyGVSm0r4Big6wYmJqYwNNTfIaXss237DEIRVMYFUQIEnnDwOGBwoG9ff19P+tXT52BZiVtCRLS6D8wM0zRx6fJV/Oz991jdOzp3Xp2a9iVKlTlayQFR89PYPTp8wLJMys4tItNuYH5+fqvx97YHIQQ0XcfUtRmkUgnq7+8duTo1raGOj1AlB0TnAOm9Y6O35XJ5MAskk8lt8bMOmMzOwHEYw0P9IydOnjYR6oC6BADK5wD9e8d2DV65Og3dMKGUuuUUcCvFkcPA/PwCRnYODAJoA3AdNRy1anGABCA7O9vHRnYOdrx84sdgBubm5rY5ICa4m/8Sk1enMTQ00A2gG8BbKOcCBmpzgASgj44M7+/oaJfXpmfR3t5xy07AWsUFhUIRlyemcOcde9OpVHJgaWn5FawhgqLfhkmOje26nZmRyxXQtePmfU3xVoFpmbg2PYtMW1rr6+3eeX5pOaqEgyWJShHkJ9px297RXddnsiiWbCwuLv5UiJ9aX/bYSBlE7nV5OYe2dAqDA727zl94s5IAZSIoKv9FImHt2rN7pDs7N4/l5WVIOesRwH8Tbs2qgwvXi6uKr9PB+u8ujomSeKlonZG0RmRl6AcPHcTAQC8GB/uGEb5RPToh46j3bhCxc3hg39Bgn9nbswPpVBK53ErZR2tqOV358eVx4X2wzRRx2K103q12yEXo5Bvcry99I4ewuI5kYdsj6SIOxV5omXOwphS6ujoghMDw0EAvXEvoSgTfAKrfaUMA9F0jQ7d3d3chk0njoQ+9b83NiK0VTnHendOqdnLdIIY7K3YJ0N8ppeixbecMYixFpHaNDI+mU0n3pdl8a9n+NxJ87ujv7030dO8YvHL1mr8zWsYBlZrZymTSKaUlQNLAVo/vmxsIxCV0tLeJzs72bo8AboSH71qroStLS8u567PzyK86G9ox32yjW1lU6/sTrYFhmQqWZSGdSmZqpVZlqV3IzcxkZ6evTWFpebWmT2+tj6MF76OtdbSL61gyzDXTlZ0hKE9Q9rEGrrK8uELec1Vc+bcJIvfRwyM1wpiry2sU5opvRqYtCcuUKBSKJYQf/QzcFX0CRN0Rc8dPnD5qJZ7okVKCHYd8V27/RRcM9gAAewc/2bsLH+GnCf+Xp/PmFsFtEBumLqss8oTIX9lzUFCQJ9rAijRV92VtjTxHyquqpKzLjn+Fu+xsKyULzLzyxhuXnkSNL66WnYRB+KnCDNydHP/dZzpCU7WWUuAGzxwjvlYZ9cLWm4cbxMUpD2vkqQzzkVwEUIC7Gb/iXQvez3fSYlWR0YZLuUUvkYHw453+JGK9EKdTrdT0Db2TW9CO6DeGSyhHetWXVqOfvXAq7m0vY9xvBW+28RvJ3ygP4ca3KcpJUU7wER/VAQBqK2H/DRZ+hspDe81EYKsQsZV1Vg7oKNKjyGegsXNuFOE302Ywr/G8Fe2pq4fqIfZmQvjbHbZ6AGzDNmzDNmzD2xT+H+5UT7Tyxc2HAAAAJXRFWHRkYXRlOmNyZWF0ZQAyMDE2LTA2LTMwVDExOjUwOjAyLTA0OjAwOaSkCgAAACV0RVh0ZGF0ZTptb2RpZnkAMjAxMy0xMS0wMVQxMDozODoyNC0wNDowMNba8BsAAAAASUVORK5CYII="),t.resource.add("hterm/concat/date","text/plain","Tue, 22 Aug 2017 06:42:31 +0000"),t.resource.add("hterm/changelog/version","text/plain","1.70"),t.resource.add("hterm/changelog/date","text/plain","2017-08-16"),t.resource.add("hterm/git/HEAD","text/plain","git rev-parse HEAD"),e.exports={hterm:r,lib:t}},881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),o=window.getComputedStyle(this._terminal.element),n=r-(parseInt(o.getPropertyValue("padding-top"))+parseInt(o.getPropertyValue("padding-bottom"))),s=i-(parseInt(o.getPropertyValue("padding-right"))+parseInt(o.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(n/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var o=t[i]={i,l:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(i,o,function(t){return e[t]}.bind(null,o));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),o=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function n(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=n),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,o,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(o,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(o.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var o=function(){function e(){}return e.computeLink=function(t,r,i,o){for(var n,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(n=s.exec(c));){var d=n[1];if(!d){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(d,h+1),s.lastIndex=h+d.length,h<0)break;for(var f=h+d.length,p=l+1;f>i.cols;)f-=i.cols,p++;var _={start:{x:h+1,y:l+1},end:{x:f,y:p}};u.push({range:_,text:d,activate:o})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,o,n="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,o=a.isWrapped}while(o);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;n+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[n,s]},e}();t.LinkComputer=o}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),o=r(310),n=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,o){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=i.throwIfFalsy(i.createProgram(n,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,c),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,u),n.bufferData(n.ELEMENT_ARRAY_BUFFER,l,n.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,h,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,o,n){this._updateCell(this._vertices.attributes,e,t,r,i,o,n)},e.prototype._updateCell=function(e,t,r,i,o,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,o,s):this._atlas.getRasterizedGlyph(i,o,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):n.fill(e,0,u,u+l-1-2)):n.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,o=e.selection.endCol-i,n=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|_>>8&65280|_>>8&255;case 50331648:var g=c.AttributeData.toColorRGB(p.getBgColor());f|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;f|=v>>8&16711680|v>>8&65280|v>>8&255}f|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var b=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],n,f,b)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],n,f)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),o=r(455),n=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,o){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=i.throwIfFalsy(i.createProgram(n,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,c),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,h),n.bufferData(n.ELEMENT_ARRAY_BUFFER,l,n.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,n=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,o=0;o>24&255)/255,d=(c>>16&255)/255,f=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,d,f,1)},e.prototype._addRectangle=function(e,t,r,i,o,n,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=o,e[t+3]=n,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,o,n,s){e[t]=r,e[t+1]=i,e[t+2]=o,e[t+3]=n,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=o},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),o=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=o},666:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var n=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),d=r(855),f=r(345),p=r(782),_=function(e){function t(t,r,i){var o=e.call(this)||this;o._terminal=t,o._colors=r,o._model=new h.RenderModel,o._workCell=new p.CellData,o._onRequestRedraw=new f.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(o._gl=o._canvas.getContext("webgl2",c),!o._gl)throw new Error("WebGL2 not supported "+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new l.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var o=i+r.buffer.ydisp,n=r.buffer.lines.get(o);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=e[1]-i.buffer.active.viewportY,n=t[1]-i.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=_},381:(e,t)=>{function r(e,t,r){var o=i(e.createShader(t));if(e.shaderSource(o,r),e.compileShader(o),e.getShaderParameter(o,e.COMPILE_STATUS))return o;console.error(e.getShaderInfoLog(o)),e.deleteShader(o)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,o){var n=i(e.createProgram());if(e.attachShader(n,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(n,i(r(e,e.FRAGMENT_SHADER,o))),e.linkProgram(n),e.getProgramParameter(n,e.LINK_STATUS))return n;console.error(e.getProgramInfoLog(n)),e.deleteProgram(n)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),o=r(167),n=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),n.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,o){var n={foreground:o.foreground,background:o.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),o=r(855),n=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},f=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[r]=((e={})[o.DEFAULT_COLOR]=((t={})[o.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,o=this._cacheMapCombined[e];o||(o={},this._cacheMapCombined[e]=o);var n=o[t];return n&&(i=n[r]),i||(i=this._drawToCache(e,t,r),o[t]||(o[t]={}),o[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,o=this._cacheMap[e];o||(o={},this._cacheMap[e]=o);var n=o[t];return n&&(i=n[r]),i||(i=this._drawToCache(e,t,r),o[t]||(o[t]={}),o[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+p(i[0])+p(i[1])+p(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,o,n,c,l){var h=this._getMinimumContrastCss(e,t,r,i,o,n,c,l);if(h)return h;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var u=s.AttributeData.toColorRGB(n);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,o,n,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(o,n,s,c),d=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(d){var f=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(e,i,f),f}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var o="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),f=this._workAttributeData.getFgColorMode(),p=this._workAttributeData.getBgColor(),_=this._workAttributeData.getBgColorMode();if(s){var g=u;u=p,p=g;var v=f;f=_,_=v}var b=this._getBackgroundColor(_,p,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=b.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var y=n?this._config.fontWeightBold:this._config.fontWeight,m=h?"italic":"";this._tmpCtx.font=m+" "+y+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,_,p,r,f,u,s,n),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,o=t.rgba>>>16&255,n=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;o--){for(i=0;i=0;i--){for(o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),o=r(381),n=function(){function e(e,t,r,i,o){this._container=e,this._alpha=i,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=n},461:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var n=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,o){var n=e.call(this,t,"cursor",r,!0,i)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:"",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,o=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(o,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=e.getOption("cursorStyle");return n&&"block"!==n?this._cursorRenderers[n](e,o,i,this._cell):this._renderBlurCursor(e,o,i,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=i,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,o,i,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(n.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var n=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,o){var n=e.call(this,t,"link",r,!0,i)||this;return o.linkifier.onShowLinkUnderline((function(e){return n._onShowLinkUnderline(e)})),o.linkifier.onHideLinkUnderline((function(e){return n._onHideLinkUnderline(e)})),o.linkifier2.onShowLinkUnderline((function(e){return n._onShowLinkUnderline(e)})),o.linkifier2.onHideLinkUnderline((function(e){return n._onHideLinkUnderline(e)})),n}return o(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,o,n;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var o=t.rgba>>24&255,n=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((o-a)*i),u=c+Math.round((n-c)*i),d=l+Math.round((s-l)*i);return{css:r.toCss(h,u,d),rgba:r.toRgba(h,u,d)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=n.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return n.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=n.toChannels(t),o=i[0],s=i[1],a=i[2];return{css:r.toCss(o,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),o=n.toChannels(e.rgba),s=o[0],a=o[1],c=o[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,o=t/255,n=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(o=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u>>0}e.ensureContrastRatio=function(e,r,n){var s=o.relativeLuminance(e>>8),c=o.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(n=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var o=r;o{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var n=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return o(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",o=t;o65535?(n-=65536,i+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):i+=String.fromCharCode(n)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,o=0;this._interim&&(56320<=(a=e.charCodeAt(o++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var n=o;n=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(n))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,o,n,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var d=0,f=void 0;(f=63&this.interim[++d])&&d<4;)u<<=6,u|=f;for(var p=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,_=p-d;l<_;){if(l>=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[d++]=f,u<<=6,u|=63&f}h||(2===p?u<128?l--:t[a++]=u:3===p?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var g=r-4,v=l;v=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if((c=(31&i)<<6|63&o)<128){v--;continue}t[a++]=c}else if(224==(240&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if((c=(15&i)<<12|(63&o)<<6|63&n)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=e[v++]))){v--;continue}if((c=(7&i)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var o=t[i]={exports:{}};return e[i].call(o.exports,o,o.exports,r),o.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var n=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),d=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var o=0;oe;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=n.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),o=e;o<=t;o++){var n=r.translateBufferLineToString(r.ydisp+o,!0),s=(r.ydisp+o+1).toString(),a=this._rowElements[o];a&&(0===n.length?a.innerText=" ":a.textContent=n,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function o(e,t,o){e=i(e=r(e),o.decPrivateModes.bracketedPasteMode),o.triggerDataEvent(e,!0),t.value=""}function n(e,t,r){var i=r.getBoundingClientRect(),o=e.clientX-i.left-10,n=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=o+"px",t.style.top=n+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&o(e.clipboardData.getData("text/plain"),t,r)},t.paste=o,t.moveTextAreaUnderMouseCursor=n,t.rightClickHandler=function(e,t,r,i,o){n(e,t,r),o&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,o,n;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var o=t.rgba>>24&255,n=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((o-a)*i),u=c+Math.round((n-c)*i),d=l+Math.round((s-l)*i);return{css:r.toCss(h,u,d),rgba:r.toRgba(h,u,d)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=n.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return n.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=n.toChannels(t),o=i[0],s=i[1],a=i[2];return{css:r.toCss(o,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),o=n.toChannels(e.rgba),s=o[0],a=o[1],c=o[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,o=t/255,n=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(o=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u>>0}e.ensureContrastRatio=function(e,r,n){var s=o.relativeLuminance(e>>8),c=o.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(n=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),o=r(7239),n=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var o=t[r/36%6|0],n=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(o,n,s),rgba:i.channels.toRgba(o,n,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new o.ColorContrastCache,this.colors={foreground:n,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,n),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var o=this._ctx.getImageData(0,0,1,1).data;if(255!==o[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var n=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=n[0],a=n[1],c=n[2],l=n[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(o[0],o[1],o[2],o[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var o=!1;return{dispose:function(){o||(o=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var n=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new n.EventEmitter,this._onHideLinkUnderline=new n.EventEmitter,this._onLinkTooltip=new n.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),o=this._bufferService.buffer.iterator(!1,t,r,i,i);o.hasNext();)for(var n=o.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){o._rowsTimeoutId||e&&o._addLink(l[1],l[0]-o._bufferService.buffer.ydisp,a,r,d)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,d)},c=this;null!==(i=n.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,o){var n=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){n._onShowLinkUnderline.fire(n._createLinkHoverEvent(a,l,h,u,o)),n._element.classList.add("xterm-cursor-pointer")}),(function(e){n._onLinkTooltip.fire(n._createLinkHoverEvent(a,l,h,u,o)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){n._onHideLinkUnderline.fire(n._createLinkHoverEvent(a,l,h,u,o)),n._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,o){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:o}},e._timeBeforeLatency=200,e=i([o(0,s.IBufferService),o(1,s.ILogService),o(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,o,n,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=o,this.hoverCallback=n,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return o(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){o.splice(n--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,o=this;if(!this._activeProviderReplies)return r;for(var n=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,o,n;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(n=null===(o=t._currentLink)||void 0===o?void 0:o.state)||void 0===n?void 0:n.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,o=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(o)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||o&&e.range.start.x<=t.x||i&&o)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,o){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:o}},n([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,o,n,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=o,a._selectionService=n,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return o(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],o=0;o=n.x1&&r=n.x1||i===n.y2&&rn.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var n=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return o(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=n},3236:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var n=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),d=r(9312),f=r(6114),p=r(3656),_=r(9042),g=r(357),v=r(6954),b=r(4567),y=r(1296),m=r(7399),C=r(8460),S=r(8437),w=r(5680),A=r(3230),T=r(4725),E=r(428),R=r(8934),k=r(6465),x=r(5114),P=r(8969),L=r(4774),M=r(4269),D="undefined"!=typeof window?window.document:null,O=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=f,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(k.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return o(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,o=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:o.x-33,row:o.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var o={mouseup:null,wheel:null,mousedrag:null,mousemove:null},n=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",o.mouseup),o.mousedrag&&e._document.removeEventListener("mousemove",o.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?o.mousemove||(r.addEventListener("mousemove",l),o.mousemove=l):(r.removeEventListener("mousemove",o.mousemove),o.mousemove=null),16&t?o.wheel||(r.addEventListener("wheel",s,{passive:!1}),o.wheel=s):(r.removeEventListener("wheel",o.wheel),o.wheel=null),2&t?o.mouseup||(o.mouseup=n):(e._document.removeEventListener("mouseup",o.mouseup),o.mouseup=null),4&t?o.mousedrag||(o.mousedrag=a):(e._document.removeEventListener("mousemove",o.mousedrag),o.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(p.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),o.mouseup&&e._document.addEventListener("mouseup",o.mouseup),o.mousedrag&&e._document.addEventListener("mousemove",o.mousedrag),e.cancel(t)}))),this.register(p.addDisposableDomListener(r,"wheel",(function(t){if(o.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),n="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,o,n,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=o,l._optionsService=n,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return o(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},n([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var n=r(4725),s=r(2585),a=function(){function e(e,t,r,i,o,n){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=o,this._renderService=n,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,o=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,n=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=n+"px",this._compositionView.style.top=o+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=n+"px",this._textarea.style.top=o+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([o(2,s.IBufferService),o(3,s.IOptionsService),o(4,s.ICoreService),o(5,n.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,o,n,s,a,c){if(n){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),o),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function o(e,t,r,i){var o=e-n(r,e),a=t-n(r,t);return l(Math.abs(o-a)-function(e,t,r){for(var i=0,o=e-n(r,e),a=t-n(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,o,n){for(var s=e,a=t,c="";s!==r||a!==i;)s+=o?1:-1,o&&s>n.cols-1?(c+=n.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!o&&s<0&&(c+=n.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=n.cols-1,a--);return c+n.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-n(s,i):t;var d=i,f=function(e,t,r,i,s,a){var c;return c=o(r,i,s,a).length>0?i-n(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var d=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(d-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),o=r(3236),n=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new o.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new d(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new f(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return n},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),d=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),f=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),o=r(8803),n=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,o,n,s,a){this._container=e,this._alpha=i,this._colors=o,this._rendererId=n,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=n.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var n,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(n=e.isBgDefault()?o.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?o.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),n=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),n+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&n<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=n,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var n=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&n<8&&(n+=8),this._ctx.fillStyle=this._colors.ansi[n].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=o.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),o=e.getBgColor(),n=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=o,o=l;var h=i;i=n,n=h}var u=this._resolveBackgroundRgba(n,o,s),d=this._resolveForegroundRgba(i,r,s,a),f=c.rgba.ensureContrastRatio(u,d,this._optionsService.options.minimumContrastRatio);if(f){var p={css:c.channels.toCss(f>>24&255,f>>16&255,f>>8&255),rgba:f};return this._colors.contrastCache.setColor(e.bg,e.fg,p),p}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,d=function(e){function t(t,r,i,o,n,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,o,s,a)||this;return u._onRequestRedraw=n,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return o(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new f(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=this._optionsService.options.cursorStyle;return o&&"block"!==o?this._cursorRenderers[o](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},n([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=d;var f=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,o,n,s,a,c){var l=e.call(this,t,"link",r,!0,i,o,a,c)||this;return n.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),n.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return o(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),d=r(4725),f=r(2585),p=r(1420),_=r(8460),g=1,v=function(e){function t(t,r,i,o,n,s,u,d){var f=e.call(this)||this;f._colors=t,f._screenElement=r,f._bufferService=s,f._charSizeService=u,f._optionsService=d,f._id=g++,f._onRequestRedraw=new _.EventEmitter;var p=f._optionsService.options.allowTransparency;return f._renderLayers=[n.createInstance(a.TextRenderLayer,f._screenElement,0,f._colors,p,f._id),n.createInstance(c.SelectionRenderLayer,f._screenElement,1,f._colors,f._id),n.createInstance(h.LinkRenderLayer,f._screenElement,2,f._colors,f._id,i,o),n.createInstance(l.CursorRenderLayer,f._screenElement,3,f._colors,f._id,f._onRequestRedraw)],f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._devicePixelRatio=window.devicePixelRatio,f._updateDimensions(),f.onOptionsChanged(),f}return o(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,o,n,s){var a=e.call(this,t,"selection",r,!0,i,o,n,s)||this;return a._clearState(),a}return o(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,o=t[1]-this._bufferService.buffer.ydisp,n=Math.max(i,0),s=Math.min(o,this._bufferService.rows-1);if(n>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-n+1;this._fillCells(a,n,c,l)}else{a=i===n?e[0]:0;var h=n===o?t[0]:this._bufferService.cols;this._fillCells(a,n,h-a,1);var u=Math.max(s-n-1,0);if(this._fillCells(0,n+1,this._bufferService.cols,u),n!==s){var d=o===s?t[0]:this._bufferService.cols;this._fillCells(0,s,d,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},n([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),d=r(2585),f=r(4725),p=r(4269),_=function(e){function t(t,r,i,o,n,s,c,l){var h=e.call(this,t,"text",r,o,i,n,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return o(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var o=i+this._bufferService.buffer.ydisp,n=this._bufferService.buffer.lines.get(o),s=this._characterJoinerService.getJoinedCharacters(o),a=0;a0&&a===s[0][0]){l=!0;var d=s.shift();c=new p.JoinedCellData(this._workCell,n.translateToString(!0,d[0],d[1]),d[1]-d[0]),u=d[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},n([s(5,d.IBufferService),s(6,d.IOptionsService),s(7,f.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=_},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),o=r(1906),n=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),n.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var o={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var n=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),d={css:"rgba(0, 0, 0, 0)",rgba:0};function f(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=f;var p=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var o=t.createElement("canvas");o.width=i._config.scaledCharWidth,o.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(o.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var n=i._width*i._height;return i._cacheMap=new c.LRUMap(n),i._cacheMap.prealloc(n),i}return o(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var o=f(t),n=this._cacheMap.get(o);if(null!=n)return this._drawFromCache(e,n,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,o=t.rgba>>>16&255,n=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),d=r(8460),f=r(4774),p=r(9631),_="xterm-dom-renderer-owner-",g="xterm-fg-",v="xterm-bg-",b="xterm-focus",y=1,m=function(e){function t(t,r,i,o,n,s,c,l,h,u){var d=e.call(this)||this;return d._colors=t,d._element=r,d._screenElement=i,d._viewportElement=o,d._linkifier=n,d._linkifier2=s,d._charSizeService=l,d._optionsService=h,d._bufferService=u,d._terminalClass=y++,d._rowElements=[],d._rowContainer=document.createElement("div"),d._rowContainer.classList.add("xterm-rows"),d._rowContainer.style.lineHeight="normal",d._rowContainer.setAttribute("aria-hidden","true"),d._refreshRowElements(d._bufferService.cols,d._bufferService.rows),d._selectionContainer=document.createElement("div"),d._selectionContainer.classList.add("xterm-selection"),d._selectionContainer.setAttribute("aria-hidden","true"),d.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},d._updateDimensions(),d._injectCss(),d._rowFactory=c.createInstance(a.DomRendererRowFactory,document,d._colors),d._element.classList.add(_+d._terminalClass),d._screenElement.appendChild(d._rowContainer),d._screenElement.appendChild(d._selectionContainer),d._linkifier.onShowLinkUnderline((function(e){return d._onLinkHover(e)})),d._linkifier.onHideLinkUnderline((function(e){return d._onLinkLeave(e)})),d._linkifier2.onShowLinkUnderline((function(e){return d._onLinkHover(e)})),d._linkifier2.onHideLinkUnderline((function(e){return d._onLinkLeave(e)})),d}return o(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new d.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(_+this._terminalClass),p.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(b)},t.prototype.onFocus=function(){this._rowContainer.classList.add(b)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,o=t[1]-this._bufferService.buffer.ydisp,n=Math.max(i,0),s=Math.min(o,this._bufferService.rows-1);if(!(n>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(n,e[0],t[0],s-n+1));else{var c=i===n?e[0]:0,l=n===o?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(n,c,l));var h=s-n-1;if(a.appendChild(this._createSelectionElement(n+1,0,this._bufferService.cols,h)),n!==s){var u=o===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var o=document.createElement("div");return o.style.height=i*this.dimensions.actualCellHeight+"px",o.style.top=e*this.dimensions.actualCellHeight+"px",o.style.left=t*this.dimensions.actualCellWidth+"px",o.style.width=this.dimensions.actualCellWidth*(r-t)+"px",o},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=o&&(e=0,r++)}},n([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=m},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var n=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var d=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,o,a,c,h,d){for(var p=this._document.createDocumentFragment(),_=this._characterJoinerService.getJoinedCharacters(r),g=0,v=Math.min(e.length,d)-1;v>=0;v--)if(e.loadCell(v,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&v===a){g=v+1;break}for(v=0;v0&&v===_[0][0]){y=!0;var S=_.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),m=S[1]-1,b=C.getWidth()}var w=this._document.createElement("span");if(b>1&&(w.style.width=h*b+"px"),y&&(w.style.display="inline",a>=v&&a<=m&&(a=v)),i&&v===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),o){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var A=C.getFgColor(),T=C.getFgColorMode(),E=C.getBgColor(),R=C.getBgColorMode(),k=!!C.isInverse();if(k){var x=A;A=E,E=x;var P=T;T=R,R=P}switch(T){case 16777216:case 33554432:C.isBold()&&A<8&&this._optionsService.options.drawBoldTextInBrightColors&&(A+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[A])||w.classList.add("xterm-fg-"+A);break;case 50331648:var L=l.rgba.toColor(A>>16&255,A>>8&255,255&A);this._applyMinimumContrast(w,this._colors.background,L)||this._addStyle(w,"color:#"+f(A.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||k&&w.classList.add("xterm-fg-"+n.INVERTED_DEFAULT_COLOR)}switch(R){case 16777216:case 33554432:w.classList.add("xterm-bg-"+E);break;case 50331648:this._addStyle(w,"background-color:#"+f(E.toString(16),"0",6));break;case 0:default:k&&w.classList.add("xterm-bg-"+n.INVERTED_DEFAULT_COLOR)}p.appendChild(w),v=m}}return p},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([o(2,h.ICharacterJoinerService),o(3,c.IOptionsService)],e)}();function f(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var n=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([o(2,n.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var o=e.call(this)||this;return o.content=0,o.combinedData="",o.fg=t.fg,o.bg=t.bg,o.combinedData=r,o._width=i,o}return o(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var d=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,n,t,o),d=0;d1)for(u=this._getJoinedRanges(i,s,n,t,o),d=0;d{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var n=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,o){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,o)},e.prototype.getRawByteCoords=function(e,t,r,i){var o=this.getCoords(e,t,r,i);return s.getRawByteCoords(o)},i([o(0,n.IRenderService),o(1,n.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),d=r(2585),f=r(4725),p=function(e){function t(t,r,i,o,n,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=n,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(o.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var d=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});d.observe(i),l.register({dispose:function(){return d.disconnect()}})}return l}return o(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},n([s(3,d.IOptionsService),s(4,f.ICharSizeService),s(5,d.IBufferService)],t)}(l.Disposable);t.RenderService=p},9312:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),d=r(2585),f=r(9806),p=r(9504),_=r(844),g=r(4841),v=String.fromCharCode(160),b=new RegExp(v,"g"),y=function(e){function t(t,r,i,o,n,s,a,u){var d=e.call(this)||this;return d._element=t,d._screenElement=r,d._linkifier=i,d._bufferService=o,d._coreService=n,d._mouseService=s,d._optionsService=a,d._renderService=u,d._dragScrollAmount=0,d._enabled=!0,d._workCell=new l.CellData,d._mouseDownTimeStamp=0,d._oldHasSelection=!1,d._oldSelectionStart=void 0,d._oldSelectionEnd=void 0,d._onLinuxMouseSelection=d.register(new h.EventEmitter),d._onRedrawRequest=d.register(new h.EventEmitter),d._onSelectionChange=d.register(new h.EventEmitter),d._onRequestScrollLines=d.register(new h.EventEmitter),d._mouseMoveListener=function(e){return d._onMouseMove(e)},d._mouseUpListener=function(e){return d._onMouseUp(e)},d._coreService.onUserInput((function(){d.hasSelection&&d.clearSelection()})),d._trimListener=d._bufferService.buffer.lines.onTrim((function(e){return d._onTrim(e)})),d.register(d._bufferService.buffers.onBufferActivate((function(e){return d._onBufferActivate(e)}))),d.enable(),d._model=new c.SelectionModel(d._bufferService),d._activeSelectionMode=0,d}return o(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var o=e[1];o<=t[1];o++){var n=r.translateBufferLineToString(o,!0,e[0],t[0]);i.push(n)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),o=e[1]+1;o<=t[1]-1;o++){var c=r.lines.get(o);n=r.translateBufferLineToString(o,!0),c&&c.isWrapped?i[i.length-1]+=n:i.push(n)}e[1]!==t[1]&&(c=r.lines.get(t[1]),n=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=n:i.push(n))}return i.map((function(e){return e.replace(b," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,o=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(o)return this._model.selectionStart=[o.start.x-1,o.start.y-1],this._model.selectionStartLength=g.getRangeLength(o,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var n=this._getMouseBufferCoords(e);return!!n&&(this._selectWordAt(n,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=f.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=p.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var o=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:o>1&&t[0]!==i&&(r+=o-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var o=this._bufferService.buffer,n=o.lines.get(e[1]);if(n){var s=o.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(n,e),c=a,l=e[0]-a,h=0,u=0,d=0,f=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(f+=g-1,c+=g-1);p>0&&a>0&&!this._isCharWordSeparator(n.loadCell(p-1,this._workCell));){n.loadCell(p-1,this._workCell);var v=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,p--):v>1&&(d+=v-1,a-=v-1),a--,p--}for(;_1&&(f+=b-1,c+=b-1),c++,_++}}c++;var y=a+l-h+d,m=Math.min(this._bufferService.cols,c-a+h+u-d-f);if(t||""!==s.slice(a,c).trim()){if(r&&0===y&&32!==n.getCodePoint(0)){var C=o.lines.get(e[1]-1);if(C&&n.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;y-=w,m+=w}}}if(i&&y+m===this._bufferService.cols&&32!==n.getCodePoint(this._bufferService.cols-1)){var A=o.lines.get(e[1]+1);if(A&&A.isWrapped&&32!==A.getCodePoint(0)){var T=this._getWordAt([0,e[1]+1],!1,!1,!0);T&&(m+=T.length)}}return{start:y,length:m}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},n([s(3,d.IBufferService),s(4,d.ICoreService),s(5,u.IMouseService),s(6,d.IOptionsService),s(7,u.IRenderService)],t)}(_.Disposable);t.SelectionService=y},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var n=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),o=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;o--)this._array[this._getCyclicIndex(o+r.length)]=this._array[this._getCyclicIndex(o)];for(o=0;othis._maxLength){var n=this._length+r.length-this._maxLength;this._startIndex+=n,this._length=this._maxLength,this.onTrimEmitter.fire(n)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var o=e+t+r-this._length;if(o>0)for(this._length+=o;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var o in t)i[o]=r<=1?t[o]:t[o]?e(t[o],r-1):t[o];return i}},8969:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var n=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),d=r(8460),f=r(1753),p=r(3730),_=r(1480),g=r(7994),v=r(9282),b=r(5435),y=r(5981),m=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new d.EventEmitter,r._onData=new d.EventEmitter,r._onLineFeed=new d.EventEmitter,r._onResize=new d.EventEmitter,r._onScroll=new d.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(f.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(p.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(_.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(g.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new b.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(d.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(d.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(d.forwardEvent(r._coreService.onData,r._onData)),r.register(d.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new y.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return o(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new d.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!m&&(this._logService.warn("writeSync is unreliable and will be removed soon."),m=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(v.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return v.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(n=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),A=function(e){function t(t,r,i,o,n,l,h,p,g){void 0===g&&(g=new c.EscapeSequenceParser);var v=e.call(this)||this;v._bufferService=t,v._charsetService=r,v._coreService=i,v._dirtyRowService=o,v._logService=n,v._optionsService=l,v._coreMouseService=h,v._unicodeService=p,v._parser=g,v._parseBuffer=new Uint32Array(4096),v._stringDecoder=new u.StringToUtf32,v._utf8Decoder=new u.Utf8ToUtf32,v._workCell=new _.CellData,v._windowTitle="",v._iconName="",v._windowTitleStack=[],v._iconNameStack=[],v._curAttrData=d.DEFAULT_ATTR_DATA.clone(),v._eraseAttrDataInternal=d.DEFAULT_ATTR_DATA.clone(),v._onRequestBell=new f.EventEmitter,v._onRequestRefreshRows=new f.EventEmitter,v._onRequestReset=new f.EventEmitter,v._onRequestSyncScrollBar=new f.EventEmitter,v._onRequestWindowsOptionsReport=new f.EventEmitter,v._onA11yChar=new f.EventEmitter,v._onA11yTab=new f.EventEmitter,v._onCursorMove=new f.EventEmitter,v._onLineFeed=new f.EventEmitter,v._onScroll=new f.EventEmitter,v._onTitleChange=new f.EventEmitter,v._onAnsiColorChange=new f.EventEmitter,v._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},v.register(v._parser),v._parser.setCsiHandlerFallback((function(e,t){v._logService.debug("Unknown CSI code: ",{identifier:v._parser.identToString(e),params:t.toArray()})})),v._parser.setEscHandlerFallback((function(e){v._logService.debug("Unknown ESC code: ",{identifier:v._parser.identToString(e)})})),v._parser.setExecuteHandlerFallback((function(e){v._logService.debug("Unknown EXECUTE code: ",{code:e})})),v._parser.setOscHandlerFallback((function(e,t,r){v._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),v._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),v._logService.debug("Unknown DCS code: ",{identifier:v._parser.identToString(e),action:t,payload:r})})),v._parser.setPrintHandler((function(e,t,r){return v.print(e,t,r)})),v._parser.registerCsiHandler({final:"@"},(function(e){return v.insertChars(e)})),v._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return v.scrollLeft(e)})),v._parser.registerCsiHandler({final:"A"},(function(e){return v.cursorUp(e)})),v._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return v.scrollRight(e)})),v._parser.registerCsiHandler({final:"B"},(function(e){return v.cursorDown(e)})),v._parser.registerCsiHandler({final:"C"},(function(e){return v.cursorForward(e)})),v._parser.registerCsiHandler({final:"D"},(function(e){return v.cursorBackward(e)})),v._parser.registerCsiHandler({final:"E"},(function(e){return v.cursorNextLine(e)})),v._parser.registerCsiHandler({final:"F"},(function(e){return v.cursorPrecedingLine(e)})),v._parser.registerCsiHandler({final:"G"},(function(e){return v.cursorCharAbsolute(e)})),v._parser.registerCsiHandler({final:"H"},(function(e){return v.cursorPosition(e)})),v._parser.registerCsiHandler({final:"I"},(function(e){return v.cursorForwardTab(e)})),v._parser.registerCsiHandler({final:"J"},(function(e){return v.eraseInDisplay(e)})),v._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return v.eraseInDisplay(e)})),v._parser.registerCsiHandler({final:"K"},(function(e){return v.eraseInLine(e)})),v._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return v.eraseInLine(e)})),v._parser.registerCsiHandler({final:"L"},(function(e){return v.insertLines(e)})),v._parser.registerCsiHandler({final:"M"},(function(e){return v.deleteLines(e)})),v._parser.registerCsiHandler({final:"P"},(function(e){return v.deleteChars(e)})),v._parser.registerCsiHandler({final:"S"},(function(e){return v.scrollUp(e)})),v._parser.registerCsiHandler({final:"T"},(function(e){return v.scrollDown(e)})),v._parser.registerCsiHandler({final:"X"},(function(e){return v.eraseChars(e)})),v._parser.registerCsiHandler({final:"Z"},(function(e){return v.cursorBackwardTab(e)})),v._parser.registerCsiHandler({final:"`"},(function(e){return v.charPosAbsolute(e)})),v._parser.registerCsiHandler({final:"a"},(function(e){return v.hPositionRelative(e)})),v._parser.registerCsiHandler({final:"b"},(function(e){return v.repeatPrecedingCharacter(e)})),v._parser.registerCsiHandler({final:"c"},(function(e){return v.sendDeviceAttributesPrimary(e)})),v._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return v.sendDeviceAttributesSecondary(e)})),v._parser.registerCsiHandler({final:"d"},(function(e){return v.linePosAbsolute(e)})),v._parser.registerCsiHandler({final:"e"},(function(e){return v.vPositionRelative(e)})),v._parser.registerCsiHandler({final:"f"},(function(e){return v.hVPosition(e)})),v._parser.registerCsiHandler({final:"g"},(function(e){return v.tabClear(e)})),v._parser.registerCsiHandler({final:"h"},(function(e){return v.setMode(e)})),v._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return v.setModePrivate(e)})),v._parser.registerCsiHandler({final:"l"},(function(e){return v.resetMode(e)})),v._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return v.resetModePrivate(e)})),v._parser.registerCsiHandler({final:"m"},(function(e){return v.charAttributes(e)})),v._parser.registerCsiHandler({final:"n"},(function(e){return v.deviceStatus(e)})),v._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return v.deviceStatusPrivate(e)})),v._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return v.softReset(e)})),v._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return v.setCursorStyle(e)})),v._parser.registerCsiHandler({final:"r"},(function(e){return v.setScrollRegion(e)})),v._parser.registerCsiHandler({final:"s"},(function(e){return v.saveCursor(e)})),v._parser.registerCsiHandler({final:"t"},(function(e){return v.windowOptions(e)})),v._parser.registerCsiHandler({final:"u"},(function(e){return v.restoreCursor(e)})),v._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return v.insertColumns(e)})),v._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return v.deleteColumns(e)})),v._parser.setExecuteHandler(s.C0.BEL,(function(){return v.bell()})),v._parser.setExecuteHandler(s.C0.LF,(function(){return v.lineFeed()})),v._parser.setExecuteHandler(s.C0.VT,(function(){return v.lineFeed()})),v._parser.setExecuteHandler(s.C0.FF,(function(){return v.lineFeed()})),v._parser.setExecuteHandler(s.C0.CR,(function(){return v.carriageReturn()})),v._parser.setExecuteHandler(s.C0.BS,(function(){return v.backspace()})),v._parser.setExecuteHandler(s.C0.HT,(function(){return v.tab()})),v._parser.setExecuteHandler(s.C0.SO,(function(){return v.shiftOut()})),v._parser.setExecuteHandler(s.C0.SI,(function(){return v.shiftIn()})),v._parser.setExecuteHandler(s.C1.IND,(function(){return v.index()})),v._parser.setExecuteHandler(s.C1.NEL,(function(){return v.nextLine()})),v._parser.setExecuteHandler(s.C1.HTS,(function(){return v.tabSet()})),v._parser.registerOscHandler(0,new b.OscHandler((function(e){return v.setTitle(e),v.setIconName(e),!0}))),v._parser.registerOscHandler(1,new b.OscHandler((function(e){return v.setIconName(e)}))),v._parser.registerOscHandler(2,new b.OscHandler((function(e){return v.setTitle(e)}))),v._parser.registerOscHandler(4,new b.OscHandler((function(e){return v.setAnsiColor(e)}))),v._parser.registerEscHandler({final:"7"},(function(){return v.saveCursor()})),v._parser.registerEscHandler({final:"8"},(function(){return v.restoreCursor()})),v._parser.registerEscHandler({final:"D"},(function(){return v.index()})),v._parser.registerEscHandler({final:"E"},(function(){return v.nextLine()})),v._parser.registerEscHandler({final:"H"},(function(){return v.tabSet()})),v._parser.registerEscHandler({final:"M"},(function(){return v.reverseIndex()})),v._parser.registerEscHandler({final:"="},(function(){return v.keypadApplicationMode()})),v._parser.registerEscHandler({final:">"},(function(){return v.keypadNumericMode()})),v._parser.registerEscHandler({final:"c"},(function(){return v.fullReset()})),v._parser.registerEscHandler({final:"n"},(function(){return v.setgLevel(2)})),v._parser.registerEscHandler({final:"o"},(function(){return v.setgLevel(3)})),v._parser.registerEscHandler({final:"|"},(function(){return v.setgLevel(3)})),v._parser.registerEscHandler({final:"}"},(function(){return v.setgLevel(2)})),v._parser.registerEscHandler({final:"~"},(function(){return v.setgLevel(1)})),v._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return v.selectDefaultCharset()})),v._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return v.selectDefaultCharset()}));var y=function(e){m._parser.registerEscHandler({intermediates:"(",final:e},(function(){return v.selectCharset("("+e)})),m._parser.registerEscHandler({intermediates:")",final:e},(function(){return v.selectCharset(")"+e)})),m._parser.registerEscHandler({intermediates:"*",final:e},(function(){return v.selectCharset("*"+e)})),m._parser.registerEscHandler({intermediates:"+",final:e},(function(){return v.selectCharset("+"+e)})),m._parser.registerEscHandler({intermediates:"-",final:e},(function(){return v.selectCharset("-"+e)})),m._parser.registerEscHandler({intermediates:".",final:e},(function(){return v.selectCharset("."+e)})),m._parser.registerEscHandler({intermediates:"/",final:e},(function(){return v.selectCharset("/"+e)}))},m=this;for(var C in a.CHARSETS)y(C);return v._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return v.screenAlignmentPattern()})),v._parser.setErrorHandler((function(e){return v._logService.error("Parsing error: ",e),e})),v._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(v._bufferService,v._coreService,v._logService,v._optionsService)),v}return o(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=v.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,o=i.x,n=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;o=this._parseStack.cursorStartX,n=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===f.getWidth(n.x-1)&&f.setCellFromCodePoint(n.x-1,0,1,d.fg,d.bg,d.extended);for(var _=t;_=c)if(l){for(;n.x=this._bufferService.rows&&(n.y=this._bufferService.rows-1),n.lines.get(n.ybase+n.y).isWrapped=!0),f=n.lines.get(n.ybase+n.y)}else if(n.x=c-1,2===o)continue;if(h&&(f.insertCells(n.x,o,n.getNullCell(d),d),2===f.getWidth(c-1)&&f.setCellFromCodePoint(c-1,p.NULL_CELL_CODE,p.NULL_CELL_WIDTH,d.fg,d.bg,d.extended)),f.setCellFromCodePoint(n.x++,i,o,d.fg,d.bg,d.extended),o>0)for(;--o;)f.setCellFromCodePoint(n.x++,0,0,d.fg,d.bg,d.extended)}else f.getWidth(n.x-1)?f.addCodepointToCell(n.x-1,i):f.addCodepointToCell(n.x-2,i)}r-t>0&&(f.loadCell(n.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),n.x0&&0===f.getWidth(n.x)&&!f.hasContent(n.x)&&f.setCellFromCodePoint(n.x,0,1,d.fg,d.bg,d.extended),this._dirtyRowService.markDirty(n.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new y.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new b.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var o=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);o.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(o.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&n+o>=5)break;i[1]&&(o=1)}while(++n+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=d.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=d.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,o=0;o=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=d.DEFAULT_ATTR_DATA.fg,i.bg=d.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(o)?e.getSubParams(o)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&d.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&d.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?o+=this._extractColor(e,o,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&d.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&d.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=d.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(n.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(n.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(m[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=d.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=d.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new _.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,o=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(o),t.isIpad="iPad"===o,t.isIphone="iPhone"===o,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(o),t.isLinux=o.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var o=r;o{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),o=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);o&&r&&(o.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),o=r(8437),n=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=o.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=n.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=n.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new o.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=o.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(o.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new o.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(n=0;nthis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(o.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(o.DEFAULT_ATTR_DATA),n=r;n-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+n,newLines:_}),n+=_.length),l.push.apply(l,_);var b=f.length-1,y=f[b];0===y&&(y=f[--b]);for(var m=l.length-p-1,C=d;m>=0;){var S=Math.min(C,y);if(l[b].copyCellsFrom(l[m],C-S,y-S,S,!0),0==(y-=S)&&(y=f[--b]),0==(C-=S)){m--;var w=Math.max(m,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(g=0;g0;)0===this.ybase?this.y0){var T=[],E=[];for(g=0;g=0;g--)if(P&&P.start>k+L){for(var M=P.newLines.length-1;M>=0;M--)this.lines.set(g--,P.newLines[M]);g++,T.push({index:k+1,amount:P.newLines.length}),L+=P.newLines.length,P=i[++x]}else this.lines.set(g,E[k--]);var D=0;for(g=T.length-1;g>=0;g--)T[g].index+=D,this.lines.onInsertEmitter.fire(T[g]),D+=T[g].amount;var O=Math.max(0,R+n-this.lines.maxLength);O>0&&this.lines.onTrimEmitter.fire(O)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var o=r?i.getTrimmedLength():i.length,n=0;n0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,o){return new d(this,e,t,r,i,o)},e}();t.Buffer=u;var d=function(){function e(e,t,r,i,o,n){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===o&&(o=0),void 0===n&&(n=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=o,this._endOverscan=n,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=d},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),o=r(643),n=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||n.CellData.fromCharData([0,o.NULL_CELL_CHAR,o.NULL_CELL_WIDTH,o.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[o.CHAR_DATA_ATTR_INDEX],t[o.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[o.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[o.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[o.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,o,n){268435456&o&&(this._extendedAttrs[e]=n),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=o},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,o));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[n]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,o){var n=e._data;if(o)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=n[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var n="";t>22||1}return n},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),o=2===e[t+1].getWidth(0);return i&&o?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,o,n){for(var s=[],a=0;a=a&&o0&&(m>u||0===h[m].getTrimmedLength());m--)y++;y>0&&(s.push(a+h.length-y),s.push(y)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,o=t[i],n=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;o.push(u),c+=u}return o},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var n=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return o(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new n.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new n.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var n=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return o(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var n=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new n.EventEmitter,i}return o(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),o={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,n){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!n||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=o[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",o=t;o65535?(n-=65536,i+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):i+=String.fromCharCode(n)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,o=0;this._interim&&(56320<=(a=e.charCodeAt(o++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var n=o;n=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(n))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,o,n,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var d=0,f=void 0;(f=63&this.interim[++d])&&d<4;)u<<=6,u|=f;for(var p=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,_=p-d;l<_;){if(l>=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[d++]=f,u<<=6,u|=63&f}h||(2===p?u<128?l--:t[a++]=u:3===p?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var g=r-4,v=l;v=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if((c=(31&i)<<6|63&o)<128){v--;continue}t[a++]=c}else if(224==(240&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if((c=(15&i)<<12|(63&o)<<6|63&n)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=e[v++]))){v--;continue}if((c=(7&i)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,o=r(8273),n=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),o.fill(i,1),i[0]=0,o.fill(i,0,1,32),o.fill(i,0,127,160),o.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,o.fill(i,2,11904,42192),i[12351]=1,o.fill(i,2,44032,55204),o.fill(i,2,63744,64256),o.fill(i,2,65040,65050),o.fill(i,2,65072,65136),o.fill(i,2,65280,65377),o.fill(i,2,65504,65511);for(var e=0;et[o][1])return!1;for(;o>=i;)if(e>t[r=i+o>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var o=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var n=this._writeBuffer[this._bufferOffset],s=this._action(n,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-o>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(o,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=n.length,Date.now()-o>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),o=r(8742),n=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var o=this._active.length-1;o>=0;o--)this._active[o].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,o=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,o=this._stack.fallThrough,this._stack.paused=!1),!o&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new o.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>n.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var n=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var o=0;o1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;io||o>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=o}}if(1!==e.final.length)throw new Error("final must be a single byte");var n=e.final.charCodeAt(0);if(t[0]>n||n>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|n},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,o){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=o},r.prototype.parse=function(e,t,r){var i,o=0,n=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(o=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==o&&26!==o,r))return i;27===o&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(o=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==o&&26!==o,r))return i;27===o&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(o=e[h])<32||o>126&&o=t||(o=e[h])<32||o>126&&o=t||(o=e[h])<32||o>126&&o=t||(o=e[h])<32||o>126&&o=0&&!0!==(i=a[d](this._params));d--)if(i instanceof Promise)return this._preserveStack(3,a,d,n,l),i;d<0&&this._csiHandlerFb(this._collect<<8|o,this._params),this.precedingCodepoint=0;break;case 8:do{switch(o){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(o-48)}}while(++l47&&o<60);l--;break;case 9:this._collect<<=8,this._collect|=o;break;case 10:for(var f=this._escHandlers[this._collect<<8|o],p=f?f.length-1:-1;p>=0&&!0!==(i=f[p]());p--)if(i instanceof Promise)return this._preserveStack(4,f,p,n,l),i;p<0&&this._escHandlerFb(this._collect<<8|o),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|o,this._params);break;case 13:for(var _=l+1;;++_)if(_>=t||24===(o=e[_])||26===o||27===o||o>127&&o=t||(o=e[g])<32||o>127&&o{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),o=r(482),n=[],s=function(){function e(){this._state=0,this._active=n,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=n},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=n,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||n,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",o.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,o=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,o=this._stack.fallThrough,this._stack.paused=!1),!o&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=n,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=o.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,o=i[t-1];i[t-1]=~o?Math.min(10*o+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return o(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var o=i.ybase+i.scrollTop,n=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;n===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(n+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=n-o+1;i.lines.shiftElements(o+1,a-1,-1),i.lines.set(n,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var o=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),o!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},n([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var n=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([o(0,n.IBufferService),o(1,n.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),d=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),f=function(e){function t(t,r,i,o){var n=e.call(this)||this;return n._bufferService=r,n._logService=i,n._optionsService=o,n.isCursorInitialized=!1,n.isCursorHidden=!1,n._onData=n.register(new c.EventEmitter),n._onUserInput=n.register(new c.EventEmitter),n._onBinary=n.register(new c.EventEmitter),n._scrollToBottom=t,n.register({dispose:function(){return n._scrollToBottom=void 0}}),n.modes=l.clone(u),n.decPrivateModes=l.clone(d),n}return o(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(d)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},n([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=f},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var n=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([o(0,n.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?o[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},n=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),o=r(6114),n=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:o.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=n.clone(t.DEFAULT_OPTIONS);for(var r=0,o=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,o){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,o)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,o=r(8343);t.IBufferService=o.createDecorator("BufferService"),t.ICoreMouseService=o.createDecorator("CoreMouseService"),t.ICoreService=o.createDecorator("CoreService"),t.ICharsetService=o.createDecorator("CharsetService"),t.IDirtyRowService=o.createDecorator("DirtyRowService"),t.IInstantiationService=o.createDecorator("InstantiationService"),t.ILogService=o.createDecorator("LogService"),t.IOptionsService=o.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=o.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),o=r(225),n=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new o.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(o);var n=e.charCodeAt(i);56320<=n&&n<=57343?o=1024*(o-55296)+n-56320+65536:t+=this.wcwidth(n)}t+=this.wcwidth(o)}return t},e}();t.UnicodeService=n}},t={};return function r(i){if(t[i])return t[i].exports;var o=t[i]={exports:{}};return e[i].call(o.exports,o,o.exports,r),o.exports}(4389)})()},114:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Hterm=void 0;var i=r(276),o=function(){function e(e){this.elem=e,i.hterm.defaultStorage=new i.lib.Storage.Memory,this.term=new i.hterm.Terminal,this.term.getPrefs().set("send-encoding","raw"),this.term.decorate(this.elem),this.io=this.term.io.push(),this.term.installKeyboard()}return e.prototype.info=function(){return{columns:this.columns,rows:this.rows}},e.prototype.output=function(e){null!=this.term.io&&this.term.io.writeUTF8(e)},e.prototype.showMessage=function(e,t){this.message=e,t>0?this.term.io.showOverlay(e,t):this.term.io.showOverlay(e,null)},e.prototype.removeMessage=function(){this.term.io.showOverlay(this.message,0)},e.prototype.setWindowTitle=function(e){this.term.setWindowTitle(e)},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"!=r&&t.term.getPrefs().set(r,e[r])}))},e.prototype.onInput=function(e){this.io.onVTKeystroke=function(t){e(t)},this.io.sendString=function(t){e(t)}},e.prototype.onResize=function(e){var t=this;this.io.onTerminalResize=function(r,i){t.columns=r,t.rows=i,e(r,i)}},e.prototype.deactivate=function(){this.io.onVTKeystroke=function(){},this.io.sendString=function(){},this.io.onTerminalResize=function(){},this.term.uninstallKeyboard()},e.prototype.reset=function(){this.removeMessage(),this.term.installKeyboard()},e.prototype.close=function(){this.term.uninstallKeyboard()},e}();t.Hterm=o},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0,t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var r=function(){function e(e,t,r,i){this.term=e,this.connectionFactory=t,this.args=r,this.authToken=i,this.reconnect=-1,this.bufSize=1024}return e.prototype.open=function(){var e,r,i=this,o=this.connectionFactory.create(),n=function(){o.onOpen((function(){var r=i.term.info();o.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var n=function(e,r){o.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(n),n(r.columns,r.rows),i.term.onInput((function(e){for(var r=i.bufSize-1,n=0;n0&&(r=setTimeout((function(){o=i.connectionFactory.create(),i.term.reset(),n()}),1e3*i.reconnect))})),o.open()};return n(),function(){clearTimeout(r),o.close()}},e}();t.WebTTY=r},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),o=r(881),n=r(962),s=r(445),a=r(276),c=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new o.FitAddon,this.term.loadAddon(new n.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()})),this.decoder=new a.lib.UTF8Decoder}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(this.decoder.decode(e))},e.prototype.showMessage=function(e,t){var r=this;this.message.textContent=e,this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),t>0&&(this.messageTimer=setTimeout((function(){r.elem.removeChild(r.message)}),t))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=c}},t={};function r(i){var o=t[i];if(void 0!==o)return o.exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(()=>{"use strict";var e=r(114),t=r(949),i=r(818),o=r(69),n=document.getElementById("terminal");if(null!==n){var s;s="hterm"==gotty_term?new e.Hterm(n):new t.Xterm(n);var a=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",c=window.location.search,l=new o.ConnectionFactory(a,i.protocols),h=new i.WebTTY(s,l,c,gotty_auth_token).open();window.addEventListener("unload",(function(){h(),s.close()}))}})()})(); +//# sourceMappingURL=gotty.js.map \ No newline at end of file diff --git a/bindata/static/js/gotty.js.LICENSE.txt b/bindata/static/js/gotty.js.LICENSE.txt new file mode 100644 index 0000000..3289046 --- /dev/null +++ b/bindata/static/js/gotty.js.LICENSE.txt @@ -0,0 +1,139 @@ +/*! + * libapps (https://npmjs.com/package/libapps) + * @license BSD-3-Clause + * @version 1.70.0 + * ==libapps/LICENSE== + * // Copyright (c) 2006-2009 The Chromium OS Authors. All rights reserved. + * // + * // Redistribution and use in source and binary forms, with or without + * // modification, are permitted provided that the following conditions are + * // met: + * // + * // * Redistributions of source code must retain the above copyright + * // notice, this list of conditions and the following disclaimer. + * // * Redistributions in binary form must reproduce the above + * // copyright notice, this list of conditions and the following disclaimer + * // in the documentation and/or other materials provided with the + * // distribution. + * // * Neither the name of Google Inc. nor the names of its + * // contributors may be used to endorse or promote products derived from + * // this software without specific prior written permission. + * // + * // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +/*! + * xterm (https://npmjs.com/package/xterm) + * @license MIT + * @version 4.12.0 + * ==xterm/LICENSE== + * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js) + * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com) + * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +/*! + * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit) + * @license MIT + * @version 0.5.0 + * ==xterm-addon-fit/LICENSE== + * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +/*! + * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links) + * @license MIT + * @version 0.4.0 + * ==xterm-addon-web-links/LICENSE== + * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ + +/*! + * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl) + * @license MIT + * @version 0.10.0 + * ==xterm-addon-webgl/LICENSE== + * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js) + * + * Permission is hereby granted, free of charge, to any person obtaining a copy + * of this software and associated documentation files (the "Software"), to deal + * in the Software without restriction, including without limitation the rights + * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + * copies of the Software, and to permit persons to whom the Software is + * furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR + * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + * THE SOFTWARE. + */ diff --git a/bindata/static/js/gotty.js.map b/bindata/static/js/gotty.js.map new file mode 100644 index 0000000..af209b1 --- /dev/null +++ b/bindata/static/js/gotty.js.map @@ -0,0 +1 @@ +{"version":3,"sources":["webpack://gotty/./node_modules/libapps/hterm/dist/js/hterm_module.js","webpack://gotty/./node_modules/xterm-addon-fit/lib/xterm-addon-fit.js","webpack://gotty/./node_modules/xterm-addon-web-links/lib/xterm-addon-web-links.js","webpack://gotty/./node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js","webpack://gotty/./node_modules/xterm/lib/xterm.js","webpack://gotty/./src/hterm.ts","webpack://gotty/./src/websocket.ts","webpack://gotty/./src/webtty.ts","webpack://gotty/./src/xterm.ts","webpack://gotty/webpack/bootstrap","webpack://gotty/./src/main.ts"],"names":["lib","Error","var_args","source","ex","stackArray","stack","split","length","replace","i","arguments","path","Array","rtdep","apply","ary","this","runtimeDependencies_","push","passed","sourceList","names","obj","window","self","console","warn","name","callback","initCallbacks_","onInit","opt_logFunction","initNext","rec","shift","f","alarm","ensureRuntimeDependencies_","setTimeout","String","prototype","padStart","targetLength","padString","undefined","repeat","slice","padEnd","colors","re_","hex16","hex24","rgb","RegExp","rgba","rgbx","x11rgb","rgbToX11","value","scale","v","Math","min","toString","zpad","match","x11HexToCSS","startsWith","substr","indexOf","size","r","g","b","arrayToRGBA","map","parseInt","x11ToCSS","splice","round","nameToRGB","hexToRGB","arg","convert","hex","h","rgbToHex","crackRGB","normalizeCSS","def","test","alpha","setAlpha","mix","base","tint","percent","ary1","ary2","diff","color","error","colorNames","toLowerCase","stockColorPalette","colorPalette","createEnum","replaceVars","str","vars","fn","varname","rv","functions","encodeURI","encodeURIComponent","escapeHTML","m","getAcceptLanguages","chromeSupported","chrome","i18n","navigator","language","parseQuery","queryString","pairs","pair","decodeURIComponent","getURL","runtime","clamp","max","number","getWhitespace","whitespace","opt_ms","timeout","wrapperGenerator","ms","getStack","log","clearTimeout","opt_ignoreFrames","ignoreFrames","stackObject","smartFloorDivide","numerator","denominator","val","ceiling","ceil","floor","randomInt","random","MessageManager","languages","languages_","el","unshift","messages","addMessages","defs","key","placeholders","message","content","findAndLoadMessages","pattern","onComplete","concat","loaded","failed","onLanguageComplete","state","tryNextLanguage","loadMessages","replaceReferences","bind","url","onSuccess","opt_onError","xhr","XMLHttpRequest","onloadend","status","JSON","parse","responseText","open","send","msg","args","index","get","msgname","opt_args","opt_default","getMessage","processI18nAttributes","dom","nodes","querySelectorAll","processI18nAttribute","node","getAttribute","tagName","id","attr","toUpperCase","textContent","setAttribute","PreferenceManager","storage","opt_prefix","storageObserver_","onStorageChange_","isActive_","activate","trace","prefix","endsWith","prefRecords_","globalObservers_","childFactories_","childLists_","DEFAULT_VALUE","Record","defaultValue","currentValue","observers","addObserver","observer","removeObserver","stringify","deactivate","readStorage","opt_callback","pendingChildren","onChildComplete","keys","Object","getItems","items","prefixLength","needSync","syncChildList","definePreference","opt_onChange","record","changeDefault","definePreferences","defaults","defineChildren","listName","childFactory","onChildListChange_","addObservers","global","notifyAll","notifyChange_","createChild","opt_hint","opt_id","ids","childManager","resetAll","set","removeChild","getChild","childList","diffChildLists","a","added","removed","common","onChildStorage","currentIds","oldIds","managerIndex","reset","removeItem","changed","removeItems","forEach","newValue","changeDefaults","oldValue","setItem","exportAsJson","childIds","json","importFromJson","childPrefManager","lastIndexOf","resource","resources_","add","type","data","opt_defaultValue","getData","getDataUrl","Storage","Chrome","storage_","observers_","onChanged","addListener","onChanged_","changes","areaname","clear","getItem","setItems","remove","Local","localStorage","addEventListener","onStorage_","e","storageArea","prevValue","curValue","o","Memory","TestManager","opt_log","Log","createTestRun","opt_cx","TestRun","onTestRunComplete","testRun","testPreamble","result","cx","testPostamble","opt_console","save","prefix_","prefixStack_","console_","level","msgPrefix","oLog","join","group","oGroup","label","oGroupEnd","groupEnd","Suite","suiteName","ctor","testManager","testManager_","setup","addTest","disableTest","getTest","getTestList","testList_","testMap_","create","constructor","subclasses","testName","testFunction","Test","fullName","setDefaults","k","preamble","postamble","suiteClass","testFunction_","run","suite","Result","TestComplete","println","completeTest_","FAILED","failures","passes","startDate","duration","currentResult","maxFailures","panic","testQueue_","ALL_TESTS","selectTest","selectSuite","opt_pattern","selectCount","testList","j","selectPattern","onUncaughtException_","file","line","expectedErrorMessage_","when","PENDING","onTestRunComplete_","opt_skipTimeout","Date","info","msToSeconds_","summarize","onerror","onResultComplete","ctx","PASSED","currentSuite","runNextTest_","onResultReComplete","lateStatus","toFixed","timeout_","expectErrorMessage","onTimeout_","requestTime","opt_throw","arrayEQ_","actual","expected","assertEQ","opt_name","format","fail","getCallerLocation_","assert","frameIndex","opt_message","pass","UTF8Decoder","bytesLeft","codePoint","lowerBound","decode","ret","c","charCodeAt","charAt","fromCharCode","decodeUTF8","utf8","encodeUTF8","d","wc","nulWidth","controlWidth","regardCjkAmbiguous","cjkAmbiguousWidth","combining","ambiguous","isSpace","ucs","mid","isCjkAmbiguous","charWidth","charWidthRegardAmbiguous","charWidthDisregardAmbiguous","strWidth","width","codePointAt","start","opt_width","startIndex","endIndex","substring","end","hterm","registerInit","onWindow","windowType","defaultStorage","sync","isPackagedApp","getManifest","manifest","app","background","tabs","getCurrent","tab","windows","windowId","getClientSize","getBoundingClientRect","getClientWidth","getClientHeight","height","copySelectionToClipboard","document","execCommand","firefoxException","pasteFromClipboard","notify","params","curr","fallback","options","body","icon","title","desktopNotificationTitle","n","Notification","onclick","focus","close","Size","resize","clone","setTo","that","equals","RowCol","row","column","opt_overflow","overflow","move","Frame","terminal","opt_options","terminal_","div_","iframe_","container_","messageChannel_","onMessage_","sendTerminalInfo_","style","display","port1","onmessage","onMessage","onLoad","onLoad_","MessageChannel","contentWindow","postMessage","argv","messagePort","port2","acceptLanguages","foregroundColor","getForegroundColor","backgroundColor","getBackgroundColor","cursorColor","getCursorColor","fontSize","getFontSize","fontFamily","getFontFamily","baseURL","onCloseClicked_","parentNode","onClose","show","opt","divSize","document_","container","createElement","cssText","iframe","onload","appendChild","Keyboard","keyboardElement_","handlers_","onFocusOut_","onKeyDown_","onKeyPress_","onKeyUp_","onTextInput_","keyMap","KeyMap","bindings","Bindings","altGrMode","shiftInsertPaste","homeKeysScroll","pageKeysScroll","ctrlPlusMinusZeroZoom","ctrlCCopy","ctrlVPaste","applicationKeypad","applicationCursor","backspaceSendsBackspace","characterEncoding","metaSendsEscape","passMetaV","altSendsWhat","altIsMeta","altBackspaceIsMetaBackspace","altKeyPressed","mediaKeysAreFKeys","previousAltSendsWhat_","KeyActions","CANCEL","DEFAULT","PASS","STRIP","encode","vt","installKeyboard","element","handler","removeEventListener","uninstallKeyboard","onVTKeystroke","lowerKey","which","ctrlKey","metaKey","altKey","charCode","ch","keyCode","shiftKey","preventDefault","stopPropagation","preventChromeAppNonCtrlShiftDefault_","location","keyDef","keyDefs","action","resolvedActionType","control","alt","meta","isPrintable","keyCap","keyboard","getAction","maskShiftKey","keyDown","ctrl","binding","getBinding","call","normal","mod","code","bindings_","addBinding_","keyPattern","list","matchKeyPattern","sort","KeyPattern","sortCompare","addBinding","sequence","p","Parser","parseKeySequence","isComplete","parseKeyAction","addBindings","matchKeyDown","addKeyDef","addKeyDefs","resolve","ac","bs","sh","ctl","med","SS3","CSI","onKeyInsert_","onKeyHome_","altey","scrollHome","onKeyEnd_","scrollEnd","onKeyPageUp_","scrollPageUp","onKeyDel_","onKeyPageDown_","scrollPageDown","onKeyArrowUp_","scrollLineUp","onKeyArrowDown_","scrollLineDown","onClear_","wipeContents","onCtrlNum_","passCtrlNumber","onAltNum_","passAltNumber","onMetaNum_","passMetaNumber","onCtrlC_","selection","getDocument","getSelection","isCollapsed","clearSelectionAfterCopy","collapseToEnd","onCtrlN_","href","innerWidth","innerHeight","onCtrlV_","paste","onMetaN_","outerWidth","outerHeight","onMetaC_","onMetaV_","onPlusMinusZero_","getZoomFactor","cap","setFontSize","spec","wildcardCount","modifiers","match_","exactMatch","modValue","Options","opt_copy","wraparound","reverseWraparound","originMode","autoCarriageReturn","cursorVisible","cursorBlink","insertMode","reverseVideo","bracketedPaste","pos","opt_pos","identifiers","modifierKeys","skipSpace","token","parseToken","ucValue","hasOwnProperty","keyCodes","advance","actions","peekString","peekIdentifier","peekInteger","parseIdentifier","parseString","parseInteger","parsePattern","quote","re","lastIndex","exec","parseEscape","'","count","opt_expect","SHIFT","CTRL","CONTROL","ALT","META","ESCAPE","ESC","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","ONE","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","ZERO","BACKSPACE","BKSP","BS","TAB","Q","W","E","R","T","Y","U","I","O","P","CAPS_LOCK","CAPSLOCK","CAPS","A","S","D","F","G","H","J","K","L","ENTER","ENT","RETURN","RET","Z","X","C","V","B","N","M","SPACE","SP","PRINT_SCREEN","PRTSC","SCROLL_LOCK","SCRLK","BREAK","BRK","INSERT","INS","HOME","PAGE_UP","PGUP","DELETE","DEL","END","PAGE_DOWN","PGDOWN","PGDN","UP","DOWN","RIGHT","LEFT","NUMLOCK","KP0","KP1","KP2","KP3","KP4","KP5","KP6","KP7","KP8","KP9","KP_PLUS","KP_ADD","KP_MINUS","KP_SUBTRACT","KP_STAR","KP_MULTIPLY","KP_DIVIDE","KP_DECIMAL","KP_PERIOD","NAVIGATE_BACK","NAVIGATE_FORWARD","RELOAD","FULL_SCREEN","WINDOW_OVERVIEW","BRIGHTNESS_UP","BRIGHTNESS_DOWN","scrollToTop","scrollToBottom","clearScrollback","profileId","defaultPreferences","categories","Appearance","CopyPaste","Sounds","Scrolling","Encoding","Miscellaneous","categoryDefinitions","text","PubSub","addBehavior","pubsub","subscribe","subject","unsubscribe","publish","opt_lastCallback","notifyList","Screen","opt_columnCount","rowsArray","columnCount_","textAttributes","TextAttributes","cursorPosition","cursorRowNode_","cursorNode_","cursorOffset_","wordBreakMatchLeft","wordBreakMatchRight","wordBreakMatchMiddle","getSize","getHeight","getWidth","setColumnCount","setCursorPosition","shiftRow","shiftRows","unshiftRow","unshiftRows","rows","popRow","popRows","pushRow","pushRows","insertRow","insertRows","removeRow","removeRows","invalidateCursorPosition","clearCursorRow","innerHTML","removeAttribute","isDefault","inverse","syncColors","createContainer","commitLineOverflow","rowNode","firstChild","ownerDocument","createTextNode","currentColumn","offset","nodeWidth","nextSibling","syncSelectionCaret","collapse","firefoxIgnoredException","splitNode_","afterNode","cloneNode","nodeSubstr","insertBefore","maybeClipCurrentRow","insertString","cursorNode","cursorNodeText","reverseOffset","ws","underline","strikethrough","wcNode","asciiNode","tileData","nodeType","tileNode","textDecoration","wsNode","matchesContainer","previousSibling","newNode","overwriteString","maxLength","deleteChars","currentCursorColumn","startLength","endLength","spaceNode","nextNode","emptyNode","getLineStartRow_","hasAttribute","getLineText_","rowText","getXRowAncestor_","nodeName","getPositionWithOverflow_","ancestorRow","position","getPositionWithinRow_","childNodes","currentNode","getNodeAndOffsetWithOverflow_","getNodeAndOffsetWithinRow_","nodeTextWidth","setRange_","range","startNodeAndOffset","endNodeAndOffset","setStart","setEnd","expandSelection","getRangeAt","startContainer","startPosition","startOffset","endPosition","endContainer","endOffset","leftMatch","rightMatch","insideMatch","lineUpToRange","leftRegularExpression","expandedStart","search","lineFromRange","rightRegularExpression","found","expandedEnd","addRange","ScrollPort","rowProvider","rowProvider_","characterSize","ruler_","Selection","currentRowNodeCache_","previousRowNodeCache_","lastScreenWidth_","lastScreenHeight_","selectionEnabled_","lastRowCount_","scrollWheelMultiplier_","lastTouch_","isScrolledEnd","currentScrollbarWidthPx","timeouts_","DEBUG_","scrollPort","scrollPort_","startRow","endRow","isMultiline","findFirstChild","parent","childAry","anchorFirst","anchorRow","startNode","anchorNode","anchorOffset","focusRow","endNode","focusNode","focusOffset","focusFirst","rowIndex","firstNode","decorate","div","src","onResize_","doc","contentDocument","paddingTop","paddingBottom","head","userCssLink_","userCssText_","screen_","onScroll_","onScrollWheel_","onTouch_","onCopy_","onPaste_","onBodyKeyDown_","rowNodes_","topSelectBag_","bottomSelectBag_","topFold_","bottomFold_","scrollArea_","xmlns","svg_","createElementNS","pasteTarget_","contentEditable","handlePasteTargetTextInput_","setFontFamily","opt_smoothing","webkitFontSmoothing","syncCharacterSize","setUserCssUrl","setUserCssText","setForegroundColor","setBackgroundColor","setBackgroundImage","image","backgroundImage","setBackgroundSize","backgroundSize","setBackgroundPosition","backgroundPosition","setCtrlVPaste","getScreenSize","getScreenWidth","getScreenHeight","getScreenNode","resetCache","setRowProvider","scheduleRedraw","invalidate","parentElement","topRowIndex","getTopRowIndex","bottomRowIndex","getBottomRowIndex","drawVisibleRows_","scheduleInvalidate","px","measureCharacterSize","opt_weight","rulerSpan_","rulerBaseline_","fontWeight","rulerSize","baseline","offsetTop","zoomFactor","currentScale","clientWidth","syncScrollHeight","syncRowNodesDimensions_","scrollRowToBottom","getRowCount","screenSize","visibleRowCount","visibleRowsHeight","visibleRowTopMargin","visibleRowBottomMargin","marginBottom","topFoldOffset","left","offsetLeft","top","redraw","redraw_","resetSelectBags_","drawTopFold_","drawBottomFold_","lastChild","removeUntilNode","targetNode","deadNode","selectionStartRow","selectionEndRow","bottomFold","targetDrawCount","drawCount","fetchRowNode_","cacheRowNode_","getRowNode","selectAll","firstRow","lastRow","lastRowIndex","extend","getScrollMax_","scrollRowToTop","scrollTop","scrollMax","onScrollWheel","defaultPrevented","delta","scrollWheelDelta","deltaMode","WheelEvent","DOM_DELTA_PIXEL","deltaY","DOM_DELTA_LINE","DOM_DELTA_PAGE","onTouch","touch","scrubTouch","t","identifier","y","clientY","x","clientX","changedTouches","onCopy","endBackfillIndex","startBackfillIndex","getRowsText","setScrollbarVisible","overflowY","setScrollWheelMoveMultipler","multiplier","Terminal","opt_profileId","profileId_","primaryScreen_","alternateScreen_","scrollbackRows_","tabStops_","defaultTabStops","vtScrollTop_","vtScrollBottom_","cursorShape_","cursorShape","BLOCK","cursorColor_","cursorBlinkCycle_","myOnCursorBlink_","onCursorBlink_","backgroundColor_","foregroundColor_","scrollOnOutput_","scrollOnKeystroke_","scrollWheelArrowKeys_","defeatMouseReports_","bellAudio_","bellNotificationList_","desktopNotificationBell_","savedOptions_","options_","VT","io","IO","enableMouseDragScroll","copyOnSelect","mouseRightClickPaste","mousePasteButton","useDefaultWindowCopy","realizeSize_","setDefaultTabStops","setProfile","onTerminalReady","BEAM","UNDERLINE","tabWidth","prefs_","permission","characterMaps","setOverrides","setCursorBlink","setCursorColor","isNaN","resetColorPalette","enable8BitControl","syncBoldSafeState","enableBoldAsBright","syncBlinkState","enableClipboardWrite","enableDec12","syncFontFamily","maxStringSequence","syncMousePasteButton","userAgent","setEncoding","getPrefs","setBracketedPaste","borderColor","setSelectionEnabled","runCommandClass","commandClass","argString","environment","command","onExit","pop","isPrimaryScreen","setCssVar","documentElement","setProperty","button","enableBold","normalSize","boldSize","isBoldSafe","syncMouseStyle","mouseReport","MOUSE_REPORT_DISABLED","saveCursor","getTextAttributes","setTextAttributes","setWindowTitle","restoreCursor","cursor","clearCursorOverflow","setCursorShape","shape","restyleCursor_","getCursorShape","setWidth","columnCount","scheduleSyncCursorPosition_","setHeight","rowCount","realizeWidth_","realizeHeight_","onTerminalResize_","deltaColumns","deltaRows","getRowText","scrollbackCount","appendRows_","setVTScrollRegion","screen","bottom","renumberRows_","clearHome","syncCursorPosition_","clearAllTabStops","softReset","setCursorVisible","forwardTabStop","setCursorColumn","backwardTabStop","setTabStop","clearTabStopAtCursor","opt_start","w","interpret","oncontextmenu","onMouse","onMouse_","screenNode","onFocusChange_","className","scrollBlockerNode_","event","setReverseVideo","screenIndex","cursorRow","extraRows","scheduleScrollDown_","setAbsoluteCursorPosition","moveRows_","fromIndex","toIndex","opt_screen","print","newLine","didOverflow","tokens","splitWidecharString","scrollBottom","getVTScrollTop","getVTScrollBottom","cursorAtEndOfScreen","vtScrollUp","lineFeed","formFeed","reverseLineFeed","currentRow","insertLines","setAbsoluteCursorRow","eraseToLeft","eraseToRight","opt_count","maxCount","DEFAULT_COLOR","eraseLine","eraseAbove","eraseBelow","fill","col","moveCount","deleteLines","moveStart","insertSpace","deleted","vtScrollDown","setRelativeCursorPosition","getCursorColumn","getCursorRow","scheduleRedraw_","scrollDown","cursorUp","cursorDown","minHeight","maxHeight","cursorLeft","newRow","newColumn","cursorRight","ringBell","bellSquelchTimeout_","play","bellSequelchTimeout_","hasFocus","closeBellNotifications_","setOriginMode","setInsertMode","setAutoCarriageReturn","setWraparound","setReverseWraparound","setAlternateMode","opacity","cursorRowIndex","borderBottomStyle","borderLeftStyle","syncCursor","showZoomWarning_","zoomWarningNode_","zoomWarningMessage","showOverlay","opt_timeout","overlayNode_","overlaySize","overlayTimeout_","copyStringToClipboard","notifyCopyMessage","copySource","selectAllChildren","getSelectionText","string","openUrl","browser","openTab","openSelectedUrl_","processedByTerminalHandler_","reportMouseEvents","terminalRow","terminalColumn","engaged","warning","lines","abs","sendString","focused","isNewSize","previousIO_","createFrame","setTerminalProfile","profileName","keyboardCaptured_","onTerminalResize","writeUTF8","writelnUTF8","writeUTF16","writelnUTF16","foregroundSource","SRC_DEFAULT","backgroundSource","foreground","defaultForeground","defaultBackground","bold","faint","italic","blink","invisible","SRC_RGB","setDocument","opt_textContent","span","classes","fontStyle","blinkNode","colorToMakeFaint","containersMatch","obj1","obj2","containerIsDefault","style1","style2","nodeSubstring","increment","onTerminalMouse_","parseState_","ParseState","parseUnknown_","leadingModifier_","trailingModifier_","allowColumnWidthChanges_","oscTimeLimit_","utf8Decoder_","warnUnimplemented","CharacterMaps","G0","G1","G2","G3","getMap","GL","GR","codingSystemUtf8_","codingSystemLocked_","cc1Pattern_","updateEncodingState_","savedState_","CursorState","MOUSE_REPORT_CLICK","MOUSE_REPORT_DRAG","defaultFunction","opt_buf","buf","func","resetParseFunction","resetBuf","resetArguments","opt_arg_zero","iarg","argnum","peekRemainingBuf","peekChar","consumeChar","vt_","restore","response","buttons","encoding","cc1","CC1","filter","parseState","nextControl","dispatch","parseCSI_","parseUntilStringTerminator_","abortReason","nextTerminator","ignore","setANSIMode","setDECMode","scrollOnOutput","scrollOnKeystroke","OSC","VT52","parseESC","parseOSC","pairCount","responseArray","pairNumber","colorIndex","colorValue","colorX11","atob","get256","getTrueColor","attrs","trueColor","CharacterMap","description","glmap","glmapBase_","sync_","opt_glmap","glmap_","glre_","assign","glchars","maps_","DefaultMaps","mapsBase_","addMap","maps","module","exports","775","defineProperty","FitAddon","_terminal","dispose","fit","proposeDimensions","_core","cols","_renderService","dimensions","actualCellWidth","actualCellHeight","getComputedStyle","getPropertyValue","viewport","scrollBarWidth","l","enumerable","Symbol","toStringTag","__esModule","default","s","WebLinksAddon","opener","_handler","_options","_useLinkProvider","matchIndex","_linkProvider","registerLinkProvider","WebLinkProvider","_linkMatcherId","registerLinkMatcher","deregisterLinkMatcher","LinkComputer","_regex","provideLinks","computeLink","flags","_translateBufferLineToStringWithWrap","u","buffer","active","getLine","isWrapped","translateToString","965","GlyphRenderer","Float32Array","BYTES_PER_ELEMENT","_","_colors","_gl","_dimensions","_activeBuffer","_vertices","attributes","attributesBuffers","selectionAttributes","throwIfFalsy","createProgram","_program","_projectionLocation","getUniformLocation","_resolutionLocation","_textureLocation","_vertexArrayObject","createVertexArray","bindVertexArray","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","enableVertexAttribArray","vertexAttribPointer","FLOAT","Uint8Array","ELEMENT_ARRAY_BUFFER","_attributesBuffer","vertexAttribDivisor","_atlasTexture","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","enable","BLEND","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","onResize","beginFrame","_atlas","updateCell","_updateCell","NULL_CELL_CODE","WHITESPACE_CELL_CODE","getRasterizedGlyphCombinedChar","getRasterizedGlyph","scaledCharLeft","scaledCharTop","scaledCanvasWidth","scaledCanvasHeight","texturePositionClipSpace","sizeClipSpace","updateSelection","selectionOpaque","columnSelectMode","startCol","endCol","viewportCappedEndRow","viewportCappedStartRow","_updateSelectionRange","viewportStartRow","viewportEndRow","viewportY","RENDER_MODEL_INDICIES_PER_CELL","cells","RENDER_MODEL_FG_OFFSET","AttributeData","fg","bg","RENDER_MODEL_BG_OFFSET","getBgColorMode","_getColorFromAnsiIndex","getBgColor","toColorRGB","COMBINED_CHAR_BIT_MASK","getCell","getChars","ansi","canvas","setColors","render","useProgram","lineLengths","subarray","STREAM_DRAW","hasCanvasChanged","uniform1i","activeTexture","TEXTURE0","cacheCanvas","generateMipmap","uniformMatrix4fv","PROJECTION_MATRIX","uniform2f","drawElementsInstanced","TRIANGLES","setAtlas","setDimensions","344","RectangleRenderer","_updateCachedColors","DYNAMIC_DRAW","_updateViewportRectangle","_bgFloat","_colorToFloat32Array","_selectionFloat","_addRectangleFloat","scaledCellWidth","scaledCellHeight","hasSelection","updateBackgrounds","_updateRectangle","expandFloat32Array","_addRectangle","310","RenderModel","Uint32Array","clearSelection","259","sliceFallback","795","WebglAddon","_preserveDrawingBuffer","_colorManager","_renderer","WebglRenderer","setRenderer","_createRenderer","textureAtlas","configurable","clearTextureAtlas","clearCharAtlas","666","__extends","setPrototypeOf","__proto__","_model","_workCell","CellData","_onRequestRedraw","EventEmitter","_renderLayers","LinkRenderLayer","screenElement","CursorRenderLayer","scaledCharWidth","scaledCharHeight","canvasWidth","canvasHeight","_devicePixelRatio","devicePixelRatio","_updateDimensions","_canvas","antialias","depth","preserveDrawingBuffer","getContext","_rectangleRenderer","_glyphRenderer","onCharSizeChanged","_isAttached","contains","_charAtlas","_refreshCharAtlas","onDevicePixelRatioChange","onBlur","onFocus","onSelectionChanged","_updateSelectionModel","fire","onCursorMove","onOptionsChanged","acquireCharAtlas","warmUp","clearTexture","_updateModel","registerCharacterJoiner","deregisterCharacterJoiner","renderRows","_charSizeService","onGridChanged","ydisp","loadCell","getCode","getOption","Disposable","381","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","deleteShader","attachShader","VERTEX_SHADER","FRAGMENT_SHADER","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","713","removeTerminalFromCache","generateConfig","ownedBy","configEquals","config","atlas","WebglCharAtlas","433","is256Color","css","cursorAccent","selectionTransparent","contrastCache","fontWeightBold","allowTransparency","drawBoldTextInBrightColors","minimumContrastRatio","167","texturePosition","_config","_didWarmUp","_cacheMap","_cacheMapCombined","_currentRowY","_currentRowX","_currentRowHeight","_workBoundingBox","right","_workAttributeData","_cacheCtx","_tmpCanvas","_tmpCtx","_doWarmUp","_drawToCache","clearRect","_getBackgroundColor","_getForegroundCss","_getMinimumContrastCss","channels","toCss","_resolveBackgroundRgba","_resolveForegroundRgba","getCss","ensureContrastRatio","setCss","isInvisible","isBold","isInverse","isDim","isItalic","getFgColor","getFgColorMode","globalCompositeOperation","fillStyle","fillRect","font","textBaseline","globalAlpha","DIM_OPACITY","fillText","getImageData","_findGlyphBoundingBox","_clipImageData","putImageData","Uint8ClampedArray","ImageData","592","BaseRenderLayer","_container","_alpha","_scaledCharWidth","_scaledCharHeight","_scaledCellWidth","_scaledCellHeight","_scaledCharLeft","_scaledCharTop","classList","zIndex","_initCanvas","_ctx","_clearAll","_setTransparency","replaceChild","_fillCells","_fillBottomLineAtCells","_fillLeftLineAtCell","_strokeRectAtCell","lineWidth","strokeRect","_clearCells","_fillCharTrueColor","_getFont","_clipRow","beginPath","rect","clip","461","_onRequestRefreshRowsEvent","_cell","_state","isFocused","_cursorRenderers","bar","_renderBarCursor","block","_renderBlockCursor","_renderUnderlineCursor","_clearCursor","_cursorBlinkStateManager","pause","cursorY","resume","_render","restartBlinkAnimation","isPaused","_coreService","isCursorInitialized","isCursorHidden","baseY","cursorX","_renderBlurCursor","isCursorVisible","strokeStyle","_renderCallback","_restartInterval","_blinkStartTimeout","_blinkInterval","clearInterval","_animationFrame","cancelAnimationFrame","_animationTimeRestarted","now","requestAnimationFrame","setInterval","activeElement","textarea","733","linkifier","onShowLinkUnderline","_onShowLinkUnderline","onHideLinkUnderline","_onHideLinkUnderline","linkifier2","_clearCurrentLink","x1","y1","y2","x2","INVERTED_DEFAULT_COLOR","742","contrastRatio","toPaddedHex","toRgba","blend","isOpaque","toColor","opaque","toChannels","pow","relativeLuminance","relativeLuminance2","reduceLuminance","increaseLuminance","499","CHAR_ATLAS_CELL_SPACING","345","forwardEvent","_listeners","_disposed","_event","859","getDisposeArrayDisposable","disposeArray","_disposables","_isDisposed","register","unregister","455","fillFallback","147","ExtendedAttrs","extended","fromColorRGB","isUnderline","isBlink","isFgRGB","isBgRGB","isFgPalette","isBgPalette","isFgDefault","isBgDefault","isAttributeDefault","hasExtendedAttrs","updateExtended","isEmpty","getUnderlineColor","underlineColor","getUnderlineColorMode","isUnderlineColorRGB","isUnderlineColorPalette","isUnderlineColorDefault","getUnderlineStyle","underlineStyle","782","combinedData","fromCharData","setFromCharData","isCombined","stringFromCodePoint","CHAR_DATA_ATTR_INDEX","CHAR_DATA_CHAR_INDEX","CHAR_DATA_WIDTH_INDEX","getAsCharData","855","WHITESPACE_CELL_WIDTH","WHITESPACE_CELL_CHAR","NULL_CELL_WIDTH","NULL_CELL_CHAR","CHAR_DATA_CODE_INDEX","DEFAULT_ATTR","133","Utf8ToUtf32","StringToUtf32","utf32ToString","_interim","interim","4567","AccessibilityManager","_liveRegionLineCount","_charsToConsume","_charsToAnnounce","_accessibilityTreeRoot","_rowContainer","_rowElements","_createAccessibilityTreeNode","_topBoundaryFocusListener","_onBoundaryFocus","_bottomBoundaryFocusListener","_refreshRowsDimensions","_renderRowsDebouncer","RenderDebouncer","_renderRows","_refreshRows","_liveRegion","insertAdjacentElement","_onResize","onRender","onScroll","onA11yChar","_onChar","onLineFeed","onA11yTab","_onTab","onKey","_onKey","_clearLiveRegion","onDimensionsChange","_screenDprMonitor","ScreenDprMonitor","setListener","addDisposableDomListener","removeElementFromParent","target","relatedTarget","scrollLines","stopImmediatePropagation","children","tabIndex","_refreshRowDimensions","tooMuchOutput","isMac","refresh","translateBufferLineToString","innerText","_announceCharacters","3614","decPrivateModes","bracketedPasteMode","triggerDataEvent","rightClickHandler","moveTextAreaUnderMouseCursor","handlePasteEvent","copyHandler","bracketTextForPaste","prepareTextForTerminal","clipboardData","setData","selectionText","rightClickSelect","select","4774","7239","ColorContrastCache","_color","_rgba","setColor","getColor","5680","ColorManager","DEFAULT_ANSI_COLORS","freeze","_litmusColor","createLinearGradient","_contrastCache","onOptionsChange","setTheme","_parseColor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","Number","9631","3656","3551","__decorate","getOwnPropertyDescriptor","Reflect","__param","MouseZone","Linkifier","_bufferService","_logService","_unicodeService","_linkMatchers","_nextLinkMatcherId","_onLinkTooltip","_rowsToLinkify","attachToDom","_element","_mouseZoneManager","linkifyRows","clearAll","_rowsTimeoutId","_linkifyRows","_timeBeforeLatency","iterator","hasNext","next","_doLinkifyRow","first","debug","regex","validationCallback","hoverTooltipCallback","tooltipCallback","hoverLeaveCallback","leaveCallback","willLinkActivate","priority","_addLinkMatcherToList","stringIndexToBufferIndex","getFg","_addLink","getStringCellWidth","_createLinkHoverEvent","IBufferService","ILogService","IUnicodeService","clickCallback","hoverCallback","6465","Linkifier2","_linkProviders","_linkCacheDisposables","_isMouseOut","_activeLine","_currentLink","_mouseService","_onMouseMove","_onClick","_lastMouseEvent","_positionFromMouseEvent","composedPath","_lastBufferCell","_onHover","_askForLink","_linkAtPosition","link","_activeProviderReplies","Map","_checkLinkProviderResult","_removeIntersectingLinks","Set","has","find","_handleNewLink","_linkLeave","decorations","pointerCursor","isHovered","_linkHover","defineProperties","toggle","_fireUnderlineEvent","onRenderedBufferChange","hover","_createLinkUnderlineEvent","leave","getCoords","9042","promptLabel","6954","MouseZoneManager","_screenElement","_selectionService","_optionsService","_zones","_areZonesActive","_lastHoverCoords","_initialSelectionLength","_onMouseDown","_mouseMoveListener","_mouseLeaveListener","_onMouseLeave","_clickListener","_deactivate","_activate","_currentZone","pageX","pageY","_findZoneEventAt","_tooltipTimeout","_onTooltip","linkTooltipHoverDuration","_getSelectionLength","IMouseService","ISelectionService","IOptionsService","6193","_rowCount","_rowStart","_rowEnd","_innerRefresh","5596","_currentDevicePixelRatio","_listener","clearListener","_outerListener","_updateDpr","_resolutionMediaMatchList","removeListener","matchMedia","3236","_keyDownHandled","_onCursorMove","_onRender","_onSelectionChange","_onTitleChange","_onBell","_onFocus","_onBlur","_onA11yCharEmitter","_onA11yTabEmitter","_setup","_instantiationService","createInstance","_inputHandler","onRequestBell","bell","onRequestRefreshRows","onRequestReset","onRequestWindowsOptionsReport","_reportWindowsOptions","onAnsiColorChange","_changeAnsiColor","onTitleChange","_afterResize","optionsService","onThemeChange","_customKeyEventHandler","write","buffers","preventScroll","_updateOptions","measure","syncScrollArea","screenReaderMode","_accessibilityManager","setupTabStops","_setTheme","theme","_onTextAreaFocus","sendFocus","C0","updateCursorStyle","_showCursor","blur","_onTextAreaBlur","_syncTextArea","isCursorInViewport","_compositionHelper","isComposing","ybase","lineHeight","_initGlobal","_bindKeys","isFirefox","rightClickSelectsWord","isLinux","_keyUp","_keyDown","_keyPress","compositionstart","compositionupdate","compositionend","updateCompositionElements","_queueLinkification","isConnected","_document","dir","createDocumentFragment","_viewportElement","_viewportScrollArea","_helperContainer","CoreBrowserService","setService","ICoreBrowserService","CharSizeService","ICharSizeService","_theme","onOptionChange","_characterJoinerService","CharacterJoinerService","ICharacterJoinerService","RenderService","IRenderService","_compositionView","CompositionHelper","_soundService","SoundService","ISoundService","MouseService","Viewport","onRequestSyncScrollBar","SelectionService","onRequestScrollLines","amount","suppressScrollEvent","onSelectionChange","onRequestRedraw","onLinuxMouseSelection","_onScroll","onMouseDown","_coreMouseService","areMouseEventsActive","disable","bindMouse","rendererType","Renderer","DomRenderer","getRawByteCoords","overrideType","triggerMouseEvent","mouseup","wheel","mousedrag","mousemove","cancel","onProtocolChange","logLevel","explainEvents","passive","activeProtocol","shouldForceSelection","hasScrollback","getLinesScrolled","applicationCursorKeys","onWheel","onTouchStart","onTouchMove","refreshRows","shouldColumnSelect","attachCustomKeyEventHandler","deregister","markers","addMarker","setSelection","getSelectionPosition","startColumn","selectionStart","endColumn","selectionEnd","selectLines","keydown","evaluateKeyboardEvent","macOptionIsMeta","_isThirdLevelShift","ETX","CR","domEvent","isWindows","_soundBell","playBellSound","hasValidSize","getBlankLine","DEFAULT_ATTR_DATA","WindowsOptionsReportType","GET_WIN_SIZE_PIXELS","GET_CELL_SIZE_PIXELS","cancelEvents","_visualBell","bellStyle","CoreTerminal","1680","_scrollLines","_scrollArea","_lastRecordedBufferLength","_lastRecordedViewportHeight","_lastRecordedBufferHeight","_lastTouchY","_lastScrollTop","_wheelPartialScroll","_refreshAnimationFrame","_ignoreNextScrollEvent","offsetWidth","_refresh","offsetHeight","offsetParent","_bubbleScroll","cancelable","_getPixelsScrolled","_applyScrollModifier","fastScrollModifier","fastScrollSensitivity","scrollSensitivity","touches","2950","_textarea","_isComposing","_isSendingComposition","_compositionPosition","_dataAlreadySent","_finalizeComposition","_handleAnyTextareaChanges","ICoreService","9806","getCoordsRelativeToElement","9504","moveToCellSequence","244","AddonManager","_addons","instance","loadAddon","isDisposed","_wrappedAddonDispose","4389","_addonManager","_checkProposedApi","allowProposedApi","onData","onBinary","onBell","_parser","_buffer","_verifyIntegers","registerMarker","scrollPages","scrollToLine","writeUtf8","writeln","setOption","init","getNullCell","_onBufferChange","_normal","_alternate","onBufferActivate","alternate","_line","registerCsiHandler","toArray","addCsiHandler","registerDcsHandler","addDcsHandler","registerEscHandler","addEscHandler","registerOscHandler","addOscHandler","unicodeService","versions","activeVersion","1546","_rendererId","_currentGlyphIdentifier","chars","dim","_drawChars","_getContrastColor","_drawUncachedChars","draw","2512","_coreBrowserService","cursorStyle","cursorWidth","3700","GridCache","cache","5098","3525","_id","TextRenderLayer","SelectionRenderLayer","_runOperation","letterSpacing","IInstantiationService","1752","4149","_clearState","_didStateChange","_areCoordinatesEqual","9596","_characterWidth","_characterFont","_characterOverlapCache","_forEachCell","getJoinedCharacters","JoinedCellData","_isOverlapping","getCodePoint","_drawBackground","_drawForeground","measureText","9616","BaseCharAtlas","1420","DynamicCharAtlas","2040","8803","1906","NoneCharAtlas","getGlyphCacheKey","_drawToCacheCount","_glyphsWaitingOnBitmap","_bitmapCommitTimeout","_bitmap","_cacheCanvas","_width","_height","LRUMap","prealloc","_canCache","_drawFromCache","capacity","peek","_toCoordinateX","_toCoordinateY","drawImage","inBitmap","_getForegroundColor","_addGlyphToBitmap","isSafari","_generateBitmap","createImageBitmap","then","7001","_map","_head","_tail","_nodePool","_unlinkNode","prev","_appendNode","peekValue","1296","_linkifier","_linkifier2","_terminalClass","_refreshRowElements","_selectionContainer","_injectCss","_rowFactory","DomRendererRowFactory","_onLinkHover","_onLinkLeave","_themeStyleElement","_dimensionsStyleElement","_terminalSelector","BOLD_CLASS","ITALIC_CLASS","CURSOR_CLASS","CURSOR_STYLE_BLOCK_CLASS","CURSOR_BLINK_CLASS","CURSOR_STYLE_BAR_CLASS","CURSOR_STYLE_UNDERLINE_CLASS","_createSelectionElement","createRow","_setCellUnderline","3787","UNDERLINE_CLASS","DIM_CLASS","_applyMinimumContrast","_addStyle","456","SelectionModel","isSelectAllActive","selectionStartLength","areSelectionValuesReversed","onTrim","428","_onCharSizeChange","_measureStrategy","_parentElement","_result","_measureElement","4269","_characterJoiners","_nextCharacterJoinerId","getBg","getTrimmedLength","_getJoinedRanges","_mergeRanges","_stringRangesToCellRanges","getString","5114","getRootNode","8934","3230","_isPaused","_needsFullRefresh","_isNextRenderRedrawOnly","_needsSelectionRefresh","_canvasWidth","_canvasHeight","_selectionState","_onDimensionsChange","_onRefreshRequest","_renderDebouncer","_fullRefresh","onCharSizeChange","IntersectionObserver","_onIntersectionChange","threshold","observe","disconnect","isIntersecting","intersectionRatio","_fireOnCanvasResize","changeOptions","9312","_dragScrollAmount","_enabled","_mouseDownTimeStamp","_oldHasSelection","_oldSelectionStart","_oldSelectionEnd","_onLinuxMouseSelection","_onRedrawRequest","_onRequestScrollLines","_mouseUpListener","_onMouseUp","onUserInput","_trimListener","_onTrim","_onBufferActivate","_activeSelectionMode","_removeMouseDownListeners","finalSelectionStart","finalSelectionEnd","_isClickInSelection","_getMouseBufferCoords","_areCoordsInSelection","_selectWordAtCursor","currentLink","getRangeLength","_selectWordAt","_getMouseEventScrollAmount","macOptionClickForcesSelection","timeStamp","_onIncrementalClick","detail","_onSingleClick","_onDoubleClick","_onTripleClick","_addMouseDownListeners","_dragScrollIntervalTimer","_dragScroll","hasWidth","_selectLineAt","_selectToWordAt","_fireEventIfSelectionChanged","_fireOnSelectionChange","activeBuffer","_convertViewportColToCharacterIndex","_getWordAt","_isCharWordSeparator","trim","wordSeparator","getWrappedRangeForLine","last","4725","createDecorator","357","_audioContext","AudioContext","webkitAudioContext","audioContext","createBufferSource","decodeAudioData","_base64ToArrayBuffer","_removeMimeType","bellSound","connect","destination","6349","CircularList","_maxLength","onDeleteEmitter","onInsertEmitter","onTrimEmitter","_array","_startIndex","_length","_getCyclicIndex","recycle","trimStart","shiftElements","1439","isArray","8969","_onBinary","_onData","_onLineFeed","InstantiationService","OptionsService","BufferService","LogService","CoreService","CoreMouseService","ICoreMouseService","_dirtyRowService","DirtyRowService","IDirtyRowService","UnicodeService","_charsetService","CharsetService","ICharsetService","InputHandler","markRangeDirty","_writeBuffer","WriteBuffer","_onScrollApi","_windowsMode","writeSync","LogLevelEnum","WARN","MINIMUM_COLS","MINIMUM_ROWS","scroll","windowsMode","_enableWindowsMode","updateWindowsModeWrappedState","final","8460","5435","setWinLines","restoreWin","minimizeWin","setWinPosition","setWinSizePixels","raiseWin","lowerWin","refreshWin","setWinSizeChars","maximizeWin","fullscreenWin","getWinState","getWinPosition","getWinSizePixels","getScreenSizePixels","getCellSizePixels","getWinSizeChars","getScreenSizeChars","getIconTitle","getWinTitle","pushTitle","popTitle","_data","hook","put","unhook","EscapeSequenceParser","_parseBuffer","_stringDecoder","_utf8Decoder","_windowTitle","_iconName","_windowTitleStack","_iconNameStack","_curAttrData","_eraseAttrDataInternal","_onRequestBell","_onRequestRefreshRows","_onRequestReset","_onRequestSyncScrollBar","_onRequestWindowsOptionsReport","_onA11yChar","_onA11yTab","_onAnsiColorChange","_parseStack","paused","cursorStartX","cursorStartY","decodedLength","setCsiHandlerFallback","identToString","setEscHandlerFallback","setExecuteHandlerFallback","setOscHandlerFallback","setDcsHandlerFallback","payload","setPrintHandler","insertChars","intermediates","scrollLeft","scrollRight","cursorForward","cursorBackward","cursorNextLine","cursorPrecedingLine","cursorCharAbsolute","cursorForwardTab","eraseInDisplay","eraseInLine","scrollUp","eraseChars","cursorBackwardTab","charPosAbsolute","hPositionRelative","repeatPrecedingCharacter","sendDeviceAttributesPrimary","sendDeviceAttributesSecondary","linePosAbsolute","vPositionRelative","hVPosition","tabClear","setMode","setModePrivate","resetMode","resetModePrivate","charAttributes","deviceStatus","deviceStatusPrivate","setCursorStyle","setScrollRegion","windowOptions","insertColumns","deleteColumns","setExecuteHandler","BEL","LF","FF","carriageReturn","backspace","HT","SO","shiftOut","SI","shiftIn","C1","IND","NEL","nextLine","HTS","tabSet","OscHandler","setTitle","setIconName","setAnsiColor","reverseIndex","keypadApplicationMode","keypadNumericMode","fullReset","setgLevel","selectDefaultCharset","selectCharset","CHARSETS","screenAlignmentPattern","setErrorHandler","_preserveStack","_logSlowResolvingAsync","Promise","race","catch","clearRange","charset","modes","markDirty","setCellFromCodePoint","wcwidth","_eraseAttrData","insertCells","addCodepointToCell","precedingCodepoint","hasContent","DcsHandler","convertEol","_restrictCursor","nextStop","origin","_setCursor","_moveCursor","prevStop","_eraseInBufferLine","replaceCells","_resetBufferLine","deleteCells","_is","termName","setgCharset","DEFAULT_CHARSET","activeEncoding","activateAltBuffer","activateNormalBuffer","_updateAttrColor","_extractColor","hasSubParams","getSubParams","_processUnderline","savedX","savedY","savedCurAttrData","savedCharset","_savedCharset","_parseAnsiColorChange","markAllDirty","844","6114","isIphone","isIpad","platform","includes","8273","9282","3734","9092","BufferStringIterator","Buffer","MAX_BUFFER_SIZE","_hasScrollback","_nullCell","_whitespaceCell","_cols","_rows","_getCorrectBufferLength","getWhitespaceCell","BufferLine","scrollback","fillViewportRows","_isReflowEnabled","_reflow","_reflowLarger","_reflowSmaller","reflowLargerGetLinesToRemove","reflowLargerCreateNewLayout","reflowLargerApplyNewLayout","layout","_reflowLargerAdjustViewport","countRemoved","reflowSmallerGetNewLineLengths","newLines","copyCellsFrom","getWrappedLineTrimmedLength","setCell","tabStopWidth","Marker","onInsert","onDelete","onDispose","_removeMarker","_trimRight","_endIndex","_startOverscan","_endOverscan","_current","8437","_combined","_extendedAttrs","copyFrom","4841","4634","reduce","5295","BufferSet","_alt","inactiveBuffer","511","643","4863","_nextId","_onDispose","7116","q","z","2584","NUL","SOH","STX","EOT","ENQ","ACK","DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM","SUB","FS","GS","RS","US","PAD","HOP","BPH","NBH","SSA","ESA","HTJ","VTS","PLD","PLU","RI","SS2","DCS","PU1","PU2","STS","CCH","MW","SPA","EPA","SOS","SGCI","SCI","ST","PM","APC","7399","48","49","50","51","52","53","54","55","56","57","186","187","188","189","190","191","192","219","220","221","222","482","225","UnicodeV6","version","5981","queueMicrotask","_action","_callbacks","_pendingData","_bufferOffset","_isSyncWriting","_syncCalls","_innerWrite","5770","PAYLOAD_LIMIT","6351","DcsParser","_handlers","_active","_ident","_handlerFb","_stack","loopPosition","fallThrough","registerHandler","clearHandler","setHandlerFallback","Params","addParam","_params","_hitLimit","2015","VT500_TRANSITION_TABLE","TransitionTable","table","setDefault","addMany","_transitions","handlers","handlerPos","transition","chunkPos","initialState","currentState","_collect","_printHandlerFb","_executeHandlerFb","_csiHandlerFb","_escHandlerFb","_errorHandlerFb","_printHandler","_executeHandlers","_csiHandlers","_escHandlers","_oscParser","OscParser","_dcsParser","_errorHandler","_identifier","reverse","clearPrintHandler","clearEscHandler","clearExecuteHandler","clearCsiHandler","clearDcsHandler","clearOscHandler","clearErrorHandler","collect","abort","addSubParam","addDigit","6242","_start","_put","8742","maxSubParamsLength","Int32Array","_subParams","_subParamsLength","_subParamsIdx","Uint16Array","_rejectDigits","_rejectSubDigits","_digitIsSub","fromArray","getSubParamsAll","744","isUserScrolling","_cachedBlankLine","isFull","7994","glevel","_charsets","1753","NONE","events","restrict","X10","VT200","DRAG","ANY","SGR","_protocols","_encodings","_activeProtocol","_activeEncoding","_onProtocolChange","_lastEvent","addProtocol","addEncoding","_compareEvents","triggerBinaryEvent","down","up","drag","6975","_onUserInput","_scrollToBottom","disableStdin","3730","_end","4348","__spreadArrays","ServiceCollection","_entries","_services","getService","getServiceDependencies","7866","DEBUG","INFO","ERROR","off","OFF","_updateLogLevel","_evalLazyOptionalParams","_log","7302","DEFAULT_OPTIONS","DEFAULT_BELL_SOUND","altClickMovesCursor","_onOptionChange","_sanitizeAndValidateOption","8343","di$target","di$dependencies","serviceRegistry","2585","1480","_providers","_onChange","_activeProvider","elem","bare","term","columns","output","showMessage","removeMessage","setPreferences","onInput","Hterm","protocols","Connection","ConnectionFactory","WebSocket","isOpen","readyState","CONNECTING","OPEN","onOpen","onopen","onReceive","onclose","msgInputUnknown","msgInput","msgPing","msgResizeTerminal","msgUnknownOutput","msgOutput","msgPong","msgSetWindowTitle","msgSetPreferences","msgSetReconnect","msgSetBufferSize","connectionFactory","authToken","reconnect","bufSize","pingTimer","reconnectTimeout","connection","termInfo","Arguments","AuthToken","resizeHandler","colmuns","input","effectiveBufferSize","inputChunk","preferences","autoReconnect","WebTTY","fitAddOn","messageTimeout","resizeListener","decoder","messageTimer","onDataHandler","onResizeHandler","Xterm","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getElementById","gotty_term","protocol","host","pathname","factory","gotty_auth_token"],"mappings":"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,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,MAAQ,OAAU,CAAE,MAAQ,OAAU,CAAE,MAAQ,OAClD,CAAE,MAAQ,OAAU,CAAE,OAAS,SAAW,CAAE,QAAU,UAW1D3c,EAAIqc,GAAGO,QAAU,SAASC,GAExB,IACIC,EADA/Y,EAAM,EAAGsE,EAAMrI,EAAIqc,GAAGK,UAAUlc,OAAS,EAG7C,GAAIqc,EAAM7c,EAAIqc,GAAGK,UAAU,GAAG,IAAMG,EAAM7c,EAAIqc,GAAGK,UAAUrU,GAAK,GAC9D,OAAO,EACT,KAAOA,GAAOtE,GAEZ,GADA+Y,EAAMhZ,KAAK2F,OAAO1F,EAAMsE,GAAO,GAC3BwU,EAAM7c,EAAIqc,GAAGK,UAAUI,GAAK,GAC9B/Y,EAAM+Y,EAAM,MACP,MAAID,EAAM7c,EAAIqc,GAAGK,UAAUI,GAAK,IAGrC,OAAO,EAFPzU,EAAMyU,EAAM,EAMhB,OAAO,GAYT9c,EAAIqc,GAAGU,eAAiB,SAASF,GAC/B,IACIC,EADA/Y,EAAM,EAAGsE,EAAMrI,EAAIqc,GAAGM,UAAUnc,OAAS,EAG7C,GAAIqc,EAAM7c,EAAIqc,GAAGM,UAAU,GAAG,IAAME,EAAM7c,EAAIqc,GAAGM,UAAUtU,GAAK,GAC9D,OAAO,EACT,KAAOA,GAAOtE,GAEZ,GADA+Y,EAAMhZ,KAAK2F,OAAO1F,EAAMsE,GAAO,GAC3BwU,EAAM7c,EAAIqc,GAAGM,UAAUG,GAAK,GAC9B/Y,EAAM+Y,EAAM,MACP,MAAID,EAAM7c,EAAIqc,GAAGM,UAAUG,GAAK,IAGrC,OAAO,EAFPzU,EAAMyU,EAAM,EAMhB,OAAO,GAUT9c,EAAIqc,GAAGW,UAAY,SAASH,GAC1B,OAAI7c,EAAIqc,GAAGG,mBACFxc,EAAIqc,GAAGY,yBAAyBJ,GAEhC7c,EAAIqc,GAAGa,4BAA4BL,IAY9C7c,EAAIqc,GAAGa,4BAA8B,SAASL,GAE5C,OAAY,IAARA,EACK7c,EAAIqc,GAAGC,SACZO,EAAM,IAAOA,GAAO,KAAQA,EAAM,IAC7B7c,EAAIqc,GAAGE,aAGZM,EAAM,IACD,EAGL7c,EAAIqc,GAAGO,QAAQC,GACV,EAGF,GACJA,GAAO,OACNA,GAAO,MACA,MAAPA,GAAwB,MAAPA,GAChBA,GAAO,OAAUA,GAAO,OACjB,OAAPA,GACAA,GAAO,OAAUA,GAAO,OACxBA,GAAO,OAAUA,GAAO,OACxBA,GAAO,OAAUA,GAAO,OACxBA,GAAO,OAAUA,GAAO,OACxBA,GAAO,OAAUA,GAAO,OACxBA,GAAO,OAAUA,GAAO,OACxBA,GAAO,QAAWA,GAAO,QACzBA,GAAO,QAAWA,GAAO,UAahC7c,EAAIqc,GAAGY,yBAA2B,SAASJ,GACzC,OAAI7c,EAAIqc,GAAGU,eAAeF,GACjB7c,EAAIqc,GAAGI,kBAETzc,EAAIqc,GAAGa,4BAA4BL,IAU5C7c,EAAIqc,GAAGc,SAAW,SAAStW,GAGzB,IAFA,IAAIuW,EAAOnW,EAAK,EAEPvG,EAAI,EAAGA,EAAImG,EAAIrG,QAAS,CAC/B,IAAIib,EAAY5U,EAAIwW,YAAY3c,GAEhC,IADA0c,EAAQpd,EAAIqc,GAAGW,UAAUvB,IACb,EACV,OAAQ,EACVxU,GAAMmW,EACN1c,GAAM+a,GAAa,MAAU,EAAI,EAGnC,OAAOxU,GAYTjH,EAAIqc,GAAGhY,OAAS,SAASwC,EAAKyW,EAAOC,GACnC,IAAIC,EAAYC,EAAUL,EAE1B,IAAKI,EAAa,EAAGJ,EAAQ,EAAGI,EAAa3W,EAAIrG,WAC/C4c,GAASpd,EAAIqc,GAAGW,UAAUnW,EAAIiV,WAAW0B,KAC7BF,GAF2CE,KAMzD,GAAiB3a,MAAb0a,EAAwB,CAC1B,IAAKE,EAAWD,EAAYJ,EAAQ,EAC/BK,EAAW5W,EAAIrG,QAAU4c,GAASG,EAClCH,GAASpd,EAAIqc,GAAGW,UAAUnW,EAAIiV,WAAW2B,IAAYA,KAG1D,OAFIL,EAAQG,GACVE,IACK5W,EAAI6W,UAAUF,EAAYC,GAGnC,OAAO5W,EAAIxC,OAAOmZ,IAYpBxd,EAAIqc,GAAGqB,UAAY,SAAS7W,EAAKyW,EAAOK,GACtC,OAAO3d,EAAIqc,GAAGhY,OAAOwC,EAAKyW,EAAOK,EAAML,IAEzCtd,EAAIwS,SAASE,IAAI,2BAA4B,aAC7C,QAIA1S,EAAIwS,SAASE,IAAI,wBAAyB,aAC1C,cAWA1S,EAAIc,MAAM,eAMV,IAAI8c,EAAQ,CAQZ,WAAmB,KAOnB,mBAA2B,eAW3B,kBAA0B,IAQ1B,yBAAiC,eAOjC,SAAiB,CAAC,yBAA0B,qBAC1B,uBAAwB,iBACxB,yBAUlB5d,EAAI6d,aAAa,SAAS,SAAS9b,GACjC,SAAS+b,EAAStc,GAChBoc,EAAMG,WAAavc,EAAOmR,KAC1BpQ,WAAWR,EAAQ,GAchB6b,EAAMI,iBACLxc,OAAOiG,QAAUA,OAAO6F,SAAW7F,OAAO6F,QAAQ2Q,KACpDL,EAAMI,eAAiB,IAAIhe,EAAIgT,QAAQC,OAAOxL,OAAO6F,QAAQ2Q,MAE7DL,EAAMI,eAAiB,IAAIhe,EAAIgT,QAAQa,OAM3C,IAAIqK,GAAgB,EACpB,GAAI1c,OAAOiG,QAAUA,OAAOU,SAAWV,OAAOU,QAAQgW,YAAa,CACjE,IAAIC,EAAW3W,OAAOU,QAAQgW,cAC9BD,EAAgBE,EAASC,KAAOD,EAASC,IAAIC,WAG3CJ,EAEF3b,WAAWub,EAAS3S,KAAK,KAAM,CAACwH,KAAM,UAAW,GAE7CnR,OAAOiG,QAAUA,OAAO8W,KAG1B9W,OAAO8W,KAAKC,YAlChB,SAAeC,GACTA,GAAOjd,OAAOiG,OAChBA,OAAOiX,QAAQvS,IAAIsS,EAAIE,SAAU,KAAMb,IAIvCF,EAAMG,WAAa,SACnBxb,WAAWR,EAAQ,OA6BnBQ,WAAWub,EAAS3S,KAAK,KAAM,CAACwH,KAAM,WAAY,MAQxDiL,EAAMgB,cAAgB,SAASnS,GAC7B,OAAOA,EAAIoS,yBAMbjB,EAAMkB,eAAiB,SAASrS,GAC9B,OAAOA,EAAIoS,wBAAwBzB,OAMrCQ,EAAMmB,gBAAkB,SAAStS,GAC/B,OAAOA,EAAIoS,wBAAwBG,QAQrCpB,EAAMqB,yBAA2B,SAASC,GACxC,IACEA,EAASC,YAAY,QACrB,MAAOC,MAgBXxB,EAAMyB,mBAAqB,SAASH,GAClC,IACE,OAAOA,EAASC,YAAY,SAC5B,MAAOC,GAGP,OAAO,IAWXxB,EAAM0B,OAAS,SAASC,GACtB,IAAI7Z,EAAM,CAAC8Z,EAAMC,SAAsB5c,IAAT2c,EAAqBA,EAAOC,EACtDF,UACFA,EAAS,IAIX,IAAIG,EAAU,CACV,KAAQH,EAAOI,KACf,KAAQja,EAAI6Z,EAAOK,KAAM5f,EAAIwS,SAASO,WAAW,0BAGjD8M,EAAQna,EAAI6Z,EAAOM,MAAOre,OAAO0d,SAASW,OACzCA,IACHA,EAAQ,SACVA,EAAQ7f,EAAIoC,EAAEwE,YAAYgX,EAAMkC,yBAA0B,CAAC,MAASD,IAEpE,IAAIE,EAAI,IAAIC,aAAaH,EAAOH,GAKhC,OAJAK,EAAEE,QAAU,WACVze,OAAO0e,QACPjf,KAAKkf,SAEAJ,GAWTnC,EAAMwC,KAAO,SAAShD,EAAO4B,GAC3B/d,KAAKmc,MAAQA,EACbnc,KAAK+d,OAASA,GAShBpB,EAAMwC,KAAK3d,UAAU4d,OAAS,SAASjD,EAAO4B,GAC5C/d,KAAKmc,MAAQA,EACbnc,KAAK+d,OAASA,GAShBpB,EAAMwC,KAAK3d,UAAU6d,MAAQ,WAC3B,OAAO,IAAI1C,EAAMwC,KAAKnf,KAAKmc,MAAOnc,KAAK+d,SAQzCpB,EAAMwC,KAAK3d,UAAU8d,MAAQ,SAASC,GACpCvf,KAAKmc,MAAQoD,EAAKpD,MAClBnc,KAAK+d,OAASwB,EAAKxB,QAUrBpB,EAAMwC,KAAK3d,UAAUge,OAAS,SAASD,GACrC,OAAOvf,KAAKmc,OAASoD,EAAKpD,OAASnc,KAAK+d,QAAUwB,EAAKxB,QASzDpB,EAAMwC,KAAK3d,UAAUuB,SAAW,WAC9B,MAAO,gBAAkB/C,KAAKmc,MAAQ,KAAOnc,KAAK+d,OAAS,KAoB7DpB,EAAM8C,OAAS,SAASC,EAAKC,EAAQC,GACnC5f,KAAK0f,IAAMA,EACX1f,KAAK2f,OAASA,EACd3f,KAAK6f,WAAaD,GAWpBjD,EAAM8C,OAAOje,UAAUse,KAAO,SAASJ,EAAKC,EAAQC,GAClD5f,KAAK0f,IAAMA,EACX1f,KAAK2f,OAASA,EACd3f,KAAK6f,WAAaD,GASpBjD,EAAM8C,OAAOje,UAAU6d,MAAQ,WAC7B,OAAO,IAAI1C,EAAM8C,OAAOzf,KAAK0f,IAAK1f,KAAK2f,OAAQ3f,KAAK6f,WAQtDlD,EAAM8C,OAAOje,UAAU8d,MAAQ,SAASC,GACtCvf,KAAK0f,IAAMH,EAAKG,IAChB1f,KAAK2f,OAASJ,EAAKI,OACnB3f,KAAK6f,SAAWN,EAAKM,UAUvBlD,EAAM8C,OAAOje,UAAUge,OAAS,SAASD,GACvC,OAAQvf,KAAK0f,KAAOH,EAAKG,KAAO1f,KAAK2f,QAAUJ,EAAKI,QAC5C3f,KAAK6f,UAAYN,EAAKM,UAShClD,EAAM8C,OAAOje,UAAUuB,SAAW,WAChC,MAAQ,kBAAoB/C,KAAK0f,IAAM,KAAO1f,KAAK2f,OAAS,KACpD3f,KAAK6f,SAAW,KAS1B9gB,EAAIc,MAAM,SAmBV8c,EAAMoD,MAAQ,SAASC,EAAU7V,EAAK8V,GACpCjgB,KAAKkgB,UAAYF,EACjBhgB,KAAKmgB,KAAOH,EAASG,KACrBngB,KAAKmK,IAAMA,EACXnK,KAAKye,QAAUwB,GAAe,GAC9BjgB,KAAKogB,QAAU,KACfpgB,KAAKqgB,WAAa,KAClBrgB,KAAKsgB,gBAAkB,MAMzB3D,EAAMoD,MAAMve,UAAU+e,WAAa,SAASvN,GAC1C,OAAQA,EAAErB,KAAKhR,MACb,IAAK,cAGH,YADAX,KAAKwgB,oBAEP,IAAK,mBAOH,OAHAxgB,KAAKqgB,WAAWI,MAAMC,QAAU,OAChC1gB,KAAKsgB,gBAAgBK,MAAMC,UAAY5gB,KAAK6gB,UAAU3W,KAAKlK,WAC3DA,KAAK8gB,SAEP,QAEE,YADArgB,QAAQoH,IAAI,8BAA+BmL,EAAErB,QAWnDgL,EAAMoD,MAAMve,UAAUqf,UAAY,aAKlClE,EAAMoD,MAAMve,UAAUuf,QAAU,WAC9B/gB,KAAKsgB,gBAAkB,IAAIU,eAC3BhhB,KAAKsgB,gBAAgBK,MAAMC,UAAY5gB,KAAKugB,WAAWrW,KAAKlK,MAC5DA,KAAKsgB,gBAAgBK,MAAMtE,QAC3Brc,KAAKogB,QAAQa,cAAcC,YACvB,CAACvgB,KAAM,WAAYwgB,KAAM,CAAC,CAACC,YAAaphB,KAAKsgB,gBAAgBe,SAC7DrhB,KAAKmK,IAAK,CAACnK,KAAKsgB,gBAAgBe,SAMtC1E,EAAMoD,MAAMve,UAAUsf,OAAS,aAK/BnE,EAAMoD,MAAMve,UAAUgf,kBAAoB,WACxCzhB,EAAIoC,EAAEmF,mBAAmB,SAASsC,GAC9B5I,KAAKkhB,YAAY,gBAAiB,CAAC,CAChCI,gBAAiB1Y,EACjB2Y,gBAAiBvhB,KAAKkgB,UAAUsB,qBAChCC,gBAAiBzhB,KAAKkgB,UAAUwB,qBAChCC,YAAa3hB,KAAKkgB,UAAU0B,iBAC5BC,SAAU7hB,KAAKkgB,UAAU4B,cACzBC,WAAY/hB,KAAKkgB,UAAU8B,gBAC3BC,QAASljB,EAAIoC,EAAE8F,OAAO,SAGzBiD,KAAKlK,QAMX2c,EAAMoD,MAAMve,UAAU0gB,gBAAkB,WACtCliB,KAAKkf,SAMPvC,EAAMoD,MAAMve,UAAU0d,MAAQ,WACvBlf,KAAKqgB,YAAergB,KAAKqgB,WAAW8B,aAGzCniB,KAAKqgB,WAAW8B,WAAWvS,YAAY5P,KAAKqgB,YAC5CrgB,KAAKoiB,YAOPzF,EAAMoD,MAAMve,UAAU4gB,QAAU,aAKhCzF,EAAMoD,MAAMve,UAAU0f,YAAc,SAASvgB,EAAMwgB,GACjD,IAAKnhB,KAAKsgB,gBACR,MAAM,IAAIthB,MAAM,kCAElBgB,KAAKsgB,gBAAgBK,MAAMO,YAAY,CAACvgB,KAAMA,EAAMwgB,KAAMA,KAQ5DxE,EAAMoD,MAAMve,UAAU6gB,KAAO,WAC3B,IAAI7hB,EAAOR,KAEX,SAASsiB,EAAI3hB,EAAMyM,GACjB,OAAIzM,KAAQH,EAAKie,QACRje,EAAKie,QAAQ9d,GAEfyM,EAKT,GAFI5M,EAAOR,KAEPA,KAAKqgB,YAAcrgB,KAAKqgB,WAAW8B,WACrC1hB,QAAQ4E,MAAM,6BADhB,CAKA,IAEIkd,EAAU5F,EAAMgB,cAAc3d,KAAKmgB,MAOnClC,GALQqE,EAAI,QAAS,KACZA,EAAI,SAAU,KACfC,EAAQpG,MACToG,EAAQxE,OAEJ/d,KAAKkgB,UAAUsC,WAE1BC,EAAYziB,KAAKqgB,WAAapC,EAASyE,cAAc,OACzDD,EAAUhC,MAAMkC,QACZ,wJASyB3iB,KAAKkgB,UAAUsB,qBATxC,gBAUiBxhB,KAAKkgB,UAAUsB,qBAAuB,UA0B3D,IAAIoB,EAAS5iB,KAAKogB,QAAUnC,EAASyE,cAAc,UACnDE,EAAOC,OAAS7iB,KAAK+gB,QAAQ7W,KAAKlK,MAClC4iB,EAAOnC,MAAMkC,QAAU,oCAIvBC,EAAOzW,aAAa,MAAOnM,KAAKmK,KAChCyY,EAAOzW,aAAa,YAAY,GAChCsW,EAAUK,YAAYF,GAEtB5iB,KAAKmgB,KAAK2C,YAAYL,KASxB1jB,EAAIc,MAAM,yBAYV8c,EAAMoG,SAAW,SAAS/C,GAExBhgB,KAAKggB,SAAWA,EAGhBhgB,KAAKgjB,iBAAmB,KAIxBhjB,KAAKijB,UAAY,CACb,CAAC,WAAYjjB,KAAKkjB,YAAYhZ,KAAKlK,OACnC,CAAC,UAAWA,KAAKmjB,WAAWjZ,KAAKlK,OACjC,CAAC,WAAYA,KAAKojB,YAAYlZ,KAAKlK,OACnC,CAAC,QAASA,KAAKqjB,SAASnZ,KAAKlK,OAC7B,CAAC,YAAaA,KAAKsjB,aAAapZ,KAAKlK,QAMzCA,KAAKujB,OAAS,IAAI5G,EAAMoG,SAASS,OAAOxjB,MAExCA,KAAKyjB,SAAW,IAAI9G,EAAMoG,SAASW,SAAS1jB,MAQ5CA,KAAK2jB,UAAY,OAMjB3jB,KAAK4jB,kBAAmB,EAOxB5jB,KAAK6jB,gBAAiB,EAKtB7jB,KAAK8jB,gBAAiB,EAOtB9jB,KAAK+jB,uBAAwB,EAM7B/jB,KAAKgkB,WAAY,EAMjBhkB,KAAKikB,YAAa,EAOlBjkB,KAAKkkB,mBAAoB,EAOzBlkB,KAAKmkB,mBAAoB,EAMzBnkB,KAAKokB,yBAA0B,EAK/BpkB,KAAKqkB,kBAAoB,QAKzBrkB,KAAKskB,iBAAkB,EAKvBtkB,KAAKukB,WAAY,EAcjBvkB,KAAKwkB,aAAe,SAQpBxkB,KAAKykB,WAAY,EAajBzkB,KAAK0kB,6BAA8B,EAQnC1kB,KAAK2kB,cAAgB,EAMrB3kB,KAAK4kB,mBAAoB,EAOzB5kB,KAAK6kB,sBAAwB,MAM/BlI,EAAMoG,SAAS+B,WAAa,CAK1BC,OAAQhmB,EAAIoC,EAAEuE,WAAW,UA0BzBsf,QAASjmB,EAAIoC,EAAEuE,WAAW,WAM1Buf,KAAMlmB,EAAIoC,EAAEuE,WAAW,QAUvBwf,MAAOnmB,EAAIoC,EAAEuE,WAAW,UAM1BiX,EAAMoG,SAASvhB,UAAU2jB,OAAS,SAASvf,GACzC,MAA8B,SAA1B5F,KAAKqkB,kBACArkB,KAAKggB,SAASoF,GAAGlK,WAAWtV,GAE9BA,GAcT+W,EAAMoG,SAASvhB,UAAU6jB,gBAAkB,SAASC,GAClD,GAAIA,GAAWtlB,KAAKgjB,iBAApB,CAGIsC,GAAWtlB,KAAKgjB,kBAClBhjB,KAAKqlB,gBAAgB,MAEvB,IAAK,IAAI5lB,EAAI,EAAGA,EAAIO,KAAKijB,UAAU1jB,OAAQE,IAAK,CAC9C,IAAI8lB,EAAUvlB,KAAKijB,UAAUxjB,GACzB6lB,EACFA,EAAQxS,iBAAiByS,EAAQ,GAAIA,EAAQ,IAE7CvlB,KAAKgjB,iBAAiBwC,oBAAoBD,EAAQ,GAAIA,EAAQ,IAIlEvlB,KAAKgjB,iBAAmBsC,IAQ1B3I,EAAMoG,SAASvhB,UAAUikB,kBAAoB,WAC3CzlB,KAAKqlB,gBAAgB,OASvB1I,EAAMoG,SAASvhB,UAAU8hB,aAAe,SAAStQ,GAC1CA,EAAErB,MAGPqB,EAAErB,KAAKrS,MAAM,IAAIsR,QAAQ5Q,KAAKggB,SAAS0F,cAAcxb,KAAKlK,KAAKggB,YAMjErD,EAAMoG,SAASvhB,UAAU4hB,YAAc,SAASpQ,GAC9C,IAGI2S,EADMpkB,OAAOwZ,aAAa/H,EAAE4S,OACbrgB,cACnB,IAAKyN,EAAE6S,UAAW7S,EAAE8S,SAAyB,KAAZH,GAA+B,KAAZA,EAApD,CAMA,GAAI3S,EAAE+S,QAA+B,eAArB/lB,KAAKwkB,cAA+C,GAAdxR,EAAEgT,SAAe,CAQrE,IAAIC,EAAK1kB,OAAOwZ,aAAa/H,EAAEkT,SAC1BlT,EAAEmT,WACLF,EAAKA,EAAG1gB,eACH0gB,EAAGpL,WAAW,QAEZ7H,EAAEgT,UAAY,KACvBC,EAAKjT,EAAEgT,UAGLC,GACFjmB,KAAKggB,SAAS0F,cAAcnkB,OAAOwZ,aAAakL,IAElDjT,EAAEoT,iBACFpT,EAAEqT,oBAUJ1J,EAAMoG,SAASvhB,UAAU8kB,qCAAuC,SAAStT,GAClEzS,OAAOiG,QAAWjG,OAAOiG,OAAO4W,KAAQ7c,OAAOiG,OAAO4W,IAAI7c,SAE1DyS,EAAE6S,SAAY7S,EAAEmT,UACnBnT,EAAEoT,mBAGNzJ,EAAMoG,SAASvhB,UAAU0hB,YAAc,SAASlQ,GAC9ChT,KAAK2kB,cAAgB,GAGvBhI,EAAMoG,SAASvhB,UAAU6hB,SAAW,SAASrQ,GAC1B,IAAbA,EAAEkT,UACJlmB,KAAK2kB,cAAgB3kB,KAAK2kB,gBAAkB,GAAM3R,EAAEuT,SAAW,IAEhD,IAAbvT,EAAEkT,SACJlmB,KAAKsmB,qCAAqCtT,IAM9C2J,EAAMoG,SAASvhB,UAAU2hB,WAAa,SAASnQ,GAC5B,IAAbA,EAAEkT,UACJlmB,KAAK2kB,cAAgB3kB,KAAK2kB,cAAiB,GAAM3R,EAAEuT,SAAW,GAE/C,IAAbvT,EAAEkT,SACJlmB,KAAKsmB,qCAAqCtT,GAE5C,IAAIwT,EAASxmB,KAAKujB,OAAOkD,QAAQzT,EAAEkT,SACnC,GAAKM,EAAL,CAMA,IA4DIE,EA5DAC,EAAqB,KAErBnmB,EAAOR,KAqBP+kB,EAASpI,EAAMoG,SAAS+B,WAAWC,OACnCC,EAAUrI,EAAMoG,SAAS+B,WAAWE,QACpCC,EAAOtI,EAAMoG,SAAS+B,WAAWG,KACjCC,EAAQvI,EAAMoG,SAAS+B,WAAWI,MAElC0B,EAAU5T,EAAE6S,QACZgB,GAAM7mB,KAAKykB,WAAoBzR,EAAE+S,OACjCe,EAAO9mB,KAAKykB,WAAazR,EAAE+S,QAAuB/S,EAAE8S,QAGpDiB,GAAgB,YAAYriB,KAAK8hB,EAAOQ,QAE5C,OAAQhnB,KAAK2jB,WACX,IAAK,WACDoD,GAAeH,GAAWC,IAG5BD,GAAU,EACVC,GAAM,GAER,MAEA,IAAK,YACDE,GAAuD,EAAvC/mB,KAAKggB,SAASiH,SAAStC,gBACzCiC,GAAU,EACVC,GAAM,GAER,MAEA,IAAK,WACDE,GAAuD,EAAvC/mB,KAAKggB,SAASiH,SAAStC,gBACzCiC,GAAU,EACVC,GAAM,GAQRH,EA5DF,SAASQ,EAAUvmB,GAKjBgmB,EAAqBhmB,EAErB,IAAI+lB,EAASF,EAAO7lB,GAOpB,MANqB,mBAAV+lB,IACTA,EAASA,EAAO5mB,MAAMU,EAAK+iB,OAAQ,CAACvQ,EAAGwT,KAErCE,IAAW1B,GAAmB,UAARrkB,IACxB+lB,EAASQ,EAAU,WAEdR,EA8CEQ,CADPN,EACiB,UACVC,EACU,MACVC,EACU,OAEA,UAOrB,IAAI5lB,GAAS8R,EAAEmU,cAAgBnU,EAAEmT,SAE7BiB,EAAU,CACZlB,QAASlT,EAAEkT,QACXhlB,MAAO8R,EAAEmT,SACTkB,KAAMT,EACNC,IAAKA,EACLC,KAAMA,GAGJQ,EAAUtnB,KAAKyjB,SAAS8D,WAAWH,GAqBvC,GAnBIE,IAGFpmB,EAAQ0lB,EAAUC,EAAMC,GAAO,EAC/BH,EAAqB,SAGA,mBAFrBD,EAASY,EAAQZ,UAGfA,EAASA,EAAOc,KAAKxnB,KAAMA,KAAKggB,SAAUoH,KAG1CP,GAA4B,eAArB7mB,KAAKwkB,cAAiCkC,GAAU1B,IAKzD0B,EAASzB,GAGPyB,IAAWzB,IAASyB,IAAW1B,GAAa4B,GAAWC,GAAOC,KAa9DJ,IAAWxB,IACb2B,EAAMD,GAAU,EAEK,mBADrBF,EAASF,EAAOiB,UAEdf,EAASA,EAAO5mB,MAAME,KAAKujB,OAAQ,CAACvQ,EAAGwT,KAErCE,GAAU1B,GAAmC,GAAxBwB,EAAOQ,OAAOznB,SACrCmnB,EAASF,EAAOQ,OAAO5jB,OAAQlC,EAAQ,EAAI,EAAI,KAGnD8R,EAAEoT,iBACFpT,EAAEqT,kBAEEK,IAAW3B,GAGf,GAAI2B,IAAW1B,GAA4B,iBAAV0B,EAAjC,CAeA,GAR0B,WAAtBC,EACFC,GAAU,EACqB,OAAtBD,EACTE,GAAM,EACyB,QAAtBF,IACTG,GAAO,GAGkB,MAAvBJ,EAAOtjB,OAAO,EAAG,KAAkByjB,GAAOD,GAAW1lB,GAAQ,CAK/D,IAAIwmB,GAEAxmB,GAAW2lB,GAAOD,GAEXC,GAAS3lB,GAAS0lB,EAElB1lB,GAAS2lB,IAAQD,EAC1Bc,EAAM,MACGd,GAAa1lB,GAAS2lB,EAEtB3lB,GAAS0lB,IAAYC,EAC9Ba,EAAM,KACGb,GAAOD,IAAY1lB,EAC5BwmB,EAAM,KACGxmB,GAAS2lB,GAAOD,IACzBc,EAAM,MANNA,EAAM,KAJNA,EAAM,KAFNA,EAAM,KAiBNhB,EAFmB,GAAjBA,EAAOnnB,OAEA,MAAWmoB,EAAMhB,EAAOtjB,OAAO,EAAG,GAGlCsjB,EAAOtjB,OAAO,EAAGsjB,EAAOnnB,OAAS,GAAKmoB,EAC3ChB,EAAOtjB,OAAOsjB,EAAOnnB,OAAS,OAG/B,CAaL,GAZImnB,IAAW1B,IACb0B,EAASF,EAAOQ,OAAO5jB,OAAQlC,EAAQ,EAAI,EAAI,GAE3C0lB,IAEEe,EADYnB,EAAOQ,OAAO5jB,OAAO,EAAG,GACnByX,WAAW,KACpB,IAAM8M,GAAQ,KACxBjB,EAASnlB,OAAOwZ,aAAa4M,EAAO,MAKtCd,GAA4B,SAArB7mB,KAAKwkB,cAA4C,GAAjBkC,EAAOnnB,OAAa,CAC7D,IAAIooB,EAAOjB,EAAO7L,WAAW,GAAK,IAClC6L,EAASnlB,OAAOwZ,aAAa4M,IAM1Bd,GAA4B,UAArB7mB,KAAKwkB,cACZsC,GAAQ9mB,KAAKskB,mBAChBoC,EAAS,IAASA,GAItB1mB,KAAKggB,SAAS0F,cAAcgB,QAzE1BjmB,QAAQC,KAAK,mBAAqBgK,KAAKgD,UAAUgZ,SA9IjDjmB,QAAQC,KAAK,8BAAgCsS,EAAEkT,UAuOnDvJ,EAAMoG,SAASW,SAAW,WACxB1jB,KAAK4nB,UAAY,IAMnBjL,EAAMoG,SAASW,SAASliB,UAAUgR,MAAQ,WACxCxS,KAAK4nB,UAAY,IAYnBjL,EAAMoG,SAASW,SAASliB,UAAUqmB,YAAc,SAASC,EAAYpB,GACnE,IAAIY,EAAU,KACVS,EAAO/nB,KAAK4nB,UAAUE,EAAW5B,SACrC,GAAI6B,EACF,IAAK,IAAItoB,EAAI,EAAGA,EAAIsoB,EAAKxoB,OAAQE,IAC/B,GAAIsoB,EAAKtoB,GAAGqoB,WAAWE,gBAAgBF,GAAa,CAClDR,EAAUS,EAAKtoB,GACf,MAKF6nB,EACFA,EAAQZ,OAASA,GAEjBY,EAAU,CAACQ,WAAYA,EAAYpB,OAAQA,GAEtCqB,GAGH/nB,KAAK4nB,UAAUE,EAAW5B,SAAShmB,KAAKonB,GAExCS,EAAKE,MAAK,SAASjY,EAAGvM,GACpB,OAAOkZ,EAAMoG,SAASmF,WAAWC,YAC7BnY,EAAE8X,WAAYrkB,EAAEqkB,gBANtB9nB,KAAK4nB,UAAUE,EAAW5B,SAAW,CAACoB,KAqC5C3K,EAAMoG,SAASW,SAASliB,UAAU4mB,WAAa,SAASjf,EAAKud,GAE3D,GAAkB,iBAAPvd,EAAX,CAMA,IAGIkf,EAHAC,EAAI,IAAI3L,EAAM4L,OAElBD,EAAE9X,MAAMrH,GAGR,IACEkf,EAAWC,EAAEE,mBACb,MAAOrpB,GAEP,YADAsB,QAAQ4E,MAAMlG,GAIhB,GAAKmpB,EAAEG,aAAP,CAMA,GAAqB,iBAAV/B,EAAoB,CAC7B4B,EAAE9X,MAAMkW,GACR,IACEA,EAAS4B,EAAEI,iBACX,MAAOvpB,GAEP,YADAsB,QAAQ4E,MAAMlG,IAKbmpB,EAAEG,aAKPzoB,KAAK6nB,YAAY,IAAIlL,EAAMoG,SAASmF,WAAWG,GAAW3B,GAJxDjmB,QAAQ4E,MAAMijB,EAAEjjB,MAAM,6BAA+BgjB,SAhBrD5nB,QAAQ4E,MAAMijB,EAAEjjB,MAAM,6BAA+BgjB,SAlBrDroB,KAAK6nB,YAAY1e,EAAKud,IAyD1B/J,EAAMoG,SAASW,SAASliB,UAAUmnB,YAAc,SAAShlB,GACvD,IAAK,IAAIwF,KAAOxF,EACd3D,KAAKooB,WAAWjf,EAAKxF,EAAIwF,KAY7BwT,EAAMoG,SAASW,SAASliB,UAAU+lB,WAAa,SAASH,GACtD,IAAIW,EAAO/nB,KAAK4nB,UAAUR,EAAQlB,SAClC,IAAK6B,EACH,OAAO,KAET,IAAK,IAAItoB,EAAI,EAAGA,EAAIsoB,EAAKxoB,OAAQE,IAAK,CACpC,IAAI6nB,EAAUS,EAAKtoB,GACnB,GAAI6nB,EAAQQ,WAAWc,aAAaxB,GAClC,OAAOE,EAGX,OAAO,MASTvoB,EAAIc,MAAM,6BAuBV8c,EAAMoG,SAASS,OAAS,SAASyD,GAC/BjnB,KAAKinB,SAAWA,EAChBjnB,KAAKymB,QAAU,GACfzmB,KAAKwQ,SAoCPmM,EAAMoG,SAASS,OAAOhiB,UAAUqnB,UAAY,SAAS3C,EAASzhB,GACxDyhB,KAAWlmB,KAAKymB,SAClBhmB,QAAQC,KAAK,sBAAwBwlB,GAEvClmB,KAAKymB,QAAQP,GAAWzhB,GAgB1BkY,EAAMoG,SAASS,OAAOhiB,UAAUsnB,WAAa,SAAS7pB,GACpD,IAAK,IAAIQ,EAAI,EAAGA,EAAIC,UAAUH,OAAQE,IACpCO,KAAK6oB,UAAUnpB,UAAUD,GAAG,GACb,CAAEunB,OAAQtnB,UAAUD,GAAG,GACrBgoB,OAAQ/nB,UAAUD,GAAG,GACrBmnB,QAASlnB,UAAUD,GAAG,GACtBonB,IAAKnnB,UAAUD,GAAG,GAClBqnB,KAAMpnB,UAAUD,GAAG,MAQxCkd,EAAMoG,SAASS,OAAOhiB,UAAUgP,MAAQ,WACtCxQ,KAAKymB,QAAU,GAEf,IAAIjmB,EAAOR,KAIX,SAAS+oB,EAAQrC,EAAQ1T,EAAGoD,GAC1B,MAAqB,mBAAVsQ,EACFA,EAAO5mB,MAAMU,EAAM,CAACwS,EAAGoD,IAEzBsQ,EAeT,SAASsC,EAAGhZ,EAAGvM,GACb,OAAO,SAASuP,EAAGoD,GAGjB,OAAO2S,EAFO/V,EAAEmT,UAAYnT,EAAE6S,SAAW7S,EAAE+S,QAAU/S,EAAE8S,UACxCtlB,EAAKymB,SAAS9C,kBAAqBnU,EAAIvM,EAC/BuP,EAAGoD,IAK9B,SAAS6S,EAAGjZ,EAAGvM,GACb,OAAO,SAASuP,EAAGoD,GAEjB,OAAO2S,EADOvoB,EAAKymB,SAAS7C,wBAA8B3gB,EAAJuM,EAC/BgD,EAAGoD,IAK9B,SAAS8S,EAAGlZ,EAAGvM,GACb,OAAO,SAASuP,EAAGoD,GACjB,IAAIsQ,EAAU1T,EAAEmT,SAAe1iB,EAAJuM,EAE3B,OADAgD,EAAEmU,cAAe,EACV4B,EAAQrC,EAAQ1T,EAAGoD,IAK9B,SAASyQ,EAAI7W,EAAGvM,GACd,OAAO,SAASuP,EAAGoD,GAEjB,OAAO2S,EADO/V,EAAE+S,OAAatiB,EAAJuM,EACFgD,EAAGoD,IAK9B,SAASsR,EAAI1X,EAAGvM,GACd,OAAO,SAASuP,EAAGoD,GAEjB,OAAO2S,EADQ/V,EAAEmT,UAAYnT,EAAE6S,SAAW7S,EAAE+S,QAAU/S,EAAE8S,QAAeriB,EAAJuM,EAC5CgD,EAAGoD,IAK9B,SAAS+S,EAAIlD,GAAM,OAAO1kB,OAAOwZ,aAAakL,EAAGpL,WAAW,GAAK,IAGjE,SAASD,EAAEvU,GAAK,OAAO,SAAU2M,EAAGoD,GAAK,OAAOpW,KAAKqG,GAAG2M,EAAGoD,IAG3D,SAASgT,EAAItjB,GACX,OAAO,SAASkN,EAAGoD,GACjB,OAAK5V,EAAKymB,SAASrC,kBAOZmE,EAAQjjB,EAAIkN,EAAGoD,GAJC,KAAbpD,EAAEkT,SAA+B,KAAblT,EAAEkT,SAA+B,KAAblT,EAAEkT,QAC9CvJ,EAAMoG,SAAS+B,WAAWC,OAC1BpI,EAAMoG,SAAS+B,WAAWG,MAMpC,IAIIF,EAASpI,EAAMoG,SAAS+B,WAAWC,OACnCC,EAAUrI,EAAMoG,SAAS+B,WAAWE,QACpCC,EAAOtI,EAAMoG,SAAS+B,WAAWG,KACjCC,EAAQvI,EAAMoG,SAAS+B,WAAWI,MAEtCllB,KAAK8oB,WAKH,CAAC,EAAK,YAAa7D,EAAMA,EAAMA,EAAMA,GAGrC,CAAC,GAAK,QAjBE,IAiBkCD,EAASA,EAAaA,GAChE,CAAC,IAAK,OAAS0C,EAAI2B,MAAWC,OAAYtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAAS0C,EAAI2B,MAAWC,OAAYtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAAS0C,EAAI2B,MAAWC,OAAYtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAAS0C,EAAI2B,MAAWC,OAAYtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAASsE,QAA2BtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAASsE,QAA2BtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAASsE,QAA2BtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAASsE,QAA2BtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,OAASsE,QAA2BtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,QAASsE,QAA2BtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,QAASsE,QAA2BtE,EAASsE,QAAatE,GAChE,CAAC,IAAK,QAASsE,QAA2BtE,EAASsE,QAAatE,GAGhE,CAAC,IAAK,KAAMA,EAASkE,EAAGC,EAAI,KAAMA,EAAI,MAAWnE,EAAmBC,GACpE,CAAC,GAAK,KAAMD,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,cAAkBA,EAAE,aAAcA,EAAE,eAC3D,CAAC,GAAK,KAAMoK,EAASpK,EAAE,oBAAoBA,EAAE,aAAaA,EAAE,qBAC5D,CAAC,IAAK,KAAMoK,EAASpK,EAAE,oBAAqBoK,EAASpK,EAAE,qBACvD,CAAC,IAAK,KAAMoK,EAASpK,EAAE,oBAAqBoK,EAASpK,EAAE,qBAEvD,CAAC,IAAK,KAAMoK,EAASpK,EAAE,oBAAqBoK,EAASpK,EAAE,qBACvD,CAAC,GAAI,KAAMoK,EAASpK,EAAE,oBAAqBoK,EAASpK,EAAE,qBAEtD,CAAC,IAAK,KAAMoK,EAASpK,EAAE,oBAAqBoK,EAASpK,EAAE,qBAEvD,CAAC,EAAK,SAAUqO,EAAG,IAAQ,MAAOA,EAAG,KAAM,KAASjE,EAAaA,GAGjE,CAAC,EAAK,QAASkE,EAAG,KAAMI,OAAYpE,EAAWD,EAASD,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,GAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,IAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,IAAK,KAASA,EAAqBmE,EAAI,KAAOnE,EAASA,GACxD,CAAC,IAAK,MAASA,EAAqBmE,EAAI,MAAOnE,EAASA,GAGxD,CAAC,GAAK,SAAWC,EAASA,EAAgCA,EAASD,GACnE,CAAC,GAAK,KAAWA,EAASmE,EAAI,KAA4BnE,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASmE,EAAI,KAA4BnE,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASmE,EAAI,KAA4BnE,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASmE,EAAI,KAA4BnE,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASmE,EAAI,KAA4BnE,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASmE,EAAI,KAA4BnE,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASkE,EAAGC,EAAI,KAAMlE,GAAmBD,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASkE,EAAGC,EAAI,KAAMvO,EAAE,aAAiBoK,EAASA,GACnE,CAAC,GAAK,KAAWA,EAASkE,EAAGC,EAAI,KAAMlE,GAAmBD,EAASA,GACnE,CAAC,IAAK,KAAWA,EAASE,EAAgCF,EAASA,GACnE,CAAC,IAAK,MAAWA,EAASE,EAAgCF,EAASA,GACnE,CAAC,GAAK,UAAW,KAASD,EAAgCA,EAASC,GAOnE,CAAC,GAAK,UAAWC,EAAMA,EAAwBA,EAASD,GACxD,CAAC,GAAK,KAAQA,EAASmE,EAAI,KAAoBnE,EAASA,GACxD,CAAC,GAAK,KAAQA,EAASmE,EAAI,KAAoBnE,EAASA,GACxD,CAAC,GAAK,KAAQA,EAASpK,EAAE,YAAsBoK,EAASpK,EAAE,aAC1D,CAAC,GAAK,KAAQoK,EAASpK,EAAE,YAAsBoK,EAASpK,EAAE,aAC1D,CAAC,GAAK,KAAQoK,EAASkE,EAAGC,EAAI,KAAMlE,GAAWD,EAASkE,EAAGlE,EAASC,IACpE,CAAC,GAAK,KAAQD,EAASpK,EAAE,YAAsBoK,EAASpK,EAAE,aAC1D,CAAC,GAAK,KAAQoK,EAASmE,EAAI,KAAoBnE,EAASA,GACxD,CAAC,IAAK,KAAQA,EAAS6B,EAAI3B,EAAOD,GAAaD,EAASA,GACxD,CAAC,IAAK,KAAQA,EAAS6B,EAAI3B,EAAOD,GAAaD,EAASA,GACxD,CAAC,IAAK,KAAQA,EAASkE,EAAGC,EAAI,KAAMA,EAAI,MAAOnE,EAASA,GAGxD,CAAC,GAAK,SAAWC,EAASA,EAAUA,EAASA,GAC7C,CAAC,GAAK,QAAWA,EAASA,EAAUA,EAASA,GAC7C,CAAC,GAAK,SAAWA,EAASA,EAAUA,EAASA,GAC7C,CAAC,GAAK,IAAWD,EAASmE,EAAI,KAAMnE,EAASA,GAC7C,CAAC,GAAK,SAAWC,EAASA,EAAUA,EAASA,GAC7C,CAAC,GAAK,UAAWA,EAASA,EAAUA,EAASA,GAG7C,CAAC,GAAK,WAAYA,EAAMA,EAAMA,EAAMA,GACpC,CAAC,IAAK,UAAYA,EAAMA,EAAMA,EAAMA,GACpC,CAAC,GAAK,UAAYA,EAAMA,EAAMA,EAAMA,GAGpC,CAAC,GAAK,WAAYrK,EAAE,gBAAmBoK,EAASA,EAASA,GACzD,CAAC,GAAK,SAAYpK,EAAE,cAAmBoK,EAASA,EAASA,GACzD,CAAC,GAAK,SAAYpK,EAAE,gBAAmBoK,EAASA,EAASA,GACzD,CAAC,GAAK,QAAYpK,EAAE,aAAmBoK,EAASA,EAASA,GACzD,CAAC,GAAK,QAAYpK,EAAE,aAAmBoK,EAASA,EAASA,GACzD,CAAC,GAAK,WAAYpK,EAAE,kBAAmBoK,EAASA,EAASA,GAIzD,CAAC,GAAI,OAAWpK,EAAE,iBAAkBoK,EAASA,EAASA,GACtD,CAAC,GAAI,SAAWpK,EAAE,mBAAoBoK,EAASA,EAASA,GACxD,CAAC,GAAI,UAAWgE,EAAGM,MAAWD,OAAYrE,EAASA,EAASA,GAC5D,CAAC,GAAI,SAAWgE,EAAGM,MAAWD,OAAYrE,EAASA,EAASA,GAE5D,CAAC,IAAK,YAAaC,EAAMA,EAAMA,EAAMA,GAMrC,CAAC,GAAK,QAASD,EAASA,EAASA,EAASA,GAC1C,CAAC,GAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,GAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,GAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASpK,EAAE,oBAAqBoK,EAASpK,EAAE,qBAC1D,CAAC,IAAK,QAASoK,EAASpK,EAAE,oBAAqBoK,EAASpK,EAAE,qBAC1D,CAAC,IAAK,QAASoK,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAC1C,CAAC,IAAK,QAASA,EAASA,EAASA,EAASA,GAG1C,CAAC,IAAK,SAAYoE,EAAI1B,EAAI2B,MAASC,QAAWtE,EAASsE,QAAWtE,GAClE,CAAC,IAAK,QAAYoE,EAAI1B,EAAI2B,MAASC,QAAWtE,EAASsE,QAAWtE,GAClE,CAAC,IAAK,WAAYoE,EAAI1B,EAAI2B,MAASC,QAAWtE,EAASsE,QAAWtE,GAClE,CAAC,IAAK,SAAYoE,EAAI1B,EAAI2B,MAASC,QAAWtE,EAASsE,QAAWtE,GAClE,CAAC,IAAK,SAAYoE,EAAIE,SAAwBtE,EAASsE,QAAWtE,GAClE,CAAC,IAAK,UAAYoE,EAAIE,SAAwBtE,EAASsE,QAAWtE,GAClE,CAAC,IAAK,UAAYoE,EAAIE,SAAwBtE,EAASsE,QAAWtE,KAWtErI,EAAMoG,SAASS,OAAOhiB,UAAU+nB,aAAe,SAASvW,GACtD,OAAIhT,KAAKinB,SAASrD,kBAAoB5Q,EAAEmT,SAC/BxJ,EAAMoG,SAAS+B,WAAWG,KAE5B,QAMTtI,EAAMoG,SAASS,OAAOhiB,UAAUgoB,WAAa,SAASxW,GACpD,OAAKhT,KAAKinB,SAASpD,eAAiB7Q,EAAEmT,SAC/BnT,EAAEyW,OAASzW,EAAE6S,SAAW7S,EAAEmT,WAC1BnmB,KAAKinB,SAAS9C,kBACV,MAGF,OAGTnkB,KAAKinB,SAASjH,SAAS0J,aAChB/M,EAAMoG,SAAS+B,WAAWC,SAMnCpI,EAAMoG,SAASS,OAAOhiB,UAAUmoB,UAAY,SAAS3W,GACnD,OAAKhT,KAAKinB,SAASpD,eAAiB7Q,EAAEmT,SAC/BnT,EAAE+S,QAAU/S,EAAE6S,SAAW7S,EAAEmT,WAC3BnmB,KAAKinB,SAAS9C,kBACV,MAGF,OAGTnkB,KAAKinB,SAASjH,SAAS4J,YAChBjN,EAAMoG,SAAS+B,WAAWC,SAMnCpI,EAAMoG,SAASS,OAAOhiB,UAAUqoB,aAAe,SAAS7W,GACtD,OAAKhT,KAAKinB,SAASnD,eAAiB9Q,EAAEmT,SAC7B,QAETnmB,KAAKinB,SAASjH,SAAS8J,eAChBnN,EAAMoG,SAAS+B,WAAWC,SAWnCpI,EAAMoG,SAASS,OAAOhiB,UAAUuoB,UAAY,SAAS/W,GACnD,OAAIhT,KAAKinB,SAASvC,6BACd1kB,KAAKinB,SAAStC,gBAAkB3R,EAAE+S,OAC7B,KACF,QAMTpJ,EAAMoG,SAASS,OAAOhiB,UAAUwoB,eAAiB,SAAShX,GACxD,OAAKhT,KAAKinB,SAASnD,eAAiB9Q,EAAEmT,SAC7B,QAETnmB,KAAKinB,SAASjH,SAASiK,iBAChBtN,EAAMoG,SAAS+B,WAAWC,SAMnCpI,EAAMoG,SAASS,OAAOhiB,UAAU0oB,cAAgB,SAASlX,GACvD,OAAKhT,KAAKinB,SAAS9C,mBAAqBnR,EAAEmT,UACxCnmB,KAAKinB,SAASjH,SAASmK,eAChBxN,EAAMoG,SAAS+B,WAAWC,QAG3B/R,EAAEmT,UAAYnT,EAAE6S,SAAW7S,EAAE+S,QAAU/S,EAAE8S,UACxC9lB,KAAKinB,SAAS9C,kBAAqB,MAAW,OAMzDxH,EAAMoG,SAASS,OAAOhiB,UAAU4oB,gBAAkB,SAASpX,GACzD,OAAKhT,KAAKinB,SAAS9C,mBAAqBnR,EAAEmT,UACxCnmB,KAAKinB,SAASjH,SAASqK,iBAChB1N,EAAMoG,SAAS+B,WAAWC,QAG3B/R,EAAEmT,UAAYnT,EAAE6S,SAAW7S,EAAE+S,QAAU/S,EAAE8S,UACxC9lB,KAAKinB,SAAS9C,kBAAqB,MAAW,OAMzDxH,EAAMoG,SAASS,OAAOhiB,UAAU8oB,SAAW,SAAStX,EAAGwT,GAErD,OADAxmB,KAAKinB,SAASjH,SAASuK,eAChB5N,EAAMoG,SAAS+B,WAAWC,QAUnCpI,EAAMoG,SAASS,OAAOhiB,UAAUgpB,WAAa,SAASxX,EAAGwT,GAEvD,SAAS2C,EAAIlD,GAAM,OAAO1kB,OAAOwZ,aAAakL,EAAGpL,WAAW,GAAK,IAEjE,GAAI7a,KAAKinB,SAASjH,SAASyK,iBAAmBzX,EAAEmT,SAC9C,OAAOxJ,EAAMoG,SAAS+B,WAAWG,KAEnC,OAAQuB,EAAOQ,OAAO5jB,OAAO,EAAG,IAC9B,IAAK,IAAK,MAAO,IACjB,IAAK,IAAK,OAAO+lB,EAAI,KACrB,IAAK,IAAK,OAAOA,EAAI,KACrB,IAAK,IAAK,OAAOA,EAAI,MACrB,IAAK,IAAK,OAAOA,EAAI,KACrB,IAAK,IAAK,OAAOA,EAAI,KACrB,IAAK,IAAK,OAAOA,EAAI,KACrB,IAAK,IAAK,MAAO,IACjB,IAAK,IAAK,MAAO,MAOrBxM,EAAMoG,SAASS,OAAOhiB,UAAUkpB,UAAY,SAAS1X,EAAGwT,GACtD,OAAIxmB,KAAKinB,SAASjH,SAAS2K,gBAAkB3X,EAAEmT,SACtCxJ,EAAMoG,SAAS+B,WAAWG,KAE5BtI,EAAMoG,SAAS+B,WAAWE,SAMnCrI,EAAMoG,SAASS,OAAOhiB,UAAUopB,WAAa,SAAS5X,EAAGwT,GACvD,OAAIxmB,KAAKinB,SAASjH,SAAS6K,iBAAmB7X,EAAEmT,SACvCxJ,EAAMoG,SAAS+B,WAAWG,KAE5BtI,EAAMoG,SAAS+B,WAAWE,SAMnCrI,EAAMoG,SAASS,OAAOhiB,UAAUspB,SAAW,SAAS9X,EAAGwT,GACrD,IAAIuE,EAAY/qB,KAAKinB,SAASjH,SAASgL,cAAcC,eAErD,IAAKF,EAAUG,YAAa,CAC1B,GAAIlrB,KAAKinB,SAASjD,YAAchR,EAAEmT,SAQhC,OAHInmB,KAAKinB,SAASjH,SAASmL,yBACzB7pB,WAAWypB,EAAUK,cAAclhB,KAAK6gB,GAAY,IAE/CpO,EAAMoG,SAAS+B,WAAWG,KAGnC,IAAKjlB,KAAKinB,SAASjD,WAAahR,EAAEmT,SAQhC,OAJInmB,KAAKinB,SAASjH,SAASmL,yBACzB7pB,WAAWypB,EAAUK,cAAclhB,KAAK6gB,GAAY,IAEtD/qB,KAAKinB,SAASjH,SAAShC,2BAChBrB,EAAMoG,SAAS+B,WAAWC,OAIrC,MAAO,KAMTpI,EAAMoG,SAASS,OAAOhiB,UAAU6pB,SAAW,SAASrY,EAAGwT,GACrD,OAAIxT,EAAEmT,UACJ5lB,OAAOsK,KAAKoT,SAASsI,SAAS+E,KAAM,GACxB,uEAC2B/qB,OAAOgrB,WAClC,WAAahrB,OAAOirB,aACzB7O,EAAMoG,SAAS+B,WAAWC,QAG5B,KAWTpI,EAAMoG,SAASS,OAAOhiB,UAAUiqB,SAAW,SAASzY,EAAGwT,GACrD,OAAMxT,EAAEmT,UAAYnmB,KAAKinB,SAAShD,YAC7BjR,EAAEmT,WAAanmB,KAAKinB,SAAShD,WAK5BjkB,KAAKinB,SAASjH,SAAS0L,QAClB/O,EAAMoG,SAAS+B,WAAWC,OAE1BpI,EAAMoG,SAAS+B,WAAWG,KAG9B,KAMTtI,EAAMoG,SAASS,OAAOhiB,UAAUmqB,SAAW,SAAS3Y,EAAGwT,GACrD,OAAIxT,EAAEmT,UACJ5lB,OAAOsK,KAAKoT,SAASsI,SAAS+E,KAAM,GACxB,uEAC2B/qB,OAAOqrB,WAClC,WAAarrB,OAAOsrB,aACzBlP,EAAMoG,SAAS+B,WAAWC,QAG5BpI,EAAMoG,SAAS+B,WAAWE,SAcnCrI,EAAMoG,SAASS,OAAOhiB,UAAUsqB,SAAW,SAAS9Y,EAAGwT,GACrD,IAAIvI,EAAWje,KAAKinB,SAASjH,SAASgL,cACtC,OAAIhY,EAAEmT,UAAYlI,EAASgN,eAAeC,YAIjC1E,EAAOQ,OAAO5jB,OAAO4P,EAAEmT,SAAW,EAAI,EAAG,IAI9CnmB,KAAKinB,SAASjH,SAASmL,yBACzB7pB,YAAW,WAAa2c,EAASgN,eAAeG,kBAAmB,IAE9DzO,EAAMoG,SAAS+B,WAAWG,OASnCtI,EAAMoG,SAASS,OAAOhiB,UAAUuqB,SAAW,SAAS/Y,EAAGwT,GACrD,OAAIxT,EAAEmT,UAGCnmB,KAAKinB,SAAS1C,UAFZ5H,EAAMoG,SAAS+B,WAAWG,KAI/BtI,EAAMoG,SAAS+B,WAAWE,SAahCrI,EAAMoG,SAASS,OAAOhiB,UAAUwqB,iBAAmB,SAAShZ,EAAGwT,GAC7D,KAAMxmB,KAAKinB,SAASlD,sBAAwB/Q,EAAEmT,UAI5C,MAAqB,MAAjBK,EAAOQ,OACF,IAGFrK,EAAMoG,SAAS+B,WAAWC,OAGnC,GAA8C,GAA1C/kB,KAAKinB,SAASjH,SAASiM,gBAGzB,OAAOtP,EAAMoG,SAAS+B,WAAWG,KAGnC,IAAIiH,EAAM1F,EAAOQ,OAAO5jB,OAAO,EAAG,GAClC,GAAW,KAAP8oB,EACAlsB,KAAKinB,SAASjH,SAASmM,YAAY,OAChC,CACL,IAAI7oB,EAAOtD,KAAKinB,SAASjH,SAAS8B,cAEvB,KAAPoK,GAA+B,SAAjB1F,EAAOQ,OACvB1jB,GAAQ,EAERA,GAAQ,EAGVtD,KAAKinB,SAASjH,SAASmM,YAAY7oB,GAGrC,OAAOqZ,EAAMoG,SAAS+B,WAAWC,QAiBnCpI,EAAMoG,SAASmF,WAAa,SAASkE,GACnCpsB,KAAKqsB,cAAgB,EACrBrsB,KAAKkmB,QAAUkG,EAAKlG,QAEpBvJ,EAAMoG,SAASmF,WAAWoE,UAAU1b,QAAQ,SAAS8W,GACnD1nB,KAAK0nB,GAAO0E,EAAK1E,KAAQ,EACR,KAAb1nB,KAAK0nB,IACP1nB,KAAKqsB,iBACPniB,KAAKlK,QAMT2c,EAAMoG,SAASmF,WAAWoE,UAAY,CACpC,QAAS,OAAQ,MAAO,QAa1B3P,EAAMoG,SAASmF,WAAWC,YAAc,SAASnY,EAAGvM,GAClD,OAAIuM,EAAEqc,cAAgB5oB,EAAE4oB,eACd,EAENrc,EAAEqc,cAAgB5oB,EAAE4oB,cACf,EAEF,GAWT1P,EAAMoG,SAASmF,WAAW1mB,UAAU+qB,OAAS,SAASjsB,EAAKksB,GACzD,GAAIxsB,KAAKkmB,SAAW5lB,EAAI4lB,QACtB,OAAO,EAET,IAAIlgB,GAAK,EAUT,OARA2W,EAAMoG,SAASmF,WAAWoE,UAAU1b,QAAQ,SAAS8W,GACnD,IAAI+E,EAAY/E,KAAOpnB,GAAOA,EAAIonB,GAC7B1hB,IAAQwmB,GAA2B,KAAbxsB,KAAK0nB,KAAgB1nB,KAAK0nB,IAAQ+E,IAG7DzmB,GAAK,IACLkE,KAAKlK,OAEAgG,GAUT2W,EAAMoG,SAASmF,WAAW1mB,UAAUonB,aAAe,SAASxB,GAC1D,OAAOpnB,KAAKusB,OAAOnF,GAAS,IAS9BzK,EAAMoG,SAASmF,WAAW1mB,UAAUwmB,gBAAkB,SAASF,GAC7D,OAAO9nB,KAAKusB,OAAOzE,GAAY,IA8BjCnL,EAAM+P,QAAU,SAASC,GAIvB3sB,KAAK4sB,YAAaD,GAAWA,EAASC,WACtC5sB,KAAK6sB,oBAAoBF,GAAWA,EAASE,kBAC7C7sB,KAAK8sB,aAAaH,GAAWA,EAASG,WACtC9sB,KAAK+sB,qBAAqBJ,GAAWA,EAASI,mBAC9C/sB,KAAKgtB,gBAAgBL,GAAWA,EAASK,cACzChtB,KAAKitB,cAAcN,GAAWA,EAASM,YACvCjtB,KAAKktB,aAAaP,GAAWA,EAASO,WACtCltB,KAAKmtB,eAAeR,GAAWA,EAASQ,aACxCntB,KAAKotB,iBAAiBT,GAAWA,EAASS,gBAS5CruB,EAAIc,MAAM,6BAMV8c,EAAM4L,OAAS,WAIbvoB,KAAKd,OAAS,GAKdc,KAAKqtB,IAAM,EAKXrtB,KAAKimB,GAAK,MAGZtJ,EAAM4L,OAAO/mB,UAAU6D,MAAQ,SAASgE,GACtC,OAAO,IAAIrK,MAAM,kBAAoBgB,KAAKqtB,IAAM,KAAOhkB,IAGzDsT,EAAM4L,OAAO/mB,UAAUinB,WAAa,WAClC,OAAOzoB,KAAKqtB,KAAOrtB,KAAKd,OAAOK,QAGjCod,EAAM4L,OAAO/mB,UAAUgP,MAAQ,SAAStR,EAAQouB,GAC9CttB,KAAKd,OAASA,EACdc,KAAKqtB,IAAMC,GAAW,EACtBttB,KAAKimB,GAAK/mB,EAAOkE,OAAO,EAAG,IA6B7BuZ,EAAM4L,OAAO/mB,UAAUgnB,iBAAmB,WACxC,IAAIxiB,EAAK,CACPkgB,QAAS,MAGX,IAAK,IAAI9P,KAAKuG,EAAM4L,OAAOgF,YAAYC,aACrCxnB,EAAG2W,EAAM4L,OAAOgF,YAAYC,aAAapX,KAAM,EAGjD,KAAOpW,KAAKqtB,IAAMrtB,KAAKd,OAAOK,QAAQ,CACpCS,KAAKytB,YAEL,IAAIC,EAAQ1tB,KAAK2tB,aACjB,GAAkB,WAAdD,EAAMhc,KACR1L,EAAGkgB,QAAUwH,EAAMhrB,WAEd,GAAkB,cAAdgrB,EAAMhc,KAAsB,CACrC,IAAIkc,EAAUF,EAAMhrB,MAAMuJ,cAC1B,GAAI2hB,KAAWjR,EAAM4L,OAAOgF,YAAYC,cACpC7Q,EAAM4L,OAAOgF,YAAYC,aAAaK,eAAeD,GAAU,CACjE,IAAIlG,EAAM/K,EAAM4L,OAAOgF,YAAYC,aAAaI,GAChD,GAAI5nB,EAAG0hB,IAAmB,KAAX1hB,EAAG0hB,GAChB,MAAM1nB,KAAKqF,MAAM,uBAAyBqoB,EAAMhrB,OAClDsD,EAAG0hB,IAAO,MAEL,MAAIkG,KAAWjR,EAAM4L,OAAOgF,YAAYO,YACpCnR,EAAM4L,OAAOgF,YAAYO,SAASD,eAAeD,GAI1D,MAAM5tB,KAAKqF,MAAM,gBAAkBqoB,EAAMhrB,OAHzCsD,EAAGkgB,QAAUvJ,EAAM4L,OAAOgF,YAAYO,SAASF,QAM5C,IAAkB,UAAdF,EAAMhc,KAWf,MAAM1R,KAAKqF,MAAM,kCAVjB,GAAmB,KAAfqoB,EAAMhrB,MAOR,MAAM1C,KAAKqF,MAAM,sBAAwBqoB,EAAMhrB,OAN/C,IAAK,IAAIqJ,KAAM4Q,EAAM4L,OAAOgF,YAAYC,aAAc,CACpD,IAAIlF,EAAI3L,EAAM4L,OAAOgF,YAAYC,aAAazhB,GACzC/F,EAAGsiB,KACNtiB,EAAGsiB,GAAM,MAWjB,GAFAtoB,KAAKytB,YAEU,KAAXztB,KAAKimB,GACP,MAEF,GAAkB,MAAdjgB,EAAGkgB,QACL,MAAMlmB,KAAKqF,MAAM,qCAEnBrF,KAAK+tB,QAAQ,GAGf,GAAkB,MAAd/nB,EAAGkgB,QACL,MAAMlmB,KAAKqF,MAAM,sBAEnB,OAAOW,GAGT2W,EAAM4L,OAAO/mB,UAAUknB,eAAiB,WACtC1oB,KAAKytB,YAEL,IAAIC,EAAQ1tB,KAAK2tB,aAEjB,GAAkB,UAAdD,EAAMhc,KACR,OAAOgc,EAAMhrB,MAEf,GAAkB,cAAdgrB,EAAMhc,KAAsB,CAC9B,GAAIgc,EAAMhrB,SAASia,EAAM4L,OAAOgF,YAAYS,SACxCrR,EAAM4L,OAAOgF,YAAYS,QAAQH,eAAeH,EAAMhrB,OACxD,OAAOia,EAAM4L,OAAOgF,YAAYS,QAAQN,EAAMhrB,OAEhD,MAAM1C,KAAKqF,MAAM,uBAAyBqoB,EAAMhrB,OAGlD,MAAM1C,KAAKqF,MAAM,kCAInBsX,EAAM4L,OAAO/mB,UAAUysB,WAAa,WAClC,MAAkB,KAAXjuB,KAAKimB,IAAyB,KAAXjmB,KAAKimB,IAGjCtJ,EAAM4L,OAAO/mB,UAAU0sB,eAAiB,WACtC,OAAOluB,KAAKimB,GAAGhjB,MAAM,YAGvB0Z,EAAM4L,OAAO/mB,UAAU2sB,YAAc,WACnC,OAAOnuB,KAAKimB,GAAGhjB,MAAM,UAGvB0Z,EAAM4L,OAAO/mB,UAAUmsB,WAAa,WAClC,GAAe,KAAX3tB,KAAKimB,GAAW,CAClB,IAAIjgB,EAAK,CAAC0L,KAAM,SAAUhP,MAAO1C,KAAKimB,IAEtC,OADAjmB,KAAK+tB,QAAQ,GACN/nB,EAGT,GAAIhG,KAAKkuB,iBACP,MAAO,CAACxc,KAAM,aAAchP,MAAO1C,KAAKouB,mBAE1C,GAAIpuB,KAAKiuB,aACP,MAAO,CAACvc,KAAM,SAAUhP,MAAO1C,KAAKquB,eAEtC,GAAIruB,KAAKmuB,cACP,MAAO,CAACzc,KAAM,UAAWhP,MAAO1C,KAAKsuB,gBAGvC,MAAMtuB,KAAKqF,MAAM,qBAGnBsX,EAAM4L,OAAO/mB,UAAU4sB,gBAAkB,WACvC,IAAKpuB,KAAKkuB,iBACR,MAAMluB,KAAKqF,MAAM,uBAEnB,OAAOrF,KAAKuuB,aAAa,iBAG3B5R,EAAM4L,OAAO/mB,UAAU8sB,aAAe,WAGpC,MAAe,KAAXtuB,KAAKimB,IAAajmB,KAAKqtB,IAAMrtB,KAAKd,OAAOK,OAAS,GACX,KAAvCS,KAAKd,OAAOkE,OAAOpD,KAAKqtB,IAAM,EAAG,GAC5BzpB,SAAS5D,KAAKuuB,aAAa,kBAG7B3qB,SAAS5D,KAAKuuB,aAAa,UAepC5R,EAAM4L,OAAO/mB,UAAU6sB,YAAc,WACnC,IAAIta,EAAS,GAETya,EAAQxuB,KAAKimB,GACjB,GAAa,KAATuI,GAAyB,KAATA,EAClB,MAAMxuB,KAAKqF,MAAM,mBAEnBrF,KAAK+tB,QAAQ,GAIb,IAFA,IAAIU,EAAK,IAAIpsB,OAAO,QAAUmsB,EAAQ,IAAK,KAEpCxuB,KAAKqtB,IAAMrtB,KAAKd,OAAOK,QAAQ,CAEpC,GADAkvB,EAAGC,UAAY1uB,KAAKqtB,KACfoB,EAAGE,KAAK3uB,KAAKd,QAChB,MAAMc,KAAKqF,MAAM,+BAMnB,GAJA0O,GAAU/T,KAAKd,OAAOud,UAAUzc,KAAKqtB,IAAKoB,EAAGC,UAAY,GAEzD1uB,KAAK+tB,QAAQU,EAAGC,UAAY1uB,KAAKqtB,IAAM,GAE1B,KAATmB,GAA2B,MAAXxuB,KAAKimB,GAMzB,GAAa,KAATuI,GAA4B,MAAXxuB,KAAKimB,IAM1B,GAAIjmB,KAAKimB,IAAMuI,EAEb,OADAxuB,KAAK+tB,QAAQ,GACNha,OAPPA,GAAU/T,KAAKimB,GACfjmB,KAAK+tB,QAAQ,QAPb/tB,KAAK+tB,QAAQ,GACbha,GAAU/T,KAAK4uB,cAgBnB,MAAM5uB,KAAKqF,MAAM,gCAUnBsX,EAAM4L,OAAO/mB,UAAUotB,YAAc,WACnC,IAAIjrB,EAAM,CACR,IAAK,IACLkrB,IAAM,IACN,KAAM,KACN,EAAK,IACL,EAAK,KACL,EAAK,IACL,EAAK,KACL,EAAK,KACL,EAAK,KACL,EAAK,KACL,EAAK,KACL,EAAK,WACH,IAAInsB,EAAQ1C,KAAKuuB,aAAa,iBAC9B,OAAOhtB,OAAOwZ,aAAanX,SAASlB,EAAO,MAE7C,EAAK,WACH,IAAIA,EAAQ1C,KAAKuuB,aAAa,iBAC9B,OAAOhtB,OAAOwZ,aAAanX,SAASlB,EAAO,OAI/C,KAAM1C,KAAKimB,MAAMtiB,KAAOA,EAAIkqB,eAAe7tB,KAAKimB,IAC9C,MAAMjmB,KAAKqF,MAAM,mBAAqBrF,KAAKimB,IAE7C,IAAIvjB,EAAQiB,EAAI3D,KAAKimB,IAMrB,OALAjmB,KAAK+tB,QAAQ,GAEO,mBAATrrB,IACTA,EAAQA,EAAM8kB,KAAKxnB,OAEd0C,GAUTia,EAAM4L,OAAO/mB,UAAU+sB,aAAe,SAAS/kB,GAC7C,IAAKA,EAAQ0F,OACX,MAAMlP,KAAKqF,MAAM,gDAEnBmE,EAAQklB,UAAY1uB,KAAKqtB,IACzB,IAAIttB,EAAMyJ,EAAQmlB,KAAK3uB,KAAKd,QAE5B,IAAKa,GAAOyJ,EAAQklB,UAAY3uB,EAAI,GAAGR,QAAUS,KAAKqtB,IACpD,MAAMrtB,KAAKqF,MAAM,uBAAyBmE,GAK5C,OAHAxJ,KAAKqtB,IAAM7jB,EAAQklB,UAAY,EAC/B1uB,KAAK+tB,QAAQ,GAENhuB,EAAI,IASb4c,EAAM4L,OAAO/mB,UAAUusB,QAAU,SAASe,GACxC9uB,KAAKqtB,KAAOyB,EACZ9uB,KAAKimB,GAAKjmB,KAAKd,OAAOkE,OAAOpD,KAAKqtB,IAAK,IAQzC1Q,EAAM4L,OAAO/mB,UAAUisB,UAAY,SAASsB,GAC1C,GAAK,KAAKrqB,KAAK1E,KAAKimB,IAApB,CAGA,IAAIwI,EAAK,QACTA,EAAGC,UAAY1uB,KAAKqtB,IAEpB,IAAInuB,EAASc,KAAKd,OAMlB,GALIuvB,EAAGE,KAAKzvB,KACVc,KAAKqtB,IAAMoB,EAAGC,WAEhB1uB,KAAKimB,GAAKjmB,KAAKd,OAAOkE,OAAOpD,KAAKqtB,IAAK,GAEnC0B,IACkC,GAAhC/uB,KAAKimB,GAAG5iB,QAAQ0rB,GAClB,MAAM/uB,KAAKqF,MAAM,mBAAqB0pB,EAAa,YAC/C/uB,KAAKimB,MAcftJ,EAAM4L,OAAOgF,YAAc,GAU3B5Q,EAAM4L,OAAOgF,YAAYC,aAAe,CACtCwB,MAAO,QACPC,KAAM,OAENC,QAAS,OACTC,IAAK,MACLC,KAAM,QAoBRzS,EAAM4L,OAAOgF,YAAYO,SAAW,CAElCuB,OAAQ,GACRC,IAAK,GACLC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,GAAI,IACJC,IAAK,IACLC,IAAK,IACLC,IAAK,IAGLC,IAAK,GACLC,IAAK,GACLC,MAAO,GACPC,KAAM,GACNC,KAAM,GACNC,IAAK,GACLC,MAAO,GACPC,MAAO,GACPC,KAAM,GACNC,KAAM,GACNC,UAAW,EACXC,KAAM,EACNC,GAAI,EAGJC,IAAK,EACLC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GAGHC,UAAW,GACXC,SAAU,GACVC,KAAM,GACNC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GAKHC,MAAO,GACPC,IAAK,GACLC,OAAQ,GACRC,IAAK,GAGLC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GACHC,EAAG,GAGHC,MAAO,GACPC,GAAI,GACJC,aAAc,GACdC,MAAO,GACPC,YAAa,IACbC,MAAO,IACPC,MAAO,GACPC,IAAK,GACLC,OAAQ,GACRC,IAAK,GACLC,KAAM,GACNC,QAAS,GACTC,KAAM,GACNC,OAAQ,GACRC,IAAK,GACLC,IAAK,GACLC,UAAW,GACXC,OAAQ,GACRC,KAAM,GACNC,GAAI,GACJC,KAAM,GACNC,MAAO,GACPC,KAAM,GACNC,QAAS,IAGTC,IAAK,GACLC,IAAK,GACLC,IAAK,GACLC,IAAK,GACLC,IAAK,IACLC,IAAK,IACLC,IAAK,IACLC,IAAK,IACLC,IAAK,IACLC,IAAK,IACLC,QAAS,IACTC,OAAQ,IACRC,SAAU,IACVC,YAAa,IACbC,QAAS,IACTC,YAAa,IACbC,UAAW,IACXC,WAAY,IACZC,UAAW,IAGXC,cAAe,IACfC,iBAAkB,IAClBC,OAAQ,IACRC,YAAa,IACbC,gBAAiB,IACjBC,cAAe,IACfC,gBAAiB,KAMnBxZ,EAAM4L,OAAOgF,YAAYS,QAAU,CAIjCjJ,OAAQpI,EAAMoG,SAAS+B,WAAWC,OAKlCC,QAASrI,EAAMoG,SAAS+B,WAAWE,QAKnCC,KAAMtI,EAAMoG,SAAS+B,WAAWG,KAKhC6E,aAAc,SAAS9J,GAErB,OADAA,EAAS8J,eACFnN,EAAMoG,SAAS+B,WAAWC,QAMnCkF,eAAgB,SAASjK,GAEvB,OADAA,EAASiK,iBACFtN,EAAMoG,SAAS+B,WAAWC,QAMnCqR,YAAa,SAASpW,GAEpB,OADAA,EAAS4J,YACFjN,EAAMoG,SAAS+B,WAAWC,QAMnCsR,eAAgB,SAASrW,GAEvB,OADAA,EAAS4J,YACFjN,EAAMoG,SAAS+B,WAAWC,QAMnCuR,gBAAiB,SAAStW,GAExB,OADAA,EAASuK,eACF5N,EAAMoG,SAAS+B,WAAWC,SAUrChmB,EAAIc,MAAM,QAAS,eAOnB8c,EAAMvQ,kBAAoB,SAASmqB,GACjCx3B,EAAIqN,kBAAkBob,KAAKxnB,KAAM2c,EAAMI,eACZ,mBAAqBwZ,GAChD,IAAIrtB,EAAOyT,EAAMvQ,kBAAkBoqB,mBACnCvoB,OAAOD,KAAK9E,GAAM0H,QAAQ,SAASzH,GACjCnJ,KAAKuO,iBAAiBpF,EAAKD,EAAKC,GAAK,KACrCe,KAAKlK,QAGT2c,EAAMvQ,kBAAkBqqB,WAAa,GACrC9Z,EAAMvQ,kBAAkBqqB,WAAW1T,SAAW,WAC9CpG,EAAMvQ,kBAAkBqqB,WAAWC,WAAa,aAChD/Z,EAAMvQ,kBAAkBqqB,WAAWE,UAAY,YAC/Cha,EAAMvQ,kBAAkBqqB,WAAWG,OAAS,SAC5Cja,EAAMvQ,kBAAkBqqB,WAAWI,UAAY,YAC/Cla,EAAMvQ,kBAAkBqqB,WAAWK,SAAW,WAC9Cna,EAAMvQ,kBAAkBqqB,WAAWM,cAAgB,gBAKnDpa,EAAMvQ,kBAAkB4qB,oBAAsB,CAC5C,CAAEjrB,GAAI4Q,EAAMvQ,kBAAkBqqB,WAAWC,WACvCO,KAAM,sCACR,CAAElrB,GAAI4Q,EAAMvQ,kBAAkBqqB,WAAWE,UACvCM,KAAM,gBACR,CAAElrB,GAAI4Q,EAAMvQ,kBAAkBqqB,WAAWK,SACvCG,KAAM,YACR,CAAElrB,GAAI4Q,EAAMvQ,kBAAkBqqB,WAAW1T,SACvCkU,KAAM,YACR,CAAElrB,GAAI4Q,EAAMvQ,kBAAkBqqB,WAAWI,UACvCI,KAAM,aACR,CAAElrB,GAAI4Q,EAAMvQ,kBAAkBqqB,WAAWG,OACvCK,KAAM,UACR,CAAElrB,GAAI4Q,EAAMvQ,kBAAkBqqB,WAAWM,cACvCE,KAAM,UAIVta,EAAMvQ,kBAAkBoqB,mBAAqB,CAC3C,cACA,CAAC7Z,EAAMvQ,kBAAkBqqB,WAAW1T,SAAU,KAC7C,CAAC,KAAM,OAAQ,WAAY,WAAY,aACvC,6TASD,kCACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,yGAGD,cACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,wEAED,iBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,SAAU,SAC7C,CAAC,SAAU,QAAS,eACpB,yWASD,qBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAWG,OAAQ,gCAC3C,MACA,sEAED,4BACA,CAACja,EAAMvQ,kBAAkBqqB,WAAWG,QAAQ,EAAO,OAClD,odAWD,mBACA,CAACja,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,kBAAmB,QAClE,iEAED,mBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,GAAI,SACnD,0JAMD,kBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,GAAI,SACnD,8DAED,sBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,GAAI,SACnD,oFAMD,4BACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,8GAGD,0BACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,KAAM,QACpD,2WAUF,gBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWM,eAAe,EAAM,OACxD,8DAED,eACA,CAACpa,EAAMvQ,kBAAkBqqB,WAAWC,YAAY,EAAO,OACtD,kDAED,qBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,CAAC,IAAM,KAAM,QAC5D,+JAKD,eACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,uBAC/C,QACA,oCAED,0BACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,KAAM,QACrD,ikBAcD,iBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWE,WAAW,EAAM,OACpD,wDAED,0BACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWE,WAAW,EAAO,OACrD,mDAED,6BACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWE,WAAW,EAAM,OACpD,iDAED,4BACA,CAACha,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAM,OACnD,qJAID,cACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,6GAGD,eACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,6GAGD,qCACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,sEAED,uBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,iKAKD,cACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,KAAM,WACrD,8IAGD,wBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,YAAY,EAAM,OACrD,4HAGD,eACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,YAAY,EAAM,OACrD,yEAED,0BACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWE,WAAW,EAAM,OACpD,yEAED,yBACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWE,WAAW,EAAM,OACpD,6DAED,eACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWM,eAAe,EAAO,OACzD,2FAGD,YACA,CAACpa,EAAMvQ,kBAAkBqqB,WAAWM,cAAe,CAAC,KAAQ,kBAC3D,QACA,oDAED,cACA,CAACpa,EAAMvQ,kBAAkBqqB,WAAWC,WACnC,+EACa,SACb,8CAED,YACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,GAAI,MACnD,oCAED,iBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,cAAe,SAC9D,gCAED,mBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,qBAAsB,QACrE,iEAED,mBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,0KAID,YACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,SAAU,KAAM,QACnD,ycAaD,sBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAWK,SAAU,IAAQ,MACrD,wFAGD,uBACA,CAACna,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,oGAGD,oBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAM,OACnD,2DAED,0BACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAWE,WAAW,EAAM,OACpD,iLAOD,qBACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWE,UAAW,KAC9C,CAAC,KAAM,EAAG,EAAG,EAAG,EAAG,EAAG,EAAG,GACzB,ufAgBD,wBACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWE,UACnC,sCAAuC,SACvC,uNAKD,yBACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWE,UACnC,wCAAyC,SACzC,+IAID,0BACA,CAACha,EAAMvQ,kBAAkBqqB,WAAWE,UACnC,4BAA6B,SAC7B,sMAMD,mBACA,CAACha,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAO,OACpD,0LAID,kBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,SAAU,KAAM,WACnD,ocAWD,mBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,SAAU,KAAM,WACnD,ucAWA,mBACD,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,SAAU,KAAM,WACnD,ucAWD,cACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAM,OACnD,2CAED,mBACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAWK,SAAU,QAAS,CAAC,QAAS,OAChE,qGAID,sBACA,CAACna,EAAMvQ,kBAAkBqqB,WAAWI,WAAW,EAAM,OACpD,mDAED,mBACA,CAACla,EAAMvQ,kBAAkBqqB,WAAWI,WAAW,EAAO,OACrD,qDAED,oBACA,CAACla,EAAMvQ,kBAAkBqqB,WAAWI,WAAW,EAAM,OACpD,gCAED,mCACA,CAACla,EAAMvQ,kBAAkBqqB,WAAWI,WAAW,EAAO,OACrD,sUAQD,+BACA,CAACla,EAAMvQ,kBAAkBqqB,WAAWI,UAAW,EAAG,MACjD,oHAGD,gBACA,CAACla,EAAMvQ,kBAAkBqqB,WAAWK,SAAU,QAAS,CAAC,QAAS,OAChE,2CAED,oBACA,CAACna,EAAMvQ,kBAAkBqqB,WAAWK,SAAU,WAC7C,CAAC,WAAY,QAAS,gBACtB,kVAWD,qBACA,CAACna,EAAMvQ,kBAAkBqqB,WAAW1T,UAAU,EAAM,OACnD,yDAED,WACA,CAACpG,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,GAAI,MACnD,+DAED,gBACA,CAAC/Z,EAAMvQ,kBAAkBqqB,WAAWC,WAAY,GAAI,mBACnD,8CAGH/Z,EAAMvQ,kBAAkB5K,UACpByM,OAAO2H,OAAO7W,EAAIqN,kBAAkB5K,WACxCmb,EAAMvQ,kBAAkByJ,YAAc8G,EAAMvQ,kBAY5CuQ,EAAMua,OAAS,WACbl3B,KAAKkS,WAAa,IAWpByK,EAAMua,OAAOC,YAAc,SAAS72B,GAClC,IAAI82B,EAAS,IAAIza,EAAMua,OACvB,IAAK,IAAI7wB,KAAKsW,EAAMua,OAAO11B,UACzBlB,EAAI+F,GAAKsW,EAAMua,OAAO11B,UAAU6E,GAAG6D,KAAKktB,IAU5Cza,EAAMua,OAAO11B,UAAU61B,UAAY,SAASC,EAAS12B,GAC7C02B,KAAWt3B,KAAKkS,aACpBlS,KAAKkS,WAAWolB,GAAW,IAE7Bt3B,KAAKkS,WAAWolB,GAASp3B,KAAKU,IAUhC+b,EAAMua,OAAO11B,UAAU+1B,YAAc,SAASD,EAAS12B,GACrD,IAAImnB,EAAO/nB,KAAKkS,WAAWolB,GAC3B,IAAKvP,EACH,KAAM,oBAAsBuP,EAE9B,IAAI73B,EAAIsoB,EAAK1kB,QAAQzC,GACrB,GAAInB,EAAI,EACN,KAAM,mBAAqB63B,EAE7BvP,EAAKjkB,OAAOrE,EAAG,IAcjBkd,EAAMua,OAAO11B,UAAUg2B,QAAU,SAASF,EAAStkB,EAAGykB,GAUpD,IAAI1P,EAAO/nB,KAAKkS,WAAWolB,GACvBvP,IAEFA,EAAO,GAAGre,OAAOqe,IAGf0P,IACE1P,EACFA,EAAK7nB,KAAKu3B,GAEV1P,EAAO,CAAC0P,IAIR1P,GACFzmB,YAxBF,SAASo2B,EAAWj4B,GAGdA,EAAIsoB,EAAKxoB,OAAS,GACpB+B,WAAWo2B,EAAY,EAAGj4B,EAAI,GAEhCsoB,EAAKtoB,GAAGuT,KAkBe,EAAG,IAS9BjU,EAAIc,MAAM,QAAS,SACT,eAAgB,aAAc,wBA0CxC8c,EAAMgb,OAAS,SAASC,GAItB53B,KAAK63B,UAAY,GAGjB73B,KAAK83B,aAAeF,GAAmB,GAGvC53B,KAAK+3B,eAAiB,IAAIpb,EAAMqb,eAAez3B,OAAO0d,UAGtDje,KAAKi4B,eAAiB,IAAItb,EAAM8C,OAAO,EAAG,GAG1Czf,KAAKk4B,eAAiB,KAGtBl4B,KAAKm4B,YAAc,KAGnBn4B,KAAKo4B,cAAgB,KAGrBp4B,KAAKq4B,mBAAqB,KAC1Br4B,KAAKs4B,oBAAsB,KAC3Bt4B,KAAKu4B,qBAAuB,MAS9B5b,EAAMgb,OAAOn2B,UAAUg3B,QAAU,WAC/B,OAAO,IAAI7b,EAAMwC,KAAKnf,KAAK83B,aAAc93B,KAAK63B,UAAUt4B,SAQ1Dod,EAAMgb,OAAOn2B,UAAUi3B,UAAY,WACjC,OAAOz4B,KAAK63B,UAAUt4B,QAQxBod,EAAMgb,OAAOn2B,UAAUk3B,SAAW,WAChC,OAAO14B,KAAK83B,cAQdnb,EAAMgb,OAAOn2B,UAAUm3B,eAAiB,SAAS7J,GAC/C9uB,KAAK83B,aAAehJ,EAEhB9uB,KAAKi4B,eAAetY,QAAUmP,GAChC9uB,KAAK44B,kBAAkB54B,KAAKi4B,eAAevY,IAAKoP,EAAQ,IAQ5DnS,EAAMgb,OAAOn2B,UAAUq3B,SAAW,WAChC,OAAO74B,KAAK84B,UAAU,GAAG,IAS3Bnc,EAAMgb,OAAOn2B,UAAUs3B,UAAY,SAAShK,GAC1C,OAAO9uB,KAAK63B,UAAU/zB,OAAO,EAAGgrB,IAQlCnS,EAAMgb,OAAOn2B,UAAUu3B,WAAa,SAASrZ,GAC3C1f,KAAK63B,UAAU/zB,OAAO,EAAG,EAAG4b,IAQ9B/C,EAAMgb,OAAOn2B,UAAUw3B,YAAc,SAASC,GAC5Cj5B,KAAK63B,UAAU9uB,QAAQjJ,MAAME,KAAK63B,UAAWoB,IAQ/Ctc,EAAMgb,OAAOn2B,UAAU03B,OAAS,WAC9B,OAAOl5B,KAAKm5B,QAAQ,GAAG,IASzBxc,EAAMgb,OAAOn2B,UAAU23B,QAAU,SAASrK,GACxC,OAAO9uB,KAAK63B,UAAU/zB,OAAO9D,KAAK63B,UAAUt4B,OAASuvB,EAAOA,IAQ9DnS,EAAMgb,OAAOn2B,UAAU43B,QAAU,SAAS1Z,GACxC1f,KAAK63B,UAAU33B,KAAKwf,IAQtB/C,EAAMgb,OAAOn2B,UAAU63B,SAAW,SAASJ,GACzCA,EAAK/4B,KAAKJ,MAAME,KAAK63B,UAAWoB,IASlCtc,EAAMgb,OAAOn2B,UAAU83B,UAAY,SAASruB,EAAOyU,GACjD1f,KAAK63B,UAAU/zB,OAAOmH,EAAO,EAAGyU,IASlC/C,EAAMgb,OAAOn2B,UAAU+3B,WAAa,SAAStuB,EAAOguB,GAClD,IAAK,IAAIx5B,EAAI,EAAGA,EAAIw5B,EAAK15B,OAAQE,IAC/BO,KAAK63B,UAAU/zB,OAAOmH,EAAQxL,EAAG,EAAGw5B,EAAKx5B,KAU7Ckd,EAAMgb,OAAOn2B,UAAUg4B,UAAY,SAASvuB,GAC1C,OAAOjL,KAAK63B,UAAU/zB,OAAOmH,EAAO,GAAG,IAUzC0R,EAAMgb,OAAOn2B,UAAUi4B,WAAa,SAASxuB,EAAO6jB,GAClD,OAAO9uB,KAAK63B,UAAU/zB,OAAOmH,EAAO6jB,IAYtCnS,EAAMgb,OAAOn2B,UAAUk4B,yBAA2B,WAChD15B,KAAKi4B,eAAenY,KAAK,EAAG,GAC5B9f,KAAKk4B,eAAiB,KACtBl4B,KAAKm4B,YAAc,KACnBn4B,KAAKo4B,cAAgB,MAMvBzb,EAAMgb,OAAOn2B,UAAUm4B,eAAiB,WAOtC,IAAI1C,EANJj3B,KAAKk4B,eAAe0B,UAAY,GAChC55B,KAAKk4B,eAAe2B,gBAAgB,iBACpC75B,KAAKo4B,cAAgB,EACrBp4B,KAAKi4B,eAAetY,OAAS,EAC7B3f,KAAKi4B,eAAepY,UAAW,EAI7BoX,EADEj3B,KAAK+3B,eAAe+B,YACf,GAEA/6B,EAAIoC,EAAEmG,cAActH,KAAK83B,cAKlC,IAAIiC,EAAU/5B,KAAK+3B,eAAegC,QAClC/5B,KAAK+3B,eAAegC,SAAU,EAC9B/5B,KAAK+3B,eAAeiC,aAEpB,IAAIpuB,EAAO5L,KAAK+3B,eAAekC,gBAAgBhD,GAC/Cj3B,KAAKk4B,eAAepV,YAAYlX,GAChC5L,KAAKm4B,YAAcvsB,EAEnB5L,KAAK+3B,eAAegC,QAAUA,EAC9B/5B,KAAK+3B,eAAeiC,cAetBrd,EAAMgb,OAAOn2B,UAAU04B,mBAAqB,WAC1Cl6B,KAAKk4B,eAAe/rB,aAAa,iBAAiB,IASpDwQ,EAAMgb,OAAOn2B,UAAUo3B,kBAAoB,SAASlZ,EAAKC,GACvD,GAAK3f,KAAK63B,UAAUt4B,OAApB,CAKImgB,GAAO1f,KAAK63B,UAAUt4B,QACxBkB,QAAQ4E,MAAM,sBAAwBqa,GACtCA,EAAM1f,KAAK63B,UAAUt4B,OAAS,GACrBmgB,EAAM,IACfjf,QAAQ4E,MAAM,sBAAwBqa,GACtCA,EAAM,GAGJC,GAAU3f,KAAK83B,cACjBr3B,QAAQ4E,MAAM,yBAA2Bsa,GACzCA,EAAS3f,KAAK83B,aAAe,GACpBnY,EAAS,IAClBlf,QAAQ4E,MAAM,yBAA2Bsa,GACzCA,EAAS,GAGX3f,KAAKi4B,eAAepY,UAAW,EAE/B,IAAIsa,EAAUn6B,KAAK63B,UAAUnY,GACzB9T,EAAOuuB,EAAQC,WAEdxuB,IACHA,EAAOuuB,EAAQE,cAAcC,eAAe,IAC5CH,EAAQrX,YAAYlX,IAGtB,IAAI2uB,EAAgB,EAapB,IAXIJ,GAAWn6B,KAAKk4B,eACdvY,GAAU3f,KAAKi4B,eAAetY,OAAS3f,KAAKo4B,gBAC9CxsB,EAAO5L,KAAKm4B,YACZoC,EAAgBv6B,KAAKi4B,eAAetY,OAAS3f,KAAKo4B,eAGpDp4B,KAAKk4B,eAAiBiC,EAGxBn6B,KAAKi4B,eAAenY,KAAKJ,EAAKC,GAEvB/T,GAAM,CACX,IAAI4uB,EAAS7a,EAAS4a,EAClBpe,EAAQQ,EAAMqb,eAAeyC,UAAU7uB,GAC3C,IAAKA,EAAK8uB,aAAeve,EAAQqe,EAG/B,OAFAx6B,KAAKm4B,YAAcvsB,OACnB5L,KAAKo4B,cAAgBoC,GAIvBD,GAAiBpe,EACjBvQ,EAAOA,EAAK8uB,kBArDZj6B,QAAQC,KAAK,oDA6DjBic,EAAMgb,OAAOn2B,UAAUm5B,mBAAqB,SAAS5P,GACnD,IACEA,EAAU6P,SAAS56B,KAAKm4B,YAAan4B,KAAKo4B,eAC1C,MAAOyC,MAsBXle,EAAMgb,OAAOn2B,UAAUs5B,WAAa,SAASlvB,EAAM4uB,GACjD,IAAIO,EAAYnvB,EAAKovB,WAAU,GAE3B9uB,EAAcN,EAAKM,YACvBN,EAAKM,YAAcyQ,EAAMqb,eAAeiD,WAAWrvB,EAAM,EAAG4uB,GAC5DO,EAAU7uB,YAAcnN,EAAIqc,GAAGhY,OAAO8I,EAAasuB,GAE/CO,EAAU7uB,aACZN,EAAKuW,WAAW+Y,aAAaH,EAAWnvB,EAAK8uB,aAC1C9uB,EAAKM,aACRN,EAAKuW,WAAWvS,YAAYhE,IAMhC+Q,EAAMgb,OAAOn2B,UAAU25B,oBAAsB,WAC3C,IAAIhf,EAAQQ,EAAMqb,eAAeyC,UAAUz6B,KAAKk4B,gBAEhD,GAAI/b,GAASnc,KAAK83B,aAEZ93B,KAAKi4B,eAAetY,QAAU3f,KAAK83B,eACrC93B,KAAK44B,kBAAkB54B,KAAKi4B,eAAevY,IAAK1f,KAAK83B,aAAe,GACpE93B,KAAKi4B,eAAepY,UAAW,OAJnC,CAWA,IAAI0a,EAAgBv6B,KAAKi4B,eAAetY,OAGxC3f,KAAK44B,kBAAkB54B,KAAKi4B,eAAevY,IAAK1f,KAAK83B,aAAe,GAGpE3b,EAAQQ,EAAMqb,eAAeyC,UAAUz6B,KAAKm4B,aAExCn4B,KAAKo4B,cAAgBjc,EAAQ,IAC/Bnc,KAAKm4B,YAAYjsB,YAAcyQ,EAAMqb,eAAeiD,WAChDj7B,KAAKm4B,YAAa,EAAGn4B,KAAKo4B,cAAgB,IAOhD,IAHA,IAAI+B,EAAUn6B,KAAKk4B,eACftsB,EAAO5L,KAAKm4B,YAAYuC,YAErB9uB,GACLuuB,EAAQvqB,YAAYhE,GACpBA,EAAO5L,KAAKm4B,YAAYuC,YAGtBH,EAAgBv6B,KAAK83B,aAGvB93B,KAAK44B,kBAAkB54B,KAAKi4B,eAAevY,IAAK6a,GAGhDv6B,KAAKi4B,eAAepY,UAAW,IAcnClD,EAAMgb,OAAOn2B,UAAU45B,aAAe,SAASx1B,GAC7C,IAAIy1B,EAAar7B,KAAKm4B,YAClBmD,EAAiBD,EAAWnvB,YAEhClM,KAAKk4B,eAAe2B,gBAAgB,iBAIpC,IAAI3d,EAAWnd,EAAIqc,GAAGc,SAAStW,GAI/B5F,KAAKi4B,eAAetY,QAAUzD,EAG9B,IAAIse,EAASx6B,KAAKo4B,cAIdmD,EAAgB5e,EAAMqb,eAAeyC,UAAUY,GAAcb,EAEjE,GAAIe,EAAgB,EAAG,CAIrB,IAAIC,EAAKz8B,EAAIoC,EAAEmG,eAAei0B,GAK9B,GAAMv7B,KAAK+3B,eAAe0D,WACpBz7B,KAAK+3B,eAAe2D,eACpB17B,KAAK+3B,eAAe1a,YACpBrd,KAAK+3B,eAAe4D,SACnB37B,KAAK+3B,eAAe6D,WACW,MAAhC57B,KAAK+3B,eAAe8D,SAInB,GAA2B,GAAvBR,EAAWS,WACTT,EAAWM,SACVN,EAAWO,WACZP,EAAWU,UACXV,EAAW5a,MAAMub,gBACjBX,EAAW5a,MAAMgB,iBAGvB,CAEL,IAAIwa,EAASZ,EAAWhB,cAAcC,eAAekB,GACrDx7B,KAAKk4B,eAAegD,aAAae,EAAQZ,EAAWX,aACpD16B,KAAKm4B,YAAckD,EAAaY,EAChCj8B,KAAKo4B,cAAgBoC,GAAUe,EAC/BD,EAAiBE,OAPjBH,EAAWnvB,YAAeovB,GAAkBE,OAR5C51B,EAAM41B,EAAK51B,EAmBb21B,EAAgB,EAGlB,GAAIv7B,KAAK+3B,eAAemE,iBAAiBb,GAavC,OAVEA,EAAWnvB,YADQ,GAAjBqvB,EACuBD,EAAiB11B,EACvB,GAAV40B,EACgB50B,EAAM01B,EAG3B3e,EAAMqb,eAAeiD,WAAWI,EAAY,EAAGb,GAC/C50B,EAAM+W,EAAMqb,eAAeiD,WAAWI,EAAYb,QAGxDx6B,KAAKo4B,eAAiBlc,GAQxB,GAAc,GAAVse,EAAa,CAEf,IAAI2B,EAAkBd,EAAWc,gBACjC,GAAIA,GACAn8B,KAAK+3B,eAAemE,iBAAiBC,GAIvC,OAHAA,EAAgBjwB,aAAetG,EAC/B5F,KAAKm4B,YAAcgE,OACnBn8B,KAAKo4B,cAAgBr5B,EAAIqc,GAAGc,SAASigB,EAAgBjwB,cAIvD,IAAIkwB,EAAUp8B,KAAK+3B,eAAekC,gBAAgBr0B,GAIlD,OAHA5F,KAAKk4B,eAAegD,aAAakB,EAASf,GAC1Cr7B,KAAKm4B,YAAciE,OACnBp8B,KAAKo4B,cAAgBlc,GAIvB,GAAqB,GAAjBqf,EAAoB,CAEtB,IAAIb,EAAcW,EAAWX,YAC7B,OAAIA,GACA16B,KAAK+3B,eAAemE,iBAAiBxB,IACvCA,EAAYxuB,YAActG,EAAM80B,EAAYxuB,YAC5ClM,KAAKm4B,YAAcuC,OACnB16B,KAAKo4B,cAAgBr5B,EAAIqc,GAAGc,SAAStW,MAInCw2B,EAAUp8B,KAAK+3B,eAAekC,gBAAgBr0B,GAClD5F,KAAKk4B,eAAegD,aAAakB,EAAS1B,GAC1C16B,KAAKm4B,YAAciE,OAGnBp8B,KAAKo4B,cAAgBzb,EAAMqb,eAAeyC,UAAU2B,KAMtDp8B,KAAK86B,WAAWO,EAAYb,GACxB4B,EAAUp8B,KAAK+3B,eAAekC,gBAAgBr0B,GAClD5F,KAAKk4B,eAAegD,aAAakB,EAASf,EAAWX,aACrD16B,KAAKm4B,YAAciE,EACnBp8B,KAAKo4B,cAAgBlc,GAYvBS,EAAMgb,OAAOn2B,UAAU66B,gBAAkB,SAASz2B,GAChD,IAAI02B,EAAYt8B,KAAK83B,aAAe93B,KAAKi4B,eAAetY,OACxD,IAAK2c,EACH,MAAO,CAAC12B,GAEV,IAAIuW,EAAQpd,EAAIqc,GAAGc,SAAStW,GAC5B,GAAI5F,KAAK+3B,eAAemE,iBAAiBl8B,KAAKm4B,cAC1Cn4B,KAAKm4B,YAAYjsB,YAAY9I,OAAOpD,KAAKo4B,gBAAkBxyB,EAI7D,OAFA5F,KAAKo4B,eAAiBjc,OACtBnc,KAAKi4B,eAAetY,QAAUxD,GAIhCnc,KAAKu8B,YAAY15B,KAAKC,IAAIqZ,EAAOmgB,IACjCt8B,KAAKo7B,aAAax1B,IAapB+W,EAAMgb,OAAOn2B,UAAU+6B,YAAc,SAASzN,GAC5C,IAAIljB,EAAO5L,KAAKm4B,YACZqC,EAASx6B,KAAKo4B,cAEdoE,EAAsBx8B,KAAKi4B,eAAetY,OAE9C,KADAmP,EAAQjsB,KAAKC,IAAIgsB,EAAO9uB,KAAK83B,aAAe0E,IAE1C,OAAO,EAKT,IAHA,IACIC,EAAaC,EADb12B,EAAK8oB,EAGFljB,GAAQkjB,GAAO,CAMpB,GALA2N,EAAc9f,EAAMqb,eAAeyC,UAAU7uB,GAC7CA,EAAKM,YAAcyQ,EAAMqb,eAAeiD,WAAWrvB,EAAM,EAAG4uB,GACxD7d,EAAMqb,eAAeiD,WAAWrvB,EAAM4uB,EAAS1L,GAEnDA,GAAS2N,GADTC,EAAY/f,EAAMqb,eAAeyC,UAAU7uB,IAEvC4uB,EAASiC,GAAeC,GAAaD,GAAeC,EAAW,CAIjE,IAAIC,EAAY38B,KAAK+3B,eAAekC,gBAAgB,KACpDruB,EAAKuW,WAAW+Y,aAAayB,EAAW/wB,EAAK8uB,aAC7C9uB,EAAKM,YAAc,GACnBwwB,EAAY,EACZ5N,GAAS,EAGX,IAAI8N,EAAWhxB,EAAK8uB,YACH,GAAbgC,GAAkB9wB,GAAQ5L,KAAKm4B,aACjCvsB,EAAKuW,WAAWvS,YAAYhE,GAE9BA,EAAOgxB,EACPpC,EAAS,EAIX,GAAiC,GAA7Bx6B,KAAKm4B,YAAY2D,WAAkB97B,KAAKm4B,YAAYjsB,YAAa,CACnE,IAAImvB,EAAar7B,KAAKm4B,YACtB,GAAIkD,EAAWc,gBACbn8B,KAAKm4B,YAAckD,EAAWc,gBAC9Bn8B,KAAKo4B,cAAgBzb,EAAMqb,eAAeyC,UACtCY,EAAWc,sBACV,GAAId,EAAWX,YACpB16B,KAAKm4B,YAAckD,EAAWX,YAC9B16B,KAAKo4B,cAAgB,MAChB,CACL,IAAIyE,EAAY78B,KAAKk4B,eAAemC,cAAcC,eAAe,IACjEt6B,KAAKk4B,eAAepV,YAAY+Z,GAChC78B,KAAKm4B,YAAc0E,EACnB78B,KAAKo4B,cAAgB,EAEvBp4B,KAAKk4B,eAAetoB,YAAYyrB,GAGlC,OAAOr1B,GAUT2W,EAAMgb,OAAOn2B,UAAUs7B,iBAAmB,SAASpd,GACjD,KAAOA,EAAIyc,iBACJzc,EAAIyc,gBAAgBY,aAAa,kBACtCrd,EAAMA,EAAIyc,gBAEZ,OAAOzc,GAUT/C,EAAMgb,OAAOn2B,UAAUw7B,aAAe,SAAStd,GAE7C,IADA,IAAIud,EAAU,GACPvd,IACLud,GAAWvd,EAAIxT,YACXwT,EAAIqd,aAAa,mBACnBrd,EAAMA,EAAIgb,YAKd,OAAOuC,GASTtgB,EAAMgb,OAAOn2B,UAAU07B,iBAAmB,SAAStxB,GACjD,KAAOA,GACiB,UAAlBA,EAAKuxB,UAETvxB,EAAOA,EAAKuW,WAEd,OAAOvW,GAaT+Q,EAAMgb,OAAOn2B,UAAU47B,yBAA2B,SAAS1d,EAAK9T,EAAM4uB,GACpE,IAAK5uB,EACH,OAAQ,EACV,IAAIyxB,EAAcr9B,KAAKk9B,iBAAiBtxB,GACxC,IAAKyxB,EACH,OAAQ,EAEV,IADA,IAAIC,EAAW,EACRD,GAAe3d,GAAK,CAEzB,GADA4d,GAAY3gB,EAAMqb,eAAeyC,UAAU/a,IACvCA,EAAIqd,aAAa,mBAAoBrd,EAAIgb,YAG3C,OAAQ,EAFRhb,EAAMA,EAAIgb,YAKd,OAAO4C,EAAWt9B,KAAKu9B,sBAAsB7d,EAAK9T,EAAM4uB,IAY1D7d,EAAMgb,OAAOn2B,UAAU+7B,sBAAwB,SAAS7d,EAAK9T,EAAM4uB,GACjE,GAAI5uB,EAAKuW,YAAczC,EAErB,OAAuB,MAAnB9T,EAAKuW,YACC,EAEHniB,KAAKu9B,sBAAsB3xB,EAAKuW,WAAYvW,EAAM4uB,GAClDx6B,KAAKu9B,sBAAsB7d,EAAK9T,EAAKuW,WAAY,GAG1D,IADA,IAAImb,EAAW,EACN79B,EAAI,EAAGA,EAAIigB,EAAI8d,WAAWj+B,OAAQE,IAAK,CAC9C,IAAIg+B,EAAc/d,EAAI8d,WAAW/9B,GACjC,GAAIg+B,GAAe7xB,EACjB,OAAO0xB,EAAW9C,EACpB8C,GAAY3gB,EAAMqb,eAAeyC,UAAUgD,GAE7C,OAAQ,GAWV9gB,EAAMgb,OAAOn2B,UAAUk8B,8BAAgC,SAAShe,EAAK4d,GACnE,KAAO5d,GAAO4d,EAAW3gB,EAAMqb,eAAeyC,UAAU/a,IAAM,CAC5D,IAAIA,EAAIqd,aAAa,mBAAoBrd,EAAIgb,YAI3C,OAAQ,EAHR4C,GAAY3gB,EAAMqb,eAAeyC,UAAU/a,GAC3CA,EAAMA,EAAIgb,YAKd,OAAO16B,KAAK29B,2BAA2Bje,EAAK4d,IAW9C3gB,EAAMgb,OAAOn2B,UAAUm8B,2BAA6B,SAASje,EAAK4d,GAChE,IAAK,IAAI79B,EAAI,EAAGA,EAAIigB,EAAI8d,WAAWj+B,OAAQE,IAAK,CAC9C,IAAImM,EAAO8T,EAAI8d,WAAW/9B,GACtBm+B,EAAgBjhB,EAAMqb,eAAeyC,UAAU7uB,GACnD,GAAI0xB,GAAYM,EACd,MAAsB,SAAlBhyB,EAAKuxB,SAEAn9B,KAAK29B,2BAA2B/xB,EAAM0xB,GAEtC,CAAC1xB,EAAM0xB,GAGlBA,GAAYM,EAEd,OAAO,MAYTjhB,EAAMgb,OAAOn2B,UAAUq8B,UAAY,SAASne,EAAKrD,EAAOK,EAAKohB,GAC3D,IAAIC,EAAqB/9B,KAAK09B,8BAA8Bhe,EAAKrD,GACjE,GAA0B,MAAtB0hB,EAAJ,CAEA,IAAIC,EAAmBh+B,KAAK09B,8BAA8Bhe,EAAKhD,GACvC,MAApBshB,IAEJF,EAAMG,SAASF,EAAmB,GAAIA,EAAmB,IACzDD,EAAMI,OAAOF,EAAiB,GAAIA,EAAiB,OAQrDrhB,EAAMgb,OAAOn2B,UAAU28B,gBAAkB,SAASpT,GAChD,GAAKA,EAAL,CAGA,IAAI+S,EAAQ/S,EAAUqT,WAAW,GACjC,GAAKN,IAASA,EAAM/6B,WAAWE,MAAM,MAArC,CAGA,IAAIyc,EAAM1f,KAAK88B,iBAAiB98B,KAAKk9B,iBAAiBY,EAAMO,iBAC5D,GAAK3e,EAAL,CAGA,IAAI4e,EAAgBt+B,KAAKo9B,yBAAyB1d,EACAoe,EAAMO,eACNP,EAAMS,aACxD,IAAsB,GAAlBD,EAAJ,CAEA,IAAIE,EAAcx+B,KAAKo9B,yBAAyB1d,EACAoe,EAAMW,aACNX,EAAMY,WACtD,IAAoB,GAAhBF,EAAJ,CAIA,IAAIG,EAAc3+B,KAAKq4B,mBACnBuG,EAAc5+B,KAAKs4B,oBACnBuG,EAAc7+B,KAAKu4B,qBAGnB0E,EAAUj9B,KAAKg9B,aAAatd,GAC5Bof,EAAgB//B,EAAIqc,GAAGqB,UAAUwgB,EAAS,EAAGuB,GAC7CO,EAAwB,IAAI18B,OAAOs8B,EAAYE,EAAc,KAC7DG,EAAgBF,EAAcG,OAAOF,GACzC,MAAsB,GAAlBC,GAAuBA,EAAgBV,GAA3C,CAIA,IAAIY,EAAgBngC,EAAIqc,GAAGqB,UAAUwgB,EAASqB,EACTv/B,EAAIqc,GAAGc,SAAS+gB,IACjDkC,EAAyB,IAAI98B,OAAO,IAAMw8B,EAAcD,GACxDQ,EAAQF,EAAcj8B,MAAMk8B,GAChC,GAAKC,EAAL,CAEA,IAAIC,EAAcf,EAAgBv/B,EAAIqc,GAAGc,SAASkjB,EAAM,KACpC,GAAhBC,GAAqBA,EAAcb,IAGvCx+B,KAAK69B,UAAUne,EAAKsf,EAAeK,EAAavB,GAChD/S,EAAUuU,SAASxB,YASrB/+B,EAAIc,MAAM,QAAS,eAAgB,cA0BnC8c,EAAM4iB,WAAa,SAASC,GAC1B7iB,EAAMua,OAAOC,YAAYn3B,MAEzBA,KAAKy/B,aAAeD,EAGpBx/B,KAAK0/B,cAAgB,IAAI/iB,EAAMwC,KAAK,GAAI,IAGxCnf,KAAK2/B,OAAS,KAEd3/B,KAAK+qB,UAAY,IAAIpO,EAAM4iB,WAAWK,UAAU5/B,MAIhDA,KAAK6/B,qBAAuB,KAI5B7/B,KAAK8/B,sBAAwB,GAG7B9/B,KAAK+/B,iBAAmB,KACxB//B,KAAKggC,kBAAoB,KAKzBhgC,KAAKigC,mBAAoB,EAIzBjgC,KAAKkgC,cAAgB,EAIrBlgC,KAAKmgC,uBAAyB,EAI9BngC,KAAKogC,WAAa,GAKlBpgC,KAAKqgC,eAAgB,EAKrBrgC,KAAKsgC,wBAA0B,GAK/BtgC,KAAKikB,YAAa,EAElBjkB,KAAKmgB,KAAO,KACZngB,KAAKwiB,UAAY,KAGjBxiB,KAAKugC,UAAY,GAEjBvgC,KAAKkS,WAAa,GAElBlS,KAAKwgC,QAAS,GAShB7jB,EAAM4iB,WAAWK,UAAY,SAASa,GACpCzgC,KAAK0gC,YAAcD,EAYnBzgC,KAAK2gC,SAAW,KAYhB3gC,KAAK4gC,OAAS,KAKd5gC,KAAK6gC,YAAc,KAKnB7gC,KAAKkrB,YAAc,MASrBvO,EAAM4iB,WAAWK,UAAUp+B,UAAUs/B,eAAiB,SAClDC,EAAQC,GAGV,IAFA,IAAIp1B,EAAOm1B,EAAO3G,WAEXxuB,GAAM,CACX,IAA+B,GAA3Bo1B,EAAS39B,QAAQuI,GACnB,OAAOA,EAET,GAAIA,EAAK4xB,WAAWj+B,OAAQ,CAC1B,IAAIyG,EAAKhG,KAAK8gC,eAAel1B,EAAMo1B,GACnC,GAAIh7B,EACF,OAAOA,EAGX4F,EAAOA,EAAK8uB,YAGd,OAAO,MAST/d,EAAM4iB,WAAWK,UAAUp+B,UAAUwb,KAAO,WAC1C,IAAIxc,EAAOR,KAMX,SAASihC,IACPzgC,EAAKmgC,SAAWO,EAChB1gC,EAAK2gC,UAAYpW,EAAUqW,WAC3B5gC,EAAK+9B,YAAcxT,EAAUsW,aAC7B7gC,EAAKogC,OAASU,EACd9gC,EAAK+gC,QAAUxW,EAAUyW,UACzBhhC,EAAKk+B,UAAY3T,EAAU0W,YAI7B,SAASC,IACPlhC,EAAKmgC,SAAWW,EAChB9gC,EAAK2gC,UAAYpW,EAAUyW,UAC3BhhC,EAAK+9B,YAAcxT,EAAU0W,YAC7BjhC,EAAKogC,OAASM,EACd1gC,EAAK+gC,QAAUxW,EAAUqW,WACzB5gC,EAAKk+B,UAAY3T,EAAUsW,aAG7B,IAAItW,EAAY/qB,KAAK0gC,YAAY1V,cAAcC,eAO/C,GALAjrB,KAAK2gC,SAAW,KAChB3gC,KAAK4gC,OAAS,KACd5gC,KAAK6gC,YAAc,KACnB7gC,KAAKkrB,aAAeH,GAAaA,EAAUG,aAEvClrB,KAAKkrB,YAAT,CAIA,IADA,IAAIgW,EAAYnW,EAAUqW,WACnBF,KAAe,aAAcA,IAClCA,EAAYA,EAAU/e,WAGxB,GAAK+e,EAAL,CAOA,IADA,IAAII,EAAWvW,EAAUyW,UAClBF,KAAc,aAAcA,IACjCA,EAAWA,EAASnf,WAGtB,GAAKmf,EAAL,CAMA,GAAIJ,EAAUS,SAAWL,EAASK,SAChCV,SAEK,GAAIC,EAAUS,SAAWL,EAASK,SACvCD,SAEK,GAAI3W,EAAUyW,WAAazW,EAAUqW,WACtCrW,EAAUsW,aAAetW,EAAU0W,YACrCR,IAEAS,QAGG,CAGL,IAAIE,EAAY5hC,KAAK8gC,eACjBI,EAAW,CAACnW,EAAUqW,WAAYrW,EAAUyW,YAEhD,IAAKI,EACH,MAAM,IAAI5iC,MAAM,uCAEd4iC,GAAa7W,EAAUqW,WACzBH,IAEAS,IAIJ1hC,KAAK6gC,YAAcK,EAAUS,UAAYL,EAASK,cAlChDlhC,QAAQ4E,MAAM,gDACA0lB,EAAUyW,UAAUrE,eAZlC18B,QAAQ4E,MAAM,iDACA0lB,EAAUqW,WAAWjE,YAmDvCxgB,EAAM4iB,WAAW/9B,UAAUqgC,SAAW,SAASC,GAC7C9hC,KAAKmgB,KAAO2hB,EAEZ9hC,KAAKogB,QAAU0hB,EAAIzH,cAAc3X,cAAc,UAC/C1iB,KAAKogB,QAAQK,MAAMkC,QAAU,wDAQzB,oBAAqBpiB,SACvBP,KAAKogB,QAAQ2hB,IAAM,KAErBD,EAAIhf,YAAY9iB,KAAKogB,SAErBpgB,KAAKogB,QAAQa,cAAcnO,iBAAiB,SACA9S,KAAKgiC,UAAU93B,KAAKlK,OAEhE,IAAIiiC,EAAMjiC,KAAKwiB,UAAYxiB,KAAKogB,QAAQ8hB,gBACxCD,EAAIvjB,KAAK+B,MAAMkC,QAAU,+JAUrB3iB,KAAKwgC,SAGPxgC,KAAKwiB,UAAU9D,KAAK+B,MAAM0hB,WACtBniC,KAAKwiB,UAAU9D,KAAK+B,MAAM2hB,cAC1B,0CAGN,IAAI3hB,EAAQwhB,EAAIvf,cAAc,SAC9BjC,EAAMvU,YAAc,+GAMpB+1B,EAAII,KAAKvf,YAAYrC,GAErBzgB,KAAKsiC,aAAeL,EAAIvf,cAAc,QACtC1iB,KAAKsiC,aAAan2B,aAAa,MAAO,cAEtCnM,KAAKuiC,aAAeN,EAAIvf,cAAc,SACtCuf,EAAII,KAAKvf,YAAY9iB,KAAKuiC,cAW1BviC,KAAKwiC,QAAUP,EAAIvf,cAAc,YACjC1iB,KAAKwiC,QAAQr2B,aAAa,kBAAmB,QAC7CnM,KAAKwiC,QAAQr2B,aAAa,aAAc,SACxCnM,KAAKwiC,QAAQr2B,aAAa,eAAgB,OAC1CnM,KAAKwiC,QAAQr2B,aAAa,cAAe,OACzCnM,KAAKwiC,QAAQr2B,aAAa,gBAAiB,QAC3CnM,KAAKwiC,QAAQr2B,aAAa,OAAQ,WAClCnM,KAAKwiC,QAAQr2B,aAAa,WAAY,MACtCnM,KAAKwiC,QAAQ/hB,MAAMkC,QAAU,wNAY7Bsf,EAAIvjB,KAAKoE,YAAY9iB,KAAKwiC,SAE1BxiC,KAAKwiC,QAAQ1vB,iBAAiB,SAAU9S,KAAKyiC,UAAUv4B,KAAKlK,OAC5DA,KAAKwiC,QAAQ1vB,iBAAiB,QAAS9S,KAAK0iC,eAAex4B,KAAKlK,OAChEA,KAAKwiC,QAAQ1vB,iBAAiB,aAAc9S,KAAK2iC,SAASz4B,KAAKlK,OAC/DA,KAAKwiC,QAAQ1vB,iBAAiB,YAAa9S,KAAK2iC,SAASz4B,KAAKlK,OAC9DA,KAAKwiC,QAAQ1vB,iBAAiB,WAAY9S,KAAK2iC,SAASz4B,KAAKlK,OAC7DA,KAAKwiC,QAAQ1vB,iBAAiB,cAAe9S,KAAK2iC,SAASz4B,KAAKlK,OAChEA,KAAKwiC,QAAQ1vB,iBAAiB,OAAQ9S,KAAK4iC,QAAQ14B,KAAKlK,OACxDA,KAAKwiC,QAAQ1vB,iBAAiB,QAAS9S,KAAK6iC,SAAS34B,KAAKlK,OAG1DA,KAAKwiC,QAAQ1vB,iBAAiB,QAAQ,SAASE,GAE7C,OADAA,EAAEoT,kBACK,KAGT6b,EAAIvjB,KAAK5L,iBAAiB,UAAW9S,KAAK8iC,eAAe54B,KAAKlK,OAG9DA,KAAK+iC,UAAYd,EAAIvf,cAAc,OACnC1iB,KAAK+iC,UAAUh3B,GAAK,kBACpB/L,KAAK+iC,UAAUtiB,MAAMkC,QAAU,oGAM/B3iB,KAAKwiC,QAAQ1f,YAAY9iB,KAAK+iC,WAG9B/iC,KAAKgjC,cAAgBf,EAAIvf,cAAc,gBACvC1iB,KAAKgjC,cAAcviB,MAAMkC,QAAU,yFAMnC3iB,KAAKijC,iBAAmBjjC,KAAKgjC,cAAchI,YAK3Ch7B,KAAKkjC,SAAWjB,EAAIvf,cAAc,UAClC1iB,KAAKkjC,SAASn3B,GAAK,mCACnB/L,KAAKkjC,SAASziB,MAAMkC,QAAU,kBAC9B3iB,KAAK+iC,UAAUjgB,YAAY9iB,KAAKkjC,UAEhCljC,KAAKmjC,YAAcnjC,KAAKkjC,SAASlI,YACjCh7B,KAAKmjC,YAAYp3B,GAAK,sCACtB/L,KAAK+iC,UAAUjgB,YAAY9iB,KAAKmjC,aAWhCnjC,KAAKojC,YAAcnB,EAAIvf,cAAc,OACrC1iB,KAAKojC,YAAYr3B,GAAK,mBACtB/L,KAAKojC,YAAY3iB,MAAMkC,QAAU,qBACjC3iB,KAAKwiC,QAAQ1f,YAAY9iB,KAAKojC,aAO9B,IAAIC,EAAQ,6BACZrjC,KAAKsjC,KAAOtjC,KAAKmgB,KAAKka,cAAckJ,gBAAgBF,EAAO,OAC3DrjC,KAAKsjC,KAAKv3B,GAAK,sBACf/L,KAAKsjC,KAAKn3B,aAAa,QAASk3B,GAChCrjC,KAAKsjC,KAAKn3B,aAAa,UAAW,OAClCnM,KAAKsjC,KAAK7iB,MAAMkC,QAAU,uDAS1B3iB,KAAKwjC,aAAevB,EAAIvf,cAAc,YACtC1iB,KAAKwjC,aAAaz3B,GAAK,4BACvB/L,KAAKwjC,aAAar3B,aAAa,WAAY,MAC3CnM,KAAKwjC,aAAa/iB,MAAMkC,QAAU,8EAOlC3iB,KAAKwjC,aAAaC,iBAAkB,EAEpCzjC,KAAKwiC,QAAQ1f,YAAY9iB,KAAKwjC,cAC9BxjC,KAAKwjC,aAAa1wB,iBACd,YAAa9S,KAAK0jC,4BAA4Bx5B,KAAKlK,OAEvDA,KAAKof,UAWPzC,EAAM4iB,WAAW/9B,UAAUmiC,cAAgB,SAAS5hB,EAAY6hB,GAC9D5jC,KAAKwiC,QAAQ/hB,MAAMsB,WAAaA,EAE9B/hB,KAAKwiC,QAAQ/hB,MAAMojB,oBADjBD,GAGuC,GAG3C5jC,KAAK8jC,qBAGPnnB,EAAM4iB,WAAW/9B,UAAUwgB,cAAgB,WACzC,OAAOhiB,KAAKwiC,QAAQ/hB,MAAMsB,YAS5BpF,EAAM4iB,WAAW/9B,UAAUuiC,cAAgB,SAAS55B,GAC9CA,GACFnK,KAAKsiC,aAAan2B,aAAa,OAAQhC,GAElCnK,KAAKsiC,aAAangB,YACrBniB,KAAKwiB,UAAU6f,KAAKvf,YAAY9iB,KAAKsiC,eAC9BtiC,KAAKsiC,aAAangB,YAC3BniB,KAAKwiB,UAAU6f,KAAKzyB,YAAY5P,KAAKsiC,eAIzC3lB,EAAM4iB,WAAW/9B,UAAUwiC,eAAiB,SAAS/M,GACnDj3B,KAAKuiC,aAAar2B,YAAc+qB,GAGlCta,EAAM4iB,WAAW/9B,UAAUyd,MAAQ,WACjCjf,KAAKogB,QAAQnB,QACbjf,KAAKwiC,QAAQvjB,SAGftC,EAAM4iB,WAAW/9B,UAAUggB,mBAAqB,WAC9C,OAAOxhB,KAAKwiC,QAAQ/hB,MAAMrb,OAG5BuX,EAAM4iB,WAAW/9B,UAAUyiC,mBAAqB,SAAS7+B,GACvDpF,KAAKwiC,QAAQ/hB,MAAMrb,MAAQA,GAG7BuX,EAAM4iB,WAAW/9B,UAAUkgB,mBAAqB,WAC9C,OAAO1hB,KAAKwiC,QAAQ/hB,MAAMgB,iBAG5B9E,EAAM4iB,WAAW/9B,UAAU0iC,mBAAqB,SAAS9+B,GACvDpF,KAAKwiC,QAAQ/hB,MAAMgB,gBAAkBrc,GAGvCuX,EAAM4iB,WAAW/9B,UAAU2iC,mBAAqB,SAASC,GACvDpkC,KAAKwiC,QAAQ/hB,MAAM4jB,gBAAkBD,GAGvCznB,EAAM4iB,WAAW/9B,UAAU8iC,kBAAoB,SAAShhC,GACtDtD,KAAKwiC,QAAQ/hB,MAAM8jB,eAAiBjhC,GAGtCqZ,EAAM4iB,WAAW/9B,UAAUgjC,sBAAwB,SAASlH,GAC1Dt9B,KAAKwiC,QAAQ/hB,MAAMgkB,mBAAqBnH,GAG1C3gB,EAAM4iB,WAAW/9B,UAAUkjC,cAAgB,SAASzgB,GAClDjkB,KAAKikB,WAAaA,GAQpBtH,EAAM4iB,WAAW/9B,UAAUmjC,cAAgB,WACzC,IAAIrhC,EAAOqZ,EAAMgB,cAAc3d,KAAKwiC,SACpC,MAAO,CACLzkB,OAAQza,EAAKya,OACb5B,MAAO7Y,EAAK6Y,MAAQnc,KAAKsgC,0BAS7B3jB,EAAM4iB,WAAW/9B,UAAUojC,eAAiB,WAC1C,OAAO5kC,KAAK2kC,gBAAgBxoB,OAM9BQ,EAAM4iB,WAAW/9B,UAAUqjC,gBAAkB,WAC3C,OAAO7kC,KAAK2kC,gBAAgB5mB,QAM9BpB,EAAM4iB,WAAW/9B,UAAUwpB,YAAc,WACvC,OAAOhrB,KAAKwiB,WAMd7F,EAAM4iB,WAAW/9B,UAAUsjC,cAAgB,WACzC,OAAO9kC,KAAKwiC,SAMd7lB,EAAM4iB,WAAW/9B,UAAUujC,WAAa,WACtC/kC,KAAK6/B,qBAAuB,KAC5B7/B,KAAK8/B,sBAAwB,IAW/BnjB,EAAM4iB,WAAW/9B,UAAUwjC,eAAiB,SAASxF,GACnDx/B,KAAK+kC,aACL/kC,KAAKy/B,aAAeD,EACpBx/B,KAAKilC,kBAgBPtoB,EAAM4iB,WAAW/9B,UAAU0jC,WAAa,WAEtC,IADA,IAAIt5B,EAAO5L,KAAKkjC,SAASxI,YAClB9uB,GAAQ5L,KAAKmjC,aAAa,CAC/B,IAAIzI,EAAc9uB,EAAK8uB,YACvB9uB,EAAKu5B,cAAcv1B,YAAYhE,GAC/BA,EAAO8uB,EAGT16B,KAAK8/B,sBAAwB,KAC7B,IAAIsF,EAAcplC,KAAKqlC,iBACnBC,EAAiBtlC,KAAKulC,kBAAkBH,GAE5CplC,KAAKwlC,iBAAiBJ,EAAaE,IAGrC3oB,EAAM4iB,WAAW/9B,UAAUikC,mBAAqB,WAC9C,IAAIzlC,KAAKugC,UAAU2E,WAAnB,CAGA,IAAI1kC,EAAOR,KACXA,KAAKugC,UAAU2E,WAAa5jC,YAAW,kBAC5Bd,EAAK+/B,UAAU2E,WACtB1kC,EAAK0kC,eACJ,KAMPvoB,EAAM4iB,WAAW/9B,UAAU2qB,YAAc,SAASuZ,GAChD1lC,KAAKwiC,QAAQ/hB,MAAMoB,SAAW6jB,EAAK,KACnC1lC,KAAK8jC,qBAMPnnB,EAAM4iB,WAAW/9B,UAAUsgB,YAAc,WACvC,OAAOle,SAAS5D,KAAKwiC,QAAQ/hB,MAAMoB,WAUrClF,EAAM4iB,WAAW/9B,UAAUmkC,qBAAuB,SAASC,GAMpD5lC,KAAK2/B,SACR3/B,KAAK2/B,OAAS3/B,KAAKwiB,UAAUE,cAAc,OAC3C1iB,KAAK2/B,OAAO5zB,GAAK,6BACjB/L,KAAK2/B,OAAOlf,MAAMkC,QAAU,uGAU5B3iB,KAAK6lC,WAAa7lC,KAAKwiB,UAAUE,cAAc,QAC/C1iB,KAAK6lC,WAAW95B,GAAK,8BACrB/L,KAAK6lC,WAAWjM,WACX,IAAI/3B,OAlBM,KAkBe,MAAMA,OApBlB,KAqBlB7B,KAAK2/B,OAAO7c,YAAY9iB,KAAK6lC,YAE7B7lC,KAAK8lC,eAAiB9lC,KAAKwiB,UAAUE,cAAc,QACnD1iB,KAAK6lC,WAAW95B,GAAK,uBAErB/L,KAAK8lC,eAAerlB,MAAMoB,SAAW,MACrC7hB,KAAK8lC,eAAe55B,YAAc,KAGpClM,KAAK6lC,WAAWplB,MAAMslB,WAAaH,GAAc,GAEjD5lC,KAAK+iC,UAAUjgB,YAAY9iB,KAAK2/B,QAChC,IAAIqG,EAAYrpB,EAAMgB,cAAc3d,KAAK6lC,YAErCviC,EAAO,IAAIqZ,EAAMwC,KAAK6mB,EAAU7pB,MAjCnB,IAkCS6pB,EAAUjoB,OApChB,KAgDpB,OAVA/d,KAAK2/B,OAAO7c,YAAY9iB,KAAK8lC,gBAC7BxiC,EAAK2iC,SAAWjmC,KAAK8lC,eAAeI,UACpClmC,KAAK2/B,OAAO/vB,YAAY5P,KAAK8lC,gBAE7B9lC,KAAK+iC,UAAUnzB,YAAY5P,KAAK2/B,QAEhC3/B,KAAKmgB,KAAKka,cAAc3b,KAAKoE,YAAY9iB,KAAKsjC,MAC9ChgC,EAAK6iC,WAAanmC,KAAKsjC,KAAK8C,aAC5BpmC,KAAKmgB,KAAKka,cAAc3b,KAAK9O,YAAY5P,KAAKsjC,MAEvChgC,GASTqZ,EAAM4iB,WAAW/9B,UAAUsiC,kBAAoB,WAC7C9jC,KAAK0/B,cAAgB1/B,KAAK2lC,uBAE1B3lC,KAAKof,UAOPzC,EAAM4iB,WAAW/9B,UAAU4d,OAAS,WAClCpf,KAAKsgC,wBAA0B3jB,EAAMkB,eAAe7d,KAAKwiC,SACvDxiC,KAAKwiC,QAAQ6D,YAEfrmC,KAAKsmC,mBACLtmC,KAAKumC,0BAEL,IAAI/lC,EAAOR,KACXA,KAAKw3B,QACD,SAAU,CAAEiJ,WAAYzgC,OACxB,WACEQ,EAAKgmC,kBAAkBhmC,EAAKi/B,aAAagH,eACzCjmC,EAAKykC,qBAObtoB,EAAM4iB,WAAW/9B,UAAU+kC,wBAA0B,WACnD,IAAIG,EAAa1mC,KAAK2kC,gBAEtB3kC,KAAK+/B,iBAAmB2G,EAAWvqB,MACnCnc,KAAKggC,kBAAoB0G,EAAW3oB,OAIpC/d,KAAK2mC,gBAAkB5nC,EAAIoC,EAAE+G,iBACzBw+B,EAAW3oB,OAAQ/d,KAAK0/B,cAAc3hB,QAG1C,IAAI6oB,EAAoB5mC,KAAK2mC,gBAAkB3mC,KAAK0/B,cAAc3hB,OAKlE/d,KAAK6mC,oBAAsB,EAC3B7mC,KAAK8mC,uBAAyBJ,EAAW3oB,OAAS6oB,EAElD5mC,KAAKkjC,SAASziB,MAAMsmB,aAAe/mC,KAAK6mC,oBAAsB,KAK9D,IAFA,IAAIG,EAAgB,EAChBp7B,EAAO5L,KAAKkjC,SAAS/G,gBAClBvwB,GACLo7B,GAAiBrqB,EAAMmB,gBAAgBlS,GACvCA,EAAOA,EAAKuwB,gBAIdn8B,KAAK+iC,UAAUtiB,MAAMtE,MAAQuqB,EAAWvqB,MAAQ,KAChDnc,KAAK+iC,UAAUtiB,MAAM1C,OAAS6oB,EAAoBI,EAAgB,KAClEhnC,KAAK+iC,UAAUtiB,MAAMwmB,KAAOjnC,KAAKwiC,QAAQ0E,WAAa,KACtDlnC,KAAK+iC,UAAUtiB,MAAM0mB,IAAMnnC,KAAKwiC,QAAQ0D,UAAYc,EAAgB,MAGtErqB,EAAM4iB,WAAW/9B,UAAU8kC,iBAAmB,WAE5CtmC,KAAKkgC,cAAgBlgC,KAAKy/B,aAAagH,cACvCzmC,KAAKojC,YAAY3iB,MAAM1C,OAAU/d,KAAK0/B,cAAc3hB,OACnB/d,KAAKkgC,cACLlgC,KAAK6mC,oBACL7mC,KAAK8mC,uBACL,MASnCnqB,EAAM4iB,WAAW/9B,UAAUyjC,eAAiB,WAC1C,IAAIjlC,KAAKugC,UAAU6G,OAAnB,CAGA,IAAI5mC,EAAOR,KACXA,KAAKugC,UAAU6G,OAAS9lC,YAAW,kBACxBd,EAAK+/B,UAAU6G,OACtB5mC,EAAK6mC,YACJ,KAaP1qB,EAAM4iB,WAAW/9B,UAAU6lC,QAAU,WACnCrnC,KAAKsnC,mBACLtnC,KAAK+qB,UAAU/N,OAEfhd,KAAKsmC,mBAELtmC,KAAK6/B,qBAAuB,GAE5B,IAAIuF,EAAcplC,KAAKqlC,iBACnBC,EAAiBtlC,KAAKulC,kBAAkBH,GAE5CplC,KAAKunC,aAAanC,GAClBplC,KAAKwnC,gBAAgBlC,GACrBtlC,KAAKwlC,iBAAiBJ,EAAaE,GAEnCtlC,KAAKumC,0BAELvmC,KAAK8/B,sBAAwB9/B,KAAK6/B,qBAClC7/B,KAAK6/B,qBAAuB,KAE5B7/B,KAAKqgC,cACHrgC,KAAKqlC,iBAAmBrlC,KAAK2mC,iBAAmB3mC,KAAKkgC,eAgBzDvjB,EAAM4iB,WAAW/9B,UAAU+lC,aAAe,SAASnC,GACjD,IAAKplC,KAAK+qB,UAAU4V,UAChB3gC,KAAK+qB,UAAU4V,SAASgB,UAAYyD,EAGlCplC,KAAK+iC,UAAU3I,YAAcp6B,KAAKkjC,UACpCljC,KAAK+iC,UAAU7H,aAAal7B,KAAKkjC,SAAUljC,KAAK+iC,UAAU3I,gBAL9D,CAUA,IAAKp6B,KAAK+qB,UAAU8V,aAChB7gC,KAAK+qB,UAAU6V,OAAOe,UAAYyD,EAEhCplC,KAAK+qB,UAAU4V,SAASjG,aAAe16B,KAAKkjC,UAC9CljC,KAAK+iC,UAAU7H,aAAal7B,KAAKkjC,SACLljC,KAAK+qB,UAAU4V,SAASjG,kBAStD,IANI16B,KAAK+qB,UAAU6V,OAAOlG,aAAe16B,KAAKkjC,UAC5CljC,KAAK+iC,UAAU7H,aAAal7B,KAAKkjC,SACLljC,KAAK+qB,UAAU6V,OAAOlG,aAI7C16B,KAAK+qB,UAAU4V,SAASjG,aACxB16B,KAAK+qB,UAAU6V,QACpB5gC,KAAK+iC,UAAUnzB,YAAY5P,KAAK+qB,UAAU4V,SAASjG,aAIvD,KAAM16B,KAAK+iC,UAAU3I,YAAcp6B,KAAK+qB,UAAU4V,UAChD3gC,KAAK+iC,UAAUnzB,YAAY5P,KAAK+iC,UAAU3I,cAiB9Czd,EAAM4iB,WAAW/9B,UAAUgmC,gBAAkB,SAASlC,GACpD,IAAKtlC,KAAK+qB,UAAU6V,QAChB5gC,KAAK+qB,UAAU6V,OAAOe,UAAY2D,EAGhCtlC,KAAK+iC,UAAU0E,WAAaznC,KAAKmjC,aACnCnjC,KAAK+iC,UAAUjgB,YAAY9iB,KAAKmjC,iBALpC,CAUA,IAAKnjC,KAAK+qB,UAAU8V,aAChB7gC,KAAK+qB,UAAU4V,SAASgB,UAAY2D,EAElCtlC,KAAKmjC,YAAYzI,aAAe16B,KAAK+qB,UAAU6V,QACjD5gC,KAAK+iC,UAAU7H,aAAal7B,KAAKmjC,YACLnjC,KAAK+qB,UAAU6V,aAS7C,IANI5gC,KAAKmjC,YAAYzI,aAAe16B,KAAK+qB,UAAU4V,UACjD3gC,KAAK+iC,UAAU7H,aAAal7B,KAAKmjC,YACLnjC,KAAK+qB,UAAU4V,UAItC3gC,KAAK+qB,UAAU4V,SAASjG,aACxB16B,KAAK+qB,UAAU6V,QACpB5gC,KAAK+iC,UAAUnzB,YAAY5P,KAAK+qB,UAAU4V,SAASjG,aAIvD,KAAM16B,KAAK+iC,UAAU0E,WAAaznC,KAAK+qB,UAAU6V,QAC/C5gC,KAAK+iC,UAAUnzB,YAAY5P,KAAK+iC,UAAU0E,aAkB9C9qB,EAAM4iB,WAAW/9B,UAAUgkC,iBAAmB,SAC1CJ,EAAaE,GACf,IAAI9kC,EAAOR,KAIX,SAAS0nC,EAAgBjK,EAAakK,GACpC,KAAOlK,GAAekK,GAAY,CAChC,IAAKlK,EACH,KAAM,gCAER,GAAIA,GAAej9B,EAAK2iC,YACtB,KAAM,6CAER,IAAIyE,EAAWnK,EACfA,EAAcA,EAAY/C,YAC1BkN,EAASzlB,WAAWvS,YAAYg4B,IAepC,IAVA,IAAIC,EAAoB7nC,KAAK+qB,UAAU4V,SACnCmH,EAAkB9nC,KAAK+qB,UAAU6V,OACjCmH,EAAa/nC,KAAKmjC,YAGlBv3B,EAAO5L,KAAKkjC,SAASxI,YAErBsN,EAAkBnlC,KAAKC,IAAI9C,KAAK2mC,gBACL3mC,KAAKy/B,aAAagH,eAExCwB,EAAY,EAAGA,EAAYD,EAAiBC,IAAa,CAChE,IAAItG,EAAWyD,EAAc6C,EAE7B,GAAIr8B,GAAQm8B,EAYZ,GAAIn8B,EAAK+1B,UAAYA,EAMrB,GAAIkG,GAAqBA,EAAkBlG,UAAYA,EAGrD+F,EAAgB97B,EAAMi8B,GACtBj8B,EAAOi8B,EAAkBnN,iBAI3B,GAAIoN,GAAmBA,EAAgBnG,UAAYA,EAGjD+F,EAAgB97B,EAAMk8B,GACtBl8B,EAAOk8B,EAAgBpN,iBAIzB,GAAI9uB,GAAQi8B,GAAqBj8B,GAAQk8B,EAAzC,CAgBA,KADI1L,EAAUp8B,KAAKkoC,cAAcvG,IACnB,CACZlhC,QAAQoH,IAAI,6BAA+B85B,GAC3C,MAGE/1B,GAAQwwB,GAKZp8B,KAAK+iC,UAAU7H,aAAakB,EAASxwB,GAChCwwB,EAAQ1B,YAEb16B,KAAK+iC,UAAUnzB,YAAYhE,GAC3BA,EAAOwwB,EAAQ1B,aARb9uB,EAAOA,EAAK8uB,gBAtBd,CAIE,KADI0B,EAAUp8B,KAAKkoC,cAAcvG,IACnB,CACZlhC,QAAQoH,IAAI,6BAA+B85B,GAC3C,MAGF3hC,KAAK+iC,UAAU7H,aAAakB,EAASxwB,QA7BrCA,EAAOA,EAAK8uB,gBAdd,CAEE,IAAI0B,EACJ,KADIA,EAAUp8B,KAAKkoC,cAAcvG,IACnB,CACZlhC,QAAQoH,IAAI,6BAA+B85B,GAC3C,MAGF3hC,KAAK+iC,UAAU7H,aAAakB,EAASxwB,IA2DrCA,GAAQ5L,KAAKmjC,aACfuE,EAAgB97B,EAAMm8B,IAU1BprB,EAAM4iB,WAAW/9B,UAAU8lC,iBAAmB,WACxCtnC,KAAKgjC,cAAc7gB,aACrBniB,KAAKgjC,cAAc92B,YAAc,GACjClM,KAAKgjC,cAAc7gB,WAAWvS,YAAY5P,KAAKgjC,gBAG7ChjC,KAAKijC,iBAAiB9gB,aACxBniB,KAAKijC,iBAAiB/2B,YAAc,GACpClM,KAAKijC,iBAAiB9gB,WAAWvS,YAAY5P,KAAKijC,oBAStDtmB,EAAM4iB,WAAW/9B,UAAU2mC,cAAgB,SAAShO,GAClDn6B,KAAK6/B,qBAAqB1F,EAAQwH,UAAYxH,GAWhDxd,EAAM4iB,WAAW/9B,UAAU0mC,cAAgB,SAASvG,GAClD,IAAI/1B,EAWJ,OAREA,EADE5L,KAAK8/B,uBAAyB6B,KAAY3hC,KAAK8/B,sBAC1C9/B,KAAK8/B,sBAAsB6B,GAE3B3hC,KAAKy/B,aAAa2I,WAAWzG,GAGlC3hC,KAAK6/B,sBACP7/B,KAAKmoC,cAAcv8B,GAEdA,GAMT+Q,EAAM4iB,WAAW/9B,UAAU6mC,UAAY,WACrC,IAAIC,EAEJ,GAA0C,GAAtCtoC,KAAKkjC,SAASxI,YAAYiH,SAAe,CAC3C,KAAO3hC,KAAKkjC,SAAS/G,iBACnBn8B,KAAK+iC,UAAUnzB,YAAY5P,KAAKkjC,SAAS/G,iBAG3CmM,EAAWtoC,KAAKkoC,cAAc,GAC9BloC,KAAK+iC,UAAU7H,aAAaoN,EAAUtoC,KAAKkjC,UAC3CljC,KAAKumC,+BAEL+B,EAAWtoC,KAAKkjC,SAASxI,YAG3B,IACI6N,EADAC,EAAexoC,KAAKy/B,aAAagH,cAAgB,EAGrD,GAAIzmC,KAAKmjC,YAAYhH,gBAAgBwF,UAAY6G,EAAc,CAC7D,KAAOxoC,KAAKmjC,YAAYzI,aACtB16B,KAAK+iC,UAAUnzB,YAAY5P,KAAKmjC,YAAYzI,aAG9C6N,EAAUvoC,KAAKkoC,cAAcM,GAC7BxoC,KAAK+iC,UAAUjgB,YAAYylB,QAE3BA,EAAUvoC,KAAKmjC,YAAYhH,gBAAgBwF,SAG7C,IAAI5W,EAAY/qB,KAAKwiB,UAAUyI,eAC/BF,EAAU6P,SAAS0N,EAAU,GAC7Bvd,EAAU0d,OAAOF,EAASA,EAAQ/K,WAAWj+B,QAE7CS,KAAK+qB,UAAU/N,QAMjBL,EAAM4iB,WAAW/9B,UAAUknC,cAAgB,SAAS11B,GAClD,OAAQ2J,EAAMmB,gBAAgB9d,KAAKojC,aAC3BpjC,KAAK6mC,oBAAsB7mC,KAAK8mC,uBAChCnqB,EAAMmB,gBAAgB9d,KAAKwiC,UAQrC7lB,EAAM4iB,WAAW/9B,UAAUmnC,eAAiB,SAAShH,GACnD3hC,KAAKsmC,mBAELtmC,KAAKqgC,cACHsB,EAAW3hC,KAAK2mC,iBAAmB3mC,KAAKkgC,cAE1C,IAAI0I,EAAYjH,EAAW3hC,KAAK0/B,cAAc3hB,OAC1C/d,KAAK6mC,oBAELgC,EAAY7oC,KAAK0oC,gBACjBE,EAAYC,IACdD,EAAYC,GAEV7oC,KAAKwiC,QAAQoG,WAAaA,IAG9B5oC,KAAKwiC,QAAQoG,UAAYA,EACzB5oC,KAAKilC,mBAQPtoB,EAAM4iB,WAAW/9B,UAAUglC,kBAAoB,SAAS7E,GACtD3hC,KAAKsmC,mBAELtmC,KAAKqgC,cACHsB,EAAW3hC,KAAK2mC,iBAAmB3mC,KAAKkgC,cAE1C,IAAI0I,EAAYjH,EAAW3hC,KAAK0/B,cAAc3hB,OAC1C/d,KAAK6mC,oBAAsB7mC,KAAK8mC,wBACpC8B,GAAa5oC,KAAK2mC,gBAAkB3mC,KAAK0/B,cAAc3hB,QAEvC,IACd6qB,EAAY,GAEV5oC,KAAKwiC,QAAQoG,WAAaA,IAG9B5oC,KAAKwiC,QAAQoG,UAAYA,IAS3BjsB,EAAM4iB,WAAW/9B,UAAU6jC,eAAiB,WAC1C,OAAOxiC,KAAKkB,MAAM/D,KAAKwiC,QAAQoG,UAAY5oC,KAAK0/B,cAAc3hB,SAShEpB,EAAM4iB,WAAW/9B,UAAU+jC,kBAAoB,SAASH,GACtD,OAAOA,EAAcplC,KAAK2mC,gBAAkB,GAS9ChqB,EAAM4iB,WAAW/9B,UAAUihC,UAAY,SAASzvB,GAC9C,IAAI0zB,EAAa1mC,KAAK2kC,gBAClB+B,EAAWvqB,OAASnc,KAAK+/B,kBACzB2G,EAAW3oB,QAAU/d,KAAKggC,mBAU9BhgC,KAAKqnC,UACLrnC,KAAKw3B,QAAQ,SAAU,CAAEiJ,WAAYzgC,QALnCA,KAAKof,UAcTzC,EAAM4iB,WAAW/9B,UAAUsnC,cAAgB,SAAS91B,KAUpD2J,EAAM4iB,WAAW/9B,UAAUkhC,eAAiB,SAAS1vB,GAGnD,GAFAhT,KAAK8oC,cAAc91B,IAEfA,EAAE+1B,iBAAN,CAIA,IAAIC,EAAQhpC,KAAKipC,iBAAiBj2B,GAE9Bm0B,EAAMnnC,KAAKwiC,QAAQoG,UAAYI,EAC/B7B,EAAM,IACRA,EAAM,GAER,IAAI0B,EAAY7oC,KAAK0oC,gBACjBvB,EAAM0B,IACR1B,EAAM0B,GAEJ1B,GAAOnnC,KAAKwiC,QAAQoG,YAEtB5oC,KAAKwiC,QAAQoG,UAAYzB,EAKzBn0B,EAAEoT,oBAUNzJ,EAAM4iB,WAAW/9B,UAAUynC,iBAAmB,SAASj2B,GACrD,IAAIg2B,EAEJ,OAAQh2B,EAAEk2B,WACR,KAAKC,WAAWC,gBACdJ,EAAQh2B,EAAEq2B,OAASrpC,KAAKmgC,uBACxB,MACF,KAAKgJ,WAAWG,eACdN,EAAQh2B,EAAEq2B,OAASrpC,KAAK0/B,cAAc3hB,OACtC,MACF,KAAKorB,WAAWI,eACdP,EAAQh2B,EAAEq2B,OAASrpC,KAAK0/B,cAAc3hB,OAAS/d,KAAKwiC,QAAQ/J,YAKhE,OAAgB,EAATuQ,GAUTrsB,EAAM4iB,WAAW/9B,UAAUgoC,QAAU,SAASx2B,KAK9C2J,EAAM4iB,WAAW/9B,UAAUmhC,SAAW,SAAS3vB,GAG7C,GAFAhT,KAAKwpC,QAAQx2B,IAETA,EAAE+1B,iBAAN,CAOA,IAQItpC,EAAGgqC,EARHC,EAAa,SAASC,GACxB,MAAO,CACL59B,GAAI49B,EAAEC,WACNC,EAAGF,EAAEG,QACLC,EAAGJ,EAAEK,UAKT,OAAQh3B,EAAEtB,MACR,IAAK,aAEH,IAAKjS,EAAI,EAAGA,EAAIuT,EAAEi3B,eAAe1qC,SAAUE,EACzCgqC,EAAQC,EAAW12B,EAAEi3B,eAAexqC,IACpCO,KAAKogC,WAAWqJ,EAAM19B,IAAM09B,EAE9B,MAEF,IAAK,cACL,IAAK,WAEH,IAAKhqC,EAAI,EAAGA,EAAIuT,EAAEi3B,eAAe1qC,SAAUE,SAClCO,KAAKogC,WAAWptB,EAAEi3B,eAAexqC,GAAGmqC,YAC7C,MAEF,IAAK,YAGH,IAAIZ,EAAQ,EACZ,IAAKvpC,EAAI,EAAGA,EAAIuT,EAAEi3B,eAAe1qC,SAAUE,EACzCgqC,EAAQC,EAAW12B,EAAEi3B,eAAexqC,IACpCupC,GAAUhpC,KAAKogC,WAAWqJ,EAAM19B,IAAI89B,EAAIJ,EAAMI,EAC9C7pC,KAAKogC,WAAWqJ,EAAM19B,IAAM09B,EAI9BT,IAAU,EAEV,IAAI7B,EAAMnnC,KAAKwiC,QAAQoG,UAAYI,EAC/B7B,EAAM,IACRA,EAAM,GAER,IAAI0B,EAAY7oC,KAAK0oC,gBACjBvB,EAAM0B,IACR1B,EAAM0B,GAEJ1B,GAAOnnC,KAAKwiC,QAAQoG,YAEtB5oC,KAAKwiC,QAAQoG,UAAYzB,GAM/Bn0B,EAAEoT,mBASJzJ,EAAM4iB,WAAW/9B,UAAUwgC,UAAY,SAAShvB,GAE9ChT,KAAK8jC,oBACL9jC,KAAKof,UASPzC,EAAM4iB,WAAW/9B,UAAU0oC,OAAS,SAASl3B,KAU7C2J,EAAM4iB,WAAW/9B,UAAUohC,QAAU,SAAS5vB,GAG5C,GAFAhT,KAAKkqC,OAAOl3B,IAERA,EAAE+1B,mBAGN/oC,KAAKsnC,mBACLtnC,KAAK+qB,UAAU/N,OAEVhd,KAAK+qB,UAAU4V,YAChB3gC,KAAK+qB,UAAU6V,OAAOe,SAAW3hC,KAAK+qB,UAAU4V,SAASgB,SAAW,IADxE,CAKA,IAKMwI,EAmBAC,EAxBFhF,EAAcplC,KAAKqlC,iBACnBC,EAAiBtlC,KAAKulC,kBAAkBH,GAExCplC,KAAK+qB,UAAU4V,SAASgB,SAAWyD,IAMnC+E,EAFEnqC,KAAK+qB,UAAU6V,OAAOe,SAAWyD,EAEhBplC,KAAK+qB,UAAU6V,OAAOe,SAGtB3hC,KAAKkjC,SAASxI,YAAYiH,SAG/C3hC,KAAKgjC,cAAc92B,YAAclM,KAAKy/B,aAAa4K,YAC/CrqC,KAAK+qB,UAAU4V,SAASgB,SAAW,EAAGwI,GAC1CnqC,KAAK+iC,UAAU7H,aAAal7B,KAAKgjC,cACLhjC,KAAK+qB,UAAU4V,SAASjG,aACpD16B,KAAKumC,2BAGHvmC,KAAK+qB,UAAU6V,OAAOe,SAAW2D,IAMjC8E,EAFEpqC,KAAK+qB,UAAU4V,SAASgB,SAAW2D,EAEhBtlC,KAAK+qB,UAAU4V,SAASgB,SAAW,EAGnC3hC,KAAKmjC,YAAYhH,gBAAgBwF,SAAW,EAGnE3hC,KAAKijC,iBAAiB/2B,YAAclM,KAAKy/B,aAAa4K,YAClDD,EAAoBpqC,KAAK+qB,UAAU6V,OAAOe,UAC9C3hC,KAAK+iC,UAAU7H,aAAal7B,KAAKijC,iBAAkBjjC,KAAK+qB,UAAU6V,WAQtEjkB,EAAM4iB,WAAW/9B,UAAUshC,eAAiB,SAAS9vB,GACnD,GAAKhT,KAAKikB,WAAV,CAGA,IACI0B,EADMpkB,OAAOwZ,aAAa/H,EAAE4S,OACbrgB,eACdyN,EAAE6S,SAAW7S,EAAE8S,UAAwB,KAAZH,GAC9B3lB,KAAKwjC,aAAavkB,UAMtBtC,EAAM4iB,WAAW/9B,UAAUqhC,SAAW,SAAS7vB,GAC7ChT,KAAKwjC,aAAavkB,QAElB,IAAIze,EAAOR,KACXsB,YAAW,WACPd,EAAKg3B,QAAQ,QAAS,CAAEP,KAAMz2B,EAAKgjC,aAAa9gC,QAChDlC,EAAKgjC,aAAa9gC,MAAQ,GAC1BlC,EAAKgiC,QAAQvjB,UACZ,IAOPtC,EAAM4iB,WAAW/9B,UAAUkiC,4BAA8B,SAAS1wB,GAChEA,EAAEqT,mBAMJ1J,EAAM4iB,WAAW/9B,UAAU8oC,oBAAsB,SAASxgC,GACxD9J,KAAKwiC,QAAQ/hB,MAAM8pB,UAAYzgC,EAAQ,SAAW,UAOpD6S,EAAM4iB,WAAW/9B,UAAUgpC,4BAA8B,SAASC,GAChEzqC,KAAKmgC,uBAAyBsK,GAShC1rC,EAAIc,MAAM,aAAc,wBAAyB,eAAgB,SACvD,QAAS,iBAAkB,gBAAiB,0BAC5C,eAAgB,mBAAoB,aACpC,uBAAwB,YAsBlC8c,EAAM+tB,SAAW,SAASC,GACxB3qC,KAAK4qC,WAAa,KAGlB5qC,KAAK6qC,eAAiB,IAAIluB,EAAMgb,OAChC33B,KAAK8qC,iBAAmB,IAAInuB,EAAMgb,OAGlC33B,KAAKwiC,QAAUxiC,KAAK6qC,eAMpB7qC,KAAK0mC,WAAa,IAAI/pB,EAAMwC,KAAK,EAAG,GAGpCnf,KAAK0gC,YAAc,IAAI/jB,EAAM4iB,WAAWv/B,MACxCA,KAAK0gC,YAAYrJ,UAAU,SAAUr3B,KAAKgiC,UAAU93B,KAAKlK,OACzDA,KAAK0gC,YAAYrJ,UAAU,SAAUr3B,KAAKyiC,UAAUv4B,KAAKlK,OACzDA,KAAK0gC,YAAYrJ,UAAU,QAASr3B,KAAK6iC,SAAS34B,KAAKlK,OACvDA,KAAK0gC,YAAYwJ,OAASlqC,KAAK4iC,QAAQ14B,KAAKlK,MAG5CA,KAAKmgB,KAAO,KAKZngB,KAAKwiB,UAAYjiB,OAAO0d,SAGxBje,KAAK+qC,gBAAkB,GAGvB/qC,KAAKgrC,UAAY,GAIjBhrC,KAAKirC,iBAAkB,EAIvBjrC,KAAKkrC,aAAe,KACpBlrC,KAAKmrC,gBAAkB,KAGvBnrC,KAAKm4B,YAAc,KAGnBn4B,KAAKorC,aAAezuB,EAAM+tB,SAASW,YAAYC,MAG/CtrC,KAAKurC,aAAe,KAGpBvrC,KAAKwrC,kBAAoB,CAAC,IAAK,KAI/BxrC,KAAKyrC,iBAAmBzrC,KAAK0rC,eAAexhC,KAAKlK,MAIjDA,KAAK2rC,iBAAmB,KACxB3rC,KAAK4rC,iBAAmB,KACxB5rC,KAAK6rC,gBAAkB,KACvB7rC,KAAK8rC,mBAAqB,KAC1B9rC,KAAK+rC,sBAAwB,KAG7B/rC,KAAKgsC,qBAAsB,EAG3BhsC,KAAKisC,WAAajsC,KAAKwiB,UAAUE,cAAc,SAC/C1iB,KAAKisC,WAAWlgC,GAAK,mBACrB/L,KAAKisC,WAAW9/B,aAAa,UAAW,QAIxCnM,KAAKksC,sBAAwB,GAG7BlsC,KAAKmsC,0BAA2B,EAGhCnsC,KAAKosC,cAAgB,GAGrBpsC,KAAKqsC,SAAW,IAAI1vB,EAAM+P,QAG1B1sB,KAAKugC,UAAY,GAGjBvgC,KAAKolB,GAAK,IAAIzI,EAAM2vB,GAAGtsC,MAGvBA,KAAKinB,SAAW,IAAItK,EAAMoG,SAAS/iB,MAInCA,KAAKusC,GAAK,IAAI5vB,EAAM+tB,SAAS8B,GAAGxsC,MAGhCA,KAAKysC,uBAAwB,EAE7BzsC,KAAK0sC,aAAe,KACpB1sC,KAAK2sC,qBAAuB,KAC5B3sC,KAAK4sC,iBAAmB,KAGxB5sC,KAAK6sC,sBAAuB,EAE5B7sC,KAAKmrB,yBAA0B,EAE/BnrB,KAAK8sC,aAAa,GAAI,IACtB9sC,KAAK+sC,qBAEL/sC,KAAKgtC,WAAWrC,GAAiB,UACjB,WAAa3qC,KAAKitC,mBAAqB/iC,KAAKlK,QAM9D2c,EAAM+tB,SAASW,YAAc,CAC3BC,MAAO,QACP4B,KAAM,OACNC,UAAW,aAUbxwB,EAAM+tB,SAASlpC,UAAUyrC,gBAAkB,aAK3CtwB,EAAM+tB,SAASlpC,UAAU4rC,SAAW,EAapCzwB,EAAM+tB,SAASlpC,UAAUwrC,WAAa,SAASzW,EAAW1oB,GACxD7N,KAAK4qC,WAAarU,EAAU/2B,QAAQ,MAAO,IAE3C,IAAIwgB,EAAWhgB,KAEXA,KAAKqtC,QACPrtC,KAAKqtC,OAAO1/B,aAEd3N,KAAKqtC,OAAS,IAAI1wB,EAAMvQ,kBAAkBpM,KAAK4qC,YAC/C5qC,KAAKqtC,OAAOp+B,aAAa,KAAM,CAC7B,cAAe,SAASrM,GAGlBA,EAFK,MAALA,EACsC,SAApC8D,UAAUC,SAASpB,cACjB,OAEA,YAEe,iBAAL3C,EACZA,EAAE2C,cAEF,OAGD,uCAAuCb,KAAK9B,KAC/CA,EAAI,QAENod,EAASiH,SAAStD,UAAY/gB,GAGhC,kCAAmC,SAASA,GAC1Cod,EAASiH,SAASvC,4BAA8B9hB,GAGlD,cAAe,SAASA,GACtBod,EAASiH,SAASxC,UAAY7hB,GAGhC,iBAAkB,SAASA,GACpB,+BAA+B8B,KAAK9B,KACvCA,EAAI,UAENod,EAASiH,SAASzC,aAAe5hB,GAGnC,qBAAsB,SAASA,GAC7B,IAAI7C,EAAM6C,EAAEK,MAAM,uBACdlD,EACFigB,EAASisB,WAAW9/B,aAAa,MACApN,EAAIwS,SAASO,WAAW/R,EAAI,KAE7DigB,EAASisB,WAAW9/B,aAAa,MAAOvJ,IAI5C,4BAA6B,SAASA,GAChCA,GAAKmc,cACPiB,EAASmsB,yBACuB,YAA5BptB,aAAauuB,WACZttB,EAASmsB,0BAOZ1rC,QAAQC,KAAK,8FAIfsf,EAASmsB,0BAA2B,GAIxC,mBAAoB,SAASvpC,GAC3Bod,EAASkkB,mBAAmBthC,IAG9B,mBAAoB,SAASA,GAC3Bod,EAAS0gB,YAAYyD,mBAAmBvhC,IAG1C,kBAAmB,SAASA,GAC1Bod,EAAS0gB,YAAY4D,kBAAkB1hC,IAGzC,sBAAuB,SAASA,GAC9Bod,EAAS0gB,YAAY8D,sBAAsB5hC,IAG7C,4BAA6B,SAASA,GACpCod,EAASiH,SAAS7C,wBAA0BxhB,GAG9C,0BAA2B,SAASA,GACvB,MAALA,GAAaA,aAAaqL,QAMhC+R,EAASoF,GAAGmoB,cAAc/8B,QAC1BwP,EAASoF,GAAGmoB,cAAcC,aAAa5qC,IANrCnC,QAAQC,KAAK,4DACakC,IAQ9B,eAAgB,SAASA,GACvBod,EAASytB,iBAAiB7qC,IAG5B,qBAAsB,SAASA,GACvBA,aAAahD,OACE,iBAARgD,EAAE,IACM,iBAARA,EAAE,GACXod,EAASwrB,kBAAoB5oC,EAE7Bod,EAASwrB,kBADY,iBAAL5oC,EACa,CAACA,EAAGA,GAGJ,CAAC,IAAK,MAIzC,eAAgB,SAASA,GACvBod,EAAS0tB,eAAe9qC,IAG1B,0BAA2B,SAASA,GAClC,GAAW,MAALA,GAAaA,aAAaqL,QAAUrL,aAAahD,MAAvD,CAQA,GAFAb,EAAIiD,OAAOyD,aAAe1G,EAAIiD,OAAOwD,kBAAkBkE,SAEnD9G,EACF,IAAK,IAAIuG,KAAOvG,EAAG,CACjB,IAAInD,EAAImE,SAASuF,GACjB,GAAIwkC,MAAMluC,IAAMA,EAAI,GAAKA,EAAI,IAC3BgB,QAAQoH,IAAI,6BAA+BsB,EAAM,KAAOvG,EAAEuG,SAI5D,GAAIvG,EAAEnD,GAAI,CACR,IAAI2C,EAAMrD,EAAIiD,OAAOwC,aAAa5B,EAAEnD,IAChC2C,IACFrD,EAAIiD,OAAOyD,aAAahG,GAAK2C,IAKrC4d,EAAS6qB,eAAe9S,eAAe6V,oBACvC5tB,EAAS8qB,iBAAiB/S,eAAe6V,yBAxBvCntC,QAAQC,KAAK,iEACakC,IA0B9B,iBAAkB,SAASA,GACzBod,EAAS0sB,eAAiB9pC,GAG5B,0BAA2B,SAASA,GAClCod,EAAS6sB,uBAAyBjqC,GAGpC,6BAA8B,SAASA,GACrCod,EAASmL,0BAA4BvoB,GAGvC,4BAA6B,SAASA,GACpCod,EAASiH,SAASlD,sBAAwBnhB,GAG5C,cAAe,SAASA,GACtBod,EAASiH,SAASjD,UAAYphB,GAGhC,eAAgB,SAASA,GACvBod,EAASiH,SAAShD,WAAarhB,EAC/Bod,EAAS0gB,YAAYgE,cAAc9hC,IAGrC,qCAAsC,SAASA,GAC7C7D,EAAIqc,GAAGG,mBAAqB3Y,GAG9B,uBAAwB,SAASA,GAC/Bod,EAASoF,GAAGyoB,oBAAsBjrC,GAGpC,cAAe,SAASA,GACtBod,EAAS8tB,qBAGX,wBAAyB,SAASlrC,GAChCod,EAAS6qB,eAAe9S,eAAegW,qBAAuBnrC,EAC9Dod,EAAS8qB,iBAAiB/S,eAAegW,qBAAuBnrC,GAGlE,eAAgB,SAASA,GACvBod,EAASguB,kBAGX,yBAA0B,SAASprC,GACjCod,EAASoF,GAAG6oB,uBAAyBrrC,GAGvC,eAAgB,SAASA,GACvBod,EAASoF,GAAG8oB,cAAgBtrC,GAG9B,cAAe,SAASA,GACtBod,EAASmuB,kBAGX,YAAa,SAASvrC,GACpBod,EAASmM,YAAYvpB,IAGvB,iBAAkB,SAASA,GACzBod,EAASmuB,kBAGX,mBAAoB,SAASvrC,GAC3Bod,EAASikB,mBAAmBrhC,IAG9B,mBAAoB,SAASA,GAC3Bod,EAASiH,SAASpD,eAAiBjhB,GAGrC,YAAe,SAASA,GAGtB,GAFAod,EAASiH,SAASxD,SAASjR,QAEtB5P,EAGL,GAAMA,aAAaqL,OAKnB,IACE+R,EAASiH,SAASxD,SAASkF,YAAY/lB,GACvC,MAAOzD,GACPsB,QAAQ4E,MAAM,oCAAsClG,QAPpDsB,QAAQ4E,MAAM,qDAWlB,sBAAuB,SAASzC,GAC9Bod,EAASoF,GAAGgpB,kBAAoBxrC,GAGlC,uBAAwB,SAASA,GAC/Bod,EAASiH,SAASrC,kBAAoBhiB,GAGxC,oBAAqB,SAASA,GAC5Bod,EAASiH,SAAS3C,gBAAkB1hB,GAGtC,0BAA2B,SAASA,GAClCod,EAAS2sB,qBAAuB/pC,GAGlC,qBAAsB,SAASA,GAC7Bod,EAASquB,wBAGX,mBAAoB,SAASzrC,GAC3Bod,EAASiH,SAASnD,eAAiBlhB,GAGrC,kBAAmB,SAASA,GACjB,MAALA,IAKFA,GAJUrC,OAAOmG,UAAU4nC,UAAUrrC,MAAM,aAIV,SAApB0Z,EAAMG,YAGrBkD,EAAS2K,cAAgB/nB,GAG3B,mBAAoB,SAASA,GAClB,MAALA,IAKFA,GAJUrC,OAAOmG,UAAU4nC,UAAUrrC,MAAM,aAIV,SAApB0Z,EAAMG,YAGrBkD,EAASyK,eAAiB7nB,GAG5B,mBAAoB,SAASA,GAClB,MAALA,IAKFA,EAJUrC,OAAOmG,UAAU4nC,UAAUrrC,MAAM,aAIX,SAApB0Z,EAAMG,YAGpBkD,EAAS6K,eAAiBjoB,GAG5B,cAAe,SAASA,GACtBod,EAASiH,SAAS1C,UAAY3hB,GAGhC,mBAAoB,SAASA,GACrB,gBAAkB8B,KAAK9B,KAC1BnC,QAAQC,KAAK,yCAA2CkC,GACxDA,EAAI,SAGNod,EAASoF,GAAGf,kBAAoBzhB,GAGnC,sBAAuB,SAASA,GAC9Bod,EAAS8rB,mBAAqBlpC,GAGhC,mBAAoB,SAASA,GAC3Bod,EAAS6rB,gBAAkBjpC,GAG7B,oBAAqB,SAASA,GAC5Bod,EAASsqB,oBAAoB1nC,IAG/B,mCAAoC,SAASA,GAC3Cod,EAAS+rB,sBAAwBnpC,GAGnC,+BAAgC,SAASA,GACvCod,EAASwqB,4BAA4B5nC,IAGvC,gBAAiB,SAASA,GAClB,gBAAkB8B,KAAK9B,KAC1BnC,QAAQC,KAAK,sCAAwCkC,GACrDA,EAAI,SAGNod,EAASiH,SAAS5C,kBAAoBzhB,GAGzC,qBAAsB,SAASA,GAC7Bod,EAASiH,SAASrD,iBAAmBhhB,GAGvC,oBAAqB,SAASA,GAC5Bod,EAASoF,GAAGmpB,YAAY3rC,IAG1B,WAAY,SAASA,GACnBod,EAAS0gB,YAAYqD,cAAcnhC,IAGrC,gBAAiB,SAASA,GACxBod,EAAS0gB,YAAYsD,eAAephC,IAGtC,wBAAyB,SAASA,GAChCod,EAAS6qB,eAAexS,mBAAqBz1B,EAC7Cod,EAAS8qB,iBAAiBzS,mBAAqBz1B,GAGjD,yBAA0B,SAASA,GACjCod,EAAS6qB,eAAevS,oBAAsB11B,EAC9Cod,EAAS8qB,iBAAiBxS,oBAAsB11B,GAGlD,0BAA2B,SAASA,GAClCod,EAAS6qB,eAAetS,qBAAuB31B,EAC/Cod,EAAS8qB,iBAAiBvS,qBAAuB31B,KAIrD5C,KAAKqtC,OAAOz/B,YAAY,WACtB5N,KAAKqtC,OAAOl+B,YAERtB,GACFA,KACF3D,KAAKlK,QAST2c,EAAM+tB,SAASlpC,UAAUgtC,SAAW,WAClC,OAAOxuC,KAAKqtC,QAQd1wB,EAAM+tB,SAASlpC,UAAUitC,kBAAoB,SAAS3kC,GACpD9J,KAAKqsC,SAASjf,eAAiBtjB,GAWjC6S,EAAM+tB,SAASlpC,UAAUksC,eAAiB,SAAStoC,GACjDpF,KAAKurC,aAAenmC,EACpBpF,KAAKm4B,YAAY1X,MAAMgB,gBAAkBrc,EACzCpF,KAAKm4B,YAAY1X,MAAMiuB,YAActpC,GAOvCuX,EAAM+tB,SAASlpC,UAAUogB,eAAiB,WACxC,OAAO5hB,KAAKurC,cAQd5uB,EAAM+tB,SAASlpC,UAAUmtC,oBAAsB,SAAS7kC,GACtD9J,KAAKysC,sBAAwB3iC,GAW/B6S,EAAM+tB,SAASlpC,UAAU0iC,mBAAqB,SAAS9+B,GACrDpF,KAAK2rC,iBAAmB5sC,EAAIiD,OAAOwC,aAAaY,GAChDpF,KAAK6qC,eAAe9S,eAAe5hB,YAC/BnW,KAAK4rC,iBAAkB5rC,KAAK2rC,kBAChC3rC,KAAK8qC,iBAAiB/S,eAAe5hB,YACjCnW,KAAK4rC,iBAAkB5rC,KAAK2rC,kBAChC3rC,KAAK0gC,YAAYwD,mBAAmB9+B,IAWtCuX,EAAM+tB,SAASlpC,UAAUkgB,mBAAqB,WAC5C,OAAO1hB,KAAK2rC,kBAWdhvB,EAAM+tB,SAASlpC,UAAUyiC,mBAAqB,SAAS7+B,GACrDpF,KAAK4rC,iBAAmB7sC,EAAIiD,OAAOwC,aAAaY,GAChDpF,KAAK6qC,eAAe9S,eAAe5hB,YAC/BnW,KAAK4rC,iBAAkB5rC,KAAK2rC,kBAChC3rC,KAAK8qC,iBAAiB/S,eAAe5hB,YACjCnW,KAAK4rC,iBAAkB5rC,KAAK2rC,kBAChC3rC,KAAK0gC,YAAYuD,mBAAmB7+B,IAWtCuX,EAAM+tB,SAASlpC,UAAUggB,mBAAqB,WAC5C,OAAOxhB,KAAK4rC,kBAUdjvB,EAAM+tB,SAASlpC,UAAUotC,gBAAkB,SAASC,EAAcC,GAChE,IAAIC,EAAc/uC,KAAKqtC,OAAOniC,IAAI,eACR,iBAAf6jC,GAA0C,MAAfA,IACpCA,EAAc,IAEhB,IAAIvuC,EAAOR,KACXA,KAAKgvC,QAAU,IAAIH,EACf,CAAEC,UAAWA,GAAa,GACxBvC,GAAIvsC,KAAKusC,GAAGrsC,OACZ6uC,YAAaA,EACbE,OAAQ,SAAStnB,GACfnnB,EAAK+rC,GAAG2C,MACR1uC,EAAKilB,oBACDjlB,EAAK6sC,OAAOniC,IAAI,kBAChB3K,OAAO2e,WAInBlf,KAAKqlB,kBACLrlB,KAAKgvC,QAAQv4B,OAQfkG,EAAM+tB,SAASlpC,UAAU2tC,gBAAkB,WACzC,OAAOnvC,KAAKwiC,SAAWxiC,KAAK6qC,gBAS9BluB,EAAM+tB,SAASlpC,UAAU6jB,gBAAkB,WACzCrlB,KAAKinB,SAAS5B,gBAAgBrlB,KAAK0gC,YAAY1V,cAActM,OAM/D/B,EAAM+tB,SAASlpC,UAAUikB,kBAAoB,WAC3CzlB,KAAKinB,SAAS5B,gBAAgB,OAYhC1I,EAAM+tB,SAASlpC,UAAU4tC,UAAY,SAASzuC,EAAM+B,EACN4J,EAAW,YACvDtM,KAAKwiB,UAAU6sB,gBAAgB5uB,MAAM6uB,YACjC,GAAGhjC,IAAa3L,IAAQ+B,IAY9Bia,EAAM+tB,SAASlpC,UAAU2qB,YAAc,SAASuZ,GACnC,IAAPA,IACFA,EAAK1lC,KAAKqtC,OAAOniC,IAAI,cAEvBlL,KAAK0gC,YAAYvU,YAAYuZ,GAC7B1lC,KAAKovC,UAAU,iBAAkBpvC,KAAK0gC,YAAYhB,cAAcvjB,MAAQ,MACxEnc,KAAKovC,UAAU,kBACApvC,KAAK0gC,YAAYhB,cAAc3hB,OAAS,OAQzDpB,EAAM+tB,SAASlpC,UAAUsgB,YAAc,WACrC,OAAO9hB,KAAK0gC,YAAY5e,eAQ1BnF,EAAM+tB,SAASlpC,UAAUwgB,cAAgB,WACvC,OAAOhiB,KAAK0gC,YAAY1e,iBAM1BrF,EAAM+tB,SAASlpC,UAAU2sC,eAAiB,WACxCnuC,KAAK0gC,YAAYiD,cAAc3jC,KAAKqtC,OAAOniC,IAAI,eAChBlL,KAAKqtC,OAAOniC,IAAI,mBAC/ClL,KAAK8tC,qBAOPnxB,EAAM+tB,SAASlpC,UAAU6sC,qBAAuB,WAC9C,IAAIkB,EAASvvC,KAAKqtC,OAAOniC,IAAI,sBAC7B,GAAqB,iBAAVqkC,EAAX,CAKA,IAAIxvC,EAAM2G,UAAU4nC,UAAUrrC,MAAM,kBAC/BlD,GAAiB,QAAVA,EAAI,GAGdC,KAAK4sC,iBAAmB,EAFxB5sC,KAAK4sC,iBAAmB,OANxB5sC,KAAK4sC,iBAAmB2C,GAgB5B5yB,EAAM+tB,SAASlpC,UAAUssC,kBAAoB,WAC3C,IAAI0B,EAAaxvC,KAAKqtC,OAAOniC,IAAI,eACjC,GAAmB,OAAfskC,EAGF,OAFAxvC,KAAK6qC,eAAe9S,eAAeyX,WAAaA,OAChDxvC,KAAK8qC,iBAAiB/S,eAAeyX,WAAaA,GAIpD,IAAIC,EAAazvC,KAAK0gC,YAAYiF,uBAC9B+J,EAAW1vC,KAAK0gC,YAAYiF,qBAAqB,QAEjDgK,EAAaF,EAAWjwB,OAAOkwB,GAC9BC,GACHlvC,QAAQC,KAAK,uFAEAV,KAAK0gC,YAAY1e,iBAGhChiB,KAAK6qC,eAAe9S,eAAeyX,WAAaG,EAChD3vC,KAAK8qC,iBAAiB/S,eAAeyX,WAAaG,GAMpDhzB,EAAM+tB,SAASlpC,UAAUwsC,eAAiB,WACxChuC,KAAKovC,UAAU,gBACApvC,KAAKqtC,OAAOniC,IAAI,gBAAkB,OAAS,MAM5DyR,EAAM+tB,SAASlpC,UAAUouC,eAAiB,WACxC5vC,KAAKovC,UAAU,qBACApvC,KAAKolB,GAAGyqB,aAAe7vC,KAAKolB,GAAG0qB,sBAC3B,iCACA,sCAQrBnzB,EAAM+tB,SAASlpC,UAAUuuC,WAAa,WACpC,OAAO/vC,KAAKwiC,QAAQvK,eAAe5Y,SAQrC1C,EAAM+tB,SAASlpC,UAAUwuC,kBAAoB,WAC3C,OAAOhwC,KAAKwiC,QAAQzK,gBAQtBpb,EAAM+tB,SAASlpC,UAAUyuC,kBAAoB,SAASlY,GACpD/3B,KAAKwiC,QAAQzK,eAAiBA,GAQhCpb,EAAM+tB,SAASlpC,UAAUyqB,cAAgB,WACvC,OAAOjsB,KAAK0gC,YAAYhB,cAAcyG,YAQxCxpB,EAAM+tB,SAASlpC,UAAU0uC,eAAiB,SAAStxB,GACjDre,OAAO0d,SAASW,MAAQA,GAQ1BjC,EAAM+tB,SAASlpC,UAAU2uC,cAAgB,SAASC,GAChD,IAAI1wB,EAAM3gB,EAAIoC,EAAEgG,MAAMipC,EAAO1wB,IAAK,EAAG1f,KAAK0mC,WAAW3oB,OAAS,GAC1D4B,EAAS5gB,EAAIoC,EAAEgG,MAAMipC,EAAOzwB,OAAQ,EAAG3f,KAAK0mC,WAAWvqB,MAAQ,GACnEnc,KAAKwiC,QAAQ5J,kBAAkBlZ,EAAKC,IAChCywB,EAAOzwB,OAASA,GAChBywB,EAAOzwB,QAAUA,GAAUywB,EAAOvwB,YACpC7f,KAAKwiC,QAAQvK,eAAepY,UAAW,IAO3ClD,EAAM+tB,SAASlpC,UAAU6uC,oBAAsB,WAC7CrwC,KAAKwiC,QAAQvK,eAAepY,UAAW,GAQzClD,EAAM+tB,SAASlpC,UAAU8uC,eAAiB,SAASC,GACjDvwC,KAAKorC,aAAemF,EACpBvwC,KAAKwwC,kBAQP7zB,EAAM+tB,SAASlpC,UAAUivC,eAAiB,WACxC,OAAOzwC,KAAKorC,cAQdzuB,EAAM+tB,SAASlpC,UAAUkvC,SAAW,SAASC,GACxB,MAAfA,GAKJ3wC,KAAKmgB,KAAKM,MAAMtE,MAAQtZ,KAAK0F,KACzBvI,KAAK0gC,YAAYhB,cAAcvjB,MAC/Bw0B,EAAc3wC,KAAK0gC,YAAYJ,yBAA2B,KAC9DtgC,KAAK8sC,aAAa6D,EAAa3wC,KAAK0mC,WAAW3oB,QAC/C/d,KAAK4wC,+BARH5wC,KAAKmgB,KAAKM,MAAMtE,MAAQ,QAgB5BQ,EAAM+tB,SAASlpC,UAAUqvC,UAAY,SAASC,GAC5B,MAAZA,GAKJ9wC,KAAKmgB,KAAKM,MAAM1C,OACZ/d,KAAK0gC,YAAYhB,cAAc3hB,OAAS+yB,EAAW,KACvD9wC,KAAK8sC,aAAa9sC,KAAK0mC,WAAWvqB,MAAO20B,GACzC9wC,KAAK4wC,+BAPH5wC,KAAKmgB,KAAKM,MAAM1C,OAAS,QAgB7BpB,EAAM+tB,SAASlpC,UAAUsrC,aAAe,SAAS6D,EAAaG,GACxDH,GAAe3wC,KAAK0mC,WAAWvqB,OACjCnc,KAAK+wC,cAAcJ,GAEjBG,GAAY9wC,KAAK0mC,WAAW3oB,QAC9B/d,KAAKgxC,eAAeF,GAGtB9wC,KAAKusC,GAAG0E,kBAAkBN,EAAaG,IAgBzCn0B,EAAM+tB,SAASlpC,UAAUuvC,cAAgB,SAASJ,GAChD,GAAIA,GAAe,EACjB,MAAM,IAAI3xC,MAAM,iCAAmC2xC,GAErD,IAAIO,EAAeP,EAAc3wC,KAAKwiC,QAAQ9J,WAK9C,GAHA14B,KAAK0mC,WAAWvqB,MAAQw0B,EACxB3wC,KAAKwiC,QAAQ7J,eAAegY,GAExBO,EAAe,EACblxC,KAAKirC,iBACPjrC,KAAK+sC,mBAAmB/sC,KAAK0mC,WAAWvqB,MAAQ+0B,QAElD,IAAK,IAAIzxC,EAAIO,KAAKgrC,UAAUzrC,OAAS,EAAGE,GAAK,KACvCO,KAAKgrC,UAAUvrC,GAAKkxC,GADsBlxC,IAI9CO,KAAKgrC,UAAUkE,MAInBlvC,KAAKwiC,QAAQ7J,eAAe34B,KAAK0mC,WAAWvqB,QAgB9CQ,EAAM+tB,SAASlpC,UAAUwvC,eAAiB,SAASF,GACjD,GAAIA,GAAY,EACd,MAAM,IAAI9xC,MAAM,kCAAoC8xC,GAEtD,IAAIK,EAAYL,EAAW9wC,KAAKwiC,QAAQ/J,YAExCz4B,KAAK0mC,WAAW3oB,OAAS+yB,EAEzB,IAAIV,EAASpwC,KAAK+vC,aAElB,GAAIoB,EAAY,EAAG,CAGjB,IADAA,IAAc,EACPA,GAAW,CAChB,IAAI5I,EAAUvoC,KAAKymC,cAAgB,EACnC,GAAI8B,EAAUvoC,KAAK+qC,gBAAgBxrC,QAAU6wC,EAAO1wB,IAClD,MAEF,GAAI1f,KAAKoxC,WAAW7I,GAClB,MAEFvoC,KAAKwiC,QAAQtJ,SACbiY,IAGF,IAAIpxC,EAAMC,KAAKwiC,QAAQ1J,UAAUqY,GACjCnxC,KAAK+qC,gBAAgB7qC,KAAKJ,MAAME,KAAK+qC,gBAAiBhrC,GAItDqwC,EAAO1wB,IAAM7c,KAAKuE,IAAIgpC,EAAO1wB,IAAMyxB,EAAW,QACzC,GAAIA,EAAY,EAAG,CAGxB,GAAIA,GAAanxC,KAAK+qC,gBAAgBxrC,OAAQ,CAC5C,IAAI8xC,EAAkBxuC,KAAKC,IAAIquC,EAAWnxC,KAAK+qC,gBAAgBxrC,QAC3D05B,EAAOj5B,KAAK+qC,gBAAgBjnC,OAC5B9D,KAAK+qC,gBAAgBxrC,OAAS8xC,EAAiBA,GACnDrxC,KAAKwiC,QAAQxJ,YAAYC,GACzBkY,GAAaE,EACbjB,EAAO1wB,KAAO2xB,EAGZF,GACFnxC,KAAKsxC,YAAYH,GAGrBnxC,KAAKuxC,kBAAkB,KAAM,MAC7BvxC,KAAKmwC,cAAcC,IAMrBzzB,EAAM+tB,SAASlpC,UAAUkoB,WAAa,WACpC1pB,KAAK0gC,YAAYiI,eAAe,IAMlChsB,EAAM+tB,SAASlpC,UAAUooB,UAAY,WACnC5pB,KAAK0gC,YAAY8F,kBAAkBxmC,KAAKymC,gBAO1C9pB,EAAM+tB,SAASlpC,UAAUsoB,aAAe,WACtC,IAAIrqB,EAAIO,KAAK0gC,YAAY2E,iBACzBrlC,KAAK0gC,YAAYiI,eAAelpC,EAAIO,KAAK0mC,WAAW3oB,OAAS,IAO/DpB,EAAM+tB,SAASlpC,UAAUyoB,eAAiB,WACxC,IAAIxqB,EAAIO,KAAK0gC,YAAY2E,iBACzBrlC,KAAK0gC,YAAYiI,eAAelpC,EAAIO,KAAK0mC,WAAW3oB,OAAS,IAM/DpB,EAAM+tB,SAASlpC,UAAU2oB,aAAe,WACtC,IAAI1qB,EAAIO,KAAK0gC,YAAY2E,iBACzBrlC,KAAK0gC,YAAYiI,eAAelpC,EAAI,IAMtCkd,EAAM+tB,SAASlpC,UAAU6oB,eAAiB,WACxC,IAAI5qB,EAAIO,KAAK0gC,YAAY2E,iBACzBrlC,KAAK0gC,YAAYiI,eAAelpC,EAAI,IAMtCkd,EAAM+tB,SAASlpC,UAAU+oB,aAAe,WACtCvqB,KAAK+qC,gBAAgBxrC,OAAS,EAC9BS,KAAK0gC,YAAYqE,aAEjB,CAAC/kC,KAAK6qC,eAAgB7qC,KAAK8qC,kBAAkBl6B,QAAQ,SAAS4gC,GAC5D,IAAIC,EAASD,EAAO/Y,YAChBgZ,EAAS,IACXzxC,KAAK0xC,cAAc,EAAGD,GACtBzxC,KAAK2xC,UAAUH,KAEjBtnC,KAAKlK,OAEPA,KAAK4xC,sBACL5xC,KAAK0gC,YAAYwE,cAMnBvoB,EAAM+tB,SAASlpC,UAAUgP,MAAQ,WAC/BxQ,KAAK6xC,mBACL7xC,KAAK+sC,qBAEL/sC,KAAK2xC,UAAU3xC,KAAK6qC,gBACpB7qC,KAAK6qC,eAAe9S,eAAevnB,QAEnCxQ,KAAK2xC,UAAU3xC,KAAK8qC,kBACpB9qC,KAAK8qC,iBAAiB/S,eAAevnB,QAErCxQ,KAAKytC,iBAAiBztC,KAAKqtC,OAAOniC,IAAI,iBAEtClL,KAAKolB,GAAG5U,QAERxQ,KAAK8xC,aASPn1B,EAAM+tB,SAASlpC,UAAUswC,UAAY,WAEnC9xC,KAAKqsC,SAAW,IAAI1vB,EAAM+P,QAG1B1sB,KAAKqsC,SAASpf,cAAgBjtB,KAAKugC,UAAUtT,YAI7CjtB,KAAK6qC,eAAe9S,eAAe6V,oBACnC5tC,KAAK8qC,iBAAiB/S,eAAe6V,oBAGrC5tC,KAAKuxC,kBAAkB,KAAM,MAI7BvxC,KAAK+xC,kBAAiB,IAOxBp1B,EAAM+tB,SAASlpC,UAAUwwC,eAAiB,WAGxC,IAFA,IAAIryB,EAAS3f,KAAKwiC,QAAQvK,eAAetY,OAEhClgB,EAAI,EAAGA,EAAIO,KAAKgrC,UAAUzrC,OAAQE,IACzC,GAAIO,KAAKgrC,UAAUvrC,GAAKkgB,EAEtB,YADA3f,KAAKiyC,gBAAgBjyC,KAAKgrC,UAAUvrC,IAMxC,IAAIogB,EAAW7f,KAAKwiC,QAAQvK,eAAepY,SAC3C7f,KAAKiyC,gBAAgBjyC,KAAK0mC,WAAWvqB,MAAQ,GAC7Cnc,KAAKwiC,QAAQvK,eAAepY,SAAWA,GAOzClD,EAAM+tB,SAASlpC,UAAU0wC,gBAAkB,WAGzC,IAFA,IAAIvyB,EAAS3f,KAAKwiC,QAAQvK,eAAetY,OAEhClgB,EAAIO,KAAKgrC,UAAUzrC,OAAS,EAAGE,GAAK,EAAGA,IAC9C,GAAIO,KAAKgrC,UAAUvrC,GAAKkgB,EAEtB,YADA3f,KAAKiyC,gBAAgBjyC,KAAKgrC,UAAUvrC,IAKxCO,KAAKiyC,gBAAgB,IAQvBt1B,EAAM+tB,SAASlpC,UAAU2wC,WAAa,SAASxyB,GAC7C,IAAK,IAAIlgB,EAAIO,KAAKgrC,UAAUzrC,OAAS,EAAGE,GAAK,EAAGA,IAAK,CACnD,GAAIO,KAAKgrC,UAAUvrC,IAAMkgB,EACvB,OAEF,GAAI3f,KAAKgrC,UAAUvrC,GAAKkgB,EAEtB,YADA3f,KAAKgrC,UAAUlnC,OAAOrE,EAAI,EAAG,EAAGkgB,GAKpC3f,KAAKgrC,UAAUlnC,OAAO,EAAG,EAAG6b,IAQ9BhD,EAAM+tB,SAASlpC,UAAU4wC,qBAAuB,WAC9C,IAAIzyB,EAAS3f,KAAKwiC,QAAQvK,eAAetY,OAErClgB,EAAIO,KAAKgrC,UAAU3nC,QAAQsc,IACrB,GAANlgB,GAGJO,KAAKgrC,UAAUlnC,OAAOrE,EAAG,IAM3Bkd,EAAM+tB,SAASlpC,UAAUqwC,iBAAmB,WAC1C7xC,KAAKgrC,UAAUzrC,OAAS,EACxBS,KAAKirC,iBAAkB,GAgBzBtuB,EAAM+tB,SAASlpC,UAAUurC,mBAAqB,SAASsF,GAKrD,IAJA,IAAIh2B,EAAQg2B,GAAa,EACrBC,EAAItyC,KAAKotC,SAGJ3tC,EADT4c,EAAQA,EAAQ,GAAMA,EAAQ,GAAKi2B,EAAKA,EACpB7yC,EAAIO,KAAK0mC,WAAWvqB,MAAO1c,GAAK6yC,EAClDtyC,KAAKmyC,WAAW1yC,GAGlBO,KAAKirC,iBAAkB,GAUzBtuB,EAAM+tB,SAASlpC,UAAU+wC,UAAY,SAAS3sC,GAC5C5F,KAAKolB,GAAGmtB,UAAU3sC,GAClB5F,KAAK4wC,+BAQPj0B,EAAM+tB,SAASlpC,UAAUqgC,SAAW,SAASC,GAC3C9hC,KAAKmgB,KAAO2hB,EAEZ9hC,KAAK0gC,YAAYmB,SAASC,GAC1B9hC,KAAK0gC,YAAYyD,mBAAmBnkC,KAAKqtC,OAAOniC,IAAI,qBACpDlL,KAAK0gC,YAAY4D,kBAAkBtkC,KAAKqtC,OAAOniC,IAAI,oBACnDlL,KAAK0gC,YAAY8D,sBACbxkC,KAAKqtC,OAAOniC,IAAI,wBACpBlL,KAAK0gC,YAAYqD,cAAc/jC,KAAKqtC,OAAOniC,IAAI,aAC/ClL,KAAK0gC,YAAYsD,eAAehkC,KAAKqtC,OAAOniC,IAAI,kBAEhDlL,KAAKmgB,KAAKlB,MAAQjf,KAAKif,MAAM/U,KAAKlK,MAElCA,KAAKmsB,YAAYnsB,KAAKqtC,OAAOniC,IAAI,cACjClL,KAAKmuC,iBAELnuC,KAAKsqC,oBAAoBtqC,KAAKqtC,OAAOniC,IAAI,sBACzClL,KAAKwqC,4BACDxqC,KAAKqtC,OAAOniC,IAAI,iCAEpBlL,KAAKwiB,UAAYxiB,KAAK0gC,YAAY1V,cAElChrB,KAAKwiB,UAAU9D,KAAK8zB,cAAgB,WAAa,OAAO,GAExD,IAAIC,EAAUzyC,KAAK0yC,SAASxoC,KAAKlK,MAC7B2yC,EAAa3yC,KAAK0gC,YAAYoE,gBAClC6N,EAAW7/B,iBAAiB,YAAa2/B,GACzCE,EAAW7/B,iBAAiB,UAAW2/B,GACvCE,EAAW7/B,iBAAiB,YAAa2/B,GACzCzyC,KAAK0gC,YAAYoI,cAAgB2J,EAEjCE,EAAW7/B,iBACP,QAAS9S,KAAK4yC,eAAe1oC,KAAKlK,MAAM,IAG5C2yC,EAAW7/B,iBAAiB,YAAa,WACvCxR,WAAWtB,KAAK4yC,eAAe1oC,KAAKlK,MAAM,KAC1CkK,KAAKlK,OAEP2yC,EAAW7/B,iBACP,OAAQ9S,KAAK4yC,eAAe1oC,KAAKlK,MAAM,IAE3C,IAAIygB,EAAQzgB,KAAKwiB,UAAUE,cAAc,SACzCjC,EAAMvU,YACD,mUAa+BlM,KAAK0gC,YAAYhB,cAAcvjB,MAb9D,iCAcgCnc,KAAK0gC,YAAYhB,cAAc3hB,OAdhE,8fAiCJ/d,KAAKwiB,UAAU6f,KAAKvf,YAAYrC,GAEhCzgB,KAAKm4B,YAAcn4B,KAAKwiB,UAAUE,cAAc,OAChD1iB,KAAKm4B,YAAYpsB,GAAK,wBACtB/L,KAAKm4B,YAAY0a,UAAY,cAC7B7yC,KAAKm4B,YAAY1X,MAAMkC,QACnB,kXASJ3iB,KAAK0tC,eAAe1tC,KAAKqtC,OAAOniC,IAAI,iBACpClL,KAAKytC,iBAAiBztC,KAAKqtC,OAAOniC,IAAI,iBACtClL,KAAKwwC,iBAELxwC,KAAKwiB,UAAU9D,KAAKoE,YAAY9iB,KAAKm4B,aASrCn4B,KAAK8yC,mBAAqB9yC,KAAKwiB,UAAUE,cAAc,OACvD1iB,KAAK8yC,mBAAmB/mC,GAAK,kCAC7B/L,KAAK8yC,mBAAmBryB,MAAMkC,QAC1B,yEAKJ3iB,KAAKwiB,UAAU9D,KAAKoE,YAAY9iB,KAAK8yC,oBAErC9yC,KAAK0gC,YAAYoI,cAAgB2J,EACjC,CAAC,YAAa,UAAW,YAAa,QAAS,YAC5C7hC,QAAQ,SAASmiC,GACf/yC,KAAK8yC,mBAAmBhgC,iBAAiBigC,EAAON,GAChDzyC,KAAKm4B,YAAYrlB,iBAAiBigC,EAAON,GACzCzyC,KAAKwiB,UAAU1P,iBAAiBigC,EAAON,IACvCvoC,KAAKlK,OAEVA,KAAKm4B,YAAYrlB,iBAAiB,YAAa,WAC3CxR,WAAWtB,KAAKif,MAAM/U,KAAKlK,QAC3BkK,KAAKlK,OAETA,KAAKgzC,iBAAgB,GAErBhzC,KAAK0gC,YAAYzhB,QACjBjf,KAAK0gC,YAAYuE,kBAQnBtoB,EAAM+tB,SAASlpC,UAAUwpB,YAAc,WACrC,OAAOhrB,KAAKwiB,WAMd7F,EAAM+tB,SAASlpC,UAAUyd,MAAQ,WAC/Bjf,KAAK0gC,YAAYzhB,SAiBnBtC,EAAM+tB,SAASlpC,UAAU4mC,WAAa,SAASn9B,GAC7C,GAAIA,EAAQjL,KAAK+qC,gBAAgBxrC,OAC/B,OAAOS,KAAK+qC,gBAAgB9/B,GAE9B,IAAIgoC,EAAchoC,EAAQjL,KAAK+qC,gBAAgBxrC,OAC/C,OAAOS,KAAKwiC,QAAQ3K,UAAUob,IAkBhCt2B,EAAM+tB,SAASlpC,UAAU6oC,YAAc,SAAShuB,EAAOK,GAErD,IADA,IAAI3c,EAAM,GACDN,EAAI4c,EAAO5c,EAAIid,EAAKjd,IAAK,CAChC,IAAImM,EAAO5L,KAAKooC,WAAW3oC,GAC3BM,EAAIG,KAAK0L,EAAKM,aACVzM,EAAIid,EAAM,IAAM9Q,EAAKC,aAAa,kBACpC9L,EAAIG,KAAK,MAGb,OAAOH,EAAI2U,KAAK,KAelBiI,EAAM+tB,SAASlpC,UAAU4vC,WAAa,SAASnmC,GAE7C,OADWjL,KAAKooC,WAAWn9B,GACfiB,aAYdyQ,EAAM+tB,SAASlpC,UAAUilC,YAAc,WACrC,OAAOzmC,KAAK+qC,gBAAgBxrC,OAASS,KAAKwiC,QAAQ3K,UAAUt4B,QAoB9Dod,EAAM+tB,SAASlpC,UAAU8vC,YAAc,SAASxiB,GAG9C,IAFA,IAAIokB,EAAYlzC,KAAKwiC,QAAQ3K,UAAUt4B,OACnCi7B,EAASx6B,KAAK+qC,gBAAgBxrC,OAAS2zC,EAClCzzC,EAAI,EAAGA,EAAIqvB,EAAOrvB,IAAK,CAC9B,IAAIigB,EAAM1f,KAAKwiB,UAAUE,cAAc,SACvChD,EAAIoD,YAAY9iB,KAAKwiB,UAAU8X,eAAe,KAC9C5a,EAAIiiB,SAAWnH,EAAS/6B,EACxBO,KAAKwiC,QAAQpJ,QAAQ1Z,GAGvB,IAAIyzB,EAAYnzC,KAAKwiC,QAAQ3K,UAAUt4B,OAASS,KAAK0mC,WAAW3oB,OAChE,GAAIo1B,EAAY,EAAG,CACjB,IAAIpzC,EAAMC,KAAKwiC,QAAQ1J,UAAUqa,GACjCvzC,MAAM4B,UAAUtB,KAAKJ,MAAME,KAAK+qC,gBAAiBhrC,GAC7CC,KAAK0gC,YAAYL,eACnBrgC,KAAKozC,sBAGLF,GAAalzC,KAAKwiC,QAAQ3K,UAAUt4B,SACtC2zC,EAAYlzC,KAAKwiC,QAAQ3K,UAAUt4B,OAAS,GAE9CS,KAAKqzC,0BAA0BH,EAAW,IAiB5Cv2B,EAAM+tB,SAASlpC,UAAU8xC,UAAY,SAASC,EAAWzkB,EAAO0kB,GAC9D,IAGIn3B,EAAOK,EAHP3c,EAAMC,KAAKwiC,QAAQ/I,WAAW8Z,EAAWzkB,GAC7C9uB,KAAKwiC,QAAQjJ,WAAWia,EAASzzC,GAG7BwzC,EAAYC,GACdn3B,EAAQk3B,EACR72B,EAAM82B,EAAU1kB,IAEhBzS,EAAQm3B,EACR92B,EAAM62B,EAAYzkB,GAGpB9uB,KAAK0xC,cAAcr1B,EAAOK,GAC1B1c,KAAK0gC,YAAY+E,sBAenB9oB,EAAM+tB,SAASlpC,UAAUkwC,cAAgB,SAASr1B,EAAOK,EAAK+2B,GAI5D,IAHA,IAAIjC,EAASiC,GAAczzC,KAAKwiC,QAE5BhI,EAASx6B,KAAK+qC,gBAAgBxrC,OACzBE,EAAI4c,EAAO5c,EAAIid,EAAKjd,IAC3B+xC,EAAO3Z,UAAUp4B,GAAGkiC,SAAWnH,EAAS/6B,GAgB5Ckd,EAAM+tB,SAASlpC,UAAUkyC,MAAQ,SAAS9tC,GAKxC,IAJA,IAAI24B,EAAc,EAEdriB,EAAWnd,EAAIqc,GAAGc,SAAStW,GAExB24B,EAAcriB,GAAU,CACzBlc,KAAKqsC,SAASzf,YAAc5sB,KAAKwiC,QAAQvK,eAAepY,WAC1D7f,KAAKwiC,QAAQtI,qBACbl6B,KAAK2zC,WAGP,IAEIvwC,EAFA0rB,EAAQ5S,EAAWqiB,EACnBqV,GAAc,EAGd5zC,KAAKwiC,QAAQvK,eAAetY,OAASmP,GAAS9uB,KAAK0mC,WAAWvqB,QAChEy3B,GAAc,EACd9kB,EAAQ9uB,KAAK0mC,WAAWvqB,MAAQnc,KAAKwiC,QAAQvK,eAAetY,QAG1Di0B,IAAgB5zC,KAAKqsC,SAASzf,YAIhCxpB,EAASrE,EAAIqc,GAAGhY,OAAOwC,EAAK24B,EAAazP,EAAQ,GAC7C/vB,EAAIqc,GAAGhY,OAAOwC,EAAKsW,EAAW,GAClC4S,EAAQ5S,GAER9Y,EAASrE,EAAIqc,GAAGhY,OAAOwC,EAAK24B,EAAazP,GAI3C,IADA,IAAI+kB,EAASl3B,EAAMqb,eAAe8b,oBAAoB1wC,GAC7C3D,EAAI,EAAGA,EAAIo0C,EAAOt0C,OAAQE,IACjCO,KAAKwiC,QAAQzK,eAAe4D,OAASkY,EAAOp0C,GAAGk8B,OAC/C37B,KAAKwiC,QAAQzK,eAAe6D,UAAYiY,EAAOp0C,GAAGm8B,UAE9C57B,KAAKqsC,SAASnf,WACdltB,KAAKwiC,QAAQpH,aAAayY,EAAOp0C,GAAGmG,KAEtC5F,KAAKwiC,QAAQnG,gBAAgBwX,EAAOp0C,GAAGmG,KAEzC5F,KAAKwiC,QAAQzK,eAAe4D,QAAS,EACrC37B,KAAKwiC,QAAQzK,eAAe6D,WAAY,EAG1C57B,KAAKwiC,QAAQrH,sBACboD,GAAezP,EAGjB9uB,KAAK4wC,8BAED5wC,KAAK6rC,iBACP7rC,KAAK0gC,YAAY8F,kBAAkBxmC,KAAKymC,gBAmB5C9pB,EAAM+tB,SAASlpC,UAAU+vC,kBAAoB,SAAS3I,EAAWmL,GAC9C,GAAbnL,GAAkBmL,GAAgB/zC,KAAK0mC,WAAW3oB,OAAS,GAC7D/d,KAAKkrC,aAAe,KACpBlrC,KAAKmrC,gBAAkB,OAEvBnrC,KAAKkrC,aAAetC,EACpB5oC,KAAKmrC,gBAAkB4I,IAa3Bp3B,EAAM+tB,SAASlpC,UAAUwyC,eAAiB,WACxC,OAAyB,MAArBh0C,KAAKkrC,aACAlrC,KAAKkrC,aAEP,GAYTvuB,EAAM+tB,SAASlpC,UAAUyyC,kBAAoB,WAC3C,OAA4B,MAAxBj0C,KAAKmrC,gBACAnrC,KAAKmrC,gBAEPnrC,KAAK0mC,WAAW3oB,OAAS,GAYlCpB,EAAM+tB,SAASlpC,UAAUmyC,QAAU,WACjC,IAAIO,EAAuBl0C,KAAKwiC,QAAQvK,eAAevY,KAC5B1f,KAAKwiC,QAAQ3K,UAAUt4B,OAAS,EAE/B,MAAxBS,KAAKmrC,gBAEHnrC,KAAKwiC,QAAQvK,eAAevY,KAAO1f,KAAKmrC,iBAE1CnrC,KAAKm0C,WAAW,GAChBn0C,KAAKqzC,0BAA0BrzC,KAAKwiC,QAAQvK,eAAevY,IAAK,IACvDw0B,EAGTl0C,KAAKqzC,0BAA0BrzC,KAAKwiC,QAAQvK,eAAevY,IAAK,GAGhE1f,KAAKqzC,0BAA0BrzC,KAAKwiC,QAAQvK,eAAevY,IAAM,EAAG,GAE7Dw0B,EAGTl0C,KAAKsxC,YAAY,GAGjBtxC,KAAKqzC,0BAA0BrzC,KAAKwiC,QAAQvK,eAAevY,IAAM,EAAG,IAOxE/C,EAAM+tB,SAASlpC,UAAU4yC,SAAW,WAClC,IAAIz0B,EAAS3f,KAAKwiC,QAAQvK,eAAetY,OACzC3f,KAAK2zC,UACL3zC,KAAKiyC,gBAAgBtyB,IAMvBhD,EAAM+tB,SAASlpC,UAAU6yC,SAAW,WAC9Br0C,KAAKqsC,SAAStf,mBAChB/sB,KAAK2zC,UAEL3zC,KAAKo0C,YASTz3B,EAAM+tB,SAASlpC,UAAU8yC,gBAAkB,WACzC,IAAI1L,EAAY5oC,KAAKg0C,iBACjBO,EAAav0C,KAAKwiC,QAAQvK,eAAevY,IAEzC60B,GAAc3L,EAChB5oC,KAAKw0C,YAAY,GAEjBx0C,KAAKy0C,qBAAqBF,EAAa,IAY3C53B,EAAM+tB,SAASlpC,UAAUkzC,YAAc,WACrC,IAAItE,EAASpwC,KAAK+vC,aAClB/vC,KAAKiyC,gBAAgB,GACrBjyC,KAAKwiC,QAAQnG,gBAAgBt9B,EAAIoC,EAAEmG,cAAc8oC,EAAOzwB,OAAS,IACjE3f,KAAKmwC,cAAcC,IAoBrBzzB,EAAM+tB,SAASlpC,UAAUmzC,aAAe,SAASC,GAC/C,IAAI50C,KAAKwiC,QAAQvK,eAAepY,SAAhC,CAGA,IAAIg1B,EAAW70C,KAAK0mC,WAAWvqB,MAAQnc,KAAKwiC,QAAQvK,eAAetY,OAC/DmP,EAAQ8lB,EAAY/xC,KAAKC,IAAI8xC,EAAWC,GAAYA,EAExD,GAAI70C,KAAKwiC,QAAQzK,eAAe1a,aAC5Brd,KAAKwiC,QAAQzK,eAAe+c,cAAe,CAC7C,IAAI5B,EAAYlzC,KAAKwiC,QAAQ3K,UAAU73B,KAAKwiC,QAAQvK,eAAevY,KACnE,GAAI/C,EAAMqb,eAAeyC,UAAUyY,IAC/BlzC,KAAKwiC,QAAQvK,eAAetY,OAASmP,EAGvC,OAFA9uB,KAAKwiC,QAAQjG,YAAYzN,QACzB9uB,KAAKqwC,sBAKT,IAAID,EAASpwC,KAAK+vC,aAClB/vC,KAAKwiC,QAAQnG,gBAAgBt9B,EAAIoC,EAAEmG,cAAcwnB,IACjD9uB,KAAKmwC,cAAcC,GACnBpwC,KAAKqwC,wBAQP1zB,EAAM+tB,SAASlpC,UAAUuzC,UAAY,WACnC,IAAI3E,EAASpwC,KAAK+vC,aAClB/vC,KAAKwiC,QAAQ7I,iBACb35B,KAAKmwC,cAAcC,GACnBpwC,KAAKqwC,uBASP1zB,EAAM+tB,SAASlpC,UAAUwzC,WAAa,WACpC,IAAI5E,EAASpwC,KAAK+vC,aAElB/vC,KAAK00C,cAEL,IAAK,IAAIj1C,EAAI,EAAGA,EAAI2wC,EAAO1wB,IAAKjgB,IAC9BO,KAAKqzC,0BAA0B5zC,EAAG,GAClCO,KAAKwiC,QAAQ7I,iBAGf35B,KAAKmwC,cAAcC,GACnBpwC,KAAKqwC,uBASP1zB,EAAM+tB,SAASlpC,UAAUyzC,WAAa,WACpC,IAAI7E,EAASpwC,KAAK+vC,aAElB/vC,KAAK20C,eAGL,IADA,IAAIlD,EAASzxC,KAAK0mC,WAAW3oB,OAAS,EAC7Bte,EAAI2wC,EAAO1wB,IAAM,EAAGjgB,GAAKgyC,EAAQhyC,IACxCO,KAAKqzC,0BAA0B5zC,EAAG,GAClCO,KAAKwiC,QAAQ7I,iBAGf35B,KAAKmwC,cAAcC,GACnBpwC,KAAKqwC,uBAUP1zB,EAAM+tB,SAASlpC,UAAU0zC,KAAO,SAASjvB,GACvC,IAAImqB,EAASpwC,KAAK+vC,aAElB/vC,KAAKqzC,0BAA0B,EAAG,GAClC,IAAK,IAAI3zB,EAAM,EAAGA,EAAM1f,KAAK0mC,WAAW3oB,OAAQ2B,IAC9C,IAAK,IAAIy1B,EAAM,EAAGA,EAAMn1C,KAAK0mC,WAAWvqB,MAAOg5B,IAC7Cn1C,KAAKqzC,0BAA0B3zB,EAAKy1B,GACpCn1C,KAAKwiC,QAAQnG,gBAAgBpW,GAIjCjmB,KAAKmwC,cAAcC,IAWrBzzB,EAAM+tB,SAASlpC,UAAUmwC,UAAY,SAAS8B,GAC5C,IAAIjC,EAASiC,GAAczzC,KAAKwiC,QAC5BiP,EAASD,EAAO/Y,YAEpB,GAAc,GAAVgZ,EAAJ,CAKA,IAAK,IAAIhyC,EAAI,EAAGA,EAAIgyC,EAAQhyC,IAC1B+xC,EAAO5Y,kBAAkBn5B,EAAG,GAC5B+xC,EAAO7X,iBAGT6X,EAAO5Y,kBAAkB,EAAG,KAY9Bjc,EAAM+tB,SAASlpC,UAAUgR,MAAQ,SAASihC,GACxC,IAAIjC,EAASiC,GAAczzC,KAAKwiC,QAC5B4N,EAASoB,EAAOvZ,eAAe5Y,QACnCrf,KAAK2xC,UAAUH,GACfA,EAAO5Y,kBAAkBwX,EAAO1wB,IAAK0wB,EAAOzwB,SAW9ChD,EAAM+tB,SAASlpC,UAAUgzC,YAAc,SAAS1lB,GAC9C,IAAIokB,EAAYlzC,KAAKwiC,QAAQvK,eAAevY,IAExC+xB,EAASzxC,KAAKi0C,oBAKdmB,EAAY3D,EAASyB,GAJzBpkB,EAAQjsB,KAAKC,IAAIgsB,EAAO2iB,EAASyB,IAIY,EACzCkC,GACFp1C,KAAKszC,UAAUJ,EAAWkC,EAAWlC,EAAYpkB,GAEnD,IAAK,IAAIrvB,EAAIqvB,EAAQ,EAAGrvB,GAAK,EAAGA,IAC9BO,KAAKqzC,0BAA0BH,EAAYzzC,EAAG,GAC9CO,KAAKwiC,QAAQ7I,kBAYjBhd,EAAM+tB,SAASlpC,UAAU6zC,YAAc,SAASvmB,GAC9C,IAAIshB,EAASpwC,KAAK+vC,aAEd5I,EAAMiJ,EAAO1wB,IACb+xB,EAASzxC,KAAKi0C,oBAEdY,EAAWpD,EAAStK,EAAM,EAG1BmO,EAAY7D,GAFhB3iB,EAAQjsB,KAAKC,IAAIgsB,EAAO+lB,IAES,EAC7B/lB,GAAS+lB,GACX70C,KAAKszC,UAAUnM,EAAKrY,EAAOwmB,GAE7B,IAAK,IAAI71C,EAAI,EAAGA,EAAIqvB,EAAOrvB,IACzBO,KAAKqzC,0BAA0BiC,EAAY71C,EAAG,GAC9CO,KAAKwiC,QAAQ7I,iBAGf35B,KAAKmwC,cAAcC,GACnBpwC,KAAKqwC,uBAUP1zB,EAAM+tB,SAASlpC,UAAU+zC,YAAc,SAASzmB,GAC9C,IAAIshB,EAASpwC,KAAK+vC,aAEdvU,EAAKz8B,EAAIoC,EAAEmG,cAAcwnB,GAAS,GACtC9uB,KAAKwiC,QAAQpH,aAAaI,GAC1Bx7B,KAAKwiC,QAAQrH,sBAEbn7B,KAAKmwC,cAAcC,GACnBpwC,KAAKqwC,uBASP1zB,EAAM+tB,SAASlpC,UAAU+6B,YAAc,SAASzN,GAC9C,IAAI0mB,EAAUx1C,KAAKwiC,QAAQjG,YAAYzN,GACvC,GAAI0mB,IAAYx1C,KAAKwiC,QAAQzK,eAAe+B,YAAa,CACvD,IAAIsW,EAASpwC,KAAK+vC,aAClB/vC,KAAKiyC,gBAAgBjyC,KAAK0mC,WAAWvqB,MAAQq5B,GAC7Cx1C,KAAKwiC,QAAQpH,aAAar8B,EAAIoC,EAAEmG,cAAckuC,IAC9Cx1C,KAAKmwC,cAAcC,GAGrBpwC,KAAKqwC,uBAgBP1zB,EAAM+tB,SAASlpC,UAAU2yC,WAAa,SAASrlB,GAC7C,IAAIshB,EAASpwC,KAAK+vC,aAElB/vC,KAAKy0C,qBAAqBz0C,KAAKg0C,kBAC/Bh0C,KAAKq1C,YAAYvmB,GAEjB9uB,KAAKmwC,cAAcC,IAgBrBzzB,EAAM+tB,SAASlpC,UAAUi0C,aAAe,SAASb,GAC/C,IAAIxE,EAASpwC,KAAK+vC,aAElB/vC,KAAKqzC,0BAA0BrzC,KAAKg0C,iBAAkB,GACtDh0C,KAAKw0C,YAAYI,GAEjB50C,KAAKmwC,cAAcC,IAarBzzB,EAAM+tB,SAASlpC,UAAUo3B,kBAAoB,SAASlZ,EAAKC,GACrD3f,KAAKqsC,SAASvf,WAChB9sB,KAAK01C,0BAA0Bh2B,EAAKC,GAEpC3f,KAAKqzC,0BAA0B3zB,EAAKC,IAUxChD,EAAM+tB,SAASlpC,UAAUk0C,0BAA4B,SAASh2B,EAAKC,GACjE,IAAIipB,EAAY5oC,KAAKg0C,iBACrBt0B,EAAM3gB,EAAIoC,EAAEgG,MAAMuY,EAAMkpB,EAAWA,EAAW5oC,KAAKi0C,qBACnDt0B,EAAS5gB,EAAIoC,EAAEgG,MAAMwY,EAAQ,EAAG3f,KAAK0mC,WAAWvqB,MAAQ,GACxDnc,KAAKwiC,QAAQ5J,kBAAkBlZ,EAAKC,IAStChD,EAAM+tB,SAASlpC,UAAU6xC,0BAA4B,SAAS3zB,EAAKC,GACjED,EAAM3gB,EAAIoC,EAAEgG,MAAMuY,EAAK,EAAG1f,KAAK0mC,WAAW3oB,OAAS,GACnD4B,EAAS5gB,EAAIoC,EAAEgG,MAAMwY,EAAQ,EAAG3f,KAAK0mC,WAAWvqB,MAAQ,GACxDnc,KAAKwiC,QAAQ5J,kBAAkBlZ,EAAKC,IAQtChD,EAAM+tB,SAASlpC,UAAUywC,gBAAkB,SAAStyB,GAClD3f,KAAKqzC,0BAA0BrzC,KAAKwiC,QAAQvK,eAAevY,IAAKC,IAQlEhD,EAAM+tB,SAASlpC,UAAUm0C,gBAAkB,WACzC,OAAO31C,KAAKwiC,QAAQvK,eAAetY,QAWrChD,EAAM+tB,SAASlpC,UAAUizC,qBAAuB,SAAS/0B,GACvD1f,KAAKqzC,0BAA0B3zB,EAAK1f,KAAKwiC,QAAQvK,eAAetY,SAQlEhD,EAAM+tB,SAASlpC,UAAUo0C,aAAe,WACtC,OAAO51C,KAAKwiC,QAAQvK,eAAevY,KASrC/C,EAAM+tB,SAASlpC,UAAUq0C,gBAAkB,WACzC,IAAI71C,KAAKugC,UAAU6G,OAAnB,CAGA,IAAI5mC,EAAOR,KACXA,KAAKugC,UAAU6G,OAAS9lC,YAAW,kBACxBd,EAAK+/B,UAAU6G,OACtB5mC,EAAKkgC,YAAY2G,YAChB,KAYP1qB,EAAM+tB,SAASlpC,UAAU4xC,oBAAsB,WAC7C,IAAIpzC,KAAKugC,UAAUuV,WAAnB,CAGA,IAAIt1C,EAAOR,KACXA,KAAKugC,UAAUuV,WAAax0C,YAAW,kBAC5Bd,EAAK+/B,UAAUuV,WACtBt1C,EAAKkgC,YAAY8F,kBAAkBhmC,EAAKimC,iBACvC,MAQP9pB,EAAM+tB,SAASlpC,UAAUu0C,SAAW,SAASjnB,GAC3C,OAAO9uB,KAAKg2C,aAAalnB,GAAS,KAQpCnS,EAAM+tB,SAASlpC,UAAUw0C,WAAa,SAASlnB,GAC7CA,EAAQA,GAAS,EACjB,IAAImnB,EAAaj2C,KAAKqsC,SAASvf,WAAa9sB,KAAKg0C,iBAAmB,EAChEkC,EAAal2C,KAAKqsC,SAASvf,WAAa9sB,KAAKi0C,oBAChCj0C,KAAK0mC,WAAW3oB,OAAS,EAEtC2B,EAAM3gB,EAAIoC,EAAEgG,MAAMnH,KAAKwiC,QAAQvK,eAAevY,IAAMoP,EAClCmnB,EAAWC,GACjCl2C,KAAKy0C,qBAAqB/0B,IAW5B/C,EAAM+tB,SAASlpC,UAAU20C,WAAa,SAASrnB,GAG7C,MAFAA,EAAQA,GAAS,GAEL,GAAZ,CAGA,IAAIyL,EAAgBv6B,KAAKwiC,QAAQvK,eAAetY,OAChD,GAAI3f,KAAKqsC,SAASxf,kBAAmB,CACnC,GAAI7sB,KAAKwiC,QAAQvK,eAAepY,WAI9BiP,IACA9uB,KAAKqwC,uBAEAvhB,GACH,OAGJ,IAAIsnB,EAASp2C,KAAKwiC,QAAQvK,eAAevY,KACrC22B,EAAY9b,EAAgBzL,GAChB,KACdsnB,EAASA,EAASvzC,KAAK2F,MAAMsmB,EAAQ9uB,KAAK0mC,WAAWvqB,OAAS,GACjD,IAEXi6B,EAASp2C,KAAK0mC,WAAW3oB,OAASq4B,EAASp2C,KAAK0mC,WAAW3oB,QAE7Ds4B,EAAYr2C,KAAK0mC,WAAWvqB,MAAQk6B,EAAYr2C,KAAK0mC,WAAWvqB,OAGlEnc,KAAK44B,kBAAkB/1B,KAAKuE,IAAIgvC,EAAQ,GAAIC,OAEvC,CACL,IAAIA,EAAYxzC,KAAKuE,IAAImzB,EAAgBzL,EAAO,GAChD9uB,KAAKiyC,gBAAgBoE,MASzB15B,EAAM+tB,SAASlpC,UAAU80C,YAAc,SAASxnB,GAG9C,MAFAA,EAAQA,GAAS,GAEL,GAAZ,CAGA,IAAInP,EAAS5gB,EAAIoC,EAAEgG,MAAMnH,KAAKwiC,QAAQvK,eAAetY,OAASmP,EACrC,EAAG9uB,KAAK0mC,WAAWvqB,MAAQ,GACpDnc,KAAKiyC,gBAAgBtyB,KAcvBhD,EAAM+tB,SAASlpC,UAAUwxC,gBAAkB,SAASlpC,GAClD9J,KAAKqsC,SAASlf,aAAerjB,EACzBA,GACF9J,KAAK0gC,YAAYuD,mBAAmBjkC,KAAKqtC,OAAOniC,IAAI,qBACpDlL,KAAK0gC,YAAYwD,mBAAmBlkC,KAAKqtC,OAAOniC,IAAI,uBAEpDlL,KAAK0gC,YAAYuD,mBAAmBjkC,KAAKqtC,OAAOniC,IAAI,qBACpDlL,KAAK0gC,YAAYwD,mBAAmBlkC,KAAKqtC,OAAOniC,IAAI,uBASxDyR,EAAM+tB,SAASlpC,UAAU+0C,SAAW,WAClCv2C,KAAKm4B,YAAY1X,MAAMgB,gBACnBzhB,KAAK0gC,YAAYlf,qBAErB,IAAIhhB,EAAOR,KAMX,GALAsB,YAAW,WACPd,EAAK23B,YAAY1X,MAAMgB,gBAAkBjhB,EAAK6sC,OAAOniC,IAAI,kBACxD,MAGDlL,KAAKw2C,sBAGLx2C,KAAKisC,WAAWpgC,aAAa,QAC/B7L,KAAKisC,WAAWwK,OAChBz2C,KAAK02C,qBAAuBp1C,WAAW,kBAC5BtB,KAAKw2C,qBACZtsC,KAAKlK,MAAO,aAETA,KAAKw2C,oBAGVx2C,KAAKmsC,2BAA6BnsC,KAAKwiB,UAAUm0B,YAAY,CAC/D,IAAI73B,EAAInC,EAAM0B,SACdre,KAAKksC,sBAAsBhsC,KAAK4e,GAEhCA,EAAEE,QAAU,WAAaxe,EAAKo2C,6BAelCj6B,EAAM+tB,SAASlpC,UAAUq1C,cAAgB,SAAS/sC,GAChD9J,KAAKqsC,SAASvf,WAAahjB,EAC3B9J,KAAK44B,kBAAkB,EAAG,IAc5Bjc,EAAM+tB,SAASlpC,UAAUs1C,cAAgB,SAAShtC,GAChD9J,KAAKqsC,SAASnf,WAAapjB,GAY7B6S,EAAM+tB,SAASlpC,UAAUu1C,sBAAwB,SAASjtC,GACxD9J,KAAKqsC,SAAStf,mBAAqBjjB,GAcrC6S,EAAM+tB,SAASlpC,UAAUw1C,cAAgB,SAASltC,GAChD9J,KAAKqsC,SAASzf,WAAa9iB,GAc7B6S,EAAM+tB,SAASlpC,UAAUy1C,qBAAuB,SAASntC,GACvD9J,KAAKqsC,SAASxf,kBAAoB/iB,GAiBpC6S,EAAM+tB,SAASlpC,UAAU01C,iBAAmB,SAASptC,GACnD,IAAIsmC,EAASpwC,KAAK+vC,aAGlB,GAFA/vC,KAAKwiC,QAAU14B,EAAQ9J,KAAK8qC,iBAAmB9qC,KAAK6qC,eAEhD7qC,KAAKwiC,QAAQ3K,UAAUt4B,QACvBS,KAAKwiC,QAAQ3K,UAAU,GAAG8J,UAAY3hC,KAAK+qC,gBAAgBxrC,OAK7D,IAFA,IAAIi7B,EAASx6B,KAAK+qC,gBAAgBxrC,OAC9BQ,EAAMC,KAAKwiC,QAAQ3K,UACdp4B,EAAI,EAAGA,EAAIM,EAAIR,OAAQE,IAC9BM,EAAIN,GAAGkiC,SAAWnH,EAAS/6B,EAI/BO,KAAK+wC,cAAc/wC,KAAK0mC,WAAWvqB,OACnCnc,KAAKgxC,eAAehxC,KAAK0mC,WAAW3oB,QACpC/d,KAAK0gC,YAAY4F,mBACjBtmC,KAAK0gC,YAAYwE,aAEjBllC,KAAKmwC,cAAcC,GACnBpwC,KAAK0gC,YAAYthB,UAgBnBzC,EAAM+tB,SAASlpC,UAAUisC,eAAiB,SAAS3jC,GACjD9J,KAAKqsC,SAASpf,YAAcnjB,GAEvBA,GAAS9J,KAAKugC,UAAUtT,cAC3BnlB,aAAa9H,KAAKugC,UAAUtT,oBACrBjtB,KAAKugC,UAAUtT,aAGpBjtB,KAAKqsC,SAASrf,eAChBhtB,KAAK+xC,kBAAiB,IAY1Bp1B,EAAM+tB,SAASlpC,UAAUuwC,iBAAmB,SAASjoC,GAGnD,GAFA9J,KAAKqsC,SAASrf,cAAgBljB,GAEzBA,EAMH,OALI9J,KAAKugC,UAAUtT,cACjBnlB,aAAa9H,KAAKugC,UAAUtT,oBACrBjtB,KAAKugC,UAAUtT,kBAExBjtB,KAAKm4B,YAAY1X,MAAM02B,QAAU,KAQnC,GAJAn3C,KAAK4xC,sBAEL5xC,KAAKm4B,YAAY1X,MAAM02B,QAAU,IAE7Bn3C,KAAKqsC,SAASpf,YAAa,CAC7B,GAAIjtB,KAAKugC,UAAUtT,YACjB,OAEFjtB,KAAK0rC,sBAED1rC,KAAKugC,UAAUtT,cACjBnlB,aAAa9H,KAAKugC,UAAUtT,oBACrBjtB,KAAKugC,UAAUtT,cAS5BtQ,EAAM+tB,SAASlpC,UAAUowC,oBAAsB,WAC7C,IAAIxM,EAAcplC,KAAK0gC,YAAY2E,iBAC/BC,EAAiBtlC,KAAK0gC,YAAY6E,kBAAkBH,GACpDgS,EAAiBp3C,KAAK+qC,gBAAgBxrC,OACtCS,KAAKwiC,QAAQvK,eAAevY,IAEhC,GAAI03B,EAAiB9R,EAEnBtlC,KAAKovC,UAAU,oBAAqB,UAFtC,CAMIpvC,KAAKqsC,SAASrf,eACoB,QAAlChtB,KAAKm4B,YAAY1X,MAAMC,UAEzB1gB,KAAKm4B,YAAY1X,MAAMC,QAAU,IAMnC1gB,KAAKovC,UACD,oBACGgI,EAAiBhS,EAApB,MACA,GAAGplC,KAAK0gC,YAAYmG,yBACxB7mC,KAAKovC,UAAU,oBAAqBpvC,KAAKwiC,QAAQvK,eAAetY,QAEhE3f,KAAKm4B,YAAYhsB,aAAa,QACA,IAAMnM,KAAKwiC,QAAQvK,eAAetY,OAClC,KAAO3f,KAAKwiC,QAAQvK,eAAevY,IACnC,KAG9B,IAAIqL,EAAY/qB,KAAKwiB,UAAUyI,eAC3BF,GAAaA,EAAUG,aACzBlrB,KAAKwiC,QAAQ7H,mBAAmB5P,KAOpCpO,EAAM+tB,SAASlpC,UAAUgvC,eAAiB,WACxC,IAAID,EAAQvwC,KAAKorC,aAE6B,SAA1CprC,KAAKm4B,YAAYtsB,aAAa,WAEhC0kC,EAAQ5zB,EAAM+tB,SAASW,YAAYC,OAGrC,IAAI7qB,EAAQzgB,KAAKm4B,YAAY1X,MAE7B,OAAQ8vB,GACN,KAAK5zB,EAAM+tB,SAASW,YAAY6B,KAC9BzsB,EAAM1C,OAAS,+BACf0C,EAAMgB,gBAAkB,cACxBhB,EAAM42B,kBAAoB,KAC1B52B,EAAM62B,gBAAkB,QACxB,MAEF,KAAK36B,EAAM+tB,SAASW,YAAY8B,UAC9B1sB,EAAM1C,OAAS/d,KAAK0gC,YAAYhB,cAAcuG,SAAW,KACzDxlB,EAAMgB,gBAAkB,cACxBhB,EAAM42B,kBAAoB,QAE1B52B,EAAM62B,gBAAkB,KACxB,MAEF,QACE72B,EAAM1C,OAAS,+BACf0C,EAAMgB,gBAAkBzhB,KAAKurC,aAC7B9qB,EAAM42B,kBAAoB,KAC1B52B,EAAM62B,gBAAkB,OAW9B36B,EAAM+tB,SAASlpC,UAAUovC,4BAA8B,WACrD,IAAI5wC,KAAKugC,UAAUgX,WAAnB,CAGA,IAAI/2C,EAAOR,KACXA,KAAKugC,UAAUgX,WAAaj2C,YAAW,WACnCd,EAAKoxC,6BACEpxC,EAAK+/B,UAAUgX,aACrB,KAWP56B,EAAM+tB,SAASlpC,UAAUg2C,iBAAmB,SAAS1tC,GACnD,IAAK9J,KAAKy3C,iBAAkB,CAC1B,IAAK3tC,EACH,OAEF9J,KAAKy3C,iBAAmBz3C,KAAKwiB,UAAUE,cAAc,OACrD1iB,KAAKy3C,iBAAiB1rC,GAAK,qBAC3B/L,KAAKy3C,iBAAiBh3B,MAAMkC,QAAU,oRAetC3iB,KAAKy3C,iBAAiB3kC,iBAAiB,SAAS,SAASE,GACvDhT,KAAKmiB,WAAWvS,YAAY5P,SAIhCA,KAAKy3C,iBAAiBvrC,YAAcnN,EAAI4J,eAAesB,kBACnD0S,EAAM+6B,mBACN,CAAC9zC,SAAqD,IAA5C5D,KAAK0gC,YAAYhB,cAAcyG,cAE7CnmC,KAAKy3C,iBAAiBh3B,MAAMsB,WAAa/hB,KAAKqtC,OAAOniC,IAAI,eAErDpB,EACG9J,KAAKy3C,iBAAiBt1B,YACzBniB,KAAKmgB,KAAKgC,WAAWW,YAAY9iB,KAAKy3C,kBAC/Bz3C,KAAKy3C,iBAAiBt1B,YAC/BniB,KAAKy3C,iBAAiBt1B,WAAWvS,YAAY5P,KAAKy3C,mBAiBtD96B,EAAM+tB,SAASlpC,UAAUm2C,YAAc,SAAS5sC,EAAK6sC,GACnD,IAAK53C,KAAK63C,aAAc,CACtB,IAAK73C,KAAKmgB,KACR,OAEFngB,KAAK63C,aAAe73C,KAAKwiB,UAAUE,cAAc,OACjD1iB,KAAK63C,aAAap3B,MAAMkC,QAAU,+OAWlC3iB,KAAK63C,aAAa/kC,iBAAiB,aAAa,SAASE,GACvDA,EAAEoT,iBACFpT,EAAEqT,qBACD,GAGLrmB,KAAK63C,aAAap3B,MAAMrb,MAAQpF,KAAKqtC,OAAOniC,IAAI,oBAChDlL,KAAK63C,aAAap3B,MAAMgB,gBAAkBzhB,KAAKqtC,OAAOniC,IAAI,oBAC1DlL,KAAK63C,aAAap3B,MAAMsB,WAAa/hB,KAAKqtC,OAAOniC,IAAI,eAErDlL,KAAK63C,aAAa3rC,YAAcnB,EAChC/K,KAAK63C,aAAap3B,MAAM02B,QAAU,OAE7Bn3C,KAAK63C,aAAa11B,YACrBniB,KAAKmgB,KAAK2C,YAAY9iB,KAAK63C,cAE7B,IAAIt1B,EAAU5F,EAAMgB,cAAc3d,KAAKmgB,MACnC23B,EAAcn7B,EAAMgB,cAAc3d,KAAK63C,cAE3C73C,KAAK63C,aAAap3B,MAAM0mB,KACnB5kB,EAAQxE,OAAS+5B,EAAY/5B,QAAU,EAAI,KAChD/d,KAAK63C,aAAap3B,MAAMwmB,MAAQ1kB,EAAQpG,MAAQ27B,EAAY37B,MACxDnc,KAAK0gC,YAAYJ,yBAA2B,EAAI,KAEpD,IAAI9/B,EAAOR,KAEPA,KAAK+3C,iBACPjwC,aAAa9H,KAAK+3C,iBAEA,OAAhBH,IAGJ53C,KAAK+3C,gBAAkBz2C,YAAW,WAC9Bd,EAAKq3C,aAAap3B,MAAM02B,QAAU,IAClC32C,EAAKu3C,gBAAkBz2C,YAAW,WAC1Bd,EAAKq3C,aAAa11B,YACpB3hB,EAAKq3C,aAAa11B,WAAWvS,YAAYpP,EAAKq3C,cAChDr3C,EAAKu3C,gBAAkB,KACvBv3C,EAAKq3C,aAAap3B,MAAM02B,QAAU,SACjC,OACJS,GAAe,QAMtBj7B,EAAM+tB,SAASlpC,UAAUkqB,MAAQ,WAC/B,OAAO/O,EAAMyB,mBAAmBpe,KAAKwiB,YAUvC7F,EAAM+tB,SAASlpC,UAAUw2C,sBAAwB,SAASpyC,GACpD5F,KAAKqtC,OAAOniC,IAAI,4BAClB5J,WAAWtB,KAAK23C,YAAYztC,KAAKlK,KAAM2c,EAAMs7B,kBAAmB,KAAM,KAExE,IAAIC,EAAal4C,KAAKwiB,UAAUE,cAAc,OAC9Cw1B,EAAWnsC,GAAK,iCAChBmsC,EAAWhsC,YAActG,EACzBsyC,EAAWz3B,MAAMkC,QAAU,iFAM3B3iB,KAAKwiB,UAAU9D,KAAKoE,YAAYo1B,GAEhC,IAAIntB,EAAY/qB,KAAKwiB,UAAUyI,eAC3BmW,EAAarW,EAAUqW,WACvBC,EAAetW,EAAUsW,aACzBG,EAAYzW,EAAUyW,UACtBC,EAAc1W,EAAU0W,YAE5B1W,EAAUotB,kBAAkBD,GAE5Bv7B,EAAMqB,yBAAyBhe,KAAKwiB,WAIhCuI,EAAU0d,SACZ1d,EAAU6P,SAASwG,EAAYC,GAC/BtW,EAAU0d,OAAOjH,EAAWC,IAG9ByW,EAAW/1B,WAAWvS,YAAYsoC,IAQpCv7B,EAAM+tB,SAASlpC,UAAU42C,iBAAmB,WAC1C,IAAIrtB,EAAY/qB,KAAK0gC,YAAY3V,UAGjC,GAFAA,EAAU/N,OAEN+N,EAAUG,YACZ,OAAO,KAIT,IAAIqT,EAAcxT,EAAUwT,YACxB3yB,EAAOmf,EAAUoW,UAErB,GAAqB,SAAjBv1B,EAAKuxB,SAUP,IALqB,SAAjBvxB,EAAKuxB,UAAmD,QAA5BvxB,EAAKuW,WAAWgb,WAE9CvxB,EAAOA,EAAKuW,YAGPvW,EAAKuwB,iBACVvwB,EAAOA,EAAKuwB,gBACZoC,GAAe5hB,EAAMqb,eAAeyC,UAAU7uB,GAKlD,IAAI8yB,EAAa/hB,EAAMqb,eAAeyC,UAAU1P,EAAUwW,SACzCxW,EAAU2T,UAG3B,GAAqB,UAFrB9yB,EAAOmf,EAAUwW,SAERpE,SAUP,IALqB,SAAjBvxB,EAAKuxB,UAAmD,QAA5BvxB,EAAKuW,WAAWgb,WAE9CvxB,EAAOA,EAAKuW,YAGPvW,EAAK8uB,aACV9uB,EAAOA,EAAK8uB,YACZgE,GAAa/hB,EAAMqb,eAAeyC,UAAU7uB,GAIhD,IAAI5F,EAAKhG,KAAKqqC,YAAYtf,EAAU4V,SAASgB,SACnB5W,EAAU6V,OAAOe,SAAW,GACtD,OAAO5iC,EAAIqc,GAAGqB,UAAUzW,EAAIu4B,EAAax/B,EAAIqc,GAAGc,SAASlW,GAAM04B,IAOjE/hB,EAAM+tB,SAASlpC,UAAUwc,yBAA2B,WAClD,IAAIiZ,EAAOj3B,KAAKo4C,mBACJ,MAARnhB,GACFj3B,KAAKg4C,sBAAsB/gB,IAG/Bta,EAAM+tB,SAASlpC,UAAUs2C,YAAc,WACrC93C,KAAK23C,YAAY33C,KAAK0mC,WAAWvqB,MAAQ,IAAMnc,KAAK0mC,WAAW3oB,SAQjEpB,EAAM+tB,SAASlpC,UAAUkkB,cAAgB,SAAS2yB,GAC5Cr4C,KAAK8rC,oBACP9rC,KAAK0gC,YAAY8F,kBAAkBxmC,KAAKymC,eAE1CzmC,KAAKusC,GAAG7mB,cAAc1lB,KAAKinB,SAAS9B,OAAOkzB,KAQ7C17B,EAAM+tB,SAASlpC,UAAU82C,QAAU,SAASnuC,GACtC5J,OAAOiG,QAAUjG,OAAOiG,OAAO+xC,QAEjC/xC,OAAO+xC,QAAQC,QAAQ,CAAC,IAAOruC,IAErB5J,OAAOsK,KAAKV,EAAK,UACvB8U,SAORtC,EAAM+tB,SAASlpC,UAAUi3C,iBAAmB,WAC1C,IAAI7yC,EAAM5F,KAAKo4C,mBAGf,IAAW,MAAPxyC,IACF5F,KAAKwiC,QAAQrE,gBAAgBn+B,KAAKwiB,UAAUyI,gBAIjC,OAHXrlB,EAAM5F,KAAKo4C,yBAQTxyC,EAAIrG,OAAS,MAAQqG,EAAIq5B,OAAO,yBAA2B,GAA/D,CAKA,GAAIr5B,EAAIq5B,OAAO,+BAAiC,EAG9C,OAAQr5B,EAAItG,MAAM,IAAK,GAAG,IACxB,IAAK,SACH,MACF,QACEsG,EAAM,UAAYA,EAKxB5F,KAAKs4C,QAAQ1yC,KAaf+W,EAAM+tB,SAASlpC,UAAUkxC,SAAW,SAAS1/B,GAC3C,IAAIA,EAAE0lC,4BAAN,CAWA,IAAIC,GAAsB34C,KAAKgsC,qBAC3BhsC,KAAKolB,GAAGyqB,aAAe7vC,KAAKolB,GAAG0qB,sBAUnC,GARA98B,EAAE0lC,6BAA8B,EAGhC1lC,EAAE4lC,YAAch1C,UAAUoP,EAAE82B,QAAU9pC,KAAK0gC,YAAYmG,qBAC9B7mC,KAAK0gC,YAAYhB,cAAc3hB,QAAU,EAClE/K,EAAE6lC,eAAiBj1C,SAASoP,EAAEg3B,QACFhqC,KAAK0gC,YAAYhB,cAAcvjB,OAAS,IAEtD,aAAVnJ,EAAEtB,MAAuBsB,EAAE6lC,eAAiB74C,KAAK0mC,WAAWvqB,OAAhE,CAiCA,GA5BInc,KAAKqsC,SAASrf,gBAAkB2rB,IAK9B3lC,EAAE4lC,YAAc,GAAK54C,KAAKwiC,QAAQvK,eAAevY,KACjD1M,EAAE6lC,eAAiB,GAAK74C,KAAKwiC,QAAQvK,eAAetY,OACtD3f,KAAKm4B,YAAY1X,MAAMC,QAAU,OACU,QAAlC1gB,KAAKm4B,YAAY1X,MAAMC,UAChC1gB,KAAKm4B,YAAY1X,MAAMC,QAAU,KAIvB,aAAV1N,EAAEtB,OACAsB,EAAE+S,SAAW4yB,GAGf34C,KAAKgsC,qBAAsB,EAC3BhsC,KAAK2uC,qBAAoB,KAGzB3uC,KAAKgsC,qBAAsB,EAC3BhsC,KAAKwiB,UAAUyI,eAAeG,gBAC9BprB,KAAK2uC,qBAAoB,GACzB37B,EAAEoT,mBAIDuyB,EAmDE34C,KAAK8yC,mBAAmBgG,UACb,aAAV9lC,EAAEtB,MAGJ1R,KAAK8yC,mBAAmBgG,SAAU,EAClC94C,KAAK8yC,mBAAmBryB,MAAM0mB,IAAOn0B,EAAE82B,QAAU,EAAK,KACtD9pC,KAAK8yC,mBAAmBryB,MAAMwmB,KAAQj0B,EAAEg3B,QAAU,EAAK,MACpC,aAAVh3B,EAAEtB,OAGX1R,KAAKwiB,UAAUyI,eAAeG,gBAC9BpY,EAAEoT,mBAINpmB,KAAKyyC,QAAQz/B,OAlES,CAMtB,GALc,YAAVA,EAAEtB,MAAsB1R,KAAK0sC,eAC/B1sC,KAAKwiC,QAAQrE,gBAAgBn+B,KAAKwiB,UAAUyI,gBAC5CjrB,KAAKge,yBAAyBhe,KAAKwiB,YAGvB,SAAVxP,EAAEtB,OAAoBsB,EAAEmT,WAAanT,EAAE6S,SAAW7S,EAAE8S,SAOtD,OAHAhe,aAAa9H,KAAKugC,UAAU+X,cAC5Bt4C,KAAKugC,UAAU+X,QAAUh3C,WAAWtB,KAAKy4C,iBAAiBvuC,KAAKlK,MAC3B,MAyBtC,GArBc,aAAVgT,EAAEtB,OACC1R,KAAK2sC,sBAAoC,GAAZ35B,EAAEu8B,QAChCv8B,EAAEu8B,QAAUvvC,KAAK4sC,oBACd5sC,KAAK0rB,SACRjrB,QAAQs4C,QAAQ,qDAIR,WAAV/lC,EAAEtB,MAAiC,GAAZsB,EAAEu8B,QAAevvC,KAAK0sC,eAC5C1sC,KAAKwiB,UAAUyI,eAAeC,aACjClrB,KAAKge,yBAAyBhe,KAAKwiB,WAGtB,aAAVxP,EAAEtB,MAAiC,WAAVsB,EAAEtB,OAC5B1R,KAAK8yC,mBAAmBgG,UAE1B94C,KAAK8yC,mBAAmBgG,SAAU,EAClC94C,KAAK8yC,mBAAmBryB,MAAM0mB,IAAM,SAIlCnnC,KAAK+rC,wBAA0B/4B,EAAEmT,UACjCnmB,KAAKinB,SAAS9C,oBAAsBnkB,KAAKmvC,mBAC7B,SAAVn8B,EAAEtB,KAAiB,CACrB,IAAIs3B,EAAQhpC,KAAK0gC,YAAYuI,iBAAiBj2B,GAC1CgmC,EAAQj6C,EAAIoC,EAAE+G,iBACdrF,KAAKo2C,IAAIjQ,GAAQhpC,KAAK0gC,YAAYhB,cAAc3hB,QAEhDpM,EAAO,MAAWq3B,EAAQ,EAAI,IAAM,KACxChpC,KAAKusC,GAAG2M,WAAWvnC,EAAK9P,OAAOm3C,IAE/BhmC,EAAEoT,kBAsBM,WAAVpT,EAAEtB,MAAqB1R,KAAKwiB,UAAUyI,eAAeC,cAIvDlrB,KAAKgsC,qBAAsB,MAY/BrvB,EAAM+tB,SAASlpC,UAAUixC,QAAU,SAASz/B,KAO5C2J,EAAM+tB,SAASlpC,UAAUoxC,eAAiB,SAASuG,GACjDn5C,KAAKm4B,YAAYhsB,aAAa,QAASgtC,GACvCn5C,KAAKwwC,kBACW,IAAZ2I,GACFn5C,KAAK42C,2BAMTj6B,EAAM+tB,SAASlpC,UAAUihC,UAAY,WACnCziC,KAAK4wC,+BAQPj0B,EAAM+tB,SAASlpC,UAAUqhC,SAAW,SAAS7vB,GAC3C,IAAIrB,EAAOqB,EAAEikB,KAAKz3B,QAAQ,OAAQ,MAClCmS,EAAO3R,KAAKinB,SAAS9B,OAAOxT,GACxB3R,KAAKqsC,SAASjf,iBAChBzb,EAAO,SAAcA,EAAO,UAE9B3R,KAAKusC,GAAG2M,WAAWvnC,IAQrBgL,EAAM+tB,SAASlpC,UAAUohC,QAAU,SAAS5vB,GACrChT,KAAK6sC,uBACR75B,EAAEoT,iBACF9kB,WAAWtB,KAAKge,yBAAyB9T,KAAKlK,MAAO,KAYzD2c,EAAM+tB,SAASlpC,UAAUwgC,UAAY,WACnC,IAAI2O,EAAc9tC,KAAK2F,MAAMxI,KAAK0gC,YAAYkE,iBACjB5kC,KAAK0gC,YAAYhB,cAAcvjB,QAAU,EAClE20B,EAAW/xC,EAAIoC,EAAE+G,iBAAiBlI,KAAK0gC,YAAYmE,kBAC7B7kC,KAAK0gC,YAAYhB,cAAc3hB,SAAW,EAEpE,KAAI4yB,GAAe,GAAKG,GAAY,GAApC,CASA,IAAIsI,EAAazI,GAAe3wC,KAAK0mC,WAAWvqB,OAC/B20B,GAAY9wC,KAAK0mC,WAAW3oB,OAI7C/d,KAAK8sC,aAAa6D,EAAaG,GAC/B9wC,KAAKw3C,iBAA8D,GAA7Cx3C,KAAK0gC,YAAYhB,cAAcyG,YAEjDiT,GACFp5C,KAAK83C,cAEP93C,KAAKwwC,iBACLxwC,KAAK4wC,gCAMPj0B,EAAM+tB,SAASlpC,UAAUkqC,eAAiB,WACnC1rC,KAAKqsC,SAASpf,YAK2B,SAA1CjtB,KAAKm4B,YAAYtsB,aAAa,UACI,KAAlC7L,KAAKm4B,YAAY1X,MAAM02B,SACzBn3C,KAAKm4B,YAAY1X,MAAM02B,QAAU,IACjCn3C,KAAKugC,UAAUtT,YAAc3rB,WAAWtB,KAAKyrC,iBACLzrC,KAAKwrC,kBAAkB,MAE/DxrC,KAAKm4B,YAAY1X,MAAM02B,QAAU,IACjCn3C,KAAKugC,UAAUtT,YAAc3rB,WAAWtB,KAAKyrC,iBACLzrC,KAAKwrC,kBAAkB,YAZxDxrC,KAAKugC,UAAUtT,aA0B1BtQ,EAAM+tB,SAASlpC,UAAU8oC,oBAAsB,SAASxgC,GACtD9J,KAAK0gC,YAAY4J,oBAAoBxgC,IAWvC6S,EAAM+tB,SAASlpC,UAAUgpC,4BAA8B,SAASC,GAC9DzqC,KAAK0gC,YAAY8J,4BAA4BC,IAM/C9tB,EAAM+tB,SAASlpC,UAAUo1C,wBAA0B,WACjD52C,KAAKksC,sBAAsBt7B,SAAQ,SAASkO,GACxCA,EAAEI,WAENlf,KAAKksC,sBAAsB3sC,OAAS,GAStCR,EAAIc,MAAM,kBAuBV8c,EAAM+tB,SAAS8B,GAAK,SAASxsB,GAC3BhgB,KAAKkgB,UAAYF,EAGjBhgB,KAAKq5C,YAAc,MAgBrB18B,EAAM+tB,SAAS8B,GAAGhrC,UAAUm2C,YAAc,SAAStuC,EAASuuC,GAC1D53C,KAAKkgB,UAAUy3B,YAAYtuC,EAASuuC,IAatCj7B,EAAM+tB,SAAS8B,GAAGhrC,UAAU83C,YAAc,SAASnvC,EAAK8V,GACtD,OAAO,IAAItD,EAAMoD,MAAM/f,KAAKkgB,UAAW/V,EAAK8V,IAQ9CtD,EAAM+tB,SAAS8B,GAAGhrC,UAAU+3C,mBAAqB,SAASC,GACxDx5C,KAAKkgB,UAAU8sB,WAAWwM,IAU5B78B,EAAM+tB,SAAS8B,GAAGhrC,UAAUtB,KAAO,WACjC,IAAIqsC,EAAK,IAAI5vB,EAAM+tB,SAAS8B,GAAGxsC,KAAKkgB,WASpC,OARAqsB,EAAGkN,kBAAoBz5C,KAAKy5C,kBAE5BlN,EAAGoE,YAAc3wC,KAAK2wC,YACtBpE,EAAGuE,SAAW9wC,KAAK8wC,SAEnBvE,EAAG8M,YAAcr5C,KAAKkgB,UAAUqsB,GAChCvsC,KAAKkgB,UAAUqsB,GAAKA,EAEbA,GAMT5vB,EAAM+tB,SAAS8B,GAAGhrC,UAAU0tC,IAAM,WAChClvC,KAAKkgB,UAAUqsB,GAAKvsC,KAAKq5C,aAU3B18B,EAAM+tB,SAAS8B,GAAGhrC,UAAU03C,WAAa,SAASb,GAEhD53C,QAAQoH,IAAI,yBAA2BwwC,IAazC17B,EAAM+tB,SAAS8B,GAAGhrC,UAAUkkB,cAAgB,SAAS2yB,GAEnD53C,QAAQoH,IAAI,6BAA+B6C,KAAKgD,UAAU2qC,KAG5D17B,EAAM+tB,SAAS8B,GAAGhrC,UAAUyvC,kBAAoB,SAAS90B,EAAO4B,GAE9D,IADA,IAAIzd,EAAMN,KACHM,GACLA,EAAIqwC,YAAcx0B,EAClB7b,EAAIwwC,SAAW/yB,EACfzd,EAAMA,EAAI+4C,YAGZr5C,KAAK05C,iBAAiBv9B,EAAO4B,IAW/BpB,EAAM+tB,SAAS8B,GAAGhrC,UAAUk4C,iBAAmB,SAASv9B,EAAO4B,KAS/DpB,EAAM+tB,SAAS8B,GAAGhrC,UAAUm4C,UAAY,SAAStB,GAC/C,GAAIr4C,KAAKkgB,UAAUqsB,IAAMvsC,KACvB,KAAM,4CAERA,KAAKkgB,UAAUqyB,UAAU8F,IAQ3B17B,EAAM+tB,SAAS8B,GAAGhrC,UAAUo4C,YAAc,SAASvB,GACjD,GAAIr4C,KAAKkgB,UAAUqsB,IAAMvsC,KACvB,KAAM,4CAERA,KAAKkgB,UAAUqyB,UAAU8F,EAAS,SAQpC17B,EAAM+tB,SAAS8B,GAAGhrC,UAAUkyC,MAC5B/2B,EAAM+tB,SAAS8B,GAAGhrC,UAAUq4C,WAAa,SAASxB,GAChDr4C,KAAK25C,UAAU56C,EAAImc,WAAWm9B,KAQhC17B,EAAM+tB,SAAS8B,GAAGhrC,UAAUqV,QAC5B8F,EAAM+tB,SAAS8B,GAAGhrC,UAAUs4C,aAAe,SAASzB,GAClDr4C,KAAK45C,YAAY76C,EAAImc,WAAWm9B,KASlCt5C,EAAIc,MAAM,cAgBV8c,EAAMqb,eAAiB,SAAS/Z,GAC9Bje,KAAKwiB,UAAYvE,EAKjBje,KAAK+5C,iBAAmB/5C,KAAKg6C,YAC7Bh6C,KAAKi6C,iBAAmBj6C,KAAKg6C,YAI7Bh6C,KAAKk6C,WAAal6C,KAAK80C,cACvB90C,KAAKqd,WAAard,KAAK80C,cAEvB90C,KAAKm6C,kBAAoB,qBACzBn6C,KAAKo6C,kBAAoB,eAEzBp6C,KAAKq6C,MAAO,EACZr6C,KAAKs6C,OAAQ,EACbt6C,KAAKu6C,QAAS,EACdv6C,KAAKw6C,OAAQ,EACbx6C,KAAKy7B,WAAY,EACjBz7B,KAAK07B,eAAgB,EACrB17B,KAAK+5B,SAAU,EACf/5B,KAAKy6C,WAAY,EACjBz6C,KAAK27B,QAAS,EACd37B,KAAK47B,WAAY,EACjB57B,KAAK67B,SAAW,KAEhB77B,KAAKyF,aAAe,KACpBzF,KAAK4tC,qBASPjxB,EAAMqb,eAAex2B,UAAUguC,YAAa,EAO5C7yB,EAAMqb,eAAex2B,UAAUusC,oBAAqB,EAKpDpxB,EAAMqb,eAAex2B,UAAUszC,cAAgB/1C,EAAIoC,EAAEuE,WAAW,IAKhEiX,EAAMqb,eAAex2B,UAAUw4C,YAAc,UAO7Cr9B,EAAMqb,eAAex2B,UAAUk5C,QAAU,MAOzC/9B,EAAMqb,eAAex2B,UAAUm5C,YAAc,SAAS18B,GACpDje,KAAKwiB,UAAYvE,GAQnBtB,EAAMqb,eAAex2B,UAAU6d,MAAQ,WACrC,IAAIrZ,EAAK,IAAI2W,EAAMqb,eAAe,MAElC,IAAK,IAAI7uB,KAAOnJ,KACdgG,EAAGmD,GAAOnJ,KAAKmJ,GAIjB,OADAnD,EAAGP,aAAezF,KAAKyF,aAAaiE,SAC7B1D,GAST2W,EAAMqb,eAAex2B,UAAUgP,MAAQ,WACrCxQ,KAAK+5C,iBAAmB/5C,KAAKg6C,YAC7Bh6C,KAAKi6C,iBAAmBj6C,KAAKg6C,YAC7Bh6C,KAAKk6C,WAAal6C,KAAK80C,cACvB90C,KAAKqd,WAAard,KAAK80C,cACvB90C,KAAKq6C,MAAO,EACZr6C,KAAKs6C,OAAQ,EACbt6C,KAAKu6C,QAAS,EACdv6C,KAAKw6C,OAAQ,EACbx6C,KAAKy7B,WAAY,EACjBz7B,KAAK07B,eAAgB,EACrB17B,KAAK+5B,SAAU,EACf/5B,KAAKy6C,WAAY,EACjBz6C,KAAK27B,QAAS,EACd37B,KAAK47B,WAAY,GAMnBjf,EAAMqb,eAAex2B,UAAUosC,kBAAoB,WACjD5tC,KAAKyF,aAAe1G,EAAIiD,OAAOyD,aAAaiE,SAC5C1J,KAAKg6B,cAQPrd,EAAMqb,eAAex2B,UAAUs4B,UAAY,WACzC,OAAQ95B,KAAK+5C,kBAAoB/5C,KAAKg6C,aAC9Bh6C,KAAKi6C,kBAAoBj6C,KAAKg6C,cAC7Bh6C,KAAKq6C,OACLr6C,KAAKs6C,QACLt6C,KAAKu6C,SACLv6C,KAAKw6C,QACLx6C,KAAKy7B,YACLz7B,KAAK07B,gBACL17B,KAAK+5B,UACL/5B,KAAKy6C,YACLz6C,KAAK27B,QACN37B,KAAK47B,WACY,MAAjB57B,KAAK67B,UAkBflf,EAAMqb,eAAex2B,UAAUy4B,gBAAkB,SAAS2gB,GACxD,GAAI56C,KAAK85B,YACP,OAAO95B,KAAKwiB,UAAU8X,eAAesgB,GAEvC,IAAIC,EAAO76C,KAAKwiB,UAAUE,cAAc,QACpCjC,EAAQo6B,EAAKp6B,MACbq6B,EAAU,GAEV96C,KAAKk6C,YAAcl6C,KAAK80C,gBAC1Br0B,EAAMrb,MAAQpF,KAAKk6C,YAEjBl6C,KAAKqd,YAAcrd,KAAK80C,gBAC1Br0B,EAAMgB,gBAAkBzhB,KAAKqd,YAE3Brd,KAAKwvC,YAAcxvC,KAAKq6C,OAC1B55B,EAAMslB,WAAa,QAEjB/lC,KAAKs6C,QACPO,EAAKP,OAAQ,GAEXt6C,KAAKu6C,SACP95B,EAAMs6B,UAAY,UAEhB/6C,KAAKw6C,QACPM,EAAQ56C,KAAK,cACb26C,EAAKG,WAAY,GAGnB,IAAIhf,EAAiB,GA+BrB,OA9BIh8B,KAAKy7B,YACPO,GAAkB,aAClB6e,EAAKpf,WAAY,GAEfz7B,KAAK07B,gBACPM,GAAkB,gBAClB6e,EAAKnf,eAAgB,GAEnBM,IACFvb,EAAMub,eAAiBA,GAGrBh8B,KAAK27B,SACPmf,EAAQ56C,KAAK,WACb26C,EAAKlf,QAAS,EACdkf,EAAKjf,WAAY,GAGE,MAAjB57B,KAAK67B,WACPif,EAAQ56C,KAAK,QACb46C,EAAQ56C,KAAK,QAAUF,KAAK67B,UAC5Bgf,EAAK9e,UAAW,GAGd6e,IACFC,EAAK3uC,YAAc0uC,GAEjBE,EAAQv7C,SACVs7C,EAAKhI,UAAYiI,EAAQpmC,KAAK,MAEzBmmC,GAgBTl+B,EAAMqb,eAAex2B,UAAU06B,iBAAmB,SAAS57B,GACzD,GAAkB,iBAAPA,GAAmC,GAAhBA,EAAIw7B,SAChC,OAAO97B,KAAK85B,YAEd,IAAIrZ,EAAQngB,EAAImgB,MAIhB,QAAUzgB,KAAK27B,QAAUr7B,EAAIq7B,QACrB37B,KAAK47B,WAAa57B,KAAK47B,WACJ,MAAjB57B,KAAK67B,UAAoBv7B,EAAIy7B,UAC/B/7B,KAAKk6C,YAAcz5B,EAAMrb,OACzBpF,KAAKqd,YAAcoD,EAAMgB,kBACxBzhB,KAAKwvC,YAAcxvC,KAAKq6C,SAAW55B,EAAMslB,YAC1C/lC,KAAKw6C,OAASl6C,EAAI06C,WAClBh7C,KAAKu6C,UAAY95B,EAAMs6B,aACrB/6C,KAAKy7B,aAAen7B,EAAIm7B,aACxBz7B,KAAK07B,iBAAmBp7B,EAAIo7B,gBAGxC/e,EAAMqb,eAAex2B,UAAU2U,YAAc,SAAS+jC,EAAY78B,GAChErd,KAAKm6C,kBAAoBD,EACzBl6C,KAAKo6C,kBAAoB/8B,EAEzBrd,KAAKg6B,cAaPrd,EAAMqb,eAAex2B,UAAUw4B,WAAa,WAY1C,IAXwBv6B,EAWpBs6C,EAAmB/5C,KAAK+5C,iBACxBE,EAAmBj6C,KAAKi6C,iBACxBE,EAAoBn6C,KAAK80C,cACzBsF,EAAoBp6C,KAAK80C,cA4B7B,GA1BI90C,KAAK+5B,UACPggB,EAAmB/5C,KAAKi6C,iBACxBA,EAAmBj6C,KAAK+5C,iBAExBI,EAAoBn6C,KAAKo6C,kBACzBA,EAAoBp6C,KAAKm6C,mBAGvBn6C,KAAK+tC,oBAAsB/tC,KAAKq6C,MAC9BN,GAAoB/5C,KAAKg6C,aACzBD,GAAoB/5C,KAAK06C,UAC3BX,GA3BoBt6C,EA2Bcs6C,GA1B5B,EAECt6C,EAAI,EAKNA,GAuBLO,KAAKy6C,YACPV,EAAmBE,EACnBE,EAAoBn6C,KAAKo6C,mBAIvBL,GAAoB/5C,KAAK06C,UAC3B16C,KAAKk6C,WAAeH,GAAoB/5C,KAAKg6C,YAC1BG,EAAoBn6C,KAAKyF,aAAas0C,IAGvD/5C,KAAKs6C,QAAUt6C,KAAKy6C,UAAW,CACjC,IAAIQ,EAAqBj7C,KAAKk6C,YAAcl6C,KAAK80C,cACzB90C,KAAKm6C,kBAAoBn6C,KAAKk6C,WACtDl6C,KAAKk6C,WAAan7C,EAAIiD,OAAO6C,IAAIo2C,EAAkB,eAAgB,OAGjEhB,GAAoBj6C,KAAK06C,UAC3B16C,KAAKqd,WAAe48B,GAAoBj6C,KAAKg6C,YAC1BI,EAAoBp6C,KAAKyF,aAAaw0C,KAc7Dt9B,EAAMqb,eAAekjB,gBAAkB,SAASC,EAAMC,GACpD,GAAmB,iBAARD,EACT,OAAOx+B,EAAMqb,eAAeqjB,mBAAmBD,GAEjD,GAAID,EAAKrf,UAAYsf,EAAKtf,SACxB,OAAO,EAET,GAAqB,GAAjBqf,EAAKrf,SACP,OAAO,EAET,IAAIwf,EAASH,EAAK16B,MACd86B,EAASH,EAAK36B,MAElB,OAAQ66B,EAAOl2C,OAASm2C,EAAOn2C,OACvBk2C,EAAO75B,iBAAmB85B,EAAO95B,iBACjC65B,EAAOvV,YAAcwV,EAAOxV,YAC5BuV,EAAOP,WAAaQ,EAAOR,WAC3BO,EAAOtf,gBAAkBuf,EAAOvf,gBAW1Crf,EAAMqb,eAAeqjB,mBAAqB,SAAS/6C,GACjD,MAAqB,iBAAPA,GAAoC,GAAhBA,EAAIw7B,UAUxCnf,EAAMqb,eAAeyC,UAAY,SAAS7uB,GACxC,OAAKA,EAAKgwB,UAGDhwB,EAAKM,YAAY3M,OAFjBR,EAAIqc,GAAGc,SAAStQ,EAAKM,cAgBhCyQ,EAAMqb,eAAeiD,WAAa,SAASrvB,EAAMyQ,EAAOF,GACtD,OAAKvQ,EAAKgwB,UAGDhwB,EAAKM,YAAY9I,OAAOiZ,EAAOF,GAF/Bpd,EAAIqc,GAAGhY,OAAOwI,EAAKM,YAAamQ,EAAOF,IAgBlDQ,EAAMqb,eAAewjB,cAAgB,SAAS5vC,EAAMyQ,EAAOK,GACzD,OAAK9Q,EAAKgwB,UAGDhwB,EAAKM,YAAYuQ,UAAUJ,EAAOK,GAFlC3d,EAAIqc,GAAGqB,UAAU7Q,EAAKM,YAAamQ,EAAOK,IAiBrDC,EAAMqb,eAAe8b,oBAAsB,SAASluC,GAKlD,IAJA,IAAII,EAAK,GACLlB,EAAO,EAAGvF,EAAS,EACnBq8B,GAAY,EAEPn8B,EAAI,EAAGA,EAAImG,EAAIrG,QAAS,CAC/B,IAAIqb,EAAIhV,EAAIwW,YAAY3c,GACpBg8C,EAAa7gC,GAAK,MAAU,EAAI,EAChCA,EAAI,IACNrb,GAAUk8C,EACD18C,EAAIqc,GAAGW,UAAUnB,IAAM,GAChCrb,GAAUk8C,EACV7f,GAAY,IAERr8B,IACFyG,EAAG9F,KAAK,CACN0F,IAAKA,EAAIxC,OAAO0B,EAAMvF,GACtBq8B,UAAWA,IAEbA,GAAY,GAEd51B,EAAG9F,KAAK,CACN0F,IAAKA,EAAIxC,OAAO3D,EAAGg8C,GACnB9f,QAAQ,EACRC,WAAW,IAEb92B,EAAOrF,EAAIg8C,EACXl8C,EAAS,GAEXE,GAAKg8C,EAUP,OAPIl8C,GACFyG,EAAG9F,KAAK,CACN0F,IAAKA,EAAIxC,OAAO0B,EAAMvF,GACtBq8B,UAAWA,IAIR51B,GASTjH,EAAIc,MAAM,aAAc,QAAS,kBACvB,yBAeV8c,EAAM2vB,GAAK,SAAStsB,GAIlBhgB,KAAKggB,SAAWA,EAEhBA,EAASyyB,QAAUzyC,KAAK07C,iBAAiBxxC,KAAKlK,MAC9CA,KAAK6vC,YAAc7vC,KAAK8vC,sBAKxB9vC,KAAK27C,YAAc,IAAIh/B,EAAM2vB,GAAGsP,WAAW57C,KAAK67C,eAIhD77C,KAAK87C,iBAAmB,GAIxB97C,KAAK+7C,kBAAoB,GAGzB/7C,KAAKg8C,0BAA2B,EAGhCh8C,KAAKi8C,cAAgB,IAGrBj8C,KAAKk8C,aAAe,IAAIn9C,EAAIub,YAa5Bta,KAAK6tC,mBAAoB,EAKzB7tC,KAAKiuC,sBAAuB,EAM5BjuC,KAAKkuC,aAAc,EAKnBluC,KAAKqkB,kBAAoB,QASzBrkB,KAAKouC,kBAAoB,KAMzBpuC,KAAKm8C,mBAAoB,EAKzBn8C,KAAKutC,cAAgB,IAAI5wB,EAAM2vB,GAAG8P,cAUlCp8C,KAAKq8C,GAAKr8C,KAAKs8C,GAAKt8C,KAAKu8C,GAAKv8C,KAAKw8C,GAC/Bx8C,KAAKutC,cAAckP,OAAO,KAU9Bz8C,KAAK08C,GAAK,KAQV18C,KAAK28C,GAAK,KAQV38C,KAAK48C,mBAAoB,EACzB58C,KAAK68C,qBAAsB,EAK3B78C,KAAK88C,YAAc,KACnB98C,KAAK+8C,uBAKL/8C,KAAKg9C,YAAc,IAAIrgC,EAAM2vB,GAAG2Q,YAAYj9C,OAM9C2c,EAAM2vB,GAAG9qC,UAAUsuC,sBAAwB,EAO3CnzB,EAAM2vB,GAAG9qC,UAAU07C,mBAAqB,EAOxCvgC,EAAM2vB,GAAG9qC,UAAU27C,kBAAoB,EAWvCxgC,EAAM2vB,GAAGsP,WAAa,SAASwB,EAAiBC,GAC9Cr9C,KAAKo9C,gBAAkBA,EACvBp9C,KAAKs9C,IAAMD,GAAW,KACtBr9C,KAAKqtB,IAAM,EACXrtB,KAAKu9C,KAAOH,EACZp9C,KAAKgL,KAAO,IAMd2R,EAAM2vB,GAAGsP,WAAWp6C,UAAUgP,MAAQ,SAAS6sC,GAC7Cr9C,KAAKw9C,qBACLx9C,KAAKy9C,SAASJ,GAAW,IACzBr9C,KAAK09C,kBAMP/gC,EAAM2vB,GAAGsP,WAAWp6C,UAAUg8C,mBAAqB,WACjDx9C,KAAKu9C,KAAOv9C,KAAKo9C,iBAQnBzgC,EAAM2vB,GAAGsP,WAAWp6C,UAAUi8C,SAAW,SAASJ,GAChDr9C,KAAKs9C,IAAyB,iBAAXD,EAAuBA,EAAU,KACpDr9C,KAAKqtB,IAAM,GAQb1Q,EAAM2vB,GAAGsP,WAAWp6C,UAAUk8C,eAAiB,SAASC,GACtD39C,KAAKgL,KAAKzL,OAAS,OACQ,IAAhBo+C,IACT39C,KAAKgL,KAAK,GAAK2yC,IAQnBhhC,EAAM2vB,GAAGsP,WAAWp6C,UAAUo8C,KAAO,SAASC,EAAQzwC,GACpD,IAAIxH,EAAM5F,KAAKgL,KAAK6yC,GACpB,GAAIj4C,EAAK,CACP,IAAI+U,EAAM/W,SAASgC,EAAK,IAIxB,OAFW,GAAP+U,IACFA,EAAMvN,GACDuN,EAET,OAAOvN,GAQTuP,EAAM2vB,GAAGsP,WAAWp6C,UAAUusB,QAAU,SAASe,GAC/C9uB,KAAKqtB,KAAOyB,GASdnS,EAAM2vB,GAAGsP,WAAWp6C,UAAUs8C,iBAAmB,WAC/C,OAAO99C,KAAKs9C,IAAIl6C,OAAOpD,KAAKqtB,MAS9B1Q,EAAM2vB,GAAGsP,WAAWp6C,UAAUu8C,SAAW,WACvC,OAAO/9C,KAAKs9C,IAAIl6C,OAAOpD,KAAKqtB,IAAK,IASnC1Q,EAAM2vB,GAAGsP,WAAWp6C,UAAUw8C,YAAc,WAC1C,OAAOh+C,KAAKs9C,IAAIl6C,OAAOpD,KAAKqtB,MAAO,IAMrC1Q,EAAM2vB,GAAGsP,WAAWp6C,UAAUinB,WAAa,WACzC,OAAmB,MAAZzoB,KAAKs9C,KAAet9C,KAAKs9C,IAAI/9C,QAAUS,KAAKqtB,KAGrD1Q,EAAM2vB,GAAG2Q,YAAc,SAAS73B,GAC9BplB,KAAKi+C,IAAM74B,EACXplB,KAAKmU,QAGPwI,EAAM2vB,GAAG2Q,YAAYz7C,UAAU2S,KAAO,WACpCnU,KAAKowC,OAASpwC,KAAKi+C,IAAIj+B,SAAS+vB,aAEhC/vC,KAAK+3B,eAAiB/3B,KAAKi+C,IAAIj+B,SAASgwB,oBAAoB3wB,QAE5Drf,KAAK08C,GAAK18C,KAAKi+C,IAAIvB,GACnB18C,KAAK28C,GAAK38C,KAAKi+C,IAAItB,GAEnB38C,KAAKq8C,GAAKr8C,KAAKi+C,IAAI5B,GACnBr8C,KAAKs8C,GAAKt8C,KAAKi+C,IAAI3B,GACnBt8C,KAAKu8C,GAAKv8C,KAAKi+C,IAAI1B,GACnBv8C,KAAKw8C,GAAKx8C,KAAKi+C,IAAIzB,IAGrB7/B,EAAM2vB,GAAG2Q,YAAYz7C,UAAU08C,QAAU,WACvCl+C,KAAKi+C,IAAIj+B,SAASmwB,cAAcnwC,KAAKowC,QAErCpwC,KAAKi+C,IAAIj+B,SAASiwB,kBAAkBjwC,KAAK+3B,eAAe1Y,SAExDrf,KAAKi+C,IAAIvB,GAAK18C,KAAK08C,GACnB18C,KAAKi+C,IAAItB,GAAK38C,KAAK28C,GAEnB38C,KAAKi+C,IAAI5B,GAAKr8C,KAAKq8C,GACnBr8C,KAAKi+C,IAAI3B,GAAKt8C,KAAKs8C,GACnBt8C,KAAKi+C,IAAI1B,GAAKv8C,KAAKu8C,GACnBv8C,KAAKi+C,IAAIzB,GAAKx8C,KAAKw8C,IAGrB7/B,EAAM2vB,GAAG9qC,UAAUgP,MAAQ,WACzBxQ,KAAKq8C,GAAKr8C,KAAKutC,cAAckP,OAAO,KACpCz8C,KAAKs8C,GAAKt8C,KAAKutC,cAAckP,OAAO,KACpCz8C,KAAKu8C,GAAKv8C,KAAKutC,cAAckP,OAAO,KACpCz8C,KAAKw8C,GAAKx8C,KAAKutC,cAAckP,OAAO,KAEpCz8C,KAAK08C,GAAK,KACV18C,KAAK28C,GAAK,KAEV38C,KAAKg9C,YAAc,IAAIrgC,EAAM2vB,GAAG2Q,YAAYj9C,MAE5CA,KAAK6vC,YAAc7vC,KAAK8vC,uBAQ1BnzB,EAAM2vB,GAAG9qC,UAAUk6C,iBAAmB,SAAS1oC,GAC7C,GAAIhT,KAAK6vC,aAAe7vC,KAAK8vC,sBAA7B,CAIA,IAAIqO,EAGAz2B,EAAM,EACN1U,EAAEmT,WACJuB,GAAO,IACL1U,EAAE8S,SAAY9lB,KAAKggB,SAASiH,SAASxC,WAAazR,EAAE+S,UACtD2B,GAAO,GACL1U,EAAE6S,UACJ6B,GAAO,IAKT,IAAIqiB,EAAIxoC,OAAOwZ,aAAahc,EAAIoC,EAAEgG,MAAM6L,EAAE6lC,eAAiB,GAAI,GAAI,MAC/DhP,EAAItoC,OAAOwZ,aAAahc,EAAIoC,EAAEgG,MAAM6L,EAAE4lC,YAAc,GAAI,GAAI,MAEhE,OAAQ5lC,EAAEtB,MACR,IAAK,QAEHjO,EAAsC,KAAnB,EAAZuP,EAAEq2B,OAAe,EAAK,EAAI,GACjC5lC,GAAKikB,EACLy2B,EAAW,MAAW58C,OAAOwZ,aAAatX,GAAKsmC,EAAIF,EAGnD72B,EAAEoT,iBACF,MAEF,IAAK,YAEH,IAAI3iB,EAAIZ,KAAKC,IAAIkQ,EAAEu8B,OAAQ,GAAK,GAGhC9rC,GAAKikB,EAELy2B,EAAW,MAAW58C,OAAOwZ,aAAatX,GAAKsmC,EAAIF,EACnD,MAEF,IAAK,UAEHsU,EAAW,OAAepU,EAAIF,EAC9B,MAEF,IAAK,YACC7pC,KAAK6vC,aAAe7vC,KAAKm9C,mBAAqBnqC,EAAEorC,UAKlD36C,EAAI,GAGY,EAAZuP,EAAEorC,QAEJ36C,GAAK,EACgB,EAAZuP,EAAEorC,QAEX36C,GAAK,EACgB,EAAZuP,EAAEorC,QAEX36C,GAAK,EAGLA,GAAK,EAIPA,GAAK,GAGLA,GAAKikB,EAELy2B,EAAW,MAAW58C,OAAOwZ,aAAatX,GAAKsmC,EAAIF,GAGrD,MAEF,IAAK,QACL,IAAK,WACH,MAEF,QACEppC,QAAQ4E,MAAM,wBAA0B2N,EAAEtB,KAAMsB,GAIhDmrC,GACFn+C,KAAKggB,SAASusB,GAAG2M,WAAWiF,KAShCxhC,EAAM2vB,GAAG9qC,UAAU+wC,UAAY,SAAS+K,GAGtC,IAFAt9C,KAAK27C,YAAY8B,SAASz9C,KAAK0a,OAAO4iC,KAE9Bt9C,KAAK27C,YAAYlzB,cAAc,CACrC,IAAI80B,EAAOv9C,KAAK27C,YAAY4B,KACxBlwB,EAAMrtB,KAAK27C,YAAYtuB,IAK3B,GAJIiwB,EAAMt9C,KAAK27C,YAAY2B,IAE3Bt9C,KAAK27C,YAAY4B,KAAK/1B,KAAKxnB,KAAMA,KAAK27C,aAElC37C,KAAK27C,YAAY4B,MAAQA,GAAQv9C,KAAK27C,YAAYtuB,KAAOA,GACzDrtB,KAAK27C,YAAY2B,KAAOA,EAC1B,KAAM,oCAQZ3gC,EAAM2vB,GAAG9qC,UAAUkZ,OAAS,SAAS9U,GACnC,MAA8B,SAA1B5F,KAAKqkB,kBACArkB,KAAKgb,WAAWpV,GAElBA,GAQT+W,EAAM2vB,GAAG9qC,UAAU0Z,WAAa,SAAStV,GACvC,OAAO7G,EAAImc,WAAWtV,IAMxB+W,EAAM2vB,GAAG9qC,UAAUwZ,WAAa,SAASpV,GACvC,OAAO5F,KAAKk8C,aAAaxhC,OAAO9U,IAQlC+W,EAAM2vB,GAAG9qC,UAAU+sC,YAAc,SAAS8P,GACxC,OAAQA,GACN,QACE59C,QAAQC,KAAK,0CAA4C29C,GAE3D,IAAK,WACHr+C,KAAK48C,mBAAoB,EACzB58C,KAAK68C,qBAAsB,EAC3B,MACF,IAAK,eACH78C,KAAK48C,mBAAoB,EACzB58C,KAAK68C,qBAAsB,EAC3B,MACF,IAAK,QACH78C,KAAK48C,mBAAoB,EACzB58C,KAAK68C,qBAAsB,EAI/B78C,KAAK+8C,wBAMPpgC,EAAM2vB,GAAG9qC,UAAUu7C,qBAAuB,WAGxC,IAAIuB,EAAMrwC,OAAOD,KAAK2O,EAAM2vB,GAAGiS,KAC1BC,QAAQxrC,IAAOhT,KAAK48C,mBAAqB5pC,EAAE6H,aAAe,MAC1DlX,KAAKqP,GAAM,MAAQjU,EAAIoC,EAAE6B,KAAKgQ,EAAE6H,aAAa9X,SAAS,IAAK,KAC3D2R,KAAK,IACV1U,KAAK88C,YAAc,IAAIz6C,OAAO,IAAIi8C,OAUpC3hC,EAAM2vB,GAAG9qC,UAAUq6C,cAAgB,SAAS4C,GAC1C,IAAIj+C,EAAOR,KAEX,SAAS0zC,EAAM9tC,IACRpF,EAAKo8C,mBAAqBp8C,EAAKA,EAAKk8C,IAAIA,KAC3C92C,EAAMpF,EAAKA,EAAKk8C,IAAIA,GAAG92C,IAEzBpF,EAAKwf,SAAS0zB,MAAM9tC,GAItB,IAAI03C,EAAMmB,EAAWX,mBACjBY,EAAcpB,EAAIre,OAAOj/B,KAAK88C,aAElC,OAAmB,GAAf4B,GAEF1+C,KAAK2+C,SAAS,MAAOrB,EAAIl6C,OAAO,EAAG,GAAIq7C,QACvCA,EAAW1wB,QAAQ,KAID,GAAhB2wB,GAEFhL,EAAM4J,QACNmB,EAAWjuC,UAIbkjC,EAAM4J,EAAIl6C,OAAO,EAAGs7C,IACpB1+C,KAAK2+C,SAAS,MAAOrB,EAAIl6C,OAAOs7C,EAAa,GAAID,QACjDA,EAAW1wB,QAAQ2wB,EAAc,KAQnC/hC,EAAM2vB,GAAG9qC,UAAUo9C,UAAY,SAASH,GACtC,IAAIx4B,EAAKw4B,EAAWV,WAChB/yC,EAAOyzC,EAAWzzC,KAElBib,GAAM,KAAOA,GAAM,KAErBjmB,KAAK2+C,SAAS,MAAO3+C,KAAK87C,iBAAmB97C,KAAK+7C,kBAAoB91B,EACxDw4B,GACdA,EAAWjB,sBAEI,KAANv3B,EAELjmB,KAAK+7C,kBAEP0C,EAAWjB,sBAGNxyC,EAAKzL,QAERyL,EAAK9K,KAAK,IAGZ8K,EAAK9K,KAAK,KAGH+lB,GAAM,KAAOA,GAAM,IAGxBjmB,KAAK+7C,kBAEP0C,EAAWjB,qBAENxyC,EAAKzL,OAGRyL,EAAKA,EAAKzL,OAAS,IAAM0mB,EAFzBjb,EAAK,GAAKib,EAMLA,GAAM,KAAOA,GAAM,KAAa,KAANA,EAE9Bjb,EAAKzL,OAGRS,KAAK+7C,mBAAqB91B,EAF1BjmB,KAAK87C,kBAAoB71B,EAKlBjmB,KAAK88C,YAAYp4C,KAAKuhB,GAE/BjmB,KAAK2+C,SAAS,MAAO14B,EAAIw4B,GAIzBA,EAAWjB,qBAGbiB,EAAW1wB,QAAQ,IAmBrBpR,EAAM2vB,GAAG9qC,UAAUq9C,4BAA8B,SAASJ,GACxD,IAcMK,EAdFxB,EAAMmB,EAAWX,mBACjBiB,EAAiBzB,EAAIre,OAAO,iBAC5Bj0B,EAAOyzC,EAAWzzC,KAOtB,OALKA,EAAKzL,SACRyL,EAAK,GAAK,GACVA,EAAK,GAAK,IAAIwN,OAGO,GAAnBumC,GAGF/zC,EAAK,IAAMsyC,EAIPtyC,EAAK,GAAGzL,OAASS,KAAKouC,oBACxB0Q,EAAc,aAAe9zC,EAAK,GAAGzL,SAEP,GAA5ByL,EAAK,GAAG3H,QAAQ,OAClBy7C,EAAc,oBAAsB9zC,EAAK,GAAG3H,QAAQ,MAElD,IAAImV,KAASxN,EAAK,GAAKhL,KAAKi8C,gBAC9B6C,EAAc,oBAAsB,IAAItmC,KAASxN,EAAK,IAEpD8zC,GACFr+C,QAAQoH,IAAI,0CAA4Ci3C,EAC5C9zC,EAAK,IACjByzC,EAAWjuC,MAAMxF,EAAK,KACf,IAGTyzC,EAAW1wB,QAAQuvB,EAAI/9C,SAChB,IAGLyL,EAAK,GAAGzL,OAASw/C,EAAiB/+C,KAAKouC,mBAEzCqQ,EAAWjuC,MAAMxF,EAAK,GAAKsyC,IACpB,IAGTtyC,EAAK,IAAMsyC,EAAIl6C,OAAO,EAAG27C,GAEzBN,EAAWjB,qBACXiB,EAAW1wB,QAAQgxB,GACkC,KAAjCzB,EAAIl6C,OAAO27C,EAAgB,GAAe,EAAI,KAE3D,IAMTpiC,EAAM2vB,GAAG9qC,UAAUm9C,SAAW,SAASjtC,EAAMiW,EAAM82B,GACjD,IAAIl5B,EAAU5I,EAAM2vB,GAAG56B,GAAMiW,GACxBpC,EAMDA,GAAW5I,EAAM2vB,GAAG0S,OAMZ,OAARttC,GAAiBiW,EAAO,MAAW3nB,KAAK6tC,kBAS1CptC,QAAQC,KAAK,kCACAinB,EAAK9M,WAAW,GAAG9X,SAAS,KAI3CwiB,EAAQzlB,MAAME,KAAM,CAACy+C,EAAY92B,IAnB3B3nB,KAAKm8C,mBACP17C,QAAQC,KAAK,WAAagR,EAAO,UAAYhH,KAAKgD,UAAUia,IAP1D3nB,KAAKm8C,mBACP17C,QAAQC,KAAK,WAAagR,EAAO,UAAYhH,KAAKgD,UAAUia,KAkClEhL,EAAM2vB,GAAG9qC,UAAUy9C,YAAc,SAASt3B,EAAM7d,GAClC,GAAR6d,EACF3nB,KAAKggB,SAAS82B,cAAchtC,GACX,IAAR6d,EACT3nB,KAAKggB,SAAS+2B,sBAAsBjtC,GAC3B9J,KAAKm8C,mBACd17C,QAAQC,KAAK,4BAA8BinB,IAS/ChL,EAAM2vB,GAAG9qC,UAAU09C,WAAa,SAASv3B,EAAM7d,GAC7C,OAAQlG,SAAS+jB,EAAM,KACrB,KAAK,EACH3nB,KAAKggB,SAASiH,SAAS9C,kBAAoBra,EAC3C,MAEF,KAAK,EACC9J,KAAKg8C,2BACPh8C,KAAKggB,SAAS0wB,SAAS5mC,EAAQ,IAAM,IAErC9J,KAAKggB,SAAS2xB,YACd3xC,KAAKggB,SAASuxB,kBAAkB,KAAM,OAExC,MAEF,KAAK,EACHvxC,KAAKggB,SAASgzB,gBAAgBlpC,GAC9B,MAEF,KAAK,EACH9J,KAAKggB,SAAS62B,cAAc/sC,GAC5B,MAEF,KAAK,EACH9J,KAAKggB,SAASg3B,cAAcltC,GAC5B,MAEF,KAAK,GACC9J,KAAKkuC,aACPluC,KAAKggB,SAASytB,eAAe3jC,GAC/B,MAEF,KAAK,GACH9J,KAAKggB,SAAS+xB,iBAAiBjoC,GAC/B,MAEF,KAAK,GACH9J,KAAKggB,SAASsqB,oBAAoBxgC,GAClC,MAEF,KAAK,GACH9J,KAAKggB,SAASg8B,yBAA2BlyC,EACzC,MAEF,KAAK,GACH9J,KAAKggB,SAASi3B,qBAAqBntC,GACnC,MAEF,KAAK,GACH9J,KAAKggB,SAASiH,SAAS7C,wBAA0Bta,EACjD,MAEF,KAAK,IACH9J,KAAK6vC,YACD/lC,EAAQ9J,KAAKk9C,mBAAqBl9C,KAAK8vC,sBAC3C9vC,KAAKggB,SAAS4vB,iBACd,MAEF,KAAK,KACH5vC,KAAK6vC,YACD/lC,EAAQ9J,KAAKm9C,kBAAoBn9C,KAAK8vC,sBAC1C9vC,KAAKggB,SAAS4vB,iBACd,MAEF,KAAK,KACH5vC,KAAKggB,SAASm/B,eAAiBr1C,EAC/B,MAEF,KAAK,KACH9J,KAAKggB,SAASo/B,kBAAoBt1C,EAClC,MAEF,KAAK,KACH9J,KAAKggB,SAASiH,SAAS3C,gBAAkBxa,EACzC,MAEF,KAAK,KACCA,EACG9J,KAAKggB,SAASiH,SAASpC,wBAC1B7kB,KAAKggB,SAASiH,SAASpC,sBACnB7kB,KAAKggB,SAASiH,SAASzC,aAC3BxkB,KAAKggB,SAASiH,SAASzC,aAAe,UAE/BxkB,KAAKggB,SAASiH,SAASpC,wBAChC7kB,KAAKggB,SAASiH,SAASzC,aACnBxkB,KAAKggB,SAASiH,SAASpC,sBAC3B7kB,KAAKggB,SAASiH,SAASpC,sBAAwB,MAEjD,MAEF,KAAK,GACL,KAAK,KACH7kB,KAAKggB,SAASk3B,iBAAiBptC,GAC/B,MAEF,KAAK,KACH9J,KAAKg9C,YAAY7oC,OAEnB,KAAK,KACCrK,GACF9J,KAAKg9C,YAAY7oC,OACjBnU,KAAKggB,SAASk3B,iBAAiBptC,GAC/B9J,KAAKggB,SAASxN,UAEdxS,KAAKggB,SAASk3B,iBAAiBptC,GAC/B9J,KAAKg9C,YAAYkB,WAGnB,MAEF,KAAK,KACHl+C,KAAKggB,SAASyuB,kBAAkB3kC,GAChC,MAEF,QACM9J,KAAKm8C,mBACP17C,QAAQC,KAAK,mCAAqCinB,KAS1DhL,EAAM2vB,GAAG0S,OAAS,aAalBriC,EAAM2vB,GAAGiS,IAAM,GAKf5hC,EAAM2vB,GAAGhd,IAAM,GAOf3S,EAAM2vB,GAAGhjB,IAAM,GAQf3M,EAAM2vB,GAAG+S,IAAM,GAOf1iC,EAAM2vB,GAAGgT,KAAO,GAOhB3iC,EAAM2vB,GAAGiS,IAAI,MAAU5hC,EAAM2vB,GAAG0S,OAUhCriC,EAAM2vB,GAAGiS,IAAI,KAAU5hC,EAAM2vB,GAAG0S,OAKhCriC,EAAM2vB,GAAGiS,IAAI,KAAU,WACrBv+C,KAAKggB,SAASu2B,YAShB55B,EAAM2vB,GAAGiS,IAAI,MAAU,WACrBv+C,KAAKggB,SAASm2B,WAAW,IAS3Bx5B,EAAM2vB,GAAGiS,IAAI,MAAU,WACrBv+C,KAAKggB,SAASgyB,kBAShBr1B,EAAM2vB,GAAGiS,IAAI,MAAU,WACrBv+C,KAAKggB,SAASq0B,YAQhB13B,EAAM2vB,GAAGiS,IAAI,MAAU5hC,EAAM2vB,GAAGiS,IAAI,MAOpC5hC,EAAM2vB,GAAGiS,IAAI,MAAU5hC,EAAM2vB,GAAGiS,IAAI,MAOpC5hC,EAAM2vB,GAAGiS,IAAI,MAAU,WACrBv+C,KAAKggB,SAASiyB,gBAAgB,IAQhCt1B,EAAM2vB,GAAGiS,IAAI,KAAU,WACrBv+C,KAAK08C,GAAK,MAQZ//B,EAAM2vB,GAAGiS,IAAI,KAAU,WACrBv+C,KAAK08C,GAAK,MAUZ//B,EAAM2vB,GAAGiS,IAAI,KAAU5hC,EAAM2vB,GAAG0S,OAShCriC,EAAM2vB,GAAGiS,IAAI,KAAU5hC,EAAM2vB,GAAG0S,OAUhCriC,EAAM2vB,GAAGiS,IAAI,KAAU,SAASE,GAGf,MAAXz+C,KAAK08C,KACP18C,KAAK08C,GAAK,MAEZ+B,EAAWjB,qBACXx9C,KAAKggB,SAAS0zB,MAAM,MAQtB/2B,EAAM2vB,GAAGiS,IAAI,KAAU5hC,EAAM2vB,GAAGiS,IAAI,KAKpC5hC,EAAM2vB,GAAGiS,IAAI,KAAU,SAASE,GAa9BA,EAAWlB,KAZX,SAASgC,EAASd,GAChB,IAAIx4B,EAAKw4B,EAAWT,cAEV,KAAN/3B,IAGJjmB,KAAK2+C,SAAS,MAAO14B,EAAIw4B,GAErBA,EAAWlB,MAAQgC,GACrBd,EAAWjB,wBASjB7gC,EAAM2vB,GAAGiS,IAAI,KAAU5hC,EAAM2vB,GAAG0S,OAShCriC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAKggB,SAASo0B,YAQhBz3B,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAKggB,SAASiyB,gBAAgB,GAC9BjyC,KAAKggB,SAASg2B,WAAW,IAM3Br5B,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAKggB,SAASmyB,WAAWnyC,KAAKggB,SAAS21B,oBAQzCh5B,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAKggB,SAASs0B,mBAUhB33B,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI3S,EAAM2vB,GAAG0S,OAS7BriC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI3S,EAAM2vB,GAAG0S,OAU7BriC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI,SAASmvB,GAC3BA,EAAWf,iBACXe,EAAWlB,KAAOv9C,KAAK6+C,6BAQzBliC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI3S,EAAM2vB,GAAG0S,OAO7BriC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI3S,EAAM2vB,GAAG0S,OAO7BriC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI3S,EAAM2vB,GAAG0S,OAO7BriC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAKggB,SAASusB,GAAG2M,WAAW,YAQ9Bv8B,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAI,KAAO,SAASmvB,GAC3BA,EAAWf,iBACX19C,KAAK87C,iBAAmB,GACxB97C,KAAK+7C,kBAAoB,GACzB0C,EAAWlB,KAAOv9C,KAAK4+C,WAWzBjiC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAI,MAAQ3S,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAI,KAAO,SAASmvB,GAC3BA,EAAWf,iBAuBXe,EAAWlB,KArBX,SAASiC,EAASf,GAChB,GAAKz+C,KAAK6+C,4BAA4BJ,IAKlCA,EAAWlB,MAAQiC,EAAvB,CAMA,IAAIz/C,EAAM0+C,EAAWzzC,KAAK,GAAG/H,MAAM,gBAC/BlD,GACF0+C,EAAWzzC,KAAK,GAAKjL,EAAI,GACzBC,KAAK2+C,SAAS,MAAO5+C,EAAI,GAAI0+C,IAE7Bh+C,QAAQC,KAAK,gBAAkBgK,KAAKgD,UAAU+wC,EAAWzzC,KAAK,QAYpE2R,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAI,KAAO,SAASmvB,GAC3BA,EAAWf,iBACXe,EAAWlB,KAAOv9C,KAAK6+C,6BAQzBliC,EAAM2vB,GAAGiS,IAAI,KACb5hC,EAAM2vB,GAAGhd,IAAO,EAAI,SAASmvB,GAC3BA,EAAWf,iBACXe,EAAWlB,KAAOv9C,KAAK6+C,6BAgBzBliC,EAAM2vB,GAAGhd,IAAI,KAAU,SAASmvB,GAC9BA,EAAWlB,KAAO,SAASkB,GACzB,IAAIx4B,EAAKw4B,EAAWT,cAChBh+C,KAAKm8C,mBACP17C,QAAQC,KAAK,oCAAsCulB,GACrDw4B,EAAWjB,uBAOf7gC,EAAM2vB,GAAGhd,IAAI,KAAO,SAASmvB,GAC3BA,EAAWlB,KAAO,SAASkB,GAEf,KADDA,EAAWT,eAElBh+C,KAAKggB,SAASk1B,KAAK,KAErBuJ,EAAWjB,uBAOf7gC,EAAM2vB,GAAGhd,IAAI,KAAO,SAASmvB,GAC3BA,EAAWlB,KAAO,SAASkB,GACzB,IAAIx4B,EAAKw4B,EAAWT,cAGpB,GAAIh+C,KAAK68C,oBAIP,MAHU,KAAN52B,GACFw4B,EAAWT,mBACbS,EAAWjB,qBAKb,OAAQv3B,GACN,IAAK,IAEHjmB,KAAKuuC,YAAY,YACjB,MAEF,IAAK,IAEHvuC,KAAKuuC,YAAY,SACjB,MAEF,IAAK,IAGH,OADAtoB,EAAKw4B,EAAWT,eAEd,IAAK,IACL,IAAK,IACL,IAAK,IAEHh+C,KAAKuuC,YAAY,gBACjB,MAEF,QACMvuC,KAAKm8C,mBACP17C,QAAQC,KAAK,6BAA+BgK,KAAKgD,UAAUuY,IAGjE,MAEF,QACMjmB,KAAKm8C,mBACP17C,QAAQC,KAAK,2BAA6BgK,KAAKgD,UAAUuY,IAI/Dw4B,EAAWjB,uBAiBf7gC,EAAM2vB,GAAGhd,IAAI,KACb3S,EAAM2vB,GAAGhd,IAAI,KACb3S,EAAM2vB,GAAGhd,IAAI,KACb3S,EAAM2vB,GAAGhd,IAAI,KACb3S,EAAM2vB,GAAGhd,IAAI,KACb3S,EAAM2vB,GAAGhd,IAAI,KACb3S,EAAM2vB,GAAGhd,IAAI,KAAO,SAASmvB,EAAY92B,GACvC82B,EAAWlB,KAAO,SAASkB,GACzB,IAAIx4B,EAAKw4B,EAAWT,cACpB,GAAU,KAAN/3B,EAGF,OAFAw4B,EAAWjB,0BACXiB,EAAWlB,OAIb,IAAI55C,EAAM3D,KAAKutC,cAAckP,OAAOx2B,QACxBrkB,IAAR+B,EACU,KAARgkB,EACF3nB,KAAKq8C,GAAK14C,EACO,KAARgkB,GAAuB,KAARA,EACxB3nB,KAAKs8C,GAAK34C,EACO,KAARgkB,GAAuB,KAARA,EACxB3nB,KAAKu8C,GAAK54C,EACO,KAARgkB,GAAuB,KAARA,IACxB3nB,KAAKw8C,GAAK74C,GAEH3D,KAAKm8C,mBACd17C,QAAQoH,IAAI,8BAAgC8f,EAAO,MAAQ1B,GAG7Dw4B,EAAWjB,uBASf7gC,EAAM2vB,GAAGhd,IAAI,GAAO3S,EAAM2vB,GAAG0S,OAK7BriC,EAAM2vB,GAAGhd,IAAI,GAAO,WAClBtvB,KAAKg9C,YAAY7oC,QAMnBwI,EAAM2vB,GAAGhd,IAAI,GAAO,WAClBtvB,KAAKg9C,YAAYkB,WAQnBvhC,EAAM2vB,GAAGhd,IAAI,GAAO3S,EAAM2vB,GAAG0S,OAK7BriC,EAAM2vB,GAAGhd,IAAI,KAAO,WAClBtvB,KAAKggB,SAASiH,SAAS/C,mBAAoB,GAM7CvH,EAAM2vB,GAAGhd,IAAI,KAAO,WAClBtvB,KAAKggB,SAASiH,SAAS/C,mBAAoB,GAW7CvH,EAAM2vB,GAAGhd,IAAO,EAAI3S,EAAM2vB,GAAG0S,OAK7BriC,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAKwQ,QACLxQ,KAAKggB,SAASxP,SAQhBmM,EAAM2vB,GAAGhd,IAAO,EAChB3S,EAAM2vB,GAAGhd,IAAO,EAAI3S,EAAM2vB,GAAG0S,OAO7BriC,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAK08C,GAAK,MAQZ//B,EAAM2vB,GAAGhd,IAAO,EAAI,WAClBtvB,KAAK08C,GAAK,MAQZ//B,EAAM2vB,GAAGhd,IAAI,KAAO,WAClBtvB,KAAK28C,GAAK,MAQZhgC,EAAM2vB,GAAGhd,IAAI,KAAO,WAClBtvB,KAAK28C,GAAK,MAQZhgC,EAAM2vB,GAAGhd,IAAI,KAAO,WAClBtvB,KAAK28C,GAAK,MAQZhgC,EAAM2vB,GAAG+S,IAAI,GAAO,SAASZ,GAC3Bz+C,KAAKggB,SAASkwB,eAAeuO,EAAWzzC,KAAK,KAM/C2R,EAAM2vB,GAAG+S,IAAI,GAAO1iC,EAAM2vB,GAAG+S,IAAI,GAKjC1iC,EAAM2vB,GAAG+S,IAAI,GAAO,SAASZ,GAS3B,IANA,IAAIzzC,EAAOyzC,EAAWzzC,KAAK,GAAG1L,MAAM,KAEhCmgD,EAAY77C,SAASoH,EAAKzL,OAAS,GACnCkG,EAAezF,KAAKggB,SAASgwB,oBAAoBvqC,aACjDi6C,EAAgB,GAEXC,EAAa,EAAGA,EAAaF,IAAaE,EAAY,CAC7D,IAAIC,EAAah8C,SAASoH,EAAkB,EAAb20C,IAC3BE,EAAa70C,EAAkB,EAAb20C,EAAiB,GAEnCC,GAAcn6C,EAAalG,SAGb,KAAdsgD,GASJA,EAAa9gD,EAAIiD,OAAO6B,SAASg8C,MAE/Bp6C,EAAam6C,GAAcC,IAT3BA,EAAa9gD,EAAIiD,OAAOS,SAASgD,EAAam6C,MAE5CF,EAAcx/C,KAAK0/C,EAAa,IAAMC,IAUxCH,EAAcngD,QAChBS,KAAKggB,SAASusB,GAAG2M,WAAW,OAAYwG,EAAchrC,KAAK,KAAO,MAMtEiI,EAAM2vB,GAAG+S,IAAI,GAAO,SAASZ,GAE3B9hC,EAAM0B,OAAO,CAAC,KAAQogC,EAAWzzC,KAAK,MAMxC2R,EAAM2vB,GAAG+S,IAAI,IAAQ,SAASZ,GAG5B,IAAIzzC,EAAOyzC,EAAWzzC,KAAK,GAAG1L,MAAM,KACpC,GAAK0L,EAAL,CAGA,IACI80C,EAAW/gD,EAAIiD,OAAO6B,SAASmH,EAAK9J,SACpC4+C,GACF9/C,KAAKggB,SAASikB,mBAAmB6b,GAE/B90C,EAAKzL,OAAS,IAChBk/C,EAAWzzC,KAAK,GAAKA,EAAK0J,KAAK,KAC/BiI,EAAM2vB,GAAG+S,IAAI,IAAMv/C,MAAME,KAAM,CAACy+C,OAOpC9hC,EAAM2vB,GAAG+S,IAAI,IAAQ,SAASZ,GAG5B,IAAIzzC,EAAOyzC,EAAWzzC,KAAK,GAAG1L,MAAM,KACpC,GAAK0L,EAAL,CAGA,IACI80C,EAAW/gD,EAAIiD,OAAO6B,SAASmH,EAAK9J,SACpC4+C,GACF9/C,KAAKggB,SAASkkB,mBAAmB4b,KAyBrCnjC,EAAM2vB,GAAG+S,IAAI,IAAQ,SAASZ,GAC5B,IAAIzzC,EAAOyzC,EAAWzzC,KAAK,GAAG/H,MAAM,oBACpC,GAAK+H,EAKL,OAAQA,EAAK,IACX,IAAK,IACHhL,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAY6B,MACxD,MAEF,IAAK,IACHltC,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAY8B,WACxD,MAEF,QACEntC,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAYC,YAd1D7qC,QAAQC,KAAK,gCAAkC+9C,EAAWzzC,KAAK,KA4BnE2R,EAAM2vB,GAAG+S,IAAI,IAAQ,SAASZ,GAI5B,IAAIzzC,EAAOyzC,EAAWzzC,KAAK,GAAG/H,MAAM,wBACpC,GAAK+H,EAAL,CAGA,IAAI2G,EAAOpR,OAAOw/C,KAAK/0C,EAAK,IACxB2G,GACF3R,KAAKggB,SAASg4B,sBAAsBh4C,KAAK0a,OAAO/I,MAapDgL,EAAM2vB,GAAG+S,IAAI,KAAS,SAASZ,GAC7B,IAAI1+C,EAGJ,OAFe0+C,EAAWzzC,KAAK,GAAG1L,MAAM,IAAK,GAAG,IAG9C,IAAK,SAGH,IAAIsf,EAAOvV,GACXtJ,EAAM0+C,EAAWzzC,KAAK,GAAG/H,MAAM,mCAE7B2b,EAAQ7e,EAAI,GACZsJ,EAAUtJ,EAAI,IAEhB4c,EAAM0B,OAAO,CAAC,MAASO,EAAO,KAAQvV,IACtC,MAEF,QACE5I,QAAQC,KAAK,yBAA2B+9C,EAAWzzC,KAAK,MAQ9D2R,EAAM2vB,GAAGhjB,IAAI,KAAO,SAASm1B,GAC3Bz+C,KAAKggB,SAASu1B,YAAYkJ,EAAWb,KAAK,EAAG,KAM/CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAAS+1B,SAAS0I,EAAWb,KAAK,EAAG,KAM5CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASg2B,WAAWyI,EAAWb,KAAK,EAAG,KAM9CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASs2B,YAAYmI,EAAWb,KAAK,EAAG,KAM/CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASm2B,WAAWsI,EAAWb,KAAK,EAAG,KAS9CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASg2B,WAAWyI,EAAWb,KAAK,EAAG,IAC5C59C,KAAKggB,SAASiyB,gBAAgB,IAShCt1B,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAAS+1B,SAAS0I,EAAWb,KAAK,EAAG,IAC1C59C,KAAKggB,SAASiyB,gBAAgB,IAMhCt1B,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASiyB,gBAAgBwM,EAAWb,KAAK,EAAG,GAAK,IAMxDjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAAS4Y,kBAAkB6lB,EAAWb,KAAK,EAAG,GAAK,EACxBa,EAAWb,KAAK,EAAG,GAAK,IAM1DjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,IAAI3vB,EAAQ2vB,EAAWb,KAAK,EAAG,GAC/B9uB,EAAQ/vB,EAAIoC,EAAEgG,MAAM2nB,EAAO,EAAG9uB,KAAKggB,SAAS0mB,WAAWvqB,OACvD,IAAK,IAAI1c,EAAI,EAAGA,EAAIqvB,EAAOrvB,IACzBO,KAAKggB,SAASgyB,kBAOlBr1B,EAAM2vB,GAAGhjB,IAAO,EAChB3M,EAAM2vB,GAAGhjB,IAAI,MAAQ,SAASm1B,EAAY92B,GACxC,IAAIzjB,EAAMu6C,EAAWzzC,KAAK,GAErB9G,GAAc,GAAPA,EAEM,GAAPA,EACTlE,KAAKggB,SAASg1B,cACE,GAAP9wC,GAEO,GAAPA,IADTlE,KAAKggB,SAASxN,QAJdxS,KAAKggB,SAASi1B,cAelBt4B,EAAM2vB,GAAGhjB,IAAO,EAChB3M,EAAM2vB,GAAGhjB,IAAI,MAAQ,SAASm1B,EAAY92B,GACxC,IAAIzjB,EAAMu6C,EAAWzzC,KAAK,GAErB9G,GAAc,GAAPA,EAEM,GAAPA,EACTlE,KAAKggB,SAAS00B,cACE,GAAPxwC,GACTlE,KAAKggB,SAAS+0B,YAJd/0C,KAAKggB,SAAS20B,gBAWlBh4B,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASw0B,YAAYiK,EAAWb,KAAK,EAAG,KAM/CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASq1B,YAAYoJ,EAAWb,KAAK,EAAG,KAQ/CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASuc,YAAYkiB,EAAWb,KAAK,EAAG,KAM/CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASm0B,WAAWsK,EAAWb,KAAK,EAAG,KAO9CjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GACvBA,EAAWzzC,KAAKzL,QAAU,GAC5BS,KAAKggB,SAASy1B,aAAagJ,EAAWb,KAAK,EAAG,KAoBlDjhC,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAK9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAAS20B,aAAa8J,EAAWb,KAAK,EAAG,KAMhDjhC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,IAAI3vB,EAAQ2vB,EAAWb,KAAK,EAAG,GAC/B9uB,EAAQ/vB,EAAIoC,EAAEgG,MAAM2nB,EAAO,EAAG9uB,KAAKggB,SAAS0mB,WAAWvqB,OACvD,IAAK,IAAI1c,EAAI,EAAGA,EAAIqvB,EAAOrvB,IACzBO,KAAKggB,SAASkyB,mBASlBv1B,EAAM2vB,GAAGhjB,IAAI,KAAO3M,EAAM2vB,GAAGhjB,IAAO,EAKpC3M,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASiyB,gBAAgBjyC,KAAKggB,SAAS21B,kBACd8I,EAAWb,KAAK,EAAG,KAQnDjhC,EAAM2vB,GAAGhjB,IAAO,EAAI3M,EAAM2vB,GAAG0S,OAS7BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GACtBA,EAAWzzC,KAAK,IAA4B,GAAtByzC,EAAWzzC,KAAK,IACzChL,KAAKggB,SAASusB,GAAG2M,WAAW,YAWhCv8B,EAAM2vB,GAAGhjB,IAAI,MAAQ,SAASm1B,GAC5Bz+C,KAAKggB,SAASusB,GAAG2M,WAAW,gBAM9Bv8B,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3Bz+C,KAAKggB,SAASy0B,qBAAqBgK,EAAWb,KAAK,EAAG,GAAK,IAQ7DjhC,EAAM2vB,GAAGhjB,IAAO,EAAI3M,EAAM2vB,GAAGhjB,IAAO,EAKpC3M,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GACtBA,EAAWzzC,KAAK,IAA4B,GAAtByzC,EAAWzzC,KAAK,GAGV,GAAtByzC,EAAWzzC,KAAK,IAEzBhL,KAAKggB,SAAS6xB,mBAHd7xC,KAAKggB,SAASoyB,sBAAqB,IAUvCz1B,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,IAAK,IAAIh/C,EAAI,EAAGA,EAAIg/C,EAAWzzC,KAAKzL,OAAQE,IAC1CO,KAAKi/C,YAAYR,EAAWzzC,KAAKvL,IAAI,IAOzCkd,EAAM2vB,GAAGhjB,IAAI,MAAQ,SAASm1B,GAC5B,IAAK,IAAIh/C,EAAI,EAAGA,EAAIg/C,EAAWzzC,KAAKzL,OAAQE,IAC1CO,KAAKk/C,WAAWT,EAAWzzC,KAAKvL,IAAI,IAUxCkd,EAAM2vB,GAAGhjB,IAAO,EAChB3M,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAK9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,IAAK,IAAIh/C,EAAI,EAAGA,EAAIg/C,EAAWzzC,KAAKzL,OAAQE,IAC1CO,KAAKi/C,YAAYR,EAAWzzC,KAAKvL,IAAI,IAOzCkd,EAAM2vB,GAAGhjB,IAAI,MAAQ,SAASm1B,GAC5B,IAAK,IAAIh/C,EAAI,EAAGA,EAAIg/C,EAAWzzC,KAAKzL,OAAQE,IAC1CO,KAAKk/C,WAAWT,EAAWzzC,KAAKvL,IAAI,IAUxCkd,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,SAASuB,EAAOvgD,GACd,OAAIg/C,EAAWzzC,KAAKzL,OAASE,EAAI,GAA+B,GAA1Bg/C,EAAWzzC,KAAKvL,EAAI,GACjD,KAEFg/C,EAAWb,KAAKn+C,EAAI,EAAG,GAGhC,SAASwgD,EAAaxgD,GACpB,OAAIg/C,EAAWzzC,KAAKzL,OAASE,EAAI,GAA+B,GAA1Bg/C,EAAWzzC,KAAKvL,EAAI,GACjD,KAKF,OAJCg/C,EAAWb,KAAKn+C,EAAI,EAAG,GAIX,KAHZg/C,EAAWb,KAAKn+C,EAAI,EAAG,GAGA,KAFvBg/C,EAAWb,KAAKn+C,EAAI,EAAG,GAEW,IAG5C,IAAIygD,EAAQlgD,KAAKggB,SAASgwB,oBAE1B,GAAKyO,EAAWzzC,KAAKzL,OAArB,CAKA,IAAK,IAAIE,EAAI,EAAGA,EAAIg/C,EAAWzzC,KAAKzL,OAAQE,IAAK,CAC/C,IAAIyE,EAAMu6C,EAAWb,KAAKn+C,EAAG,GAE7B,GAAIyE,EAAM,GACG,GAAPA,EACFg8C,EAAM1vC,QACU,GAAPtM,EACTg8C,EAAM7F,MAAO,EACG,GAAPn2C,EACTg8C,EAAM5F,OAAQ,EACE,GAAPp2C,EACTg8C,EAAM3F,QAAS,EACC,GAAPr2C,EACTg8C,EAAMzkB,WAAY,EACF,GAAPv3B,EACTg8C,EAAM1F,OAAQ,EACE,GAAPt2C,EACTg8C,EAAMnmB,SAAU,EACA,GAAP71B,EACTg8C,EAAMzF,WAAY,EACF,GAAPv2C,EACTg8C,EAAMxkB,eAAgB,EACN,IAAPx3B,GACTg8C,EAAM7F,MAAO,EACb6F,EAAM5F,OAAQ,GACE,IAAPp2C,EACTg8C,EAAM3F,QAAS,EACC,IAAPr2C,EACTg8C,EAAMzkB,WAAY,EACF,IAAPv3B,EACTg8C,EAAM1F,OAAQ,EACE,IAAPt2C,EACTg8C,EAAMnmB,SAAU,EACA,IAAP71B,EACTg8C,EAAMzF,WAAY,EACF,IAAPv2C,IACTg8C,EAAMxkB,eAAgB,QAGnB,GAAIx3B,EAAM,GAIf,GAAIA,EAAM,GACRg8C,EAAMnG,iBAAmB71C,EAAM,QAE1B,GAAW,IAAPA,EAGT,GAAiB,OADbi8C,EAAYF,EAAaxgD,IAE3BygD,EAAMnG,iBAAmBmG,EAAMxF,QAC/BwF,EAAMhG,WAAaiG,EAEnB1gD,GAAK,MACA,CAGL,GAAS,OADLmb,EAAIolC,EAAOvgD,IAEb,MAIF,GAFAA,GAAK,EAEDmb,GAAKslC,EAAMz6C,aAAalG,OAC1B,SAEF2gD,EAAMnG,iBAAmBn/B,OAGtB,GAAW,IAAP1W,EACTg8C,EAAMnG,iBAAmBmG,EAAMlG,iBAE1B,GAAI91C,EAAM,GACfg8C,EAAMjG,iBAAmB/1C,EAAM,QAE1B,GAAW,IAAPA,EAAW,CAEpB,IAAIi8C,EACJ,GAAiB,OADbA,EAAYF,EAAaxgD,IAE3BygD,EAAMjG,iBAAmBiG,EAAMxF,QAC/BwF,EAAM7iC,WAAa8iC,EAEnB1gD,GAAK,MACA,CAEL,IAAImb,EACJ,GAAS,OADLA,EAAIolC,EAAOvgD,IAEb,MAIF,GAFAA,GAAK,EAEDmb,GAAKslC,EAAMz6C,aAAalG,OAC1B,SAEF2gD,EAAMjG,iBAAmBr/B,QAG3BslC,EAAMjG,iBAAmBiG,EAAMlG,iBAGxB91C,GAAO,IAAMA,GAAO,GAC7Bg8C,EAAMnG,iBAAmB71C,EAAM,GAAK,EAE3BA,GAAO,KAAOA,GAAO,MAC9Bg8C,EAAMjG,iBAAmB/1C,EAAM,IAAM,GAIzCg8C,EAAM/pC,YAAYnW,KAAKggB,SAASwB,qBACdxhB,KAAKggB,SAAS0B,2BAhH9Bw+B,EAAM1vC,SAwHVmM,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAQ9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,GAA0B,GAAtBA,EAAWzzC,KAAK,GAClBhL,KAAKggB,SAASusB,GAAG2M,WAAW,YACvB,GAA0B,GAAtBuF,EAAWzzC,KAAK,GAAS,CAClC,IAAI0U,EAAM1f,KAAKggB,SAAS41B,eAAiB,EACrCT,EAAMn1C,KAAKggB,SAAS21B,kBAAoB,EAC5C31C,KAAKggB,SAASusB,GAAG2M,WAAW,KAAUx5B,EAAM,IAAMy1B,EAAM,OAS5Dx4B,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAe9BriC,EAAM2vB,GAAGhjB,IAAI,MAAQ,SAASm1B,GAC5B,GAA0B,GAAtBA,EAAWzzC,KAAK,GAAS,CAC3B,IAAI0U,EAAM1f,KAAKggB,SAAS41B,eAAiB,EACrCT,EAAMn1C,KAAKggB,SAAS21B,kBAAoB,EAC5C31C,KAAKggB,SAASusB,GAAG2M,WAAW,KAAUx5B,EAAM,IAAMy1B,EAAM,UACzB,IAAtBsJ,EAAWzzC,KAAK,GACzBhL,KAAKggB,SAASusB,GAAG2M,WAAW,UACG,IAAtBuF,EAAWzzC,KAAK,GACzBhL,KAAKggB,SAASusB,GAAG2M,WAAW,UACG,IAAtBuF,EAAWzzC,KAAK,GACzBhL,KAAKggB,SAASusB,GAAG2M,WAAW,gBACG,IAAtBuF,EAAWzzC,KAAK,IACzBhL,KAAKggB,SAASusB,GAAG2M,WAAW,WAiBhCv8B,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAK9BriC,EAAM2vB,GAAGhjB,IAAI,MAAQ,WACnBtpB,KAAKwQ,QACLxQ,KAAKggB,SAAS8xB,aAQhBn1B,EAAM2vB,GAAGhjB,IAAQ,GAAI3M,EAAM2vB,GAAG0S,OAC9BriC,EAAM2vB,GAAGhjB,IAAI,OAAS3M,EAAM2vB,GAAG0S,OAO/BriC,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAQ9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI3M,EAAM2vB,GAAG0S,OAK7BriC,EAAM2vB,GAAGhjB,IAAI,MAAQ,SAASm1B,GAC5B,IAAIv6C,EAAMu6C,EAAWzzC,KAAK,GAEf,GAAP9G,GAAmB,GAAPA,GACdlE,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAYC,OACxDtrC,KAAKggB,SAASytB,gBAAe,IACb,GAAPvpC,GACTlE,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAYC,OACxDtrC,KAAKggB,SAASytB,gBAAe,IACb,GAAPvpC,GACTlE,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAY8B,WACxDntC,KAAKggB,SAASytB,gBAAe,IACb,GAAPvpC,GACTlE,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAY8B,WACxDntC,KAAKggB,SAASytB,gBAAe,IACb,GAAPvpC,GACTlE,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAY6B,MACxDltC,KAAKggB,SAASytB,gBAAe,IACb,GAAPvpC,GACTlE,KAAKggB,SAASswB,eAAe3zB,EAAM+tB,SAASW,YAAY6B,MACxDltC,KAAKggB,SAASytB,gBAAe,IAE7BhtC,QAAQC,KAAK,yBAA2BwD,IAS5CyY,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAK9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,IAAIzzC,EAAOyzC,EAAWzzC,KAClB49B,EAAY59B,EAAK,GAAKpH,SAASoH,EAAK,GAAI,IAAK,EAAI,KACjD+oC,EAAe/oC,EAAK,GAAKpH,SAASoH,EAAK,GAAI,IAAM,EAAI,KACzDhL,KAAKggB,SAASuxB,kBAAkB3I,EAAWmL,GAC3C/zC,KAAKggB,SAAS4Y,kBAAkB,EAAG,IAQrCjc,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAQ,GAAI3M,EAAM2vB,GAAG0S,OAK9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,WAClBtpB,KAAKg9C,YAAY7oC,QAQnBwI,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI3M,EAAM2vB,GAAG0S,OAO7BriC,EAAM2vB,GAAGhjB,IAAQ,GAAI3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAK9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,WAClBtpB,KAAKg9C,YAAYkB,WAQnBvhC,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAQ,GAAI3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAI,MAAS3M,EAAM2vB,GAAG0S,OAO/BriC,EAAM2vB,GAAGhjB,IAAO,EAAI3M,EAAM2vB,GAAG0S,OAO7BriC,EAAM2vB,GAAGhjB,IAAI,MAAQ3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAQ,GAAI3M,EAAM2vB,GAAG0S,OAQ9BriC,EAAM2vB,GAAGhjB,IAAO,EAAI,SAASm1B,GAC3B,KAAIA,EAAWzzC,KAAKzL,OAAS,GAA7B,CAEA,IAAI2E,EAAMu6C,EAAWzzC,KAAK,GAC1B,GAAW,GAAP9G,EAAU,CAEZ,GAAIu6C,EAAWzzC,KAAKzL,OAAS,EAC3B,OACFS,KAAKggB,SAASgwB,oBAAoBnU,SAAW4iB,EAAWzzC,KAAK,QAC7C,GAAP9G,IAETlE,KAAKggB,SAASgwB,oBAAoBnU,SAAW,QASjDlf,EAAM2vB,GAAGhjB,IAAI,MAAS3M,EAAM2vB,GAAG0S,OAO/BriC,EAAM2vB,GAAGhjB,IAAQ,GAAI3M,EAAM2vB,GAAG0S,OAO9BriC,EAAM2vB,GAAGhjB,IAAI,MAAS3M,EAAM2vB,GAAG0S,OAO/BriC,EAAM2vB,GAAGhjB,IAAI,MAAS3M,EAAM2vB,GAAG0S,OAO/BriC,EAAM2vB,GAAGhjB,IAAI,MAAS3M,EAAM2vB,GAAG0S,OAO/BriC,EAAM2vB,GAAGhjB,IAAI,MAAS3M,EAAM2vB,GAAG0S,OAQ/BjgD,EAAIc,MAAM,SAaV8c,EAAM2vB,GAAG8T,aAAe,SAASC,EAAaC,GAI5CtgD,KAAKqgD,YAAcA,EAKnBrgD,KAAK08C,GAAK,KAIV18C,KAAKugD,WAAaD,EAGlBtgD,KAAKwgD,SAWP7jC,EAAM2vB,GAAG8T,aAAa5+C,UAAUg/C,MAAQ,SAASC,GAE/C,IAAKzgD,KAAKugD,aAAeE,EAIvB,OAHAzgD,KAAK08C,GAAK,YACH18C,KAAK0gD,mBACL1gD,KAAK2gD,MAOZ3gD,KAAK0gD,OADHD,EACYxyC,OAAO2yC,OAAO,GAAI5gD,KAAKugD,WAAYE,GAEnCzgD,KAAKugD,WAErB,IAAIM,EAAU5yC,OAAOD,KAAKhO,KAAK0gD,QAAQ/8C,KAAKwF,GACxC,MAAQpK,EAAIoC,EAAE6B,KAAKmG,EAAI0R,WAAW,GAAG9X,SAAS,OAClD/C,KAAK2gD,MAAQ,IAAIt+C,OAAO,IAAMw+C,EAAQnsC,KAAK,IAAM,IAAK,KAEtD1U,KAAK08C,GAAM92C,GAAQA,EAAIpG,QAAQQ,KAAK2gD,OAAQ16B,GAAOjmB,KAAK0gD,OAAOz6B,MAQjEtJ,EAAM2vB,GAAG8T,aAAa5+C,UAAUgP,MAAQ,WAElCxQ,KAAK0gD,SAAW1gD,KAAKugD,YACvBvgD,KAAKwgD,SAYT7jC,EAAM2vB,GAAG8T,aAAa5+C,UAAUgsC,aAAe,SAAS8S,GACtDtgD,KAAKwgD,MAAMF,IAQb3jC,EAAM2vB,GAAG8T,aAAa5+C,UAAU6d,MAAQ,WACtC,IAAI1b,EAAM,IAAIgZ,EAAM2vB,GAAG8T,aAAapgD,KAAKqgD,YAAargD,KAAKugD,YAG3D,OAFIvgD,KAAK0gD,SAAW1gD,KAAKugD,YACvB58C,EAAI6pC,aAAaxtC,KAAK0gD,QACjB/8C,GAMTgZ,EAAM2vB,GAAG8P,cAAgB,WACvBp8C,KAAK8gD,MAAQnkC,EAAM2vB,GAAG8P,cAAc2E,YAIpC/gD,KAAKghD,UAAYhhD,KAAK8gD,OASxBnkC,EAAM2vB,GAAG8P,cAAc56C,UAAUi7C,OAAS,SAAS97C,GACjD,OAAIX,KAAK8gD,MAAMjzB,eAAeltB,GACrBX,KAAK8gD,MAAMngD,QAElB,GAWJgc,EAAM2vB,GAAG8P,cAAc56C,UAAUy/C,OAAS,SAAStgD,EAAMgD,GACnD3D,KAAK8gD,QAAU9gD,KAAKghD,YACtBhhD,KAAK8gD,MAAQ7yC,OAAO2yC,OAAO,GAAI5gD,KAAKghD,YACtChhD,KAAK8gD,MAAMngD,GAAQgD,GAMrBgZ,EAAM2vB,GAAG8P,cAAc56C,UAAUgP,MAAQ,WACnCxQ,KAAK8gD,QAAUnkC,EAAM2vB,GAAG8P,cAAc2E,cACxC/gD,KAAK8gD,MAAQnkC,EAAM2vB,GAAG8P,cAAc2E,cAQxCpkC,EAAM2vB,GAAG8P,cAAc56C,UAAUgsC,aAAe,SAAS0T,GAIvD,IAAK,IAAIvgD,KAHLX,KAAK8gD,QAAU9gD,KAAKghD,YACtBhhD,KAAK8gD,MAAQ7yC,OAAO2yC,OAAO,GAAI5gD,KAAKghD,YAErBE,EAAM,CACrB,IAAIv9C,EAAM3D,KAAKy8C,OAAO97C,QACViB,IAAR+B,GACF3D,KAAK8gD,MAAMngD,GAAQgD,EAAI0b,QACvBrf,KAAK8gD,MAAMngD,GAAM6sC,aAAa0T,EAAKvgD,KAEnCX,KAAKihD,OAAOtgD,EAAM,IAAIgc,EAAM2vB,GAAG8T,aAAa,QAAUz/C,EAAMugD,EAAKvgD,OAOvEgc,EAAM2vB,GAAG8P,cAAc2E,YAAc,GAMrCpkC,EAAM2vB,GAAG8P,cAAc2E,YAAY,GAAO,IAAIpkC,EAAM2vB,GAAG8T,aACnD,UAAW,CACT,IAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,EAAO,IACP,IAAO,IACP,IAAO,IACP,IAAO,IACP,IAAO,MAObzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,UAAW,CACT,IAAQ,MAMdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,KAAM,MAMVzjC,EAAM2vB,GAAG8P,cAAc2E,YAAY,GAAO,IAAIpkC,EAAM2vB,GAAG8T,aACnD,QAAS,CACP,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EACtCpkC,EAAM2vB,GAAG8P,cAAc2E,YAAY,GAAO,IAAIpkC,EAAM2vB,GAAG8T,aACnD,UAAW,CACT,IAAQ,IACR,KAAQ,IACR,IAAQ,IACR,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,SAAU,CACR,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,kBAAmB,CACjB,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IACR,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,SAAU,CACR,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,UAAW,CACT,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EACtCpkC,EAAM2vB,GAAG8P,cAAc2E,YAAY,GAAO,IAAIpkC,EAAM2vB,GAAG8T,aACnD,mBAAoB,CAClB,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IACR,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,UAAW,CACT,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAY,GACnCpkC,EAAM2vB,GAAG8P,cAAc2E,YAAe,EAAI,IAAIpkC,EAAM2vB,GAAG8T,aACnD,UAAW,CACT,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IACR,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAOdzjC,EAAM2vB,GAAG8P,cAAc2E,YAAY,KAAO,IAAIpkC,EAAM2vB,GAAG8T,aACnD,QAAS,CACP,IAAQ,IAER,IAAQ,IAER,IAAQ,IACR,KAAQ,IACR,IAAQ,IACR,IAAQ,IACR,EAAQ,IAER,IAAQ,IAER,IAAQ,IACR,IAAQ,IACR,IAAQ,IACR,IAAQ,MAEdrhD,EAAIwS,SAASE,IAAI,mBAAoB,mBACrC,w0SAiIA1S,EAAIwS,SAASE,IAAI,uBAAwB,mBACzC,ovOAqGA1S,EAAIwS,SAASE,IAAI,oBAAqB,aACtC,mCAIA1S,EAAIwS,SAASE,IAAI,0BAA2B,aAC5C,QAIA1S,EAAIwS,SAASE,IAAI,uBAAwB,aACzC,cAIA1S,EAAIwS,SAASE,IAAI,iBAAkB,aACnC,sBAKA0vC,EAAOC,QAAU,CACbzkC,MAAOA,EACP5d,IAAKA,I,QCrkjB4LyB,KAApI2gD,EAAOC,QAAoJ,MAAM,aAAa,IAAIpuC,EAAE,CAACquC,IAAI,CAACruC,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE4X,cAAS,EAAO,IAAIh+C,EAAE,WAAW,SAASyP,KAAK,OAAOA,EAAExR,UAAUkL,SAAS,SAASsG,GAAGhT,KAAKwhD,UAAUxuC,GAAGA,EAAExR,UAAUigD,QAAQ,aAAazuC,EAAExR,UAAUkgD,IAAI,WAAW,IAAI1uC,EAAEhT,KAAK2hD,oBAAoB,GAAG3uC,GAAGhT,KAAKwhD,UAAU,CAAC,IAAI7X,EAAE3pC,KAAKwhD,UAAUI,MAAM5hD,KAAKwhD,UAAUvoB,OAAOjmB,EAAEimB,MAAMj5B,KAAKwhD,UAAUK,OAAO7uC,EAAE6uC,OAAOlY,EAAEmY,eAAetvC,QAAQxS,KAAKwhD,UAAUpiC,OAAOpM,EAAE6uC,KAAK7uC,EAAEimB,SAASjmB,EAAExR,UAAUmgD,kBAAkB,WAAW,GAAG3hD,KAAKwhD,WAAWxhD,KAAKwhD,UAAUl8B,SAAStlB,KAAKwhD,UAAUl8B,QAAQ6f,cAAc,CAAC,IAAInyB,EAAEhT,KAAKwhD,UAAUI,MAAM,GAAG,IAAI5uC,EAAE8uC,eAAeC,WAAWC,iBAAiB,IAAIhvC,EAAE8uC,eAAeC,WAAWE,iBAAiB,CAAC,IAAItY,EAAEppC,OAAO2hD,iBAAiBliD,KAAKwhD,UAAUl8B,QAAQ6f,eAAe5hC,EAAEK,SAAS+lC,EAAEwY,iBAAiB,WAAW1iD,EAAEoD,KAAKuE,IAAI,EAAExD,SAAS+lC,EAAEwY,iBAAiB,WAAWrjC,EAAEve,OAAO2hD,iBAAiBliD,KAAKwhD,UAAUl8B,SAASlS,EAAE7P,GAAGK,SAASkb,EAAEqjC,iBAAiB,gBAAgBv+C,SAASkb,EAAEqjC,iBAAiB,oBAAoBnyC,EAAEvQ,GAAGmE,SAASkb,EAAEqjC,iBAAiB,kBAAkBv+C,SAASkb,EAAEqjC,iBAAiB,kBAAkBnvC,EAAEovC,SAASC,eAAe,MAAM,CAACR,KAAKh/C,KAAKuE,IAAI,EAAEvE,KAAK2F,MAAMwH,EAAEgD,EAAE8uC,eAAeC,WAAWC,kBAAkB/oB,KAAKp2B,KAAKuE,IAAI,EAAEvE,KAAK2F,MAAM4K,EAAEJ,EAAE8uC,eAAeC,WAAWE,uBAAuBjvC,EAAzqC,GAA8qC22B,EAAE4X,SAASh+C,IAAIomC,EAAE,GAAG,OAAO,SAASpmC,EAAE9D,GAAG,GAAGkqC,EAAElqC,GAAG,OAAOkqC,EAAElqC,GAAG2hD,QAAQ,IAAItiC,EAAE6qB,EAAElqC,GAAG,CAAC2hD,QAAQ,IAAI,OAAOpuC,EAAEvT,GAAGqf,EAAEA,EAAEsiC,QAAQ79C,GAAGub,EAAEsiC,QAA/F,CAAwG,MAAh6C,I,QCAb7gD,OAA9I4gD,EAAOC,QAAiK,SAASpuC,GAAG,IAAI22B,EAAE,GAAG,SAAS7qB,EAAEvb,GAAG,GAAGomC,EAAEpmC,GAAG,OAAOomC,EAAEpmC,GAAG69C,QAAQ,IAAI3hD,EAAEkqC,EAAEpmC,GAAG,CAAC9D,EAAI6iD,GAAE,EAAGlB,QAAQ,IAAI,OAAOpuC,EAAEzP,GAAGikB,KAAK/nB,EAAE2hD,QAAQ3hD,EAAEA,EAAE2hD,QAAQtiC,GAAGrf,EAAE6iD,GAAE,EAAG7iD,EAAE2hD,QAAQ,OAAOtiC,EAAEzY,EAAE2M,EAAE8L,EAAElE,EAAE+uB,EAAE7qB,EAAE3D,EAAE,SAASnI,EAAE22B,EAAEpmC,GAAGub,EAAE1L,EAAEJ,EAAE22B,IAAI17B,OAAOqzC,eAAetuC,EAAE22B,EAAE,CAAC4Y,YAAW,EAAGr3C,IAAI3H,KAAKub,EAAEvb,EAAE,SAASyP,GAAG,oBAAoBwvC,QAAQA,OAAOC,aAAax0C,OAAOqzC,eAAetuC,EAAEwvC,OAAOC,YAAY,CAAC//C,MAAM,WAAWuL,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,KAAMoc,EAAE6qB,EAAE,SAAS32B,EAAE22B,GAAG,GAAG,EAAEA,IAAI32B,EAAE8L,EAAE9L,IAAI,EAAE22B,EAAE,OAAO32B,EAAE,GAAG,EAAE22B,GAAG,iBAAiB32B,GAAGA,GAAGA,EAAE0vC,WAAW,OAAO1vC,EAAE,IAAIzP,EAAE0K,OAAO2H,OAAO,MAAM,GAAGkJ,EAAEvb,EAAEA,GAAG0K,OAAOqzC,eAAe/9C,EAAE,UAAU,CAACg/C,YAAW,EAAG7/C,MAAMsQ,IAAI,EAAE22B,GAAG,iBAAiB32B,EAAE,IAAI,IAAIvT,KAAKuT,EAAE8L,EAAE3D,EAAE5X,EAAE9D,EAAE,SAASkqC,GAAG,OAAO32B,EAAE22B,IAAIz/B,KAAK,KAAKzK,IAAI,OAAO8D,GAAGub,EAAEA,EAAE,SAAS9L,GAAG,IAAI22B,EAAE32B,GAAGA,EAAE0vC,WAAW,WAAW,OAAO1vC,EAAE2vC,SAAS,WAAW,OAAO3vC,GAAG,OAAO8L,EAAE3D,EAAEwuB,EAAE,IAAIA,GAAGA,GAAG7qB,EAAE1L,EAAE,SAASJ,EAAE22B,GAAG,OAAO17B,OAAOzM,UAAUqsB,eAAerG,KAAKxU,EAAE22B,IAAI7qB,EAAEwJ,EAAE,GAAGxJ,EAAEA,EAAE8jC,EAAE,GAAj5B,CAAq5B,CAAC,SAAS5vC,EAAE22B,EAAE7qB,GAAG,aAAa7Q,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEkZ,mBAAc,EAAO,IAAIt/C,EAAEub,EAAE,GAAGrf,EAAE,IAAI4C,OAAO,+SAA+S,SAAS+Q,EAAEJ,EAAE22B,GAAG,IAAI7qB,EAAEve,OAAOsK,OAAOiU,GAAGA,EAAEgkC,OAAO,KAAKhkC,EAAEyH,SAAS+E,KAAKqe,GAAGlpC,QAAQC,KAAK,uDAAuD,IAAIsP,EAAE,WAAW,SAASgD,EAAEA,EAAE22B,EAAE7qB,QAAG,IAAS9L,IAAIA,EAAEI,QAAG,IAASu2B,IAAIA,EAAE,SAAI,IAAS7qB,IAAIA,GAAE,GAAI9e,KAAK+iD,SAAS/vC,EAAEhT,KAAKgjD,SAASrZ,EAAE3pC,KAAKijD,iBAAiBnkC,EAAE9e,KAAKgjD,SAASE,WAAW,EAAE,OAAOlwC,EAAExR,UAAUkL,SAAS,SAASsG,GAAGhT,KAAKwhD,UAAUxuC,EAAEhT,KAAKijD,kBAAkB,yBAAyBjjD,KAAKwhD,UAAUxhD,KAAKmjD,cAAcnjD,KAAKwhD,UAAU4B,qBAAqB,IAAI7/C,EAAE8/C,gBAAgBrjD,KAAKwhD,UAAU/hD,EAAEO,KAAK+iD,WAAW/iD,KAAKsjD,eAAetjD,KAAKwhD,UAAU+B,oBAAoB9jD,EAAEO,KAAK+iD,SAAS/iD,KAAKgjD,WAAWhwC,EAAExR,UAAUigD,QAAQ,WAAW,IAAIzuC,OAAE,IAAShT,KAAKsjD,qBAAgB,IAAStjD,KAAKwhD,WAAWxhD,KAAKwhD,UAAUgC,sBAAsBxjD,KAAKsjD,gBAAgB,QAAQtwC,EAAEhT,KAAKmjD,qBAAgB,IAASnwC,GAAGA,EAAEyuC,WAAWzuC,EAAnrB,GAAwrB22B,EAAEkZ,cAAc7yC,GAAG,SAASgD,EAAE22B,EAAE7qB,GAAG,aAAa7Q,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE8Z,aAAa9Z,EAAE0Z,qBAAgB,EAAO,IAAI9/C,EAAE,WAAW,SAASyP,EAAEA,EAAE22B,EAAE7qB,GAAG9e,KAAKwhD,UAAUxuC,EAAEhT,KAAK0jD,OAAO/Z,EAAE3pC,KAAK+iD,SAASjkC,EAAE,OAAO9L,EAAExR,UAAUmiD,aAAa,SAAS3wC,EAAE22B,GAAGA,EAAElqC,EAAEmkD,YAAY5wC,EAAEhT,KAAK0jD,OAAO1jD,KAAKwhD,UAAUxhD,KAAK+iD,YAAY/vC,EAAxL,GAA6L22B,EAAE0Z,gBAAgB9/C,EAAE,IAAI9D,EAAE,WAAW,SAASuT,KAAK,OAAOA,EAAE4wC,YAAY,SAASja,EAAE7qB,EAAEvb,EAAE9D,GAAG,IAAI,IAAI2T,EAAEpD,EAAE,IAAI3N,OAAOyc,EAAE5f,QAAQ4f,EAAE+kC,OAAO,IAAI,KAAKjB,EAAE5vC,EAAE8wC,qCAAqCna,EAAE,GAAE,EAAGpmC,GAAGwgD,EAAEnB,EAAE,GAAGznC,EAAEynC,EAAE,GAAGN,GAAG,EAAE1nC,EAAE,GAAG,QAAQxH,EAAEpD,EAAE2e,KAAKo1B,KAAK,CAAC,IAAI5iD,EAAEiS,EAAE,GAAG,IAAIjS,EAAE,CAACV,QAAQoH,IAAI,gDAAgD,MAAM,GAAGy6C,EAAEyB,EAAE1gD,QAAQlC,EAAEmhD,EAAE,GAAGtyC,EAAE0e,UAAU4zB,EAAEnhD,EAAE5B,OAAO+iD,EAAE,EAAE,MAAM,IAAI,IAAIh6B,EAAEg6B,EAAEnhD,EAAE5B,OAAO8E,EAAE8W,EAAE,EAAEmN,EAAE/kB,EAAEs+C,MAAMv5B,GAAG/kB,EAAEs+C,KAAKx9C,IAAI,IAAIzB,EAAE,CAACyZ,MAAM,CAAC0tB,EAAEuY,EAAE,EAAEzY,EAAE1uB,EAAE,GAAGuB,IAAI,CAACqtB,EAAEzhB,EAAEuhB,EAAExlC,IAAIuW,EAAE1a,KAAK,CAAC49B,MAAMl7B,EAAEq0B,KAAK91B,EAAEuL,SAASjN,IAAI,OAAOmb,GAAG5H,EAAE8wC,qCAAqC,SAAS9wC,EAAE22B,EAAE7qB,GAAG,IAAIvb,EAAE9D,EAAE2T,EAAE,GAAG,EAAE,CAAC,KAAKwvC,EAAE9jC,EAAEklC,OAAOC,OAAOC,QAAQlxC,IAAI,MAAM4vC,EAAEuB,WAAWnxC,IAAIvT,EAAEmjD,EAAEuB,gBAAgB1kD,GAAG,IAAIuQ,EAAEgD,EAAE,EAAE,CAAC,IAAI4vC,EAAEmB,EAAEjlC,EAAEklC,OAAOC,OAAOC,QAAQlxC,EAAE,GAAG,GAAGzP,IAAIwgD,GAAGA,EAAEI,YAAYvB,EAAE9jC,EAAEklC,OAAOC,OAAOC,QAAQlxC,IAAI,MAAMI,GAAGwvC,EAAEwB,mBAAmB7gD,GAAGomC,GAAGltB,UAAU,EAAEqC,EAAE+iC,MAAM7uC,UAAUzP,GAAG,MAAM,CAAC6P,EAAEpD,IAAIgD,EAA3zB,GAAg0B22B,EAAE8Z,aAAahkD,M,QCAj2Ge,KAAxI2gD,EAAOC,QAAwJ,MAAM,aAAa,IAAIzX,EAAE,CAAC0a,IAAI,CAAC1a,EAAE32B,EAAEvT,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEsxC,mBAAc,EAAO,IAAI/gD,EAAE9D,EAAE,KAAK2T,EAAE3T,EAAE,KAAKqf,EAAErf,EAAE,KAAKmjD,EAAEnjD,EAAE,KAAKuQ,EAAEvQ,EAAE,KAAK6iD,EAAE7iD,EAAE,KAAK4E,EAAE,GAAGuW,EAAEvW,EAAEkgD,aAAaC,kBAAkBC,EAAE,WAAW,SAAS9a,EAAEA,EAAE32B,EAAEvT,EAAE2T,GAAGpT,KAAKwhD,UAAU7X,EAAE3pC,KAAK0kD,QAAQ1xC,EAAEhT,KAAK2kD,IAAIllD,EAAEO,KAAK4kD,YAAYxxC,EAAEpT,KAAK6kD,cAAc,EAAE7kD,KAAK8kD,UAAU,CAACh2B,MAAM,EAAEi2B,WAAW,IAAIR,aAAa,GAAGS,kBAAkB,CAAC,IAAIT,aAAa,GAAG,IAAIA,aAAa,IAAIU,oBAAoB,IAAIV,aAAa,IAAI,IAAIzlC,EAAE9e,KAAK2kD,IAAI/B,EAAEr/C,EAAE2hD,aAAa3hD,EAAE4hD,cAAcrmC,EAAE,qjBAAqjB,0LAA0L9e,KAAKolD,SAASxC,EAAE5iD,KAAKqlD,oBAAoB9hD,EAAE2hD,aAAapmC,EAAEwmC,mBAAmBtlD,KAAKolD,SAAS,iBAAiBplD,KAAKulD,oBAAoBhiD,EAAE2hD,aAAapmC,EAAEwmC,mBAAmBtlD,KAAKolD,SAAS,iBAAiBplD,KAAKwlD,iBAAiBjiD,EAAE2hD,aAAapmC,EAAEwmC,mBAAmBtlD,KAAKolD,SAAS,cAAcplD,KAAKylD,mBAAmB3mC,EAAE4mC,oBAAoB5mC,EAAE6mC,gBAAgB3lD,KAAKylD,oBAAoB,IAAIz1C,EAAE,IAAIu0C,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAIjC,EAAExjC,EAAE8mC,eAAe9mC,EAAE+mC,WAAW/mC,EAAEgnC,aAAaxD,GAAGxjC,EAAEinC,WAAWjnC,EAAEgnC,aAAa91C,EAAE8O,EAAEknC,aAAalnC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAElmD,KAAK2kD,IAAIwB,OAAM,EAAG,EAAE,GAAG,IAAI9hD,EAAE,IAAI+hD,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI3B,EAAE3lC,EAAE8mC,eAAe9mC,EAAE+mC,WAAW/mC,EAAEunC,qBAAqB5B,GAAG3lC,EAAEinC,WAAWjnC,EAAEunC,qBAAqBhiD,EAAEya,EAAEknC,aAAahmD,KAAKsmD,kBAAkB/iD,EAAE2hD,aAAapmC,EAAE8mC,gBAAgB9mC,EAAE+mC,WAAW/mC,EAAEgnC,aAAa9lD,KAAKsmD,mBAAmBxnC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvrC,EAAE,GAAGkE,EAAEynC,oBAAoB,EAAE,GAAGznC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvrC,EAAE,EAAE2pC,aAAaC,mBAAmB1lC,EAAEynC,oBAAoB,EAAE,GAAGznC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvrC,EAAE,EAAE2pC,aAAaC,mBAAmB1lC,EAAEynC,oBAAoB,EAAE,GAAGznC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvrC,EAAE,EAAE2pC,aAAaC,mBAAmB1lC,EAAEynC,oBAAoB,EAAE,GAAGznC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvrC,EAAE,EAAE2pC,aAAaC,mBAAmB1lC,EAAEynC,oBAAoB,EAAE,GAAGvmD,KAAKwmD,cAAcjjD,EAAE2hD,aAAapmC,EAAE2nC,iBAAiB3nC,EAAE4nC,YAAY5nC,EAAE6nC,WAAW3mD,KAAKwmD,eAAe1nC,EAAE8nC,WAAW9nC,EAAE6nC,WAAW,EAAE7nC,EAAE+nC,KAAK,EAAE,EAAE,EAAE/nC,EAAE+nC,KAAK/nC,EAAEgoC,cAAc,IAAIV,WAAW,CAAC,EAAE,EAAE,IAAI,OAAOtnC,EAAEioC,cAAcjoC,EAAE6nC,WAAW7nC,EAAEkoC,eAAeloC,EAAEmoC,eAAenoC,EAAEioC,cAAcjoC,EAAE6nC,WAAW7nC,EAAEooC,eAAepoC,EAAEmoC,eAAenoC,EAAEqoC,OAAOroC,EAAEsoC,OAAOtoC,EAAEuoC,UAAUvoC,EAAEwoC,UAAUxoC,EAAEyoC,qBAAqBvnD,KAAKwnD,WAAW,OAAO7d,EAAEnoC,UAAUimD,WAAW,WAAW,OAAOznD,KAAK0nD,QAAQ1nD,KAAK0nD,OAAOD,cAAc9d,EAAEnoC,UAAUmmD,WAAW,SAAShe,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAE0L,GAAG9e,KAAK4nD,YAAY5nD,KAAK8kD,UAAUC,WAAWpb,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAE0L,IAAI6qB,EAAEnoC,UAAUomD,YAAY,SAASje,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAEwvC,EAAEN,GAAG,IAAI1nC,EAAE6pC,GAAGhlD,EAAEO,KAAKwhD,UAAUK,KAAK7uC,GAAG3O,EAAEd,IAAIyM,EAAE63C,gBAAgBtkD,IAAIyM,EAAE83C,2BAAsB,IAASvkD,EAAEvD,KAAK0nD,UAAU9sC,EAAE0nC,GAAGA,EAAE/iD,OAAO,EAAES,KAAK0nD,OAAOK,+BAA+BzF,EAAElvC,EAAEwvC,GAAG5iD,KAAK0nD,OAAOM,mBAAmBzkD,EAAE6P,EAAEwvC,KAAKjZ,EAAE8a,IAAI7pC,EAAE4f,OAAOuP,EAAE/pC,KAAK4kD,YAAYqD,eAAete,EAAE8a,EAAE,IAAI7pC,EAAE4f,OAAOqP,EAAE7pC,KAAK4kD,YAAYsD,cAAcve,EAAE8a,EAAE,GAAG7pC,EAAEtX,KAAKymC,EAAE/pC,KAAK4kD,YAAYuD,kBAAkBxe,EAAE8a,EAAE,GAAG7pC,EAAEtX,KAAKumC,EAAE7pC,KAAK4kD,YAAYwD,mBAAmBze,EAAE8a,EAAE,GAAG7pC,EAAEytC,yBAAyBte,EAAEJ,EAAE8a,EAAE,GAAG7pC,EAAEytC,yBAAyBxe,EAAEF,EAAE8a,EAAE,GAAG7pC,EAAE0tC,cAAcve,EAAEJ,EAAE8a,EAAE,GAAG7pC,EAAE0tC,cAAcze,GAAG/qB,EAAEo2B,KAAKvL,EAAE,EAAE8a,EAAEA,EAAEpgD,EAAE,EAAE,IAAIya,EAAEo2B,KAAKvL,EAAE,EAAE8a,EAAEA,EAAEpgD,EAAE,EAAE,IAAIslC,EAAEnoC,UAAU+mD,gBAAgB,SAAS5e,GAAG,IAAI32B,EAAEhT,KAAKwhD,UAAUxhD,KAAK8kD,UAAUG,oBAAoBrC,EAAE9gD,MAAM9B,KAAK8kD,UAAUC,WAAW,GAAG,IAAItlD,EAAEO,KAAK0kD,QAAQ8D,gBAAgBlmD,OAAO,EAAE,SAAS,GAAGqnC,EAAE5e,UAAU09B,iBAAiB,IAAI,IAAIllD,EAAEomC,EAAE5e,UAAU29B,SAASt1C,EAAEu2B,EAAE5e,UAAU49B,OAAOplD,EAAEub,EAAE6qB,EAAE5e,UAAU69B,qBAAqBjf,EAAE5e,UAAU89B,uBAAuB,EAAE74C,EAAE25B,EAAE5e,UAAU89B,uBAAuB74C,EAAE25B,EAAE5e,UAAU89B,uBAAuB/pC,EAAE9O,IAAIhQ,KAAK8oD,sBAAsBvlD,EAAEA,EAAE6P,EAAEpD,EAAE25B,EAAElqC,OAAO,CAAC8D,EAAEomC,EAAE5e,UAAUg+B,mBAAmBpf,EAAE5e,UAAU89B,uBAAuBlf,EAAE5e,UAAU29B,SAAS,EAAE,IAAIpG,EAAE3Y,EAAE5e,UAAU89B,yBAAyBlf,EAAE5e,UAAU69B,qBAAqBjf,EAAE5e,UAAU49B,OAAO31C,EAAE6uC,KAAK7hD,KAAK8oD,sBAAsBvlD,EAAE++C,EAAE3Y,EAAE5e,UAAU89B,uBAAuBlf,EAAElqC,GAAG,IAAI4E,EAAExB,KAAKuE,IAAIuiC,EAAE5e,UAAU69B,qBAAqBjf,EAAE5e,UAAU89B,uBAAuB,EAAE,GAAG,IAAI74C,EAAE25B,EAAE5e,UAAU89B,uBAAuB,EAAE74C,GAAG25B,EAAE5e,UAAU89B,uBAAuBxkD,EAAE2L,IAAIhQ,KAAK8oD,sBAAsB,EAAExG,EAAEtyC,EAAE25B,EAAElqC,GAAG,GAAGkqC,EAAE5e,UAAU89B,yBAAyBlf,EAAE5e,UAAU69B,qBAAqB,CAAC,IAAIhuC,EAAE+uB,EAAE5e,UAAUi+B,iBAAiBrf,EAAE5e,UAAU69B,qBAAqBjf,EAAE5e,UAAU49B,OAAO31C,EAAE6uC,KAAK7hD,KAAK8oD,sBAAsB,EAAEluC,EAAE+uB,EAAE5e,UAAU69B,qBAAqBjf,EAAElqC,MAAMkqC,EAAEnoC,UAAUsnD,sBAAsB,SAASnf,EAAE32B,EAAEvT,EAAE8D,EAAEub,GAAG,IAAI,IAAI8jC,EAAE5yC,EAAEhQ,KAAKwhD,UAAUn9C,EAAE5E,EAAEuQ,EAAEg0C,OAAOC,OAAOgF,UAAUruC,EAAE+uB,EAAE/uB,EAAE5H,EAAE4H,IAAI,CAAC,IAAI6pC,GAAGhlD,EAAEO,KAAKwhD,UAAUK,KAAKjnC,GAAGxH,EAAE81C,+BAA+B/tC,EAAE5X,EAAE4lD,MAAM1E,GAAGV,EAAExgD,EAAE4lD,MAAM1E,EAAErxC,EAAEg2C,wBAAwB,GAAG,SAASrF,EAAE,CAAC,IAAI5iD,EAAE,IAAImhD,EAAE+G,cAAc,OAAOloD,EAAEmoD,GAAGvF,EAAE5iD,EAAEooD,GAAGhmD,EAAE4lD,MAAM1E,EAAErxC,EAAEo2C,wBAAwBzF,IAAI,UAAU5iD,EAAEsoD,kBAAkB,KAAK,SAAS,KAAK,SAAS,IAAInhC,EAAEtoB,KAAK0pD,uBAAuBvoD,EAAEwoD,cAAcrnD,KAAKyhD,GAAGz7B,GAAG,EAAE,SAASA,GAAG,EAAE,MAAMA,GAAG,EAAE,IAAI,KAAK,SAAS,IAAI9kB,EAAE8+C,EAAE+G,cAAcO,WAAWzoD,EAAEwoD,cAAc5F,GAAGvgD,EAAE,IAAI,GAAGA,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,IAAIZ,EAAE5C,KAAK0kD,QAAQrnC,WAAW/a,KAAKyhD,GAAGnhD,GAAG,EAAE,SAASA,GAAG,EAAE,MAAMA,GAAG,EAAE,IAAImhD,GAAG,SAAS,GAAG5oC,EAAE/H,EAAEy2C,uBAAuB,CAACjH,IAAIA,EAAE5yC,EAAEg0C,OAAOC,OAAOC,QAAQ7/C,IAAI,IAAIwuB,EAAE+vB,EAAEkH,QAAQlvC,GAAGmvC,WAAW/pD,KAAK4nD,YAAY5nD,KAAK8kD,UAAUG,oBAAoBrqC,EAAEnb,EAAE8D,EAAE4lD,MAAM1E,GAAG3lC,EAAEilC,EAAElxB,QAAQ7yB,KAAK4nD,YAAY5nD,KAAK8kD,UAAUG,oBAAoBrqC,EAAEnb,EAAE8D,EAAE4lD,MAAM1E,GAAG3lC,EAAEilC,KAAKpa,EAAEnoC,UAAUkoD,uBAAuB,SAAS/f,GAAG,GAAGA,GAAG3pC,KAAK0kD,QAAQsF,KAAKzqD,OAAO,MAAM,IAAIP,MAAM,0BAA0B2qC,GAAG,OAAO3pC,KAAK0kD,QAAQsF,KAAKrgB,IAAIA,EAAEnoC,UAAUgmD,SAAS,WAAW,IAAI7d,EAAE3pC,KAAKwhD,UAAUxuC,EAAEhT,KAAK2kD,IAAI3xC,EAAEovC,SAAS,EAAE,EAAEpvC,EAAEi3C,OAAO9tC,MAAMnJ,EAAEi3C,OAAOlsC,QAAQ,IAAIte,EAAEkqC,EAAEkY,KAAKlY,EAAE1Q,KAAK50B,EAAE,GAAGrE,KAAK8kD,UAAUh2B,QAAQrvB,EAAE,CAACO,KAAK8kD,UAAUh2B,MAAMrvB,EAAEO,KAAK8kD,UAAUC,WAAW,IAAIR,aAAa9kD,GAAG,IAAI,IAAI8D,EAAE,EAAEA,EAAEvD,KAAK8kD,UAAUE,kBAAkBzlD,OAAOgE,IAAIvD,KAAK8kD,UAAUE,kBAAkBzhD,GAAG,IAAIghD,aAAa9kD,GAAG,IAAI,IAAI2T,EAAE,EAAE0L,EAAE,EAAEA,EAAE6qB,EAAE1Q,KAAKna,IAAI,IAAI,IAAI8jC,EAAE,EAAEA,EAAEjZ,EAAEkY,KAAKe,IAAI5iD,KAAK8kD,UAAUC,WAAW3xC,EAAE,GAAGwvC,EAAEjZ,EAAEkY,KAAK7hD,KAAK8kD,UAAUC,WAAW3xC,EAAE,GAAG0L,EAAE6qB,EAAE1Q,KAAK7lB,GAAG/O,IAAIslC,EAAEnoC,UAAU0oD,UAAU,aAAavgB,EAAEnoC,UAAU2oD,OAAO,SAASxgB,EAAE32B,GAAG,GAAGhT,KAAK0nD,OAAO,CAAC,IAAIjoD,EAAEO,KAAK2kD,IAAIllD,EAAE2qD,WAAWpqD,KAAKolD,UAAU3lD,EAAEkmD,gBAAgB3lD,KAAKylD,oBAAoBzlD,KAAK6kD,eAAe7kD,KAAK6kD,cAAc,GAAG,EAAE,IAAI,IAAIzxC,EAAEpT,KAAK8kD,UAAUE,kBAAkBhlD,KAAK6kD,eAAe/lC,EAAE,EAAE8jC,EAAE,EAAEA,EAAEjZ,EAAE0gB,YAAY9qD,OAAOqjD,IAAI,CAAC,IAAI5yC,EAAE4yC,EAAE5iD,KAAKwhD,UAAUK,KAAKx9C,EAAEi+C,GAAGtvC,EAAEhT,KAAK8kD,UAAUG,oBAAoBjlD,KAAK8kD,UAAUC,YAAYuF,SAASt6C,EAAEA,EAAE25B,EAAE0gB,YAAYzH,GAAGv+C,GAAG+O,EAAEzD,IAAI2yC,EAAExjC,GAAGA,GAAGwjC,EAAE/iD,OAAOE,EAAEomD,WAAWpmD,EAAEqmD,aAAa9lD,KAAKsmD,mBAAmB7mD,EAAEsmD,WAAWtmD,EAAEqmD,aAAa1yC,EAAEk3C,SAAS,EAAExrC,GAAGrf,EAAE8qD,aAAavqD,KAAK0nD,OAAO8C,mBAAmBxqD,KAAK0nD,OAAO8C,kBAAiB,EAAG/qD,EAAEgrD,UAAUzqD,KAAKwlD,iBAAiB,GAAG/lD,EAAEirD,cAAcjrD,EAAEkrD,SAAS,GAAGlrD,EAAEinD,YAAYjnD,EAAEknD,WAAW3mD,KAAKwmD,eAAe/mD,EAAEmnD,WAAWnnD,EAAEknD,WAAW,EAAElnD,EAAEonD,KAAKpnD,EAAEonD,KAAKpnD,EAAEqnD,cAAc9mD,KAAK0nD,OAAOkD,aAAanrD,EAAEorD,eAAeprD,EAAEknD,aAAalnD,EAAEqrD,iBAAiB9qD,KAAKqlD,qBAAoB,EAAG9hD,EAAEwnD,mBAAmBtrD,EAAEurD,UAAUhrD,KAAKulD,oBAAoB9lD,EAAEwqD,OAAO9tC,MAAM1c,EAAEwqD,OAAOlsC,QAAQte,EAAEwrD,sBAAsBxrD,EAAEyrD,UAAU,EAAEzrD,EAAEqnD,cAAc,EAAEhoC,EAAEza,KAAKslC,EAAEnoC,UAAU2pD,SAAS,SAASxhB,GAAG,IAAI32B,EAAEhT,KAAK2kD,IAAI3kD,KAAK0nD,OAAO/d,EAAE32B,EAAE0zC,YAAY1zC,EAAE2zC,WAAW3mD,KAAKwmD,eAAexzC,EAAE4zC,WAAW5zC,EAAE2zC,WAAW,EAAE3zC,EAAE6zC,KAAK7zC,EAAE6zC,KAAK7zC,EAAE8zC,cAAcnd,EAAEihB,aAAa53C,EAAE63C,eAAe73C,EAAE2zC,aAAahd,EAAEnoC,UAAU4pD,cAAc,SAASzhB,GAAG3pC,KAAK4kD,YAAYjb,GAAGA,EAA3qP,GAAgrP32B,EAAEsxC,cAAcG,GAAG4G,IAAI,CAAC1hB,EAAE32B,EAAEvT,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEs4C,uBAAkB,EAAO,IAAI/nD,EAAE9D,EAAE,KAAK2T,EAAE3T,EAAE,KAAKqf,EAAErf,EAAE,KAAKmjD,EAAE,EAAE2B,aAAaC,kBAAkBx0C,EAAE,WAAW,SAAS25B,EAAEA,EAAE32B,EAAEvT,EAAE2T,GAAGpT,KAAKwhD,UAAU7X,EAAE3pC,KAAK0kD,QAAQ1xC,EAAEhT,KAAK2kD,IAAIllD,EAAEO,KAAK4kD,YAAYxxC,EAAEpT,KAAK8kD,UAAU,CAACh2B,MAAM,EAAEi2B,WAAW,IAAIR,aAAa,KAAKx5B,UAAU,IAAIw5B,aAAa,KAAK,IAAIzlC,EAAE9e,KAAK2kD,IAAI3kD,KAAKolD,SAAS7hD,EAAE2hD,aAAa3hD,EAAE4hD,cAAcrmC,EAAE,obAAob,gIAAgI9e,KAAKulD,oBAAoBhiD,EAAE2hD,aAAapmC,EAAEwmC,mBAAmBtlD,KAAKolD,SAAS,iBAAiBplD,KAAKqlD,oBAAoB9hD,EAAE2hD,aAAapmC,EAAEwmC,mBAAmBtlD,KAAKolD,SAAS,iBAAiBplD,KAAKylD,mBAAmB3mC,EAAE4mC,oBAAoB5mC,EAAE6mC,gBAAgB3lD,KAAKylD,oBAAoB,IAAIz1C,EAAE,IAAIu0C,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAIjC,EAAExjC,EAAE8mC,eAAe9mC,EAAE+mC,WAAW/mC,EAAEgnC,aAAaxD,GAAGxjC,EAAEinC,WAAWjnC,EAAEgnC,aAAa91C,EAAE8O,EAAEknC,aAAalnC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAElmD,KAAK2kD,IAAIwB,OAAM,EAAG,EAAE,GAAG,IAAI9hD,EAAE,IAAI+hD,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAIxrC,EAAEkE,EAAE8mC,eAAe9mC,EAAE+mC,WAAW/mC,EAAEunC,qBAAqBzrC,GAAGkE,EAAEinC,WAAWjnC,EAAEunC,qBAAqBhiD,EAAEya,EAAEknC,aAAahmD,KAAKsmD,kBAAkB/iD,EAAE2hD,aAAapmC,EAAE8mC,gBAAgB9mC,EAAE+mC,WAAW/mC,EAAEgnC,aAAa9lD,KAAKsmD,mBAAmBxnC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvD,EAAE,GAAG9jC,EAAEynC,oBAAoB,EAAE,GAAGznC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvD,EAAE,EAAE2B,aAAaC,mBAAmB1lC,EAAEynC,oBAAoB,EAAE,GAAGznC,EAAEmnC,wBAAwB,GAAGnnC,EAAEonC,oBAAoB,EAAE,EAAEpnC,EAAEqnC,OAAM,EAAGvD,EAAE,EAAE2B,aAAaC,mBAAmB1lC,EAAEynC,oBAAoB,EAAE,GAAGvmD,KAAKurD,sBAAsB,OAAO5hB,EAAEnoC,UAAU2oD,OAAO,WAAW,IAAIxgB,EAAE3pC,KAAK2kD,IAAIhb,EAAEygB,WAAWpqD,KAAKolD,UAAUzb,EAAEgc,gBAAgB3lD,KAAKylD,oBAAoB9b,EAAEmhB,iBAAiB9qD,KAAKqlD,qBAAoB,EAAG9hD,EAAEwnD,mBAAmBphB,EAAEqhB,UAAUhrD,KAAKulD,oBAAoB5b,EAAEsgB,OAAO9tC,MAAMwtB,EAAEsgB,OAAOlsC,QAAQ4rB,EAAEkc,WAAWlc,EAAEmc,aAAa9lD,KAAKsmD,mBAAmB3c,EAAEoc,WAAWpc,EAAEmc,aAAa9lD,KAAK8kD,UAAUC,WAAWpb,EAAE6hB,cAAc7hB,EAAEshB,sBAAsBjrD,KAAK2kD,IAAIuG,UAAU,EAAEvhB,EAAEmd,cAAc,EAAE9mD,KAAK8kD,UAAUh2B,OAAO6a,EAAEkc,WAAWlc,EAAEmc,aAAa9lD,KAAKsmD,mBAAmB3c,EAAEoc,WAAWpc,EAAEmc,aAAa9lD,KAAK8kD,UAAU/5B,UAAU4e,EAAE6hB,cAAc7hB,EAAEshB,sBAAsBjrD,KAAK2kD,IAAIuG,UAAU,EAAEvhB,EAAEmd,cAAc,EAAE,IAAInd,EAAEnoC,UAAUgmD,SAAS,WAAWxnD,KAAKyrD,4BAA4B9hB,EAAEnoC,UAAU0oD,UAAU,WAAWlqD,KAAKurD,sBAAsBvrD,KAAKyrD,4BAA4B9hB,EAAEnoC,UAAU+pD,oBAAoB,WAAWvrD,KAAK0rD,SAAS1rD,KAAK2rD,qBAAqB3rD,KAAK0kD,QAAQrnC,YAAYrd,KAAK4rD,gBAAgB5rD,KAAK2rD,qBAAqB3rD,KAAK0kD,QAAQ8D,kBAAkB7e,EAAEnoC,UAAUiqD,yBAAyB,WAAWzrD,KAAK6rD,mBAAmB7rD,KAAK8kD,UAAUC,WAAW,EAAE,EAAE,EAAE/kD,KAAKwhD,UAAUK,KAAK7hD,KAAK4kD,YAAYkH,gBAAgB9rD,KAAKwhD,UAAUvoB,KAAKj5B,KAAK4kD,YAAYmH,iBAAiB/rD,KAAK0rD,WAAW/hB,EAAEnoC,UAAU+mD,gBAAgB,SAAS5e,GAAG,IAAI32B,EAAEhT,KAAKwhD,UAAU,GAAG7X,EAAEqiB,aAAa,GAAGriB,EAAE8e,iBAAiB,CAAC,IAAIhpD,EAAEkqC,EAAE+e,SAASnlD,EAAEomC,EAAEgf,OAAOlpD,EAAEqf,EAAE6qB,EAAEif,qBAAqBjf,EAAEkf,uBAAuB,EAAE7oD,KAAK6rD,mBAAmB7rD,KAAK8kD,UAAU/5B,UAAU,EAAEtrB,EAAEO,KAAK4kD,YAAYkH,gBAAgBniB,EAAEkf,uBAAuB7oD,KAAK4kD,YAAYmH,iBAAiBxoD,EAAEvD,KAAK4kD,YAAYkH,gBAAgBhtC,EAAE9e,KAAK4kD,YAAYmH,iBAAiB/rD,KAAK4rD,iBAAiBx4C,EAAE8hC,KAAKl1C,KAAK8kD,UAAU/5B,UAAU,EAAE,OAAO,CAACtrB,EAAEkqC,EAAEof,mBAAmBpf,EAAEkf,uBAAuBlf,EAAE+e,SAAS,EAAE,IAAI9F,EAAEjZ,EAAEkf,yBAAyBlf,EAAEqf,eAAerf,EAAEgf,OAAO31C,EAAE6uC,KAAK7hD,KAAK6rD,mBAAmB7rD,KAAK8kD,UAAU/5B,UAAU,EAAEtrB,EAAEO,KAAK4kD,YAAYkH,gBAAgBniB,EAAEkf,uBAAuB7oD,KAAK4kD,YAAYmH,kBAAkBnJ,EAAEnjD,GAAGO,KAAK4kD,YAAYkH,gBAAgB9rD,KAAK4kD,YAAYmH,iBAAiB/rD,KAAK4rD,iBAAiB,IAAI57C,EAAEnN,KAAKuE,IAAIuiC,EAAEif,qBAAqBjf,EAAEkf,uBAAuB,EAAE,GAAG,GAAG7oD,KAAK6rD,mBAAmB7rD,KAAK8kD,UAAU/5B,UAAU,EAAE,GAAG4e,EAAEkf,uBAAuB,GAAG7oD,KAAK4kD,YAAYmH,iBAAiB/4C,EAAE6uC,KAAK7hD,KAAK4kD,YAAYkH,gBAAgB97C,EAAEhQ,KAAK4kD,YAAYmH,iBAAiB/rD,KAAK4rD,iBAAiBjiB,EAAEkf,yBAAyBlf,EAAEif,qBAAqB,CAAC,IAAItG,EAAE3Y,EAAEqf,iBAAiBrf,EAAEif,qBAAqBjf,EAAEgf,OAAO31C,EAAE6uC,KAAK7hD,KAAK6rD,mBAAmB7rD,KAAK8kD,UAAU/5B,UAAU,GAAG,EAAE4e,EAAEif,qBAAqB5oD,KAAK4kD,YAAYmH,iBAAiBzJ,EAAEtiD,KAAK4kD,YAAYkH,gBAAgB9rD,KAAK4kD,YAAYmH,iBAAiB/rD,KAAK4rD,sBAAsBx4C,EAAE8hC,KAAKl1C,KAAK8kD,UAAU/5B,UAAU,EAAE,SAAS3X,EAAE8hC,KAAKl1C,KAAK8kD,UAAU/5B,UAAU,EAAE,IAAI4e,EAAEnoC,UAAUyqD,kBAAkB,SAAStiB,GAAG,IAAI,IAAI32B,EAAEhT,KAAKwhD,UAAU/hD,EAAEO,KAAK8kD,UAAUvhD,EAAE,EAAE6P,EAAE,EAAEA,EAAEJ,EAAEimB,KAAK7lB,IAAI,CAAC,IAAI,IAAIwvC,GAAG,EAAE5yC,EAAE,EAAEsyC,EAAE,EAAEj+C,GAAE,EAAGuW,EAAE,EAAEA,EAAE5H,EAAE6uC,KAAKjnC,IAAI,CAAC,IAAI6pC,GAAGrxC,EAAEJ,EAAE6uC,KAAKjnC,GAAGkE,EAAEoqC,+BAA+B/tC,EAAEwuB,EAAEwf,MAAM1E,EAAE3lC,EAAE0qC,wBAAwBzF,EAAEpa,EAAEwf,MAAM1E,EAAE3lC,EAAEsqC,wBAAwBjoD,KAAK,SAAS4iD,GAAG,GAAG5oC,IAAInL,GAAG+zC,IAAIzB,IAAIj+C,GAAGlD,GAAG,CAAC,GAAG,IAAI6O,GAAG3L,GAAG,IAAIi+C,EAAE,CAAC,IAAIh6B,EAAE,EAAE/kB,IAAIvD,KAAKksD,iBAAiBzsD,EAAE6oB,EAAEg6B,EAAEtyC,EAAE4yC,EAAEhoC,EAAExH,GAAGwvC,EAAEhoC,EAAE5K,EAAEmL,EAAEmnC,EAAEyB,EAAE1/C,EAAElD,IAAI,IAAI6O,GAAG3L,GAAG,IAAIi+C,KAAKh6B,EAAE,EAAE/kB,IAAIvD,KAAKksD,iBAAiBzsD,EAAE6oB,EAAEg6B,EAAEtyC,EAAE4yC,EAAE5vC,EAAE6uC,KAAKzuC,IAAI3T,EAAEqvB,MAAMvrB,GAAGomC,EAAEnoC,UAAU0qD,iBAAiB,SAASviB,EAAE32B,EAAEvT,EAAE2T,EAAE0L,EAAE8jC,EAAE5yC,GAAG,IAAIsyC,EAAE,GAAG,SAAS7iD,EAAE,OAAO,SAASA,GAAG,KAAK,SAAS,KAAK,SAAS6iD,EAAEtiD,KAAK0kD,QAAQsF,KAAK,IAAIvqD,GAAG6C,KAAK,MAAM,KAAK,SAASggD,GAAG,SAAS7iD,IAAI,EAAE,MAAM,KAAK,EAAE,QAAQ6iD,EAAEtiD,KAAK0kD,QAAQxK,WAAW53C,UAAU,OAAO,SAAS8Q,GAAG,KAAK,SAAS,KAAK,SAASkvC,EAAEtiD,KAAK0kD,QAAQsF,KAAK,IAAI52C,GAAG9Q,KAAK,MAAM,KAAK,SAASggD,GAAG,SAASlvC,IAAI,EAAE,MAAM,KAAK,EAAE,QAAQkvC,EAAEtiD,KAAK0kD,QAAQrnC,WAAW/a,KAAKqnC,EAAEob,WAAWxlD,OAAOyT,EAAE,IAAI22B,EAAEob,WAAWxhD,EAAE4oD,mBAAmBxiB,EAAEob,WAAW/kD,KAAKwhD,UAAUvoB,KAAKj5B,KAAKwhD,UAAUK,KAAK,IAAI,IAAIx9C,EAAEya,EAAE9e,KAAK4kD,YAAYkH,gBAAgBlxC,EAAE5K,EAAEhQ,KAAK4kD,YAAYmH,iBAAiBtH,GAAGnC,GAAG,GAAG,KAAK,IAAInnC,GAAGmnC,GAAG,GAAG,KAAK,IAAIyB,GAAGzB,GAAG,EAAE,KAAK,IAAItiD,KAAKosD,cAAcziB,EAAEob,WAAW/xC,EAAE3O,EAAEuW,GAAGgoC,EAAE9jC,GAAG9e,KAAK4kD,YAAYkH,gBAAgB9rD,KAAK4kD,YAAYmH,iBAAiBtH,EAAEtpC,EAAE4oC,EAAE,IAAIpa,EAAEnoC,UAAU4qD,cAAc,SAASziB,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAE0L,EAAE8jC,EAAE5yC,EAAEsyC,EAAEj+C,GAAGslC,EAAE32B,GAAGvT,EAAEkqC,EAAE32B,EAAE,GAAGzP,EAAEomC,EAAE32B,EAAE,GAAGI,EAAEu2B,EAAE32B,EAAE,GAAG8L,EAAE6qB,EAAE32B,EAAE,GAAG4vC,EAAEjZ,EAAE32B,EAAE,GAAGhD,EAAE25B,EAAE32B,EAAE,GAAGsvC,EAAE3Y,EAAE32B,EAAE,GAAG3O,GAAGslC,EAAEnoC,UAAUqqD,mBAAmB,SAASliB,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAE0L,EAAE8jC,GAAGjZ,EAAE32B,GAAGvT,EAAEkqC,EAAE32B,EAAE,GAAGzP,EAAEomC,EAAE32B,EAAE,GAAGI,EAAEu2B,EAAE32B,EAAE,GAAG8L,EAAE6qB,EAAE32B,EAAE,GAAG4vC,EAAE,GAAGjZ,EAAE32B,EAAE,GAAG4vC,EAAE,GAAGjZ,EAAE32B,EAAE,GAAG4vC,EAAE,GAAGjZ,EAAE32B,EAAE,GAAG4vC,EAAE,IAAIjZ,EAAEnoC,UAAUmqD,qBAAqB,SAAShiB,GAAG,OAAO,IAAI4a,aAAa,EAAE5a,EAAErnC,MAAM,GAAG,KAAK,KAAKqnC,EAAErnC,MAAM,GAAG,KAAK,KAAKqnC,EAAErnC,MAAM,EAAE,KAAK,KAAK,IAAIqnC,EAAErnC,MAAM,OAAOqnC,EAAluM,GAAuuM32B,EAAEs4C,kBAAkBt7C,GAAGq8C,IAAI,CAAC1iB,EAAE32B,EAAEvT,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEs5C,YAAYt5C,EAAE62C,uBAAuB72C,EAAEo2C,uBAAuBp2C,EAAEw2C,uBAAuBx2C,EAAEk2C,oCAA+B,EAAO,IAAI3lD,EAAE9D,EAAE,KAAKuT,EAAEk2C,+BAA+B,EAAEl2C,EAAEw2C,uBAAuB,EAAEx2C,EAAEo2C,uBAAuB,EAAEp2C,EAAE62C,uBAAuB,WAAW,IAAIz2C,EAAE,WAAW,SAASu2B,IAAI3pC,KAAKmpD,MAAM,IAAIoD,YAAY,GAAGvsD,KAAKqqD,YAAY,IAAIkC,YAAY,GAAGvsD,KAAK+qB,UAAU,CAACihC,cAAa,EAAGvD,kBAAiB,EAAGM,iBAAiB,EAAEC,eAAe,EAAEH,uBAAuB,EAAED,qBAAqB,EAAEF,SAAS,EAAEC,OAAO,GAAG,OAAOhf,EAAEnoC,UAAU4d,OAAO,SAASuqB,EAAElqC,GAAG,IAAI8D,EAAEomC,EAAElqC,EAAEuT,EAAEk2C,+BAA+B3lD,IAAIvD,KAAKmpD,MAAM5pD,SAASS,KAAKmpD,MAAM,IAAIoD,YAAYhpD,GAAGvD,KAAKqqD,YAAY,IAAIkC,YAAY9sD,KAAKkqC,EAAEnoC,UAAUgR,MAAM,WAAWjP,EAAE2xC,KAAKl1C,KAAKmpD,MAAM,EAAE,GAAG5lD,EAAE2xC,KAAKl1C,KAAKqqD,YAAY,EAAE,IAAI1gB,EAAEnoC,UAAUgrD,eAAe,WAAWxsD,KAAK+qB,UAAUihC,cAAa,EAAGhsD,KAAK+qB,UAAUg+B,iBAAiB,EAAE/oD,KAAK+qB,UAAUi+B,eAAe,EAAEhpD,KAAK+qB,UAAU89B,uBAAuB,EAAE7oD,KAAK+qB,UAAU69B,qBAAqB,EAAE5oD,KAAK+qB,UAAU29B,SAAS,EAAE1oD,KAAK+qB,UAAU49B,OAAO,GAAGhf,EAAhwB,GAAqwB32B,EAAEs5C,YAAYl5C,GAAGq5C,IAAI,CAAC9iB,EAAE32B,KAAK,SAASvT,EAAEkqC,EAAE32B,EAAEvT,QAAG,IAASuT,IAAIA,EAAE,QAAG,IAASvT,IAAIA,EAAEkqC,EAAEpqC,QAAQyT,EAAE,IAAIA,GAAG22B,EAAEpqC,OAAOyT,GAAG22B,EAAEpqC,QAAQE,EAAEA,GAAGkqC,EAAEpqC,OAAOoqC,EAAEpqC,QAAQoqC,EAAEpqC,OAAOE,GAAGkqC,EAAEpqC,OAAOyT,EAAEnQ,KAAKC,IAAIkQ,EAAEvT,GAAG,IAAI,IAAI8D,EAAE,IAAIomC,EAAE9zB,YAAYpW,EAAEuT,GAAGI,EAAE,EAAEA,EAAE3T,EAAEuT,IAAII,EAAE7P,EAAE6P,GAAGu2B,EAAEv2B,EAAEJ,GAAG,OAAOzP,EAAE0K,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAE05C,cAAc15C,EAAElR,WAAM,EAAOkR,EAAElR,MAAM,SAAS6nC,EAAE32B,EAAEzP,GAAG,OAAOomC,EAAE7nC,MAAM6nC,EAAE7nC,MAAMkR,EAAEzP,GAAG9D,EAAEkqC,EAAE32B,EAAEzP,IAAIyP,EAAE05C,cAAcjtD,GAAGktD,IAAI,CAAChjB,EAAE32B,EAAEvT,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAE45C,gBAAW,EAAO,IAAIrpD,EAAE9D,EAAE,KAAK2T,EAAE,WAAW,SAASu2B,EAAEA,GAAG3pC,KAAK6sD,uBAAuBljB,EAAE,OAAOA,EAAEnoC,UAAUkL,SAAS,SAASi9B,GAAG,IAAIA,EAAErkB,QAAQ,MAAM,IAAItmB,MAAM,mDAAmDgB,KAAKwhD,UAAU7X,EAAE,IAAI32B,EAAE22B,EAAEiY,MAAME,eAAeriD,EAAEkqC,EAAEiY,MAAMkL,cAAc9qD,OAAOhC,KAAK+sD,UAAU,IAAIxpD,EAAEypD,cAAcrjB,EAAElqC,EAAEO,KAAK6sD,wBAAwB75C,EAAEi6C,YAAYjtD,KAAK+sD,YAAYpjB,EAAEnoC,UAAUigD,QAAQ,WAAW,IAAIzhD,KAAKwhD,UAAU,MAAM,IAAIxiD,MAAM,qDAAqD,IAAI2qC,EAAE3pC,KAAKwhD,UAAUI,MAAME,eAAenY,EAAEsjB,YAAYjtD,KAAKwhD,UAAUI,MAAMsL,mBAAmBvjB,EAAE6d,SAASxnD,KAAKwhD,UAAUK,KAAK7hD,KAAKwhD,UAAUvoB,MAAMj5B,KAAK+sD,eAAU,GAAQ9+C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,eAAe,CAAC0J,IAAI,WAAW,IAAIy+B,EAAE,OAAO,QAAQA,EAAE3pC,KAAK+sD,iBAAY,IAASpjB,OAAE,EAAOA,EAAEwjB,cAAc5K,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAU6rD,kBAAkB,WAAW,IAAI1jB,EAAE,QAAQA,EAAE3pC,KAAK+sD,iBAAY,IAASpjB,GAAGA,EAAE2jB,kBAAkB3jB,EAAv5B,GAA45B32B,EAAE45C,WAAWx5C,GAAGm6C,IAAI,SAAS5jB,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAE6P,EAAEpT,MAAMA,KAAKwtD,YAAYjqD,EAAE,SAASomC,EAAE32B,GAAG,OAAOzP,EAAE0K,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAAS+pC,EAAE32B,GAAG22B,EAAE+jB,UAAU16C,IAAI,SAAS22B,EAAE32B,GAAG,IAAI,IAAIvT,KAAKuT,EAAE/E,OAAOzM,UAAUqsB,eAAerG,KAAKxU,EAAEvT,KAAKkqC,EAAElqC,GAAGuT,EAAEvT,MAAMkqC,EAAE32B,IAAI,SAAS22B,EAAE32B,GAAG,SAASvT,IAAIO,KAAK6V,YAAY8zB,EAAEpmC,EAAEomC,EAAE32B,GAAG22B,EAAEnoC,UAAU,OAAOwR,EAAE/E,OAAO2H,OAAO5C,IAAIvT,EAAE+B,UAAUwR,EAAExR,UAAU,IAAI/B,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEg6C,mBAAc,EAAO,IAAIluC,EAAErf,EAAE,KAAKmjD,EAAEnjD,EAAE,KAAKuQ,EAAEvQ,EAAE,KAAK6iD,EAAE7iD,EAAE,KAAK4E,EAAE5E,EAAE,KAAKmb,EAAEnb,EAAE,KAAKglD,EAAEhlD,EAAE,KAAK0b,EAAE1b,EAAE,KAAKskD,EAAEtkD,EAAE,KAAK0B,EAAE1B,EAAE,KAAK6oB,EAAE,SAASqhB,GAAG,SAAS32B,EAAEA,EAAEvT,EAAE8D,GAAG,IAAI6P,EAAEu2B,EAAEniB,KAAKxnB,OAAOA,KAAKoT,EAAEouC,UAAUxuC,EAAEI,EAAEsxC,QAAQjlD,EAAE2T,EAAEu6C,OAAO,IAAI/yC,EAAE0xC,YAAYl5C,EAAEw6C,UAAU,IAAIzsD,EAAE0sD,SAASz6C,EAAE06C,iBAAiB,IAAI/J,EAAEgK,aAAa36C,EAAEwuC,MAAMxuC,EAAEouC,UAAUI,MAAMxuC,EAAE46C,cAAc,CAAC,IAAIpL,EAAEqL,gBAAgB76C,EAAEwuC,MAAMsM,cAAc,EAAE96C,EAAEsxC,QAAQtxC,EAAEwuC,OAAO,IAAI5xC,EAAEm+C,kBAAkB/6C,EAAEwuC,MAAMsM,cAAc,EAAE96C,EAAEsxC,QAAQtxC,EAAE06C,mBAAmB16C,EAAE2uC,WAAW,CAACqM,gBAAgB,EAAEC,iBAAiB,EAAEvC,gBAAgB,EAAEC,iBAAiB,EAAE9D,eAAe,EAAEC,cAAc,EAAEC,kBAAkB,EAAEC,mBAAmB,EAAEkG,YAAY,EAAEC,aAAa,EAAEvM,gBAAgB,EAAEC,iBAAiB,GAAG7uC,EAAEo7C,kBAAkBjuD,OAAOkuD,iBAAiBr7C,EAAEs7C,oBAAoBt7C,EAAEu7C,QAAQ1wC,SAASyE,cAAc,UAAU,IAAI4/B,EAAE,CAACsM,WAAU,EAAGC,OAAM,EAAGC,sBAAsBvrD,GAAG,GAAG6P,EAAEuxC,IAAIvxC,EAAEu7C,QAAQI,WAAW,SAASzM,IAAIlvC,EAAEuxC,IAAI,MAAM,IAAI3lD,MAAM,wBAAwBoU,EAAEuxC,KAAK,OAAOvxC,EAAEwuC,MAAMsM,cAAcprC,YAAY1P,EAAEu7C,SAASv7C,EAAE47C,mBAAmB,IAAI3qD,EAAEinD,kBAAkBl4C,EAAEouC,UAAUpuC,EAAEsxC,QAAQtxC,EAAEuxC,IAAIvxC,EAAE2uC,YAAY3uC,EAAE67C,eAAe,IAAInwC,EAAEwlC,cAAclxC,EAAEouC,UAAUpuC,EAAEsxC,QAAQtxC,EAAEuxC,IAAIvxC,EAAE2uC,YAAY3uC,EAAE87C,oBAAoB97C,EAAE+7C,YAAYlxC,SAASS,KAAK0wC,SAASh8C,EAAEwuC,MAAMsM,eAAe96C,EAAE,OAAOA,EAAEJ,EAAE22B,GAAG17B,OAAOqzC,eAAetuC,EAAExR,UAAU,kBAAkB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK8tD,iBAAiB/a,OAAOwP,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUigD,QAAQ,WAAWzhD,KAAKguD,cAAcp9C,SAAQ,SAAU+4B,GAAG,OAAOA,EAAE8X,aAAazhD,KAAK4hD,MAAMsM,cAAct+C,YAAY5P,KAAK2uD,SAAShlB,EAAEnoC,UAAUigD,QAAQj6B,KAAKxnB,OAAOiO,OAAOqzC,eAAetuC,EAAExR,UAAU,eAAe,CAAC0J,IAAI,WAAW,IAAIy+B,EAAE,OAAO,QAAQA,EAAE3pC,KAAKqvD,kBAAa,IAAS1lB,OAAE,EAAOA,EAAEihB,aAAarI,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAU0oD,UAAU,SAASvgB,GAAG,IAAI32B,EAAEhT,KAAKA,KAAK0kD,QAAQ/a,EAAE3pC,KAAKguD,cAAcp9C,SAAQ,SAAU+4B,GAAGA,EAAEugB,UAAUl3C,EAAEwuC,UAAUxuC,EAAE0xC,SAAS/a,EAAEn5B,MAAMwC,EAAEwuC,cAAcxhD,KAAKgvD,mBAAmB9E,YAAYlqD,KAAKivD,eAAe/E,YAAYlqD,KAAKsvD,oBAAoBtvD,KAAK2tD,OAAOn7C,SAASQ,EAAExR,UAAU+tD,yBAAyB,WAAWvvD,KAAKwuD,oBAAoBjuD,OAAOkuD,mBAAmBzuD,KAAKwuD,kBAAkBjuD,OAAOkuD,iBAAiBzuD,KAAKwnD,SAASxnD,KAAKwhD,UAAUK,KAAK7hD,KAAKwhD,UAAUvoB,QAAQjmB,EAAExR,UAAUgmD,SAAS,SAAS7d,EAAE32B,GAAG,IAAIvT,EAAEO,KAAKA,KAAK0uD,oBAAoB1uD,KAAK2tD,OAAOvuC,OAAOpf,KAAKwhD,UAAUK,KAAK7hD,KAAKwhD,UAAUvoB,MAAMj5B,KAAKguD,cAAcp9C,SAAQ,SAAU+4B,GAAG,OAAOA,EAAEvqB,OAAO3f,EAAE+hD,UAAU/hD,EAAEsiD,eAAe/hD,KAAK2uD,QAAQxyC,MAAMnc,KAAK+hD,WAAWoG,kBAAkBnoD,KAAK2uD,QAAQ5wC,OAAO/d,KAAK+hD,WAAWqG,mBAAmBpoD,KAAK2uD,QAAQluC,MAAMtE,MAAMnc,KAAK+hD,WAAWuM,YAAY,KAAKtuD,KAAK2uD,QAAQluC,MAAM1C,OAAO/d,KAAK+hD,WAAWwM,aAAa,KAAKvuD,KAAK4hD,MAAMsM,cAAcztC,MAAMtE,MAAMnc,KAAK+hD,WAAWuM,YAAY,KAAKtuD,KAAK4hD,MAAMsM,cAAcztC,MAAM1C,OAAO/d,KAAK+hD,WAAWwM,aAAa,KAAKvuD,KAAKgvD,mBAAmBxH,WAAWxnD,KAAK2tD,OAAO5iC,UAAUihC,cAAchsD,KAAKgvD,mBAAmBzG,gBAAgBvoD,KAAK2tD,OAAO5iC,WAAW/qB,KAAKivD,eAAe7D,cAAcprD,KAAK+hD,YAAY/hD,KAAKivD,eAAezH,WAAWxnD,KAAKsvD,oBAAoBtvD,KAAK2tD,OAAOn7C,SAASQ,EAAExR,UAAU0tD,kBAAkB,WAAWlvD,KAAKwnD,SAASxnD,KAAKwhD,UAAUK,KAAK7hD,KAAKwhD,UAAUvoB,OAAOjmB,EAAExR,UAAUguD,OAAO,WAAW,IAAI7lB,EAAE3pC,KAAKA,KAAKguD,cAAcp9C,SAAQ,SAAUoC,GAAG,OAAOA,EAAEw8C,OAAO7lB,EAAE6X,eAAexuC,EAAExR,UAAUiuD,QAAQ,WAAW,IAAI9lB,EAAE3pC,KAAKA,KAAKguD,cAAcp9C,SAAQ,SAAUoC,GAAG,OAAOA,EAAEy8C,QAAQ9lB,EAAE6X,eAAexuC,EAAExR,UAAUkuD,mBAAmB,SAAS/lB,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAEvD,KAAKA,KAAKguD,cAAcp9C,SAAQ,SAAUwC,GAAG,OAAOA,EAAEs8C,mBAAmBnsD,EAAEi+C,UAAU7X,EAAE32B,EAAEvT,MAAMO,KAAK2vD,sBAAsBhmB,EAAE32B,EAAEvT,GAAGO,KAAK8tD,iBAAiB8B,KAAK,CAACvzC,MAAM,EAAEK,IAAI1c,KAAKwhD,UAAUvoB,KAAK,KAAKjmB,EAAExR,UAAUquD,aAAa,WAAW,IAAIlmB,EAAE3pC,KAAKA,KAAKguD,cAAcp9C,SAAQ,SAAUoC,GAAG,OAAOA,EAAE68C,aAAalmB,EAAE6X,eAAexuC,EAAExR,UAAUsuD,iBAAiB,WAAW,IAAInmB,EAAE3pC,KAAKA,KAAKguD,cAAcp9C,SAAQ,SAAUoC,GAAG,OAAOA,EAAE88C,iBAAiBnmB,EAAE6X,cAAcxhD,KAAK0uD,oBAAoB1uD,KAAKsvD,qBAAqBt8C,EAAExR,UAAU8tD,kBAAkB,WAAW,GAAGtvD,KAAK+hD,WAAWqM,iBAAiB,GAAGpuD,KAAK+hD,WAAWsM,kBAAkB,EAAEruD,KAAKmvD,aAAY,MAAO,CAAC,IAAIxlB,EAAE2Y,EAAEyN,iBAAiB/vD,KAAKwhD,UAAUxhD,KAAK0kD,QAAQ1kD,KAAK+hD,WAAWqM,gBAAgBpuD,KAAK+hD,WAAWsM,kBAAkB,KAAK,uBAAuB1kB,GAAG,MAAM,IAAI3qC,MAAM,2DAA2DgB,KAAKqvD,WAAW1lB,EAAE3pC,KAAKqvD,WAAWW,SAAShwD,KAAKivD,eAAe9D,SAASnrD,KAAKqvD,cAAcr8C,EAAExR,UAAU8rD,eAAe,WAAW,IAAI3jB,EAAE,QAAQA,EAAE3pC,KAAKqvD,kBAAa,IAAS1lB,GAAGA,EAAEsmB,eAAejwD,KAAK2tD,OAAOn7C,QAAQxS,KAAKkwD,aAAa,EAAElwD,KAAKwhD,UAAUvoB,KAAK,GAAGj5B,KAAK8tD,iBAAiB8B,KAAK,CAACvzC,MAAM,EAAEK,IAAI1c,KAAKwhD,UAAUvoB,KAAK,KAAKjmB,EAAExR,UAAUgR,MAAM,WAAW,IAAIm3B,EAAE3pC,KAAKA,KAAKguD,cAAcp9C,SAAQ,SAAUoC,GAAG,OAAOA,EAAExC,MAAMm5B,EAAE6X,eAAexuC,EAAExR,UAAU2uD,wBAAwB,SAASxmB,GAAG,OAAO,GAAG32B,EAAExR,UAAU4uD,0BAA0B,SAASzmB,GAAG,OAAM,GAAI32B,EAAExR,UAAU6uD,WAAW,SAAS1mB,EAAE32B,GAAG,IAAIvT,EAAEO,KAAK,IAAIA,KAAKmvD,YAAY,CAAC,KAAKlxC,SAASS,KAAK0wC,SAASpvD,KAAK4hD,MAAMsM,gBAAgBluD,KAAK4hD,MAAM0O,iBAAiBn0C,OAAOnc,KAAK4hD,MAAM0O,iBAAiBvyC,QAAQ,OAAO/d,KAAK0uD,oBAAoB1uD,KAAKsvD,oBAAoBtvD,KAAKmvD,aAAY,EAAGnvD,KAAKguD,cAAcp9C,SAAQ,SAAUrN,GAAG,OAAOA,EAAEgtD,cAAc9wD,EAAE+hD,UAAU7X,EAAE32B,MAAMhT,KAAKivD,eAAexH,eAAeznD,KAAK2tD,OAAOn7C,QAAQxS,KAAK2vD,2BAAsB,OAAO,IAAS3vD,KAAKkwD,aAAavmB,EAAE32B,GAAGhT,KAAKgvD,mBAAmB7E,SAASnqD,KAAKivD,eAAe9E,OAAOnqD,KAAK2tD,OAAO3tD,KAAK2tD,OAAO5iC,UAAUihC,eAAeh5C,EAAExR,UAAU0uD,aAAa,SAASvmB,EAAE32B,GAAG,IAAI,IAAIvT,EAAEO,KAAK4hD,MAAMr+C,EAAEomC,EAAEpmC,GAAGyP,EAAEzP,IAAI,CAAC,IAAI6P,EAAE7P,EAAE9D,EAAEukD,OAAOwM,MAAM1xC,EAAErf,EAAEukD,OAAOhL,MAAM9tC,IAAIkI,GAAGpT,KAAK2tD,OAAOtD,YAAY9mD,GAAG,EAAE,IAAI,IAAIq/C,EAAE,EAAEA,EAAEnjD,EAAEoiD,KAAKe,IAAI,CAAC9jC,EAAE2xC,SAAS7N,EAAE5iD,KAAK4tD,WAAW,IAAI59C,EAAEhQ,KAAK4tD,UAAU7D,WAAWzH,EAAEtiD,KAAK4tD,UAAU8C,UAAUrsD,GAAGd,EAAE9D,EAAEoiD,KAAKe,GAAGhoC,EAAEsuC,+BAA+B5G,IAAInnC,EAAE0sC,iBAAiB7nD,KAAK2tD,OAAOtD,YAAY9mD,GAAGq/C,EAAE,GAAG5iD,KAAK2tD,OAAOxE,MAAM9kD,KAAKi+C,GAAGtiD,KAAK2tD,OAAOxE,MAAM9kD,EAAEuW,EAAE4uC,0BAA0BxpD,KAAK4tD,UAAUrE,IAAIvpD,KAAK2tD,OAAOxE,MAAM9kD,EAAEuW,EAAEwuC,0BAA0BppD,KAAK4tD,UAAUtE,KAAKt5C,EAAEzQ,OAAO,IAAI+iD,GAAG1nC,EAAEivC,wBAAwB7pD,KAAK2tD,OAAOxE,MAAM9kD,GAAGi+C,EAAEtiD,KAAK2tD,OAAOxE,MAAM9kD,EAAEuW,EAAE4uC,wBAAwBxpD,KAAK4tD,UAAUrE,GAAGvpD,KAAK2tD,OAAOxE,MAAM9kD,EAAEuW,EAAEwuC,wBAAwBppD,KAAK4tD,UAAUtE,GAAGtpD,KAAKivD,eAAetH,WAAW/E,EAAEr/C,EAAE++C,EAAEtiD,KAAK4tD,UAAUrE,GAAGvpD,KAAK4tD,UAAUtE,GAAGt5C,KAAKhQ,KAAKgvD,mBAAmB/C,kBAAkBjsD,KAAK2tD,QAAQ3tD,KAAK2tD,OAAO5iC,UAAUihC,cAAchsD,KAAKivD,eAAe1G,gBAAgBvoD,KAAK2tD,SAAS36C,EAAExR,UAAUmuD,sBAAsB,SAAShmB,EAAE32B,EAAEvT,QAAG,IAASA,IAAIA,GAAE,GAAI,IAAI8D,EAAEvD,KAAKwhD,UAAU,IAAI7X,IAAI32B,GAAG22B,EAAE,KAAK32B,EAAE,IAAI22B,EAAE,KAAK32B,EAAE,GAAG,OAAOhT,KAAK2tD,OAAOnB,sBAAsBxsD,KAAKgvD,mBAAmBzG,gBAAgBvoD,KAAK2tD,OAAO5iC,WAAW,IAAI3X,EAAEu2B,EAAE,GAAGpmC,EAAEygD,OAAOC,OAAOgF,UAAUnqC,EAAE9L,EAAE,GAAGzP,EAAEygD,OAAOC,OAAOgF,UAAUrG,EAAE//C,KAAKuE,IAAIgM,EAAE,GAAGpD,EAAEnN,KAAKC,IAAIgc,EAAEvb,EAAE01B,KAAK,GAAG,GAAG2pB,GAAGr/C,EAAE01B,MAAMjpB,EAAE,EAAE,OAAOhQ,KAAK2tD,OAAOnB,sBAAsBxsD,KAAKgvD,mBAAmBzG,gBAAgBvoD,KAAK2tD,OAAO5iC,WAAW/qB,KAAK2tD,OAAO5iC,UAAUihC,cAAa,EAAGhsD,KAAK2tD,OAAO5iC,UAAU09B,iBAAiBhpD,EAAEO,KAAK2tD,OAAO5iC,UAAUg+B,iBAAiB31C,EAAEpT,KAAK2tD,OAAO5iC,UAAUi+B,eAAelqC,EAAE9e,KAAK2tD,OAAO5iC,UAAU89B,uBAAuBjG,EAAE5iD,KAAK2tD,OAAO5iC,UAAU69B,qBAAqB54C,EAAEhQ,KAAK2tD,OAAO5iC,UAAU29B,SAAS/e,EAAE,GAAG3pC,KAAK2tD,OAAO5iC,UAAU49B,OAAO31C,EAAE,GAAGhT,KAAKgvD,mBAAmBzG,gBAAgBvoD,KAAK2tD,OAAO5iC,YAAY/X,EAAExR,UAAUktD,kBAAkB,WAAW1uD,KAAK4hD,MAAM0O,iBAAiBn0C,OAAOnc,KAAK4hD,MAAM0O,iBAAiBvyC,SAAS/d,KAAK+hD,WAAWqM,gBAAgBvrD,KAAK2F,MAAMxI,KAAK4hD,MAAM0O,iBAAiBn0C,MAAMnc,KAAKwuD,mBAAmBxuD,KAAK+hD,WAAWsM,iBAAiBxrD,KAAK0F,KAAKvI,KAAK4hD,MAAM0O,iBAAiBvyC,OAAO/d,KAAKwuD,mBAAmBxuD,KAAK+hD,WAAWgK,iBAAiBlpD,KAAK2F,MAAMxI,KAAK+hD,WAAWsM,iBAAiBruD,KAAKwhD,UAAUmP,UAAU,eAAe3wD,KAAK+hD,WAAWmG,cAAc,IAAIloD,KAAKwhD,UAAUmP,UAAU,cAAc,EAAE9tD,KAAKkB,OAAO/D,KAAK+hD,WAAWgK,iBAAiB/rD,KAAK+hD,WAAWsM,kBAAkB,GAAGruD,KAAK+hD,WAAW+J,gBAAgB9rD,KAAK+hD,WAAWqM,gBAAgBvrD,KAAKkB,MAAM/D,KAAKwhD,UAAUmP,UAAU,kBAAkB3wD,KAAK+hD,WAAWkG,eAAeplD,KAAK2F,MAAMxI,KAAKwhD,UAAUmP,UAAU,iBAAiB,GAAG3wD,KAAK+hD,WAAWqG,mBAAmBpoD,KAAKwhD,UAAUvoB,KAAKj5B,KAAK+hD,WAAWgK,iBAAiB/rD,KAAK+hD,WAAWoG,kBAAkBnoD,KAAKwhD,UAAUK,KAAK7hD,KAAK+hD,WAAW+J,gBAAgB9rD,KAAK+hD,WAAWwM,aAAa1rD,KAAKkB,MAAM/D,KAAK+hD,WAAWqG,mBAAmBpoD,KAAKwuD,mBAAmBxuD,KAAK+hD,WAAWuM,YAAYzrD,KAAKkB,MAAM/D,KAAK+hD,WAAWoG,kBAAkBnoD,KAAKwuD,mBAAmBxuD,KAAK+hD,WAAWE,iBAAiBjiD,KAAK+hD,WAAWgK,iBAAiB/rD,KAAKwuD,kBAAkBxuD,KAAK+hD,WAAWC,gBAAgBhiD,KAAK+hD,WAAW+J,gBAAgB9rD,KAAKwuD,oBAAoBx7C,EAApyQ,CAAuyQyxC,EAAEmM,YAAY59C,EAAEg6C,cAAc1kC,GAAGuoC,IAAI,CAAClnB,EAAE32B,KAAK,SAASvT,EAAEkqC,EAAE32B,EAAEvT,GAAG,IAAI2T,EAAE7P,EAAEomC,EAAEmnB,aAAa99C,IAAI,GAAG22B,EAAEonB,aAAa39C,EAAE3T,GAAGkqC,EAAEqnB,cAAc59C,GAAGu2B,EAAEsnB,mBAAmB79C,EAAEu2B,EAAEunB,gBAAgB,OAAO99C,EAAE3S,QAAQ4E,MAAMskC,EAAEwnB,iBAAiB/9C,IAAIu2B,EAAEynB,aAAah+C,GAAG,SAAS7P,EAAEomC,GAAG,IAAIA,EAAE,MAAM,IAAI3qC,MAAM,2BAA2B,OAAO2qC,EAAE17B,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEkyC,aAAalyC,EAAEm5C,mBAAmBn5C,EAAE89C,aAAa99C,EAAEmyC,cAAcnyC,EAAE+3C,uBAAkB,EAAO/3C,EAAE+3C,kBAAkB,IAAIxG,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAIvxC,EAAEmyC,cAAc,SAASxb,EAAE32B,EAAEI,GAAG,IAAI0L,EAAEvb,EAAEomC,EAAEwb,iBAAiB,GAAGxb,EAAE0nB,aAAavyC,EAAEvb,EAAE9D,EAAEkqC,EAAEA,EAAE2nB,cAAct+C,KAAK22B,EAAE0nB,aAAavyC,EAAEvb,EAAE9D,EAAEkqC,EAAEA,EAAE4nB,gBAAgBn+C,KAAKu2B,EAAE6nB,YAAY1yC,GAAG6qB,EAAE8nB,oBAAoB3yC,EAAE6qB,EAAE+nB,aAAa,OAAO5yC,EAAEre,QAAQ4E,MAAMskC,EAAEgoB,kBAAkB7yC,IAAI6qB,EAAEioB,cAAc9yC,IAAI9L,EAAE89C,aAAarxD,EAAEuT,EAAEm5C,mBAAmB,SAASxiB,EAAE32B,GAAG,IAAI,IAAIvT,EAAEoD,KAAKC,IAAI,EAAE6mC,EAAEpqC,OAAOyT,GAAGzP,EAAE,IAAIghD,aAAa9kD,GAAG2T,EAAE,EAAEA,EAAEu2B,EAAEpqC,OAAO6T,IAAI7P,EAAE6P,GAAGu2B,EAAEv2B,GAAG,OAAO7P,GAAGyP,EAAEkyC,aAAa3hD,GAAGsuD,IAAI,CAACloB,EAAE32B,EAAEvT,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAE8+C,wBAAwB9+C,EAAE+8C,sBAAiB,EAAO,IAAIxsD,EAAE9D,EAAE,KAAK2T,EAAE3T,EAAE,KAAKqf,EAAE,GAAG9L,EAAE+8C,iBAAiB,SAASpmB,EAAE32B,EAAEvT,EAAEmjD,GAAG,IAAI,IAAI5yC,EAAEzM,EAAEwuD,eAAetyD,EAAEmjD,EAAEjZ,EAAE32B,GAAGsvC,EAAE,EAAEA,EAAExjC,EAAEvf,OAAO+iD,IAAI,CAAC,IAAIj+C,GAAGuW,EAAEkE,EAAEwjC,IAAI0P,QAAQ3uD,QAAQsmC,GAAG,GAAGtlC,GAAG,EAAE,CAAC,GAAGd,EAAE0uD,aAAar3C,EAAEs3C,OAAOliD,GAAG,OAAO4K,EAAEu3C,MAAM,IAAIv3C,EAAEo3C,QAAQzyD,QAAQqb,EAAEu3C,MAAM1Q,UAAU3iC,EAAEhb,OAAOw+C,EAAE,IAAI1nC,EAAEo3C,QAAQluD,OAAOO,EAAE,GAAG,OAAO,IAAIi+C,EAAE,EAAEA,EAAExjC,EAAEvf,OAAO+iD,IAAI,CAAC,IAAI1nC,EAAEkE,EAAEwjC,GAAG,GAAG/+C,EAAE0uD,aAAar3C,EAAEs3C,OAAOliD,GAAG,OAAO4K,EAAEo3C,QAAQ9xD,KAAKypC,GAAG/uB,EAAEu3C,MAAM,IAAI1N,EAAE,CAAC0N,MAAM,IAAI/+C,EAAEg/C,eAAen0C,SAASjO,GAAGkiD,OAAOliD,EAAEgiD,QAAQ,CAACroB,IAAI,OAAO7qB,EAAE5e,KAAKukD,GAAGA,EAAE0N,OAAOn/C,EAAE8+C,wBAAwB,SAASnoB,GAAG,IAAI,IAAI32B,EAAE,EAAEA,EAAE8L,EAAEvf,OAAOyT,IAAI,CAAC,IAAIvT,EAAEqf,EAAE9L,GAAGg/C,QAAQ3uD,QAAQsmC,GAAG,IAAI,IAAIlqC,EAAE,CAAC,IAAIqf,EAAE9L,GAAGg/C,QAAQzyD,QAAQuf,EAAE9L,GAAGm/C,MAAM1Q,UAAU3iC,EAAEhb,OAAOkP,EAAE,IAAI8L,EAAE9L,GAAGg/C,QAAQluD,OAAOrE,EAAE,GAAG,UAAU4yD,IAAI,CAAC1oB,EAAE32B,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEs/C,WAAWt/C,EAAEi/C,aAAaj/C,EAAE++C,oBAAe,EAAO,IAAItyD,EAAE,CAAC8yD,IAAI,GAAGjwD,KAAK,GAAG0Q,EAAE++C,eAAe,SAASpoB,EAAE32B,EAAEzP,EAAE6P,GAAG,IAAI0L,EAAE,CAACo7B,WAAW9mC,EAAE8mC,WAAW78B,WAAWjK,EAAEiK,WAAW+yB,OAAO3wC,EAAE+yD,aAAa/yD,EAAEgzD,qBAAqBhzD,EAAE+oD,gBAAgB/oD,EAAEuqD,KAAK52C,EAAE42C,KAAKloD,QAAQ4wD,cAAct/C,EAAEs/C,eAAe,MAAM,CAACjE,iBAAiBluD,OAAOkuD,iBAAiBL,gBAAgBzkB,EAAE0kB,iBAAiBr7C,EAAE+O,WAAWxe,EAAEotD,UAAU,cAAc9uC,SAASte,EAAEotD,UAAU,YAAY5qB,WAAWxiC,EAAEotD,UAAU,cAAcgC,eAAepvD,EAAEotD,UAAU,kBAAkBiC,kBAAkBrvD,EAAEotD,UAAU,qBAAqBkC,2BAA2BtvD,EAAEotD,UAAU,8BAA8BmC,qBAAqBvvD,EAAEotD,UAAU,wBAAwB3uD,OAAO8c,IAAI9L,EAAEi/C,aAAa,SAAStoB,EAAE32B,GAAG,IAAI,IAAIvT,EAAE,EAAEA,EAAEkqC,EAAE3nC,OAAOgoD,KAAKzqD,OAAOE,IAAI,GAAGkqC,EAAE3nC,OAAOgoD,KAAKvqD,GAAG6C,OAAO0Q,EAAEhR,OAAOgoD,KAAKvqD,GAAG6C,KAAK,OAAM,EAAG,OAAOqnC,EAAE8kB,mBAAmBz7C,EAAEy7C,kBAAkB9kB,EAAE5nB,aAAa/O,EAAE+O,YAAY4nB,EAAE9nB,WAAW7O,EAAE6O,UAAU8nB,EAAE5D,aAAa/yB,EAAE+yB,YAAY4D,EAAEgpB,iBAAiB3/C,EAAE2/C,gBAAgBhpB,EAAEipB,oBAAoB5/C,EAAE4/C,mBAAmBjpB,EAAEykB,kBAAkBp7C,EAAEo7C,iBAAiBzkB,EAAE0kB,mBAAmBr7C,EAAEq7C,kBAAkB1kB,EAAEkpB,6BAA6B7/C,EAAE6/C,4BAA4BlpB,EAAEmpB,uBAAuB9/C,EAAE8/C,sBAAsBnpB,EAAE3nC,OAAOk4C,aAAalnC,EAAEhR,OAAOk4C,YAAYvQ,EAAE3nC,OAAOqb,aAAarK,EAAEhR,OAAOqb,YAAYrK,EAAEs/C,WAAW,SAAS3oB,GAAG,OAAO,WAAW,SAASA,IAAI,WAAW,SAASA,KAAKopB,IAAI,CAACppB,EAAE32B,EAAEvT,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEo/C,oBAAe,EAAO,IAAI7uD,EAAE9D,EAAE,KAAK2T,EAAE3T,EAAE,KAAKqf,EAAErf,EAAE,KAAKmjD,EAAEnjD,EAAE,KAAKuQ,EAAEvQ,EAAE,KAAK6iD,EAAE,KAAKj+C,EAAE,KAAKuW,EAAE/X,KAAK2F,MAAM,OAAOi8C,EAAE,CAAC8N,IAAI,mBAAmBjwD,KAAK,GAAG6Y,EAAE,CAACqf,OAAO,CAACuP,EAAE,EAAEF,EAAE,GAAGmpB,gBAAgB,CAACjpB,EAAE,EAAEF,EAAE,GAAGwe,yBAAyB,CAACte,EAAE,EAAEF,EAAE,GAAGvmC,KAAK,CAACymC,EAAE,EAAEF,EAAE,GAAGye,cAAc,CAACve,EAAE,EAAEF,EAAE,IAAIka,EAAE,WAAW,SAASpa,EAAEA,EAAE32B,GAAGhT,KAAKizD,QAAQjgD,EAAEhT,KAAKkzD,YAAW,EAAGlzD,KAAKmzD,UAAU,GAAGnzD,KAAKozD,kBAAkB,GAAGpzD,KAAKqzD,aAAa,EAAErzD,KAAKszD,aAAa,EAAEtzD,KAAKuzD,kBAAkB,EAAEvzD,KAAKwqD,kBAAiB,EAAGxqD,KAAKwzD,iBAAiB,CAACrsB,IAAI,EAAEF,KAAK,EAAEwK,OAAO,EAAEgiB,MAAM,GAAGzzD,KAAK0zD,mBAAmB,IAAI9Q,EAAEyG,cAAcrpD,KAAK4qD,YAAYjhB,EAAEjnB,cAAc,UAAU1iB,KAAK4qD,YAAYzuC,MAAMmmC,EAAEtiD,KAAK4qD,YAAY7sC,OAAO1Z,EAAErE,KAAK2zD,UAAU70C,EAAEomC,aAAallD,KAAK4qD,YAAYmE,WAAW,KAAK,CAACpqD,OAAM,KAAM3E,KAAK4zD,WAAWjqB,EAAEjnB,cAAc,UAAU1iB,KAAK4zD,WAAWz3C,MAAM,EAAEnc,KAAKizD,QAAQ7E,gBAAgB,EAAEpuD,KAAK4zD,WAAW71C,OAAO/d,KAAKizD,QAAQ5E,iBAAiB,EAAEruD,KAAK6zD,QAAQ/0C,EAAEomC,aAAallD,KAAK4zD,WAAW7E,WAAW,KAAK,CAACpqD,MAAM3E,KAAKizD,QAAQL,qBAAqB,OAAOjpB,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAK4qD,YAAYzlB,eAAenlC,KAAK4qD,YAAYzlB,cAAcv1B,YAAY5P,KAAK4qD,cAAcjhB,EAAEnoC,UAAUwuD,OAAO,WAAWhwD,KAAKkzD,aAAalzD,KAAK8zD,YAAY9zD,KAAKkzD,YAAW,IAAKvpB,EAAEnoC,UAAUsyD,UAAU,WAAW,IAAI,IAAInqB,EAAE32B,EAAEvT,EAAE,GAAGA,EAAE,IAAIA,IAAI,CAAC,IAAI8D,EAAEvD,KAAK+zD,aAAat0D,EAAE2T,EAAE0hC,cAAc1hC,EAAE0hC,eAAe90C,KAAKmzD,UAAU1zD,KAAKkqC,EAAE,IAAIv2B,EAAE0hC,iBAAiB9hC,EAAE,IAAII,EAAE0hC,eAAevxC,EAAEyP,GAAG22B,KAAKA,EAAEnoC,UAAUimD,WAAW,WAAW,OAAOznD,KAAKqzD,aAAaz4C,IAAI5a,KAAKiwD,eAAejwD,KAAKgwD,UAAS,IAAKrmB,EAAEnoC,UAAUyuD,aAAa,WAAW,IAAIjwD,KAAKszD,cAAc,IAAItzD,KAAKqzD,eAAerzD,KAAK2zD,UAAUK,UAAU,EAAE,EAAE1R,EAAEj+C,GAAGrE,KAAKmzD,UAAU,GAAGnzD,KAAKozD,kBAAkB,GAAGpzD,KAAKuzD,kBAAkB,EAAEvzD,KAAKszD,aAAa,EAAEtzD,KAAKqzD,aAAa,EAAErzD,KAAKkzD,YAAW,IAAKvpB,EAAEnoC,UAAUumD,+BAA+B,SAASpe,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAE6P,EAAEpT,KAAKozD,kBAAkBzpB,GAAGv2B,IAAIA,EAAE,GAAGpT,KAAKozD,kBAAkBzpB,GAAGv2B,GAAG,IAAI0L,EAAE1L,EAAEJ,GAAG,OAAO8L,IAAIvb,EAAEub,EAAErf,IAAI8D,IAAIA,EAAEvD,KAAK+zD,aAAapqB,EAAE32B,EAAEvT,GAAG2T,EAAEJ,KAAKI,EAAEJ,GAAG,IAAII,EAAEJ,GAAGvT,GAAG8D,GAAGA,GAAGomC,EAAEnoC,UAAUwmD,mBAAmB,SAASre,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAE6P,EAAEpT,KAAKmzD,UAAUxpB,GAAGv2B,IAAIA,EAAE,GAAGpT,KAAKmzD,UAAUxpB,GAAGv2B,GAAG,IAAI0L,EAAE1L,EAAEJ,GAAG,OAAO8L,IAAIvb,EAAEub,EAAErf,IAAI8D,IAAIA,EAAEvD,KAAK+zD,aAAapqB,EAAE32B,EAAEvT,GAAG2T,EAAEJ,KAAKI,EAAEJ,GAAG,IAAII,EAAEJ,GAAGvT,GAAG8D,GAAGA,GAAGomC,EAAEnoC,UAAUkoD,uBAAuB,SAAS/f,GAAG,GAAGA,GAAG3pC,KAAKizD,QAAQjxD,OAAOgoD,KAAKzqD,OAAO,MAAM,IAAIP,MAAM,0BAA0B2qC,GAAG,OAAO3pC,KAAKizD,QAAQjxD,OAAOgoD,KAAKrgB,IAAIA,EAAEnoC,UAAUyyD,oBAAoB,SAAStqB,EAAE32B,EAAEvT,GAAG,GAAGO,KAAKizD,QAAQL,kBAAkB,OAAOnO,EAAE,OAAO9a,GAAG,KAAK,SAAS,KAAK,SAAS,OAAO3pC,KAAK0pD,uBAAuB12C,GAAG,KAAK,SAAS,IAAIzP,EAAEq/C,EAAEyG,cAAcO,WAAW52C,GAAG,MAAM,CAAC1Q,KAAK0Q,GAAG,EAAEu/C,IAAI,IAAIpxD,EAAEoC,EAAE,IAAIpC,EAAEoC,EAAE,IAAIpC,EAAEoC,EAAE,KAAK,KAAK,EAAE,QAAQ,OAAO9D,EAAEO,KAAKizD,QAAQjxD,OAAOk4C,WAAWl6C,KAAKizD,QAAQjxD,OAAOqb,aAAassB,EAAEnoC,UAAU0yD,kBAAkB,SAASvqB,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAE0L,EAAEwjC,EAAEj+C,GAAG,IAAIuW,EAAE5a,KAAKm0D,uBAAuBxqB,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAE0L,EAAEwjC,EAAEj+C,GAAG,GAAGuW,EAAE,OAAOA,EAAE,OAAOxH,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOpT,KAAKizD,QAAQJ,4BAA4BxuD,GAAGya,EAAE,IAAIA,GAAG,GAAG9e,KAAK0pD,uBAAuB5qC,GAAGyzC,IAAI,KAAK,SAAS,IAAI9N,EAAE7B,EAAEyG,cAAcO,WAAW9qC,GAAG,OAAO9O,EAAEokD,SAASC,MAAM5P,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,KAAK,EAAE,QAAQ,GAAGnC,EAAE,CAAC,IAAInnC,EAAEnb,KAAKizD,QAAQjxD,OAAOqb,WAAWk1C,IAAI,OAAO,IAAIp3C,EAAE5b,OAAO4b,EAAE/X,OAAO,EAAE,GAAG+X,EAAE,OAAOnb,KAAKizD,QAAQjxD,OAAOk4C,WAAWqY,MAAM5oB,EAAEnoC,UAAU8yD,uBAAuB,SAAS3qB,EAAE32B,EAAEvT,GAAG,OAAOkqC,GAAG,KAAK,SAAS,KAAK,SAAS,OAAO3pC,KAAK0pD,uBAAuB12C,GAAG1Q,KAAK,KAAK,SAAS,OAAO0Q,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAOvT,EAAEO,KAAKizD,QAAQjxD,OAAOk4C,WAAW53C,KAAKtC,KAAKizD,QAAQjxD,OAAOqb,WAAW/a,OAAOqnC,EAAEnoC,UAAU+yD,uBAAuB,SAAS5qB,EAAE32B,EAAEvT,EAAE8D,GAAG,OAAOomC,GAAG,KAAK,SAAS,KAAK,SAAS,OAAO3pC,KAAKizD,QAAQJ,4BAA4BtvD,GAAGyP,EAAE,IAAIA,GAAG,GAAGhT,KAAK0pD,uBAAuB12C,GAAG1Q,KAAK,KAAK,SAAS,OAAO0Q,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAOvT,EAAEO,KAAKizD,QAAQjxD,OAAOqb,WAAW/a,KAAKtC,KAAKizD,QAAQjxD,OAAOk4C,WAAW53C,OAAOqnC,EAAEnoC,UAAU2yD,uBAAuB,SAASxqB,EAAE32B,EAAEvT,EAAE8D,EAAE6P,EAAE0L,EAAE8jC,EAAEN,GAAG,GAAG,IAAItiD,KAAKizD,QAAQH,qBAAqB,CAAC,IAAIzuD,EAAErE,KAAKizD,QAAQjxD,OAAO0wD,cAAc8B,OAAO7qB,EAAEpmC,GAAG,QAAG,IAASc,EAAE,OAAOA,QAAG,EAAO,IAAIuW,EAAE5a,KAAKs0D,uBAAuBthD,EAAEvT,EAAEmjD,GAAG6B,EAAEzkD,KAAKu0D,uBAAuBnhD,EAAE0L,EAAE8jC,EAAEN,GAAGnnC,EAAEnL,EAAE1N,KAAKmyD,oBAAoB75C,EAAE6pC,EAAEzkD,KAAKizD,QAAQH,sBAAsB,GAAG33C,EAAE,CAAC,IAAI4oC,EAAE/zC,EAAEokD,SAASC,MAAMl5C,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,KAAK,OAAOnb,KAAKizD,QAAQjxD,OAAO0wD,cAAcgC,OAAO/qB,EAAEpmC,EAAEwgD,GAAGA,EAAE/jD,KAAKizD,QAAQjxD,OAAO0wD,cAAcgC,OAAO/qB,EAAEpmC,EAAE,QAAQomC,EAAEnoC,UAAUuyD,aAAa,SAASpqB,EAAE32B,EAAEvT,GAAG,IAAI2T,EAAE,iBAAiBu2B,EAAEpoC,OAAOwZ,aAAa4uB,GAAGA,EAAE,GAAG3pC,KAAKwqD,kBAAiB,EAAGxqD,KAAK6zD,QAAQ1/C,OAAOnU,KAAK0zD,mBAAmBpK,GAAG7pD,EAAEO,KAAK0zD,mBAAmBnK,GAAGv2C,EAAEhT,KAAK0zD,mBAAmBiB,cAAc,OAAOx5C,EAAE,IAAI2D,IAAI9e,KAAK0zD,mBAAmBkB,SAAShS,IAAI5iD,KAAK0zD,mBAAmBmB,YAAY7kD,IAAIhQ,KAAK0zD,mBAAmBoB,QAAQl6C,IAAI5a,KAAK0zD,mBAAmBqB,WAAWtQ,EAAEzkD,KAAK0zD,mBAAmBsB,aAAajR,EAAE/jD,KAAK0zD,mBAAmBuB,iBAAiB9zD,EAAEnB,KAAK0zD,mBAAmB/J,aAAarhC,EAAEtoB,KAAK0zD,mBAAmBjK,iBAAiB,GAAG7G,EAAE,CAAC,IAAIp/C,EAAEihD,EAAEA,EAAEtjD,EAAEA,EAAEqC,EAAE,IAAIZ,EAAEmhD,EAAEA,EAAEz7B,EAAEA,EAAE1lB,EAAE,IAAIiwB,EAAE7yB,KAAKi0D,oBAAoB3rC,EAAEnnB,EAAEyhD,GAAG5iD,KAAK6zD,QAAQqB,yBAAyB,OAAOl1D,KAAK6zD,QAAQsB,UAAUtiC,EAAE0/B,IAAIvyD,KAAK6zD,QAAQuB,SAAS,EAAE,EAAEp1D,KAAK4zD,WAAWz3C,MAAMnc,KAAK4zD,WAAW71C,QAAQ/d,KAAK6zD,QAAQqB,yBAAyB,cAAc,IAAI7uD,EAAEyY,EAAE9e,KAAKizD,QAAQN,eAAe3yD,KAAKizD,QAAQltB,WAAW8D,EAAEjvB,EAAE,SAAS,GAAG5a,KAAK6zD,QAAQwB,KAAKxrB,EAAE,IAAIxjC,EAAE,IAAIrG,KAAKizD,QAAQpxC,SAAS7hB,KAAKizD,QAAQxE,iBAAiB,MAAMzuD,KAAKizD,QAAQlxC,WAAW/hB,KAAK6zD,QAAQyB,aAAa,SAASt1D,KAAK6zD,QAAQsB,UAAUn1D,KAAKk0D,kBAAkBlhD,EAAEsV,EAAEnnB,EAAE1B,EAAEskD,EAAEU,EAAE7B,EAAE9jC,GAAG9O,IAAIhQ,KAAK6zD,QAAQ0B,YAAYhyD,EAAEiyD,aAAax1D,KAAK6zD,QAAQ4B,SAASriD,EAAE,EAAE,EAAEpT,KAAKizD,QAAQ5E,iBAAiB,GAAGruD,KAAK6zD,QAAQ3V,UAAU,IAAI9sB,EAAEpxB,KAAK6zD,QAAQ6B,aAAa,EAAE,EAAE11D,KAAK4zD,WAAWz3C,MAAMnc,KAAK4zD,WAAW71C,QAAQ,GAAG,SAAS4rB,EAAE32B,GAAG,IAAI,IAAIvT,GAAE,EAAG8D,EAAEyP,EAAE1Q,OAAO,GAAG8Q,EAAEJ,EAAE1Q,OAAO,GAAG,IAAIwc,EAAE9L,EAAE1Q,OAAO,EAAE,IAAIsgD,EAAE,EAAEA,EAAEjZ,EAAEh4B,KAAKpS,OAAOqjD,GAAG,EAAEjZ,EAAEh4B,KAAKixC,KAAKr/C,GAAGomC,EAAEh4B,KAAKixC,EAAE,KAAKxvC,GAAGu2B,EAAEh4B,KAAKixC,EAAE,KAAK9jC,EAAE6qB,EAAEh4B,KAAKixC,EAAE,GAAG,EAAEnjD,GAAE,EAAG,OAAOA,EAA/K,CAAkL2xB,EAAEyB,GAAG,OAAO1X,EAAE,IAAI1X,EAAEzD,KAAK21D,sBAAsBvkC,EAAEpxB,KAAKwzD,kBAAkBlhB,EAAEtyC,KAAK41D,eAAexkC,EAAEpxB,KAAKwzD,kBAAkB,OAAOxzD,KAAKszD,aAAatzD,KAAKizD,QAAQ7E,gBAAgB9L,IAAItiD,KAAKszD,aAAa,EAAEtzD,KAAKqzD,cAAcrzD,KAAKuzD,kBAAkBvzD,KAAKuzD,kBAAkB,GAAG9vD,EAAEuvD,gBAAgBjpB,EAAE/pC,KAAKszD,aAAa7vD,EAAEuvD,gBAAgBnpB,EAAE7pC,KAAKqzD,aAAa5vD,EAAE4kD,yBAAyBte,EAAE/pC,KAAKszD,aAAahR,EAAE7+C,EAAE4kD,yBAAyBxe,EAAE7pC,KAAKqzD,aAAahvD,EAAErE,KAAKuzD,kBAAkB1wD,KAAKuE,IAAIpH,KAAKuzD,kBAAkB9vD,EAAEH,KAAKumC,GAAG7pC,KAAKszD,cAAc7vD,EAAEH,KAAKymC,EAAE/pC,KAAK2zD,UAAUkC,aAAavjB,EAAE7uC,EAAEuvD,gBAAgBjpB,EAAEtmC,EAAEuvD,gBAAgBnpB,GAAGpmC,GAAGkmC,EAAEnoC,UAAUm0D,sBAAsB,SAAShsB,EAAE32B,GAAGA,EAAEm0B,IAAI,EAAE,IAAI,IAAI1nC,GAAE,EAAG8D,EAAE,EAAEA,EAAEvD,KAAK4zD,WAAW71C,OAAOxa,IAAI,CAAC,IAAI,IAAI6P,EAAE,EAAEA,EAAEpT,KAAK4zD,WAAWz3C,MAAM/I,IAAI,CAAC,IAAI0L,EAAEvb,EAAEvD,KAAK4zD,WAAWz3C,MAAM,EAAE,EAAE/I,EAAE,EAAE,GAAG,IAAIu2B,EAAEh4B,KAAKmN,GAAG,CAAC9L,EAAEm0B,IAAI5jC,EAAE9D,GAAE,EAAG,OAAO,GAAGA,EAAE,MAAM,IAAIuT,EAAEi0B,KAAK,EAAExnC,GAAE,EAAG2T,EAAE,EAAEA,EAAEpT,KAAK4zD,WAAWz3C,MAAM/I,IAAI,CAAC,IAAI7P,EAAE,EAAEA,EAAEvD,KAAK4zD,WAAW71C,OAAOxa,IAAI,GAAGub,EAAEvb,EAAEvD,KAAK4zD,WAAWz3C,MAAM,EAAE,EAAE/I,EAAE,EAAE,IAAIu2B,EAAEh4B,KAAKmN,GAAG,CAAC9L,EAAEi0B,KAAK7zB,EAAE3T,GAAE,EAAG,MAAM,GAAGA,EAAE,MAAM,IAAIuT,EAAEygD,MAAMzzD,KAAK4zD,WAAWz3C,MAAM1c,GAAE,EAAG2T,EAAEpT,KAAK4zD,WAAWz3C,MAAM,EAAE/I,GAAG,EAAEA,IAAI,CAAC,IAAI7P,EAAE,EAAEA,EAAEvD,KAAK4zD,WAAW71C,OAAOxa,IAAI,GAAGub,EAAEvb,EAAEvD,KAAK4zD,WAAWz3C,MAAM,EAAE,EAAE/I,EAAE,EAAE,IAAIu2B,EAAEh4B,KAAKmN,GAAG,CAAC9L,EAAEygD,MAAMrgD,EAAE3T,GAAE,EAAG,MAAM,GAAGA,EAAE,MAAM,IAAIuT,EAAEy+B,OAAOzxC,KAAK4zD,WAAW71C,OAAOte,GAAE,EAAG8D,EAAEvD,KAAK4zD,WAAW71C,OAAO,EAAExa,GAAG,EAAEA,IAAI,CAAC,IAAI6P,EAAE,EAAEA,EAAEpT,KAAK4zD,WAAWz3C,MAAM/I,IAAI,GAAG0L,EAAEvb,EAAEvD,KAAK4zD,WAAWz3C,MAAM,EAAE,EAAE/I,EAAE,EAAE,IAAIu2B,EAAEh4B,KAAKmN,GAAG,CAAC9L,EAAEy+B,OAAOluC,EAAE9D,GAAE,EAAG,MAAM,GAAGA,EAAE,MAAM,MAAM,CAACuzD,gBAAgB,CAACjpB,EAAE,EAAEF,EAAE,GAAGwe,yBAAyB,CAACte,EAAE,EAAEF,EAAE,GAAGvmC,KAAK,CAACymC,EAAE/2B,EAAEygD,MAAMzgD,EAAEi0B,KAAK,EAAE4C,EAAE72B,EAAEy+B,OAAOz+B,EAAEm0B,IAAI,GAAGmhB,cAAc,CAACve,GAAG/2B,EAAEygD,MAAMzgD,EAAEi0B,KAAK,GAAGqb,EAAEzY,GAAG72B,EAAEy+B,OAAOz+B,EAAEm0B,IAAI,GAAG9iC,GAAGm2B,OAAO,CAACuP,EAAE,EAAE/2B,EAAEi0B,KAAK4C,EAAE,EAAE72B,EAAEm0B,OAAOwC,EAAEnoC,UAAUo0D,eAAe,SAASjsB,EAAE32B,GAAG,IAAI,IAAIvT,EAAEuT,EAAEygD,MAAMzgD,EAAEi0B,KAAK,EAAE1jC,EAAEyP,EAAEy+B,OAAOz+B,EAAEm0B,IAAI,EAAE/zB,EAAE,IAAI0iD,kBAAkBr2D,EAAE8D,EAAE,GAAGub,EAAE9L,EAAEm0B,IAAIroB,GAAG9L,EAAEy+B,OAAO3yB,IAAI,IAAI,IAAI8jC,EAAE5vC,EAAEi0B,KAAK2b,GAAG5vC,EAAEygD,MAAM7Q,IAAI,CAAC,IAAI5yC,EAAE8O,EAAE9e,KAAK4zD,WAAWz3C,MAAM,EAAE,EAAEymC,EAAEN,GAAGxjC,EAAE9L,EAAEm0B,KAAK1nC,EAAE,EAAE,GAAGmjD,EAAE5vC,EAAEi0B,MAAM7zB,EAAEkvC,GAAG3Y,EAAEh4B,KAAK3B,GAAGoD,EAAEkvC,EAAE,GAAG3Y,EAAEh4B,KAAK3B,EAAE,GAAGoD,EAAEkvC,EAAE,GAAG3Y,EAAEh4B,KAAK3B,EAAE,GAAGoD,EAAEkvC,EAAE,GAAG3Y,EAAEh4B,KAAK3B,EAAE,GAAG,OAAO,IAAI+lD,UAAU3iD,EAAE3T,EAAE8D,IAAIomC,EAAtxO,GAA2xO,SAASxoC,EAAEwoC,GAAG,IAAI32B,EAAE22B,EAAE5mC,SAAS,IAAI,OAAOiQ,EAAEzT,OAAO,EAAE,IAAIyT,EAAEA,EAAEA,EAAEo/C,eAAerO,GAAGiS,IAAI,CAACrsB,EAAE32B,EAAEvT,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEijD,qBAAgB,EAAO,IAAI1yD,EAAE9D,EAAE,KAAK2T,EAAE3T,EAAE,KAAKqf,EAAE,WAAW,SAAS6qB,EAAEA,EAAE32B,EAAEvT,EAAE8D,EAAE6P,GAAGpT,KAAKk2D,WAAWvsB,EAAE3pC,KAAKm2D,OAAO5yD,EAAEvD,KAAK0kD,QAAQtxC,EAAEpT,KAAKo2D,iBAAiB,EAAEp2D,KAAKq2D,kBAAkB,EAAEr2D,KAAKs2D,iBAAiB,EAAEt2D,KAAKu2D,kBAAkB,EAAEv2D,KAAKw2D,gBAAgB,EAAEx2D,KAAKy2D,eAAe,EAAEz2D,KAAK2uD,QAAQ1wC,SAASyE,cAAc,UAAU1iB,KAAK2uD,QAAQ+H,UAAUjlD,IAAI,SAASuB,EAAE,UAAUhT,KAAK2uD,QAAQluC,MAAMk2C,OAAOl3D,EAAEsD,WAAW/C,KAAK42D,cAAc52D,KAAKk2D,WAAWpzC,YAAY9iB,KAAK2uD,SAAS,OAAOhlB,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAKk2D,WAAWtmD,YAAY5P,KAAK2uD,SAAS3uD,KAAKqvD,YAAYrvD,KAAKqvD,WAAW5N,WAAW9X,EAAEnoC,UAAUo1D,YAAY,WAAW52D,KAAK62D,KAAKzjD,EAAE8xC,aAAallD,KAAK2uD,QAAQI,WAAW,KAAK,CAACpqD,MAAM3E,KAAKm2D,UAAUn2D,KAAKm2D,QAAQn2D,KAAK82D,aAAantB,EAAEnoC,UAAUsuD,iBAAiB,SAASnmB,KAAKA,EAAEnoC,UAAUguD,OAAO,SAAS7lB,KAAKA,EAAEnoC,UAAUiuD,QAAQ,SAAS9lB,KAAKA,EAAEnoC,UAAUquD,aAAa,SAASlmB,KAAKA,EAAEnoC,UAAU+uD,cAAc,SAAS5mB,EAAE32B,EAAEvT,KAAKkqC,EAAEnoC,UAAUkuD,mBAAmB,SAAS/lB,EAAE32B,EAAEvT,EAAE8D,QAAG,IAASA,IAAIA,GAAE,IAAKomC,EAAEnoC,UAAU0oD,UAAU,SAASvgB,EAAE32B,GAAGhT,KAAKsvD,kBAAkB3lB,EAAE32B,IAAI22B,EAAEnoC,UAAUu1D,iBAAiB,SAASptB,EAAE32B,GAAG,GAAGA,IAAIhT,KAAKm2D,OAAO,CAAC,IAAI12D,EAAEO,KAAK2uD,QAAQ3uD,KAAKm2D,OAAOnjD,EAAEhT,KAAK2uD,QAAQ3uD,KAAK2uD,QAAQ3zB,YAAYh7B,KAAK42D,cAAc52D,KAAKk2D,WAAWc,aAAah3D,KAAK2uD,QAAQlvD,GAAGO,KAAKsvD,kBAAkB3lB,EAAE3pC,KAAK0kD,SAAS1kD,KAAKuwD,cAAc5mB,EAAE,EAAEA,EAAE1Q,KAAK,KAAK0Q,EAAEnoC,UAAU8tD,kBAAkB,SAAS3lB,EAAE32B,GAAGhT,KAAKo2D,kBAAkB,GAAGp2D,KAAKq2D,mBAAmB,IAAIr2D,KAAKqvD,WAAW9rD,EAAEwsD,iBAAiBpmB,EAAE32B,EAAEhT,KAAKo2D,iBAAiBp2D,KAAKq2D,mBAAmBr2D,KAAKqvD,WAAWW,WAAWrmB,EAAEnoC,UAAU4d,OAAO,SAASuqB,EAAE32B,GAAGhT,KAAKs2D,iBAAiBtjD,EAAE84C,gBAAgB9rD,KAAKu2D,kBAAkBvjD,EAAE+4C,iBAAiB/rD,KAAKo2D,iBAAiBpjD,EAAEo7C,gBAAgBpuD,KAAKq2D,kBAAkBrjD,EAAEq7C,iBAAiBruD,KAAKw2D,gBAAgBxjD,EAAEi1C,eAAejoD,KAAKy2D,eAAezjD,EAAEk1C,cAAcloD,KAAK2uD,QAAQxyC,MAAMnJ,EAAEm1C,kBAAkBnoD,KAAK2uD,QAAQ5wC,OAAO/K,EAAEo1C,mBAAmBpoD,KAAK2uD,QAAQluC,MAAMtE,MAAMnJ,EAAEs7C,YAAY,KAAKtuD,KAAK2uD,QAAQluC,MAAM1C,OAAO/K,EAAEu7C,aAAa,KAAKvuD,KAAKm2D,QAAQn2D,KAAK82D,YAAY92D,KAAKsvD,kBAAkB3lB,EAAE3pC,KAAK0kD,UAAU/a,EAAEnoC,UAAUy1D,WAAW,SAASttB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAK62D,KAAKzB,SAASzrB,EAAE3pC,KAAKs2D,iBAAiBtjD,EAAEhT,KAAKu2D,kBAAkB92D,EAAEO,KAAKs2D,iBAAiB/yD,EAAEvD,KAAKu2D,oBAAoB5sB,EAAEnoC,UAAU01D,uBAAuB,SAASvtB,EAAE32B,EAAEvT,QAAG,IAASA,IAAIA,EAAE,GAAGO,KAAK62D,KAAKzB,SAASzrB,EAAE3pC,KAAKs2D,kBAAkBtjD,EAAE,GAAGhT,KAAKu2D,kBAAkBh2D,OAAOkuD,iBAAiB,EAAEhvD,EAAEO,KAAKs2D,iBAAiB/1D,OAAOkuD,mBAAmB9kB,EAAEnoC,UAAU21D,oBAAoB,SAASxtB,EAAE32B,EAAEvT,GAAGO,KAAK62D,KAAKzB,SAASzrB,EAAE3pC,KAAKs2D,iBAAiBtjD,EAAEhT,KAAKu2D,kBAAkBh2D,OAAOkuD,iBAAiBhvD,EAAEO,KAAKu2D,oBAAoB5sB,EAAEnoC,UAAU41D,kBAAkB,SAASztB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAK62D,KAAKQ,UAAU92D,OAAOkuD,iBAAiBzuD,KAAK62D,KAAKS,WAAW3tB,EAAE3pC,KAAKs2D,iBAAiB/1D,OAAOkuD,iBAAiB,EAAEz7C,EAAEhT,KAAKu2D,kBAAkBh2D,OAAOkuD,iBAAiB,EAAEhvD,EAAEO,KAAKs2D,iBAAiB/1D,OAAOkuD,iBAAiBlrD,EAAEvD,KAAKu2D,kBAAkBh2D,OAAOkuD,mBAAmB9kB,EAAEnoC,UAAUs1D,UAAU,WAAW92D,KAAKm2D,OAAOn2D,KAAK62D,KAAK7C,UAAU,EAAE,EAAEh0D,KAAK2uD,QAAQxyC,MAAMnc,KAAK2uD,QAAQ5wC,SAAS/d,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQrnC,WAAWk1C,IAAIvyD,KAAK62D,KAAKzB,SAAS,EAAE,EAAEp1D,KAAK2uD,QAAQxyC,MAAMnc,KAAK2uD,QAAQ5wC,UAAU4rB,EAAEnoC,UAAU+1D,YAAY,SAAS5tB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAKm2D,OAAOn2D,KAAK62D,KAAK7C,UAAUrqB,EAAE3pC,KAAKs2D,iBAAiBtjD,EAAEhT,KAAKu2D,kBAAkB92D,EAAEO,KAAKs2D,iBAAiB/yD,EAAEvD,KAAKu2D,oBAAoBv2D,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQrnC,WAAWk1C,IAAIvyD,KAAK62D,KAAKzB,SAASzrB,EAAE3pC,KAAKs2D,iBAAiBtjD,EAAEhT,KAAKu2D,kBAAkB92D,EAAEO,KAAKs2D,iBAAiB/yD,EAAEvD,KAAKu2D,qBAAqB5sB,EAAEnoC,UAAUg2D,mBAAmB,SAAS7tB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAK62D,KAAKxB,KAAKr1D,KAAKy3D,SAAS9tB,GAAE,GAAG,GAAI3pC,KAAK62D,KAAKvB,aAAa,SAASt1D,KAAK03D,SAAS/tB,EAAEpmC,GAAGvD,KAAK62D,KAAKpB,SAASziD,EAAE+2C,WAAWtqD,EAAEO,KAAKs2D,iBAAiBt2D,KAAKw2D,gBAAgBjzD,EAAEvD,KAAKu2D,kBAAkBv2D,KAAKy2D,eAAez2D,KAAKq2D,kBAAkB,IAAI1sB,EAAEnoC,UAAUk2D,SAAS,SAAS/tB,EAAE32B,GAAGhT,KAAK62D,KAAKc,YAAY33D,KAAK62D,KAAKe,KAAK,EAAE5kD,EAAEhT,KAAKu2D,kBAAkB5sB,EAAEkY,KAAK7hD,KAAKs2D,iBAAiBt2D,KAAKu2D,mBAAmBv2D,KAAK62D,KAAKgB,QAAQluB,EAAEnoC,UAAUi2D,SAAS,SAAS9tB,EAAE32B,EAAEvT,GAAG,OAAOA,EAAE,SAAS,IAAI,KAAKuT,EAAE22B,EAAEgnB,UAAU,kBAAkBhnB,EAAEgnB,UAAU,eAAe,IAAIhnB,EAAEgnB,UAAU,YAAYpwD,OAAOkuD,iBAAiB,MAAM9kB,EAAEgnB,UAAU,eAAehnB,EAA1/H,GAA+/H32B,EAAEijD,gBAAgBn3C,GAAGg5C,IAAI,SAASnuB,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAE6P,EAAEpT,MAAMA,KAAKwtD,YAAYjqD,EAAE,SAASomC,EAAE32B,GAAG,OAAOzP,EAAE0K,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAAS+pC,EAAE32B,GAAG22B,EAAE+jB,UAAU16C,IAAI,SAAS22B,EAAE32B,GAAG,IAAI,IAAIvT,KAAKuT,EAAE/E,OAAOzM,UAAUqsB,eAAerG,KAAKxU,EAAEvT,KAAKkqC,EAAElqC,GAAGuT,EAAEvT,MAAMkqC,EAAE32B,IAAI,SAAS22B,EAAE32B,GAAG,SAASvT,IAAIO,KAAK6V,YAAY8zB,EAAEpmC,EAAEomC,EAAE32B,GAAG22B,EAAEnoC,UAAU,OAAOwR,EAAE/E,OAAO2H,OAAO5C,IAAIvT,EAAE+B,UAAUwR,EAAExR,UAAU,IAAI/B,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEm7C,uBAAkB,EAAO,IAAIrvC,EAAErf,EAAE,KAAKmjD,EAAEnjD,EAAE,KAAKuQ,EAAE,IAAIsyC,EAAE,SAAS3Y,GAAG,SAAS32B,EAAEA,EAAEvT,EAAE8D,EAAE6P,GAAG,IAAI0L,EAAE6qB,EAAEniB,KAAKxnB,KAAKgT,EAAE,SAASvT,GAAE,EAAG8D,IAAIvD,KAAK,OAAO8e,EAAEi5C,2BAA2B3kD,EAAE0L,EAAEk5C,MAAM,IAAIpV,EAAEiL,SAAS/uC,EAAEm5C,OAAO,CAACluB,EAAE,EAAEF,EAAE,EAAEquB,WAAU,EAAGz3C,MAAM,GAAGtE,MAAM,GAAG2C,EAAEq5C,iBAAiB,CAACC,IAAIt5C,EAAEu5C,iBAAiBnuD,KAAK4U,GAAGw5C,MAAMx5C,EAAEy5C,mBAAmBruD,KAAK4U,GAAG2c,UAAU3c,EAAE05C,uBAAuBtuD,KAAK4U,IAAIA,EAAE,OAAO1L,EAAEJ,EAAE22B,GAAG32B,EAAExR,UAAU4d,OAAO,SAASpM,EAAEvT,GAAGkqC,EAAEnoC,UAAU4d,OAAOoI,KAAKxnB,KAAKgT,EAAEvT,GAAGO,KAAKi4D,OAAO,CAACluB,EAAE,EAAEF,EAAE,EAAEquB,WAAU,EAAGz3C,MAAM,GAAGtE,MAAM,IAAInJ,EAAExR,UAAUgP,MAAM,SAASm5B,GAAG3pC,KAAKy4D,eAAez4D,KAAK04D,2BAA2B14D,KAAK04D,yBAAyBjX,UAAUzhD,KAAK8vD,iBAAiBnmB,KAAK32B,EAAExR,UAAUguD,OAAO,SAAS7lB,GAAG3pC,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBC,QAAQ34D,KAAK+3D,2BAA2BnI,KAAK,CAACvzC,MAAMstB,EAAEqa,OAAOC,OAAO2U,QAAQl8C,IAAIitB,EAAEqa,OAAOC,OAAO2U,WAAW5lD,EAAExR,UAAUiuD,QAAQ,SAAS9lB,GAAG3pC,KAAK04D,yBAAyB14D,KAAK04D,yBAAyBG,OAAOlvB,GAAG3pC,KAAK+3D,2BAA2BnI,KAAK,CAACvzC,MAAMstB,EAAEqa,OAAOC,OAAO2U,QAAQl8C,IAAIitB,EAAEqa,OAAOC,OAAO2U,WAAW5lD,EAAExR,UAAUsuD,iBAAiB,SAASnmB,GAAG,IAAI32B,EAAEvT,EAAEO,KAAK2pC,EAAEgnB,UAAU,eAAe3wD,KAAK04D,2BAA2B14D,KAAK04D,yBAAyB,IAAIr0D,EAAEslC,GAAE,WAAYlqC,EAAEq5D,QAAQnvB,GAAE,QAAS,QAAQ32B,EAAEhT,KAAK04D,gCAA2B,IAAS1lD,GAAGA,EAAEyuC,UAAUzhD,KAAK04D,8BAAyB,GAAQ14D,KAAK+3D,2BAA2BnI,KAAK,CAACvzC,MAAMstB,EAAEqa,OAAOC,OAAO2U,QAAQl8C,IAAIitB,EAAEqa,OAAOC,OAAO2U,WAAW5lD,EAAExR,UAAUquD,aAAa,SAASlmB,GAAG3pC,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBK,sBAAsBpvB,IAAI32B,EAAExR,UAAU+uD,cAAc,SAAS5mB,EAAE32B,EAAEvT,IAAIO,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBM,SAASh5D,KAAK84D,QAAQnvB,GAAE,GAAI3pC,KAAK04D,yBAAyBK,sBAAsBpvB,IAAI32B,EAAExR,UAAUs3D,QAAQ,SAASnvB,EAAE32B,GAAG,GAAG22B,EAAEiY,MAAMqX,aAAaC,sBAAsBvvB,EAAEiY,MAAMqX,aAAaE,eAAe,CAAC,IAAI15D,EAAEkqC,EAAEqa,OAAOC,OAAOmV,MAAMzvB,EAAEqa,OAAOC,OAAO2U,QAAQr1D,EAAE9D,EAAEkqC,EAAEqa,OAAOC,OAAOgF,UAAU71C,EAAEvQ,KAAKC,IAAI6mC,EAAEqa,OAAOC,OAAOoV,QAAQ1vB,EAAEkY,KAAK,GAAG,GAAGt+C,EAAE,GAAGA,GAAGomC,EAAE1Q,KAAKj5B,KAAKy4D,oBAAoB,GAAG9uB,EAAEiY,MAAMoC,OAAOhL,MAAM9tC,IAAIzL,GAAGgxD,SAASr9C,EAAEpT,KAAKg4D,YAAO,IAASh4D,KAAKg4D,MAAM1uD,QAAQ,CAAC,IAAIsR,EAAE+uB,GAAG,CAAC3pC,KAAKy4D,eAAez4D,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAI,IAAIzzC,EAAE6qB,EAAEgnB,UAAU,eAAe,OAAO7xC,GAAG,UAAUA,EAAE9e,KAAKm4D,iBAAiBr5C,GAAG6qB,EAAEv2B,EAAE7P,EAAEvD,KAAKg4D,OAAOh4D,KAAKs5D,kBAAkB3vB,EAAEv2B,EAAE7P,EAAEvD,KAAKg4D,OAAOh4D,KAAK62D,KAAK3Y,UAAUl+C,KAAKi4D,OAAOluB,EAAE32B,EAAEpT,KAAKi4D,OAAOpuB,EAAEtmC,EAAEvD,KAAKi4D,OAAOC,WAAU,EAAGl4D,KAAKi4D,OAAOx3C,MAAM3B,OAAO9e,KAAKi4D,OAAO97C,MAAMnc,KAAKg4D,MAAMt/B,YAAY,IAAI14B,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBa,gBAAgB,CAAC,GAAGv5D,KAAKi4D,OAAO,CAAC,GAAGj4D,KAAKi4D,OAAOluB,IAAI32B,GAAGpT,KAAKi4D,OAAOpuB,IAAItmC,GAAGvD,KAAKi4D,OAAOC,YAAYt9C,EAAE+uB,IAAI3pC,KAAKi4D,OAAOx3C,QAAQkpB,EAAEgnB,UAAU,gBAAgB3wD,KAAKi4D,OAAO97C,QAAQnc,KAAKg4D,MAAMt/B,WAAW,OAAO14B,KAAKy4D,eAAez4D,KAAK62D,KAAK1iD,OAAOnU,KAAKm4D,iBAAiBxuB,EAAEgnB,UAAU,gBAAgB,SAAShnB,EAAEv2B,EAAE7P,EAAEvD,KAAKg4D,OAAOh4D,KAAK62D,KAAK3Y,UAAUl+C,KAAKi4D,OAAOluB,EAAE32B,EAAEpT,KAAKi4D,OAAOpuB,EAAEtmC,EAAEvD,KAAKi4D,OAAOC,WAAU,EAAGl4D,KAAKi4D,OAAOx3C,MAAMkpB,EAAEgnB,UAAU,eAAe3wD,KAAKi4D,OAAO97C,MAAMnc,KAAKg4D,MAAMt/B,gBAAgB14B,KAAKy4D,qBAAqBz4D,KAAKy4D,gBAAgBzlD,EAAExR,UAAUi3D,aAAa,WAAWz4D,KAAKi4D,SAASj4D,KAAKu3D,YAAYv3D,KAAKi4D,OAAOluB,EAAE/pC,KAAKi4D,OAAOpuB,EAAE7pC,KAAKi4D,OAAO97C,MAAM,GAAGnc,KAAKi4D,OAAO,CAACluB,EAAE,EAAEF,EAAE,EAAEquB,WAAU,EAAGz3C,MAAM,GAAGtE,MAAM,KAAKnJ,EAAExR,UAAU62D,iBAAiB,SAAS1uB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKm3D,oBAAoBnkD,EAAEvT,EAAEkqC,EAAEgnB,UAAU,gBAAgB3wD,KAAK62D,KAAK3Y,WAAWlrC,EAAExR,UAAU+2D,mBAAmB,SAAS5uB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKi3D,WAAWjkD,EAAEvT,EAAE8D,EAAEm1B,WAAW,GAAG14B,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQ8N,aAAaD,IAAIvyD,KAAKw3D,mBAAmB7tB,EAAEpmC,EAAEyP,EAAEvT,GAAGO,KAAK62D,KAAK3Y,WAAWlrC,EAAExR,UAAUg3D,uBAAuB,SAAS7uB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKk3D,uBAAuBlkD,EAAEvT,GAAGO,KAAK62D,KAAK3Y,WAAWlrC,EAAExR,UAAU83D,kBAAkB,SAAS3vB,EAAE32B,EAAEvT,EAAE8D,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK2C,YAAYx5D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKo3D,kBAAkBpkD,EAAEvT,EAAE8D,EAAEm1B,WAAW,GAAG14B,KAAK62D,KAAK3Y,WAAWlrC,EAAj5H,CAAo5H8L,EAAEm3C,iBAAiBjjD,EAAEm7C,kBAAkB7L,EAAE,IAAIj+C,EAAE,WAAW,SAASslC,EAAEA,EAAE32B,GAAGhT,KAAKy5D,gBAAgBzmD,EAAEhT,KAAKu5D,iBAAgB,EAAG3+C,EAAE+uB,IAAI3pC,KAAK05D,mBAAmB,OAAOzrD,OAAOqzC,eAAe3X,EAAEnoC,UAAU,WAAW,CAAC0J,IAAI,WAAW,QAAQlL,KAAK25D,oBAAoB35D,KAAK45D,iBAAiBrX,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAK45D,iBAAiBr5D,OAAOs5D,cAAc75D,KAAK45D,gBAAgB55D,KAAK45D,oBAAe,GAAQ55D,KAAK25D,qBAAqBp5D,OAAOuH,aAAa9H,KAAK25D,oBAAoB35D,KAAK25D,wBAAmB,GAAQ35D,KAAK85D,kBAAkBv5D,OAAOw5D,qBAAqB/5D,KAAK85D,iBAAiB95D,KAAK85D,qBAAgB,IAASnwB,EAAEnoC,UAAUu3D,sBAAsB,SAASpvB,GAAG,IAAI32B,EAAEhT,KAAKA,KAAKg5D,WAAWh5D,KAAKg6D,wBAAwBxhD,KAAKyhD,MAAMj6D,KAAKu5D,iBAAgB,EAAGv5D,KAAK85D,kBAAkB95D,KAAK85D,gBAAgBv5D,OAAO25D,uBAAsB,WAAYlnD,EAAEymD,kBAAkBzmD,EAAE8mD,qBAAgB,QAAanwB,EAAEnoC,UAAUk4D,iBAAiB,SAAS/vB,GAAG,IAAI32B,EAAEhT,UAAK,IAAS2pC,IAAIA,EAAE35B,GAAGhQ,KAAK45D,gBAAgBr5D,OAAOs5D,cAAc75D,KAAK45D,gBAAgB55D,KAAK25D,mBAAmBp5D,OAAOe,YAAW,WAAY,GAAG0R,EAAEgnD,wBAAwB,CAAC,IAAIrwB,EAAE35B,GAAGwI,KAAKyhD,MAAMjnD,EAAEgnD,yBAAyB,GAAGhnD,EAAEgnD,6BAAwB,EAAOrwB,EAAE,EAAE,YAAY32B,EAAE0mD,iBAAiB/vB,GAAG32B,EAAEumD,iBAAgB,EAAGvmD,EAAE8mD,gBAAgBv5D,OAAO25D,uBAAsB,WAAYlnD,EAAEymD,kBAAkBzmD,EAAE8mD,qBAAgB,KAAU9mD,EAAE4mD,eAAer5D,OAAO45D,aAAY,WAAY,GAAGnnD,EAAEgnD,wBAAwB,CAAC,IAAIrwB,EAAE35B,GAAGwI,KAAKyhD,MAAMjnD,EAAEgnD,yBAAyB,OAAOhnD,EAAEgnD,6BAAwB,OAAYhnD,EAAE0mD,iBAAiB/vB,GAAG32B,EAAEumD,iBAAiBvmD,EAAEumD,gBAAgBvmD,EAAE8mD,gBAAgBv5D,OAAO25D,uBAAsB,WAAYlnD,EAAEymD,kBAAkBzmD,EAAE8mD,qBAAgB,OAAY9pD,KAAK25B,IAAIA,EAAEnoC,UAAUm3D,MAAM,WAAW34D,KAAKu5D,iBAAgB,EAAGv5D,KAAK45D,iBAAiBr5D,OAAOs5D,cAAc75D,KAAK45D,gBAAgB55D,KAAK45D,oBAAe,GAAQ55D,KAAK25D,qBAAqBp5D,OAAOuH,aAAa9H,KAAK25D,oBAAoB35D,KAAK25D,wBAAmB,GAAQ35D,KAAK85D,kBAAkBv5D,OAAOw5D,qBAAqB/5D,KAAK85D,iBAAiB95D,KAAK85D,qBAAgB,IAASnwB,EAAEnoC,UAAUq3D,OAAO,SAASlvB,GAAG3pC,KAAK24D,QAAQ34D,KAAKg6D,6BAAwB,EAAOh6D,KAAK05D,mBAAmB15D,KAAK+4D,sBAAsBpvB,IAAIA,EAAhnE,GAAqnE,SAAS/uB,EAAE+uB,GAAG,OAAO1rB,SAASm8C,gBAAgBzwB,EAAE0wB,UAAUp8C,SAAS04B,aAAa2jB,IAAI,SAAS3wB,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAE6P,EAAEpT,MAAMA,KAAKwtD,YAAYjqD,EAAE,SAASomC,EAAE32B,GAAG,OAAOzP,EAAE0K,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAAS+pC,EAAE32B,GAAG22B,EAAE+jB,UAAU16C,IAAI,SAAS22B,EAAE32B,GAAG,IAAI,IAAIvT,KAAKuT,EAAE/E,OAAOzM,UAAUqsB,eAAerG,KAAKxU,EAAEvT,KAAKkqC,EAAElqC,GAAGuT,EAAEvT,MAAMkqC,EAAE32B,IAAI,SAAS22B,EAAE32B,GAAG,SAASvT,IAAIO,KAAK6V,YAAY8zB,EAAEpmC,EAAEomC,EAAE32B,GAAG22B,EAAEnoC,UAAU,OAAOwR,EAAE/E,OAAO2H,OAAO5C,IAAIvT,EAAE+B,UAAUwR,EAAExR,UAAU,IAAI/B,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEi7C,qBAAgB,EAAO,IAAInvC,EAAErf,EAAE,KAAKmjD,EAAEnjD,EAAE,KAAKuQ,EAAEvQ,EAAE,KAAK6iD,EAAE,SAAS3Y,GAAG,SAAS32B,EAAEA,EAAEvT,EAAE8D,EAAE6P,GAAG,IAAI0L,EAAE6qB,EAAEniB,KAAKxnB,KAAKgT,EAAE,OAAOvT,GAAE,EAAG8D,IAAIvD,KAAK,OAAOoT,EAAEmnD,UAAUC,qBAAoB,SAAU7wB,GAAG,OAAO7qB,EAAE27C,qBAAqB9wB,MAAMv2B,EAAEmnD,UAAUG,qBAAoB,SAAU/wB,GAAG,OAAO7qB,EAAE67C,qBAAqBhxB,MAAMv2B,EAAEwnD,WAAWJ,qBAAoB,SAAU7wB,GAAG,OAAO7qB,EAAE27C,qBAAqB9wB,MAAMv2B,EAAEwnD,WAAWF,qBAAoB,SAAU/wB,GAAG,OAAO7qB,EAAE67C,qBAAqBhxB,MAAM7qB,EAAE,OAAO1L,EAAEJ,EAAE22B,GAAG32B,EAAExR,UAAU4d,OAAO,SAASpM,EAAEvT,GAAGkqC,EAAEnoC,UAAU4d,OAAOoI,KAAKxnB,KAAKgT,EAAEvT,GAAGO,KAAKi4D,YAAO,GAAQjlD,EAAExR,UAAUgP,MAAM,SAASm5B,GAAG3pC,KAAK66D,qBAAqB7nD,EAAExR,UAAUq5D,kBAAkB,WAAW,GAAG76D,KAAKi4D,OAAO,CAACj4D,KAAKu3D,YAAYv3D,KAAKi4D,OAAO6C,GAAG96D,KAAKi4D,OAAO8C,GAAG/6D,KAAKi4D,OAAOpW,KAAK7hD,KAAKi4D,OAAO6C,GAAG,GAAG,IAAInxB,EAAE3pC,KAAKi4D,OAAO+C,GAAGh7D,KAAKi4D,OAAO8C,GAAG,EAAEpxB,EAAE,GAAG3pC,KAAKu3D,YAAY,EAAEv3D,KAAKi4D,OAAO8C,GAAG,EAAE/6D,KAAKi4D,OAAOpW,KAAKlY,GAAG3pC,KAAKu3D,YAAY,EAAEv3D,KAAKi4D,OAAO+C,GAAGh7D,KAAKi4D,OAAOgD,GAAG,GAAGj7D,KAAKi4D,YAAO,IAASjlD,EAAExR,UAAUi5D,qBAAqB,SAAS9wB,GAAG,GAAGA,EAAE2f,KAAK1G,EAAEsY,uBAAuBl7D,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQrnC,WAAWk1C,SAAI,IAAS5oB,EAAE2f,IAAIt5C,EAAEsiD,WAAW3oB,EAAE2f,IAAItpD,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQsF,KAAKrgB,EAAE2f,IAAIiJ,IAAIvyD,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQxK,WAAWqY,IAAI5oB,EAAEoxB,KAAKpxB,EAAEqxB,GAAGh7D,KAAKk3D,uBAAuBvtB,EAAEmxB,GAAGnxB,EAAEoxB,GAAGpxB,EAAEsxB,GAAGtxB,EAAEmxB,QAAQ,CAAC96D,KAAKk3D,uBAAuBvtB,EAAEmxB,GAAGnxB,EAAEoxB,GAAGpxB,EAAEkY,KAAKlY,EAAEmxB,IAAI,IAAI,IAAI9nD,EAAE22B,EAAEoxB,GAAG,EAAE/nD,EAAE22B,EAAEqxB,GAAGhoD,IAAIhT,KAAKk3D,uBAAuB,EAAElkD,EAAE22B,EAAEkY,MAAM7hD,KAAKk3D,uBAAuB,EAAEvtB,EAAEqxB,GAAGrxB,EAAEsxB,IAAIj7D,KAAKi4D,OAAOtuB,GAAG32B,EAAExR,UAAUm5D,qBAAqB,SAAShxB,GAAG3pC,KAAK66D,qBAAqB7nD,EAAt6C,CAAy6C8L,EAAEm3C,iBAAiBjjD,EAAEi7C,gBAAgB3L,GAAG6Y,IAAI,CAACxxB,EAAE32B,KAAK,IAAIvT,EAAE8D,EAAE6P,EAAE0L,EAAE,SAAS8jC,EAAEjZ,GAAG,IAAI32B,EAAE22B,EAAE5mC,SAAS,IAAI,OAAOiQ,EAAEzT,OAAO,EAAE,IAAIyT,EAAEA,EAAE,SAAShD,EAAE25B,EAAE32B,GAAG,OAAO22B,EAAE32B,GAAGA,EAAE,MAAM22B,EAAE,MAAMA,EAAE,MAAM32B,EAAE,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEooD,cAAcpoD,EAAEqoD,YAAYroD,EAAE1Q,KAAK0Q,EAAE5Q,IAAI4Q,EAAEu/C,IAAIv/C,EAAE5N,MAAM4N,EAAEohD,cAAS,EAAO,SAASzqB,GAAGA,EAAE0qB,MAAM,SAAS1qB,EAAE32B,EAAEvT,EAAE8D,GAAG,YAAO,IAASA,EAAE,IAAIq/C,EAAEjZ,GAAGiZ,EAAE5vC,GAAG4vC,EAAEnjD,GAAGmjD,EAAEr/C,GAAG,IAAIq/C,EAAEjZ,GAAGiZ,EAAE5vC,GAAG4vC,EAAEnjD,IAAIkqC,EAAE2xB,OAAO,SAAS3xB,EAAE32B,EAAEvT,EAAE8D,GAAG,YAAO,IAASA,IAAIA,EAAE,MAAMomC,GAAG,GAAG32B,GAAG,GAAGvT,GAAG,EAAE8D,KAAK,GAAjL,CAAqL9D,EAAEuT,EAAEohD,WAAWphD,EAAEohD,SAAS,MAAM7wD,EAAEyP,EAAE5N,QAAQ4N,EAAE5N,MAAM,KAAKm2D,MAAM,SAAS5xB,EAAE32B,GAAG,IAAIzP,GAAG,IAAIyP,EAAE1Q,MAAM,IAAI,GAAG,IAAIiB,EAAE,MAAM,CAACgvD,IAAIv/C,EAAEu/C,IAAIjwD,KAAK0Q,EAAE1Q,MAAM,IAAI8Q,EAAEJ,EAAE1Q,MAAM,GAAG,IAAIwc,EAAE9L,EAAE1Q,MAAM,GAAG,IAAIsgD,EAAE5vC,EAAE1Q,MAAM,EAAE,IAAI0N,EAAE25B,EAAErnC,MAAM,GAAG,IAAIggD,EAAE3Y,EAAErnC,MAAM,GAAG,IAAI+B,EAAEslC,EAAErnC,MAAM,EAAE,IAAIsY,EAAE5K,EAAEnN,KAAKkB,OAAOqP,EAAEpD,GAAGzM,GAAGkhD,EAAEnC,EAAEz/C,KAAKkB,OAAO+a,EAAEwjC,GAAG/+C,GAAG4X,EAAE9W,EAAExB,KAAKkB,OAAO6+C,EAAEv+C,GAAGd,GAAG,MAAM,CAACgvD,IAAI9yD,EAAE40D,MAAMz5C,EAAE6pC,EAAEtpC,GAAG7Y,KAAK7C,EAAE67D,OAAO1gD,EAAE6pC,EAAEtpC,KAAK5X,EAAEi4D,SAAS,SAAS7xB,GAAG,OAAO,MAAM,IAAIA,EAAErnC,OAAOiB,EAAEkxD,oBAAoB,SAAS9qB,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAEub,EAAE21C,oBAAoB9qB,EAAErnC,KAAK0Q,EAAE1Q,KAAK7C,GAAG,GAAG8D,EAAE,OAAOub,EAAE28C,QAAQl4D,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,MAAMA,EAAEm4D,OAAO,SAAS/xB,GAAG,IAAI32B,GAAG,IAAI22B,EAAErnC,QAAQ,EAAEiB,EAAEub,EAAE68C,WAAW3oD,GAAGI,EAAE7P,EAAE,GAAGq/C,EAAEr/C,EAAE,GAAGyM,EAAEzM,EAAE,GAAG,MAAM,CAACgvD,IAAI9yD,EAAE40D,MAAMjhD,EAAEwvC,EAAE5yC,GAAG1N,KAAK0Q,IAAIzP,EAAE4zC,QAAQ,SAASxN,EAAE32B,GAAG,IAAIzP,EAAEV,KAAKkB,MAAM,IAAIiP,GAAGI,EAAE0L,EAAE68C,WAAWhyB,EAAErnC,MAAMsgD,EAAExvC,EAAE,GAAGpD,EAAEoD,EAAE,GAAGkvC,EAAElvC,EAAE,GAAG,MAAM,CAACm/C,IAAI9yD,EAAE40D,MAAMzR,EAAE5yC,EAAEsyC,EAAE/+C,GAAGjB,KAAK7C,EAAE67D,OAAO1Y,EAAE5yC,EAAEsyC,EAAE/+C,MAAMyP,EAAEu/C,MAAMv/C,EAAEu/C,IAAI,KAAKkJ,QAAQ,SAAS9xB,GAAG,OAAOA,EAAEpqC,QAAQ,KAAK,EAAE,MAAM,CAACgzD,IAAI5oB,EAAErnC,MAAMsB,SAAS+lC,EAAE7nC,MAAM,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,MAAM,CAACywD,IAAI5oB,EAAErnC,KAAKsB,SAAS+lC,EAAE7nC,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI9C,MAAM,wCAAwC,SAAS2qC,GAAG,SAAS32B,EAAE22B,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAEomC,EAAE,IAAIv2B,EAAEJ,EAAE,IAAI8L,EAAErf,EAAE,IAAI,MAAM,OAAO8D,GAAG,OAAOA,EAAE,MAAMV,KAAK+4D,KAAKr4D,EAAE,MAAM,MAAM,MAAM,OAAO6P,GAAG,OAAOA,EAAE,MAAMvQ,KAAK+4D,KAAKxoD,EAAE,MAAM,MAAM,MAAM,OAAO0L,GAAG,OAAOA,EAAE,MAAMjc,KAAK+4D,KAAK98C,EAAE,MAAM,MAAM,MAAM6qB,EAAEkyB,kBAAkB,SAASlyB,GAAG,OAAO32B,EAAE22B,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAEmyB,mBAAmB9oD,EAA9T,CAAiUI,EAAEJ,EAAE5Q,MAAM4Q,EAAE5Q,IAAI,KAAK,SAASunC,GAAG,SAAS32B,EAAE22B,EAAE32B,EAAEvT,GAAG,IAAI,IAAI8D,EAAEomC,GAAG,GAAG,IAAI7qB,EAAE6qB,GAAG,GAAG,IAAIiZ,EAAEjZ,GAAG,EAAE,IAAI2Y,EAAEtvC,GAAG,GAAG,IAAI3O,EAAE2O,GAAG,GAAG,IAAI4H,EAAE5H,GAAG,EAAE,IAAIyxC,EAAEz0C,EAAEoD,EAAE0oD,mBAAmBxZ,EAAE1nC,EAAEvW,GAAG+O,EAAE0oD,mBAAmBv4D,EAAEub,EAAE8jC,IAAI6B,EAAEhlD,IAAI6iD,EAAE,GAAGj+C,EAAE,GAAGuW,EAAE,IAAI0nC,GAAGz/C,KAAKuE,IAAI,EAAEvE,KAAK0F,KAAK,GAAG+5C,IAAIj+C,GAAGxB,KAAKuE,IAAI,EAAEvE,KAAK0F,KAAK,GAAGlE,IAAIuW,GAAG/X,KAAKuE,IAAI,EAAEvE,KAAK0F,KAAK,GAAGqS,IAAI6pC,EAAEz0C,EAAEoD,EAAE0oD,mBAAmBxZ,EAAE1nC,EAAEvW,GAAG+O,EAAE0oD,mBAAmBv4D,EAAEub,EAAE8jC,IAAI,OAAON,GAAG,GAAGj+C,GAAG,GAAGuW,GAAG,EAAE,OAAO,EAAE,SAASrX,EAAEomC,EAAE32B,EAAEvT,GAAG,IAAI,IAAI8D,EAAEomC,GAAG,GAAG,IAAI7qB,EAAE6qB,GAAG,GAAG,IAAIiZ,EAAEjZ,GAAG,EAAE,IAAI2Y,EAAEtvC,GAAG,GAAG,IAAI3O,EAAE2O,GAAG,GAAG,IAAI4H,EAAE5H,GAAG,EAAE,IAAIyxC,EAAEz0C,EAAEoD,EAAE0oD,mBAAmBxZ,EAAE1nC,EAAEvW,GAAG+O,EAAE0oD,mBAAmBv4D,EAAEub,EAAE8jC,IAAI6B,EAAEhlD,IAAI6iD,EAAE,KAAKj+C,EAAE,KAAKuW,EAAE,MAAM0nC,EAAEz/C,KAAKC,IAAI,IAAIw/C,EAAEz/C,KAAK0F,KAAK,IAAI,IAAI+5C,KAAKj+C,EAAExB,KAAKC,IAAI,IAAIuB,EAAExB,KAAK0F,KAAK,IAAI,IAAIlE,KAAKuW,EAAE/X,KAAKC,IAAI,IAAI8X,EAAE/X,KAAK0F,KAAK,IAAI,IAAIqS,KAAK6pC,EAAEz0C,EAAEoD,EAAE0oD,mBAAmBxZ,EAAE1nC,EAAEvW,GAAG+O,EAAE0oD,mBAAmBv4D,EAAEub,EAAE8jC,IAAI,OAAON,GAAG,GAAGj+C,GAAG,GAAGuW,GAAG,EAAE,OAAO,EAAE+uB,EAAE8qB,oBAAoB,SAAS9qB,EAAElqC,EAAEqf,GAAG,IAAI8jC,EAAExvC,EAAEyoD,kBAAkBlyB,GAAG,GAAG2Y,EAAElvC,EAAEyoD,kBAAkBp8D,GAAG,GAAG,GAAGuQ,EAAE4yC,EAAEN,GAAGxjC,EAAE,OAAOwjC,EAAEM,EAAE5vC,EAAE22B,EAAElqC,EAAEqf,GAAGvb,EAAEomC,EAAElqC,EAAEqf,IAAI6qB,EAAEoyB,gBAAgB/oD,EAAE22B,EAAEqyB,kBAAkBz4D,EAAEomC,EAAEgyB,WAAW,SAAShyB,GAAG,MAAM,CAACA,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAE8xB,QAAQ,SAAS9xB,EAAE32B,EAAEzP,GAAG,MAAM,CAACgvD,IAAI9yD,EAAE40D,MAAM1qB,EAAE32B,EAAEzP,GAAGjB,KAAK7C,EAAE67D,OAAO3xB,EAAE32B,EAAEzP,KAA1kC,CAAglCub,EAAE9L,EAAE1Q,OAAO0Q,EAAE1Q,KAAK,KAAK0Q,EAAEqoD,YAAYzY,EAAE5vC,EAAEooD,cAAcprD,GAAGisD,IAAI,CAACtyB,EAAE32B,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEkpD,wBAAwBlpD,EAAEwiD,YAAYxiD,EAAEkoD,4BAAuB,EAAOloD,EAAEkoD,uBAAuB,IAAIloD,EAAEwiD,YAAY,GAAGxiD,EAAEkpD,wBAAwB,GAAGC,IAAI,CAACxyB,EAAE32B,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEopD,aAAappD,EAAE+6C,kBAAa,EAAO,IAAItuD,EAAE,WAAW,SAASkqC,IAAI3pC,KAAKq8D,WAAW,GAAGr8D,KAAKs8D,WAAU,EAAG,OAAOruD,OAAOqzC,eAAe3X,EAAEnoC,UAAU,QAAQ,CAAC0J,IAAI,WAAW,IAAIy+B,EAAE3pC,KAAK,OAAOA,KAAKu8D,SAASv8D,KAAKu8D,OAAO,SAASvpD,GAAG,OAAO22B,EAAE0yB,WAAWn8D,KAAK8S,GAAG,CAACyuC,QAAQ,WAAW,IAAI9X,EAAE2yB,UAAU,IAAI,IAAI78D,EAAE,EAAEA,EAAEkqC,EAAE0yB,WAAW98D,OAAOE,IAAI,GAAGkqC,EAAE0yB,WAAW58D,KAAKuT,EAAE,YAAY22B,EAAE0yB,WAAWv4D,OAAOrE,EAAE,OAAOO,KAAKu8D,QAAQha,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUouD,KAAK,SAASjmB,EAAE32B,GAAG,IAAI,IAAIvT,EAAE,GAAG8D,EAAE,EAAEA,EAAEvD,KAAKq8D,WAAW98D,OAAOgE,IAAI9D,EAAES,KAAKF,KAAKq8D,WAAW94D,IAAI,IAAIA,EAAE,EAAEA,EAAE9D,EAAEF,OAAOgE,IAAI9D,EAAE8D,GAAGikB,UAAK,EAAOmiB,EAAE32B,IAAI22B,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAKq8D,aAAar8D,KAAKq8D,WAAW98D,OAAO,GAAGS,KAAKs8D,WAAU,GAAI3yB,EAA7nB,GAAkoB32B,EAAE+6C,aAAatuD,EAAEuT,EAAEopD,aAAa,SAASzyB,EAAE32B,GAAG,OAAO22B,GAAE,SAAUA,GAAG,OAAO32B,EAAE48C,KAAKjmB,QAAQ6yB,IAAI,CAAC7yB,EAAE32B,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEypD,0BAA0BzpD,EAAE0pD,aAAa1pD,EAAE49C,gBAAW,EAAO,IAAInxD,EAAE,WAAW,SAASkqC,IAAI3pC,KAAK28D,aAAa,GAAG38D,KAAK48D,aAAY,EAAG,OAAOjzB,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAK48D,aAAY,EAAG,IAAI,IAAIjzB,EAAE,EAAE32B,EAAEhT,KAAK28D,aAAahzB,EAAE32B,EAAEzT,OAAOoqC,IAAI32B,EAAE22B,GAAG8X,UAAUzhD,KAAK28D,aAAap9D,OAAO,GAAGoqC,EAAEnoC,UAAUq7D,SAAS,SAASlzB,GAAG,OAAO3pC,KAAK28D,aAAaz8D,KAAKypC,GAAGA,GAAGA,EAAEnoC,UAAUs7D,WAAW,SAASnzB,GAAG,IAAI32B,EAAEhT,KAAK28D,aAAat5D,QAAQsmC,IAAI,IAAI32B,GAAGhT,KAAK28D,aAAa74D,OAAOkP,EAAE,IAAI22B,EAAvY,GAA4Y,SAASpmC,EAAEomC,GAAG,IAAI,IAAI32B,EAAE,EAAEvT,EAAEkqC,EAAE32B,EAAEvT,EAAEF,OAAOyT,IAAIvT,EAAEuT,GAAGyuC,UAAU9X,EAAEpqC,OAAO,EAAEyT,EAAE49C,WAAWnxD,EAAEuT,EAAE0pD,aAAan5D,EAAEyP,EAAEypD,0BAA0B,SAAS9yB,GAAG,MAAM,CAAC8X,QAAQ,WAAW,OAAOl+C,EAAEomC,OAAOozB,IAAI,CAACpzB,EAAE32B,KAAK,SAASvT,EAAEkqC,EAAE32B,EAAEvT,EAAE8D,GAAG,QAAG,IAAS9D,IAAIA,EAAE,QAAG,IAAS8D,IAAIA,EAAEomC,EAAEpqC,QAAQE,GAAGkqC,EAAEpqC,OAAO,OAAOoqC,EAAElqC,GAAGkqC,EAAEpqC,OAAOE,GAAGkqC,EAAEpqC,OAAOgE,EAAEA,GAAGomC,EAAEpqC,OAAOoqC,EAAEpqC,QAAQoqC,EAAEpqC,OAAOgE,GAAGomC,EAAEpqC,OAAO,IAAI,IAAI6T,EAAE3T,EAAE2T,EAAE7P,IAAI6P,EAAEu2B,EAAEv2B,GAAGJ,EAAE,OAAO22B,EAAE17B,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEtJ,OAAOsJ,EAAEgqD,aAAahqD,EAAEkiC,UAAK,EAAOliC,EAAEkiC,KAAK,SAASvL,EAAE32B,EAAEzP,EAAE6P,GAAG,OAAOu2B,EAAEuL,KAAKvL,EAAEuL,KAAKliC,EAAEzP,EAAE6P,GAAG3T,EAAEkqC,EAAE32B,EAAEzP,EAAE6P,IAAIJ,EAAEgqD,aAAav9D,EAAEuT,EAAEtJ,OAAO,SAASigC,EAAE32B,GAAG,IAAIvT,EAAE,IAAIkqC,EAAE9zB,YAAY8zB,EAAEpqC,OAAOyT,EAAEzT,QAAQ,OAAOE,EAAEkQ,IAAIg6B,GAAGlqC,EAAEkQ,IAAIqD,EAAE22B,EAAEpqC,QAAQE,IAAIw9D,IAAI,CAACtzB,EAAE32B,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAEkqD,cAAclqD,EAAEq2C,mBAAc,EAAO,IAAI5pD,EAAE,WAAW,SAASkqC,IAAI3pC,KAAKspD,GAAG,EAAEtpD,KAAKupD,GAAG,EAAEvpD,KAAKm9D,SAAS,IAAI55D,EAAE,OAAOomC,EAAEigB,WAAW,SAASjgB,GAAG,MAAM,CAACA,IAAI,GAAG,IAAIA,IAAI,EAAE,IAAI,IAAIA,IAAIA,EAAEyzB,aAAa,SAASzzB,GAAG,OAAO,IAAIA,EAAE,KAAK,IAAI,IAAIA,EAAE,KAAK,EAAE,IAAIA,EAAE,IAAIA,EAAEnoC,UAAU6d,MAAM,WAAW,IAAIrM,EAAE,IAAI22B,EAAE,OAAO32B,EAAEs2C,GAAGtpD,KAAKspD,GAAGt2C,EAAEu2C,GAAGvpD,KAAKupD,GAAGv2C,EAAEmqD,SAASn9D,KAAKm9D,SAAS99C,QAAQrM,GAAG22B,EAAEnoC,UAAUqzD,UAAU,WAAW,OAAO,SAAS70D,KAAKspD,IAAI3f,EAAEnoC,UAAUozD,OAAO,WAAW,OAAO,UAAU50D,KAAKspD,IAAI3f,EAAEnoC,UAAU67D,YAAY,WAAW,OAAO,UAAUr9D,KAAKspD,IAAI3f,EAAEnoC,UAAU87D,QAAQ,WAAW,OAAO,UAAUt9D,KAAKspD,IAAI3f,EAAEnoC,UAAUmzD,YAAY,WAAW,OAAO,WAAW30D,KAAKspD,IAAI3f,EAAEnoC,UAAUuzD,SAAS,WAAW,OAAO,SAAS/0D,KAAKupD,IAAI5f,EAAEnoC,UAAUszD,MAAM,WAAW,OAAO,UAAU90D,KAAKupD,IAAI5f,EAAEnoC,UAAUyzD,eAAe,WAAW,OAAO,SAASj1D,KAAKspD,IAAI3f,EAAEnoC,UAAUioD,eAAe,WAAW,OAAO,SAASzpD,KAAKupD,IAAI5f,EAAEnoC,UAAU+7D,QAAQ,WAAW,OAAO,WAAW,SAASv9D,KAAKspD,KAAK3f,EAAEnoC,UAAUg8D,QAAQ,WAAW,OAAO,WAAW,SAASx9D,KAAKupD,KAAK5f,EAAEnoC,UAAUi8D,YAAY,WAAW,OAAO,WAAW,SAASz9D,KAAKspD,KAAK,WAAW,SAAStpD,KAAKspD,KAAK3f,EAAEnoC,UAAUk8D,YAAY,WAAW,OAAO,WAAW,SAAS19D,KAAKupD,KAAK,WAAW,SAASvpD,KAAKupD,KAAK5f,EAAEnoC,UAAUm8D,YAAY,WAAW,OAAO,IAAI,SAAS39D,KAAKspD,KAAK3f,EAAEnoC,UAAUo8D,YAAY,WAAW,OAAO,IAAI,SAAS59D,KAAKupD,KAAK5f,EAAEnoC,UAAUq8D,mBAAmB,WAAW,OAAO,IAAI79D,KAAKspD,IAAI,IAAItpD,KAAKupD,IAAI5f,EAAEnoC,UAAUwzD,WAAW,WAAW,OAAO,SAASh1D,KAAKspD,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAItpD,KAAKspD,GAAG,KAAK,SAAS,OAAO,SAAStpD,KAAKspD,GAAG,QAAQ,OAAO,IAAI3f,EAAEnoC,UAAUmoD,WAAW,WAAW,OAAO,SAAS3pD,KAAKupD,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIvpD,KAAKupD,GAAG,KAAK,SAAS,OAAO,SAASvpD,KAAKupD,GAAG,QAAQ,OAAO,IAAI5f,EAAEnoC,UAAUs8D,iBAAiB,WAAW,OAAO,UAAU99D,KAAKupD,IAAI5f,EAAEnoC,UAAUu8D,eAAe,WAAW/9D,KAAKm9D,SAASa,UAAUh+D,KAAKupD,KAAK,UAAUvpD,KAAKupD,IAAI,WAAW5f,EAAEnoC,UAAUy8D,kBAAkB,WAAW,GAAG,UAAUj+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,OAAO,SAASl+D,KAAKm9D,SAASe,gBAAgB,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIl+D,KAAKm9D,SAASe,eAAe,KAAK,SAAS,OAAO,SAASl+D,KAAKm9D,SAASe,eAAe,QAAQ,OAAOl+D,KAAKg1D,aAAa,OAAOh1D,KAAKg1D,cAAcrrB,EAAEnoC,UAAU28D,sBAAsB,WAAW,OAAO,UAAUn+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,SAASl+D,KAAKm9D,SAASe,eAAel+D,KAAKi1D,kBAAkBtrB,EAAEnoC,UAAU48D,oBAAoB,WAAW,OAAO,UAAUp+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,WAAW,SAASl+D,KAAKm9D,SAASe,gBAAgBl+D,KAAKu9D,WAAW5zB,EAAEnoC,UAAU68D,wBAAwB,WAAW,OAAO,UAAUr+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,WAAW,SAASl+D,KAAKm9D,SAASe,iBAAiB,WAAW,SAASl+D,KAAKm9D,SAASe,gBAAgBl+D,KAAKy9D,eAAe9zB,EAAEnoC,UAAU88D,wBAAwB,WAAW,OAAO,UAAUt+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,IAAI,SAASl+D,KAAKm9D,SAASe,gBAAgBl+D,KAAK29D,eAAeh0B,EAAEnoC,UAAU+8D,kBAAkB,WAAW,OAAO,UAAUv+D,KAAKspD,GAAG,UAAUtpD,KAAKupD,GAAGvpD,KAAKm9D,SAASqB,eAAe,EAAE,GAAG70B,EAAr+F,GAA0+F32B,EAAEq2C,cAAc5pD,EAAE,IAAI8D,EAAE,WAAW,SAASomC,EAAEA,EAAE32B,QAAG,IAAS22B,IAAIA,EAAE,QAAG,IAAS32B,IAAIA,GAAG,GAAGhT,KAAKw+D,eAAe70B,EAAE3pC,KAAKk+D,eAAelrD,EAAE,OAAO22B,EAAEnoC,UAAU6d,MAAM,WAAW,OAAO,IAAIsqB,EAAE3pC,KAAKw+D,eAAex+D,KAAKk+D,iBAAiBv0B,EAAEnoC,UAAUw8D,QAAQ,WAAW,OAAO,IAAIh+D,KAAKw+D,gBAAgB70B,EAAtQ,GAA2Q32B,EAAEkqD,cAAc35D,GAAGk7D,IAAI,SAAS90B,EAAE32B,EAAEvT,GAAG,IAAI8D,EAAE6P,EAAEpT,MAAMA,KAAKwtD,YAAYjqD,EAAE,SAASomC,EAAE32B,GAAG,OAAOzP,EAAE0K,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAAS+pC,EAAE32B,GAAG22B,EAAE+jB,UAAU16C,IAAI,SAAS22B,EAAE32B,GAAG,IAAI,IAAIvT,KAAKuT,EAAE/E,OAAOzM,UAAUqsB,eAAerG,KAAKxU,EAAEvT,KAAKkqC,EAAElqC,GAAGuT,EAAEvT,MAAMkqC,EAAE32B,IAAI,SAAS22B,EAAE32B,GAAG,SAASvT,IAAIO,KAAK6V,YAAY8zB,EAAEpmC,EAAEomC,EAAE32B,GAAG22B,EAAEnoC,UAAU,OAAOwR,EAAE/E,OAAO2H,OAAO5C,IAAIvT,EAAE+B,UAAUwR,EAAExR,UAAU,IAAI/B,KAAKwO,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAE66C,cAAS,EAAO,IAAI/uC,EAAErf,EAAE,KAAKmjD,EAAEnjD,EAAE,KAAKuQ,EAAEvQ,EAAE,KAAK6iD,EAAE,SAAS3Y,GAAG,SAAS32B,IAAI,IAAIA,EAAE,OAAO22B,GAAGA,EAAE7pC,MAAME,KAAKN,YAAYM,KAAK,OAAOgT,EAAE1J,QAAQ,EAAE0J,EAAEs2C,GAAG,EAAEt2C,EAAEu2C,GAAG,EAAEv2C,EAAEmqD,SAAS,IAAIntD,EAAEktD,cAAclqD,EAAE0rD,aAAa,GAAG1rD,EAAE,OAAOI,EAAEJ,EAAE22B,GAAG32B,EAAE2rD,aAAa,SAASh1B,GAAG,IAAIlqC,EAAE,IAAIuT,EAAE,OAAOvT,EAAEm/D,gBAAgBj1B,GAAGlqC,GAAGuT,EAAExR,UAAUq9D,WAAW,WAAW,OAAO,QAAQ7+D,KAAKsJ,SAAS0J,EAAExR,UAAUk3B,SAAS,WAAW,OAAO14B,KAAKsJ,SAAS,IAAI0J,EAAExR,UAAUuoD,SAAS,WAAW,OAAO,QAAQ/pD,KAAKsJ,QAAQtJ,KAAK0+D,aAAa,QAAQ1+D,KAAKsJ,QAAQwV,EAAEggD,oBAAoB,QAAQ9+D,KAAKsJ,SAAS,IAAI0J,EAAExR,UAAUkvD,QAAQ,WAAW,OAAO1wD,KAAK6+D,aAAa7+D,KAAK0+D,aAAa7jD,WAAW7a,KAAK0+D,aAAan/D,OAAO,GAAG,QAAQS,KAAKsJ,SAAS0J,EAAExR,UAAUo9D,gBAAgB,SAASj1B,GAAG3pC,KAAKspD,GAAG3f,EAAEiZ,EAAEmc,sBAAsB/+D,KAAKupD,GAAG,EAAE,IAAIv2C,GAAE,EAAG,GAAG22B,EAAEiZ,EAAEoc,sBAAsBz/D,OAAO,EAAEyT,GAAE,OAAQ,GAAG,IAAI22B,EAAEiZ,EAAEoc,sBAAsBz/D,OAAO,CAAC,IAAIE,EAAEkqC,EAAEiZ,EAAEoc,sBAAsBnkD,WAAW,GAAG,GAAG,OAAOpb,GAAGA,GAAG,MAAM,CAAC,IAAI8D,EAAEomC,EAAEiZ,EAAEoc,sBAAsBnkD,WAAW,GAAG,OAAOtX,GAAGA,GAAG,MAAMvD,KAAKsJ,QAAQ,MAAM7J,EAAE,OAAO8D,EAAE,MAAM,MAAMomC,EAAEiZ,EAAEqc,wBAAwB,GAAGjsD,GAAE,OAAQA,GAAE,OAAQhT,KAAKsJ,QAAQqgC,EAAEiZ,EAAEoc,sBAAsBnkD,WAAW,GAAG8uB,EAAEiZ,EAAEqc,wBAAwB,GAAGjsD,IAAIhT,KAAK0+D,aAAa/0B,EAAEiZ,EAAEoc,sBAAsBh/D,KAAKsJ,QAAQ,QAAQqgC,EAAEiZ,EAAEqc,wBAAwB,KAAKjsD,EAAExR,UAAU09D,cAAc,WAAW,MAAM,CAACl/D,KAAKspD,GAAGtpD,KAAK+pD,WAAW/pD,KAAK04B,WAAW14B,KAAK0wD,YAAY19C,EAAzzC,CAA4zChD,EAAEq5C,eAAer2C,EAAE66C,SAASvL,GAAG6c,IAAI,CAACx1B,EAAE32B,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAE80C,qBAAqB90C,EAAEosD,sBAAsBpsD,EAAEqsD,qBAAqBrsD,EAAE60C,eAAe70C,EAAEssD,gBAAgBtsD,EAAEusD,eAAevsD,EAAEwsD,qBAAqBxsD,EAAEisD,sBAAsBjsD,EAAEgsD,qBAAqBhsD,EAAE+rD,qBAAqB/rD,EAAEysD,aAAazsD,EAAE8hC,mBAAc,EAAO9hC,EAAE8hC,cAAc,IAAI9hC,EAAEysD,aAAa,IAAIzsD,EAAE8hC,eAAe,EAAE9hC,EAAE+rD,qBAAqB,EAAE/rD,EAAEgsD,qBAAqB,EAAEhsD,EAAEisD,sBAAsB,EAAEjsD,EAAEwsD,qBAAqB,EAAExsD,EAAEusD,eAAe,GAAGvsD,EAAEssD,gBAAgB,EAAEtsD,EAAE60C,eAAe,EAAE70C,EAAEqsD,qBAAqB,IAAIrsD,EAAEosD,sBAAsB,EAAEpsD,EAAE80C,qBAAqB,IAAI4X,IAAI,CAAC/1B,EAAE32B,KAAK/E,OAAOqzC,eAAetuC,EAAE,aAAa,CAACtQ,OAAM,IAAKsQ,EAAE2sD,YAAY3sD,EAAE4sD,cAAc5sD,EAAE6sD,cAAc7sD,EAAE8rD,yBAAoB,EAAO9rD,EAAE8rD,oBAAoB,SAASn1B,GAAG,OAAOA,EAAE,OAAOA,GAAG,MAAMpoC,OAAOwZ,aAAa,OAAO4uB,GAAG,KAAKpoC,OAAOwZ,aAAa4uB,EAAE,KAAK,QAAQpoC,OAAOwZ,aAAa4uB,IAAI32B,EAAE6sD,cAAc,SAASl2B,EAAE32B,EAAEvT,QAAG,IAASuT,IAAIA,EAAE,QAAG,IAASvT,IAAIA,EAAEkqC,EAAEpqC,QAAQ,IAAI,IAAIgE,EAAE,GAAG6P,EAAEJ,EAAEI,EAAE3T,IAAI2T,EAAE,CAAC,IAAI0L,EAAE6qB,EAAEv2B,GAAG0L,EAAE,OAAOA,GAAG,MAAMvb,GAAGhC,OAAOwZ,aAAa,OAAO+D,GAAG,KAAKvd,OAAOwZ,aAAa+D,EAAE,KAAK,QAAQvb,GAAGhC,OAAOwZ,aAAa+D,GAAG,OAAOvb,GAAG,IAAI9D,EAAE,WAAW,SAASkqC,IAAI3pC,KAAK8/D,SAAS,EAAE,OAAOn2B,EAAEnoC,UAAUgR,MAAM,WAAWxS,KAAK8/D,SAAS,GAAGn2B,EAAEnoC,UAAUkZ,OAAO,SAASivB,EAAE32B,GAAG,IAAIvT,EAAEkqC,EAAEpqC,OAAO,IAAIE,EAAE,OAAO,EAAE,IAAI8D,EAAE,EAAE6P,EAAE,EAAEpT,KAAK8/D,WAAW,QAAQ9vD,EAAE25B,EAAE9uB,WAAWzH,OAAOpD,GAAG,MAAMgD,EAAEzP,KAAK,MAAMvD,KAAK8/D,SAAS,OAAO9vD,EAAE,MAAM,OAAOgD,EAAEzP,KAAKvD,KAAK8/D,SAAS9sD,EAAEzP,KAAKyM,GAAGhQ,KAAK8/D,SAAS,GAAG,IAAI,IAAIhhD,EAAE1L,EAAE0L,EAAErf,IAAIqf,EAAE,CAAC,IAAI8jC,EAAEjZ,EAAE9uB,WAAWiE,GAAG,GAAG,OAAO8jC,GAAGA,GAAG,MAAM,CAAC,KAAK9jC,GAAGrf,EAAE,OAAOO,KAAK8/D,SAASld,EAAEr/C,EAAE,IAAIyM,EAAE,QAAQA,EAAE25B,EAAE9uB,WAAWiE,KAAK9O,GAAG,MAAMgD,EAAEzP,KAAK,MAAMq/C,EAAE,OAAO5yC,EAAE,MAAM,OAAOgD,EAAEzP,KAAKq/C,EAAE5vC,EAAEzP,KAAKyM,QAAQ,QAAQ4yC,IAAI5vC,EAAEzP,KAAKq/C,GAAG,OAAOr/C,GAAGomC,EAA7iB,GAAkjB32B,EAAE4sD,cAAcngE,EAAE,IAAI8D,EAAE,WAAW,SAASomC,IAAI3pC,KAAK+/D,QAAQ,IAAI3Z,WAAW,GAAG,OAAOzc,EAAEnoC,UAAUgR,MAAM,WAAWxS,KAAK+/D,QAAQ7qB,KAAK,IAAIvL,EAAEnoC,UAAUkZ,OAAO,SAASivB,EAAE32B,GAAG,IAAIvT,EAAEkqC,EAAEpqC,OAAO,IAAIE,EAAE,OAAO,EAAE,IAAI8D,EAAE6P,EAAE0L,EAAE8jC,EAAE5yC,EAAE,EAAEsyC,EAAE,EAAEj+C,EAAE,EAAE,GAAGrE,KAAK+/D,QAAQ,GAAG,CAAC,IAAInlD,GAAE,EAAG6pC,EAAEzkD,KAAK+/D,QAAQ,GAAGtb,GAAG,MAAM,IAAIA,GAAG,GAAG,MAAM,IAAIA,GAAG,GAAG,EAAE,IAAI,IAAItpC,EAAE,EAAE4oC,OAAE,GAAQA,EAAE,GAAG/jD,KAAK+/D,UAAU5kD,KAAKA,EAAE,GAAGspC,IAAI,EAAEA,GAAGV,EAAE,IAAI,IAAI5iD,EAAE,MAAM,IAAInB,KAAK+/D,QAAQ,IAAI,EAAE,MAAM,IAAI//D,KAAK+/D,QAAQ,IAAI,EAAE,EAAEz3C,EAAEnnB,EAAEga,EAAE9W,EAAEikB,GAAG,CAAC,GAAGjkB,GAAG5E,EAAE,OAAO,EAAE,GAAG,MAAM,KAAKskD,EAAEpa,EAAEtlC,OAAO,CAACA,IAAIuW,GAAE,EAAG,MAAM5a,KAAK+/D,QAAQ5kD,KAAK4oC,EAAEU,IAAI,EAAEA,GAAG,GAAGV,EAAEnpC,IAAI,IAAIzZ,EAAEsjD,EAAE,IAAIpgD,IAAI2O,EAAEhD,KAAKy0C,EAAE,IAAItjD,EAAEsjD,EAAE,MAAMA,GAAG,OAAOA,GAAG,OAAO,QAAQA,IAAIzxC,EAAEhD,KAAKy0C,GAAGA,EAAE,OAAOA,EAAE,UAAUzxC,EAAEhD,KAAKy0C,IAAIzkD,KAAK+/D,QAAQ7qB,KAAK,GAAG,IAAI,IAAI1xC,EAAE/D,EAAE,EAAEmD,EAAEyB,EAAEzB,EAAEnD,GAAG,CAAC,SAASmD,EAAEY,IAAI,KAAKD,EAAEomC,EAAE/mC,KAAK,KAAKwQ,EAAEu2B,EAAE/mC,EAAE,KAAK,KAAKkc,EAAE6qB,EAAE/mC,EAAE,KAAK,KAAKggD,EAAEjZ,EAAE/mC,EAAE,MAAMoQ,EAAEhD,KAAKzM,EAAEyP,EAAEhD,KAAKoD,EAAEJ,EAAEhD,KAAK8O,EAAE9L,EAAEhD,KAAK4yC,EAAEhgD,GAAG,EAAE,IAAIW,EAAEomC,EAAE/mC,MAAM,IAAIoQ,EAAEhD,KAAKzM,OAAO,GAAG,MAAM,IAAIA,GAAG,CAAC,GAAGX,GAAGnD,EAAE,OAAOO,KAAK+/D,QAAQ,GAAGx8D,EAAEyM,EAAE,GAAG,MAAM,KAAKoD,EAAEu2B,EAAE/mC,OAAO,CAACA,IAAI,SAAS,IAAI0/C,GAAG,GAAG/+C,IAAI,EAAE,GAAG6P,GAAG,IAAI,CAACxQ,IAAI,SAASoQ,EAAEhD,KAAKsyC,OAAO,GAAG,MAAM,IAAI/+C,GAAG,CAAC,GAAGX,GAAGnD,EAAE,OAAOO,KAAK+/D,QAAQ,GAAGx8D,EAAEyM,EAAE,GAAG,MAAM,KAAKoD,EAAEu2B,EAAE/mC,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAGnD,EAAE,OAAOO,KAAK+/D,QAAQ,GAAGx8D,EAAEvD,KAAK+/D,QAAQ,GAAG3sD,EAAEpD,EAAE,GAAG,MAAM,KAAK8O,EAAE6qB,EAAE/mC,OAAO,CAACA,IAAI,SAAS,IAAI0/C,GAAG,GAAG/+C,IAAI,IAAI,GAAG6P,IAAI,EAAE,GAAG0L,GAAG,MAAMwjC,GAAG,OAAOA,GAAG,OAAO,QAAQA,EAAE,SAAStvC,EAAEhD,KAAKsyC,OAAO,GAAG,MAAM,IAAI/+C,GAAG,CAAC,GAAGX,GAAGnD,EAAE,OAAOO,KAAK+/D,QAAQ,GAAGx8D,EAAEyM,EAAE,GAAG,MAAM,KAAKoD,EAAEu2B,EAAE/mC,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAGnD,EAAE,OAAOO,KAAK+/D,QAAQ,GAAGx8D,EAAEvD,KAAK+/D,QAAQ,GAAG3sD,EAAEpD,EAAE,GAAG,MAAM,KAAK8O,EAAE6qB,EAAE/mC,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAGnD,EAAE,OAAOO,KAAK+/D,QAAQ,GAAGx8D,EAAEvD,KAAK+/D,QAAQ,GAAG3sD,EAAEpT,KAAK+/D,QAAQ,GAAGjhD,EAAE9O,EAAE,GAAG,MAAM,KAAK4yC,EAAEjZ,EAAE/mC,OAAO,CAACA,IAAI,SAAS,IAAI0/C,GAAG,EAAE/+C,IAAI,IAAI,GAAG6P,IAAI,IAAI,GAAG0L,IAAI,EAAE,GAAG8jC,GAAG,OAAON,EAAE,QAAQ,SAAStvC,EAAEhD,KAAKsyC,GAAG,OAAOtyC,GAAG25B,EAApmD,GAAymD32B,EAAE2sD,YAAYp8D,IAAIyP,EAAE,GAAG,OAAO,SAASvT,EAAE8D,GAAG,GAAGyP,EAAEzP,GAAG,OAAOyP,EAAEzP,GAAG69C,QAAQ,IAAIhuC,EAAEJ,EAAEzP,GAAG,CAAC69C,QAAQ,IAAI,OAAOzX,EAAEpmC,GAAGikB,KAAKpU,EAAEguC,QAAQhuC,EAAEA,EAAEguC,QAAQ3hD,GAAG2T,EAAEguC,QAA9G,CAAuH,MAA919D,I,QCED5gD,KAA3J2gD,EAAOC,QAA2K,MAAM,aAAa,IAAIpuC,EAAE,CAACgtD,KAAK,SAAShtD,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEs2B,0BAAqB,EAAO,IAAI7sD,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMpC,EAAE,SAAS6R,GAAG,SAAS22B,EAAEA,EAAEpmC,GAAG,IAAI9D,EAAEuT,EAAEwU,KAAKxnB,OAAOA,KAAKP,EAAE+hD,UAAU7X,EAAElqC,EAAEqiD,eAAev+C,EAAE9D,EAAEygE,qBAAqB,EAAEzgE,EAAE0gE,gBAAgB,GAAG1gE,EAAE2gE,iBAAiB,GAAG3gE,EAAE4gE,uBAAuBpiD,SAASyE,cAAc,OAAOjjB,EAAE4gE,uBAAuB3J,UAAUjlD,IAAI,uBAAuBhS,EAAE6gE,cAAcriD,SAASyE,cAAc,OAAOjjB,EAAE6gE,cAAcn0D,aAAa,OAAO,QAAQ1M,EAAE6gE,cAAc5J,UAAUjlD,IAAI,4BAA4BhS,EAAE8gE,aAAa,GAAG,IAAI,IAAIzhD,EAAE,EAAEA,EAAErf,EAAE+hD,UAAUvoB,KAAKna,IAAIrf,EAAE8gE,aAAazhD,GAAGrf,EAAE+gE,+BAA+B/gE,EAAE6gE,cAAcx9C,YAAYrjB,EAAE8gE,aAAazhD,IAAI,GAAGrf,EAAEghE,0BAA0B,SAASztD,GAAG,OAAOvT,EAAEihE,iBAAiB1tD,EAAE,IAAIvT,EAAEkhE,6BAA6B,SAAS3tD,GAAG,OAAOvT,EAAEihE,iBAAiB1tD,EAAE,IAAIvT,EAAE8gE,aAAa,GAAGztD,iBAAiB,QAAQrT,EAAEghE,2BAA2BhhE,EAAE8gE,aAAa9gE,EAAE8gE,aAAahhE,OAAO,GAAGuT,iBAAiB,QAAQrT,EAAEkhE,8BAA8BlhE,EAAEmhE,yBAAyBnhE,EAAE4gE,uBAAuBv9C,YAAYrjB,EAAE6gE,eAAe7gE,EAAEohE,qBAAqB,IAAI7wD,EAAE8wD,gBAAgBrhE,EAAEshE,YAAY72D,KAAKzK,IAAIA,EAAEuhE,eAAevhE,EAAEwhE,YAAYhjD,SAASyE,cAAc,OAAOjjB,EAAEwhE,YAAYvK,UAAUjlD,IAAI,eAAehS,EAAEwhE,YAAY90D,aAAa,YAAY,aAAa1M,EAAE4gE,uBAAuBv9C,YAAYrjB,EAAEwhE,cAAcxhE,EAAE+hD,UAAUl8B,QAAQ,MAAM,IAAItmB,MAAM,oDAAoD,OAAOS,EAAE+hD,UAAUl8B,QAAQ47C,sBAAsB,aAAazhE,EAAE4gE,wBAAwB5gE,EAAEo9D,SAASp9D,EAAEohE,sBAAsBphE,EAAEo9D,SAASp9D,EAAE+hD,UAAUgG,UAAS,SAAUx0C,GAAG,OAAOvT,EAAE0hE,UAAUnuD,EAAEimB,UAAUx5B,EAAEo9D,SAASp9D,EAAE+hD,UAAU4f,UAAS,SAAUpuD,GAAG,OAAOvT,EAAEuhE,aAAahuD,EAAEqJ,MAAMrJ,EAAE0J,SAASjd,EAAEo9D,SAASp9D,EAAE+hD,UAAU6f,UAAS,WAAY,OAAO5hE,EAAEuhE,mBAAmBvhE,EAAEo9D,SAASp9D,EAAE+hD,UAAU8f,YAAW,SAAUtuD,GAAG,OAAOvT,EAAE8hE,QAAQvuD,OAAOvT,EAAEo9D,SAASp9D,EAAE+hD,UAAUggB,YAAW,WAAY,OAAO/hE,EAAE8hE,QAAQ,UAAU9hE,EAAEo9D,SAASp9D,EAAE+hD,UAAUigB,WAAU,SAAUzuD,GAAG,OAAOvT,EAAEiiE,OAAO1uD,OAAOvT,EAAEo9D,SAASp9D,EAAE+hD,UAAUmgB,OAAM,SAAU3uD,GAAG,OAAOvT,EAAEmiE,OAAO5uD,EAAE7J,SAAS1J,EAAEo9D,SAASp9D,EAAE+hD,UAAUgO,QAAO,WAAY,OAAO/vD,EAAEoiE,uBAAuBpiE,EAAEo9D,SAASp9D,EAAEqiD,eAAeggB,oBAAmB,WAAY,OAAOriE,EAAEmhE,6BAA6BnhE,EAAEsiE,kBAAkB,IAAI19D,EAAE29D,iBAAiBviE,EAAEo9D,SAASp9D,EAAEsiE,mBAAmBtiE,EAAEsiE,kBAAkBE,aAAY,WAAY,OAAOxiE,EAAEmhE,4BAA4BnhE,EAAEo9D,SAASjiD,EAAEsnD,yBAAyB3hE,OAAO,UAAS,WAAY,OAAOd,EAAEmhE,6BAA6BnhE,EAAE,OAAOqf,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUigD,QAAQ,WAAWzuC,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,MAAM+jD,EAAEoe,wBAAwBniE,KAAKqgE,wBAAwBrgE,KAAKugE,aAAahhE,OAAO,GAAGoqC,EAAEnoC,UAAUk/D,iBAAiB,SAAS1tD,EAAE22B,GAAG,IAAIpmC,EAAEyP,EAAEovD,OAAO3iE,EAAEO,KAAKugE,aAAa,IAAI52B,EAAE,EAAE3pC,KAAKugE,aAAahhE,OAAO,GAAG,GAAGgE,EAAEsI,aAAa,oBAAoB,IAAI89B,EAAE,IAAI,GAAG3pC,KAAKwhD,UAAUwC,OAAOhL,MAAMz5C,SAASyT,EAAEqvD,gBAAgB5iE,EAAE,CAAC,IAAIqf,EAAE1L,EAAE,GAAG,IAAIu2B,GAAG7qB,EAAEvb,EAAE6P,EAAEpT,KAAKugE,aAAarxB,MAAMlvC,KAAKsgE,cAAc1wD,YAAYwD,KAAK0L,EAAE9e,KAAKugE,aAAar/D,QAAQkS,EAAE7P,EAAEvD,KAAKsgE,cAAc1wD,YAAYkP,IAAIA,EAAE0G,oBAAoB,QAAQxlB,KAAKygE,2BAA2BrtD,EAAEoS,oBAAoB,QAAQxlB,KAAK2gE,8BAA8B,IAAIh3B,EAAE,CAAC,IAAIiZ,EAAE5iD,KAAKwgE,+BAA+BxgE,KAAKugE,aAAax3D,QAAQ65C,GAAG5iD,KAAKsgE,cAAcY,sBAAsB,aAAate,QAAQA,EAAE5iD,KAAKwgE,+BAA+BxgE,KAAKugE,aAAargE,KAAK0iD,GAAG5iD,KAAKsgE,cAAcx9C,YAAY8/B,GAAG5iD,KAAKugE,aAAa,GAAGztD,iBAAiB,QAAQ9S,KAAKygE,2BAA2BzgE,KAAKugE,aAAavgE,KAAKugE,aAAahhE,OAAO,GAAGuT,iBAAiB,QAAQ9S,KAAK2gE,8BAA8B3gE,KAAKwhD,UAAU8gB,YAAY,IAAI34B,GAAG,EAAE,GAAG3pC,KAAKugE,aAAa,IAAI52B,EAAE,EAAE3pC,KAAKugE,aAAahhE,OAAO,GAAG0f,QAAQjM,EAAEoT,iBAAiBpT,EAAEuvD,6BAA6B54B,EAAEnoC,UAAU2/D,UAAU,SAASnuD,GAAGhT,KAAKugE,aAAavgE,KAAKugE,aAAahhE,OAAO,GAAGimB,oBAAoB,QAAQxlB,KAAK2gE,8BAA8B,IAAI,IAAIh3B,EAAE3pC,KAAKsgE,cAAckC,SAASjjE,OAAOoqC,EAAE3pC,KAAKwhD,UAAUvoB,KAAK0Q,IAAI3pC,KAAKugE,aAAa52B,GAAG3pC,KAAKwgE,+BAA+BxgE,KAAKsgE,cAAcx9C,YAAY9iB,KAAKugE,aAAa52B,IAAI,KAAK3pC,KAAKugE,aAAahhE,OAAOyT,GAAGhT,KAAKsgE,cAAc1wD,YAAY5P,KAAKugE,aAAarxB,OAAOlvC,KAAKugE,aAAavgE,KAAKugE,aAAahhE,OAAO,GAAGuT,iBAAiB,QAAQ9S,KAAK2gE,8BAA8B3gE,KAAK4gE,0BAA0Bj3B,EAAEnoC,UAAUg/D,6BAA6B,WAAW,IAAIxtD,EAAEiL,SAASyE,cAAc,OAAO,OAAO1P,EAAE7G,aAAa,OAAO,YAAY6G,EAAEyvD,UAAU,EAAEziE,KAAK0iE,sBAAsB1vD,GAAGA,GAAG22B,EAAEnoC,UAAUkgE,OAAO,SAAS1uD,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAE32B,EAAE22B,IAAI3pC,KAAKuhE,QAAQ,MAAM53B,EAAEnoC,UAAU+/D,QAAQ,SAASvuD,GAAG,IAAI22B,EAAE3pC,KAAKA,KAAKkgE,qBAAqB,KAAKlgE,KAAKmgE,gBAAgB5gE,OAAO,EAAES,KAAKmgE,gBAAgBj/D,UAAU8R,IAAIhT,KAAKogE,kBAAkBptD,GAAGhT,KAAKogE,kBAAkBptD,EAAE,OAAOA,IAAIhT,KAAKkgE,uBAAuB,KAAKlgE,KAAKkgE,uBAAuBlgE,KAAKihE,YAAY/0D,aAAakH,EAAEuvD,gBAAgB/f,EAAEggB,OAAO5iE,KAAKihE,YAAY/0D,aAAalM,KAAKihE,YAAY/0D,YAAY3M,OAAO,IAAIS,KAAKihE,YAAY9+C,YAAY7gB,YAAW,WAAYqoC,EAAE02B,uBAAuBv9C,YAAY6mB,EAAEs3B,eAAe,KAAKt3B,EAAEnoC,UAAUqgE,iBAAiB,WAAW7hE,KAAKihE,YAAY/0D,YAAY,GAAGlM,KAAKkgE,qBAAqB,EAAEtd,EAAEggB,OAAO7e,EAAEoe,wBAAwBniE,KAAKihE,cAAct3B,EAAEnoC,UAAUogE,OAAO,SAAS5uD,GAAGhT,KAAK6hE,mBAAmB7hE,KAAKmgE,gBAAgBjgE,KAAK8S,IAAI22B,EAAEnoC,UAAUw/D,aAAa,SAAShuD,EAAE22B,GAAG3pC,KAAK6gE,qBAAqBgC,QAAQ7vD,EAAE22B,EAAE3pC,KAAKwhD,UAAUvoB,OAAO0Q,EAAEnoC,UAAUu/D,YAAY,SAAS/tD,EAAE22B,GAAG,IAAI,IAAIpmC,EAAEvD,KAAKwhD,UAAUwC,OAAOvkD,EAAE8D,EAAEy1C,MAAMz5C,OAAOwD,WAAW+b,EAAE9L,EAAE8L,GAAG6qB,EAAE7qB,IAAI,CAAC,IAAI1L,EAAE7P,EAAEu/D,4BAA4Bv/D,EAAEitD,MAAM1xC,GAAE,GAAI8jC,GAAGr/C,EAAEitD,MAAM1xC,EAAE,GAAG/b,WAAWiN,EAAEhQ,KAAKugE,aAAazhD,GAAG9O,IAAI,IAAIoD,EAAE7T,OAAOyQ,EAAE+yD,UAAU,IAAI/yD,EAAE9D,YAAYkH,EAAEpD,EAAE7D,aAAa,gBAAgBy2C,GAAG5yC,EAAE7D,aAAa,eAAe1M,IAAIO,KAAKgjE,uBAAuBr5B,EAAEnoC,UAAUo/D,uBAAuB,WAAW,GAAG5gE,KAAK8hD,eAAeC,WAAWE,iBAAiB,CAACjiD,KAAKugE,aAAahhE,SAASS,KAAKwhD,UAAUvoB,MAAMj5B,KAAKmhE,UAAUnhE,KAAKwhD,UAAUvoB,MAAM,IAAI,IAAIjmB,EAAE,EAAEA,EAAEhT,KAAKwhD,UAAUvoB,KAAKjmB,IAAIhT,KAAK0iE,sBAAsB1iE,KAAKugE,aAAavtD,MAAM22B,EAAEnoC,UAAUkhE,sBAAsB,SAAS1vD,GAAGA,EAAEyN,MAAM1C,OAAO/d,KAAK8hD,eAAeC,WAAWE,iBAAiB,MAAMtY,EAAEnoC,UAAUwhE,oBAAoB,WAAW,IAAIhjE,KAAKogE,iBAAiB7gE,SAASS,KAAKihE,YAAY/0D,aAAalM,KAAKogE,iBAAiBpgE,KAAKogE,iBAAiB,KAAKz2B,EAA9hM,CAAiiM2Y,EAAEsO,YAAYjnB,EAAEs2B,qBAAqB9+D,GAAG8hE,KAAK,CAACjwD,EAAE22B,KAAK,SAASpmC,EAAEyP,GAAG,OAAOA,EAAExT,QAAQ,SAAS,MAAM,SAASC,EAAEuT,EAAE22B,GAAG,OAAOA,EAAE,SAAS32B,EAAE,SAASA,EAAE,SAAS8L,EAAE9L,EAAE22B,EAAE7qB,GAAG9L,EAAEvT,EAAEuT,EAAEzP,EAAEyP,GAAG8L,EAAEokD,gBAAgBC,oBAAoBrkD,EAAEskD,iBAAiBpwD,GAAE,GAAI22B,EAAEjnC,MAAM,GAAG,SAAS0Q,EAAEJ,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAE8D,EAAEqa,wBAAwBkB,EAAE9L,EAAEg3B,QAAQvqC,EAAEwnC,KAAK,GAAG7zB,EAAEJ,EAAE82B,QAAQrqC,EAAE0nC,IAAI,GAAGwC,EAAElpB,MAAMtE,MAAM,OAAOwtB,EAAElpB,MAAM1C,OAAO,OAAO4rB,EAAElpB,MAAMwmB,KAAKnoB,EAAE,KAAK6qB,EAAElpB,MAAM0mB,IAAI/zB,EAAE,KAAKu2B,EAAElpB,MAAMk2C,OAAO,OAAOhtB,EAAE1qB,QAAQhR,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE05B,kBAAkB15B,EAAE25B,6BAA6B35B,EAAEje,MAAMie,EAAE45B,iBAAiB55B,EAAE65B,YAAY75B,EAAE85B,oBAAoB95B,EAAE+5B,4BAAuB,EAAO/5B,EAAE+5B,uBAAuBngE,EAAEomC,EAAE85B,oBAAoBhkE,EAAEkqC,EAAE65B,YAAY,SAASxwD,EAAE22B,GAAG32B,EAAE2wD,eAAe3wD,EAAE2wD,cAAcC,QAAQ,aAAaj6B,EAAEk6B,eAAe7wD,EAAEoT,kBAAkBujB,EAAE45B,iBAAiB,SAASvwD,EAAE22B,EAAEpmC,GAAGyP,EAAEqT,kBAAkBrT,EAAE2wD,eAAe7kD,EAAE9L,EAAE2wD,cAAc9xD,QAAQ,cAAc83B,EAAEpmC,IAAIomC,EAAEje,MAAM5M,EAAE6qB,EAAE25B,6BAA6BlwD,EAAEu2B,EAAE05B,kBAAkB,SAASrwD,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG1L,EAAEJ,EAAE22B,EAAEpmC,GAAGub,GAAGrf,EAAEqkE,iBAAiB9wD,GAAG22B,EAAEjnC,MAAMjD,EAAEokE,cAAcl6B,EAAEo6B,WAAWC,KAAK,CAAChxD,EAAE22B,KAAK,IAAIpmC,EAAE9D,EAAEqf,EAAE1L,EAAE,SAASwvC,EAAE5vC,GAAG,IAAI22B,EAAE32B,EAAEjQ,SAAS,IAAI,OAAO4mC,EAAEpqC,OAAO,EAAE,IAAIoqC,EAAEA,EAAE,SAAS35B,EAAEgD,EAAE22B,GAAG,OAAO32B,EAAE22B,GAAGA,EAAE,MAAM32B,EAAE,MAAMA,EAAE,MAAM22B,EAAE,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEyxB,cAAczxB,EAAE0xB,YAAY1xB,EAAErnC,KAAKqnC,EAAEvnC,IAAIunC,EAAE4oB,IAAI5oB,EAAEvkC,MAAMukC,EAAEyqB,cAAS,EAAO,SAASphD,GAAGA,EAAEqhD,MAAM,SAASrhD,EAAE22B,EAAEpmC,EAAE9D,GAAG,YAAO,IAASA,EAAE,IAAImjD,EAAE5vC,GAAG4vC,EAAEjZ,GAAGiZ,EAAEr/C,GAAGq/C,EAAEnjD,GAAG,IAAImjD,EAAE5vC,GAAG4vC,EAAEjZ,GAAGiZ,EAAEr/C,IAAIyP,EAAEsoD,OAAO,SAAStoD,EAAE22B,EAAEpmC,EAAE9D,GAAG,YAAO,IAASA,IAAIA,EAAE,MAAMuT,GAAG,GAAG22B,GAAG,GAAGpmC,GAAG,EAAE9D,KAAK,GAAjL,CAAqL8D,EAAEomC,EAAEyqB,WAAWzqB,EAAEyqB,SAAS,MAAM30D,EAAEkqC,EAAEvkC,QAAQukC,EAAEvkC,MAAM,KAAKm2D,MAAM,SAASvoD,EAAE22B,GAAG,IAAIlqC,GAAG,IAAIkqC,EAAErnC,MAAM,IAAI,GAAG,IAAI7C,EAAE,MAAM,CAAC8yD,IAAI5oB,EAAE4oB,IAAIjwD,KAAKqnC,EAAErnC,MAAM,IAAIwc,EAAE6qB,EAAErnC,MAAM,GAAG,IAAI8Q,EAAEu2B,EAAErnC,MAAM,GAAG,IAAIsgD,EAAEjZ,EAAErnC,MAAM,EAAE,IAAI0N,EAAEgD,EAAE1Q,MAAM,GAAG,IAAIsY,EAAE5H,EAAE1Q,MAAM,GAAG,IAAIggD,EAAEtvC,EAAE1Q,MAAM,EAAE,IAAI+B,EAAE2L,EAAEnN,KAAKkB,OAAO+a,EAAE9O,GAAGvQ,GAAGskD,EAAEnpC,EAAE/X,KAAKkB,OAAOqP,EAAEwH,GAAGnb,GAAG0B,EAAEmhD,EAAEz/C,KAAKkB,OAAO6+C,EAAEN,GAAG7iD,GAAG,MAAM,CAAC8yD,IAAIhvD,EAAE8wD,MAAMhwD,EAAE0/C,EAAE5iD,GAAGmB,KAAKiB,EAAE+3D,OAAOj3D,EAAE0/C,EAAE5iD,KAAK1B,EAAE+7D,SAAS,SAASxoD,GAAG,OAAO,MAAM,IAAIA,EAAE1Q,OAAO7C,EAAEg1D,oBAAoB,SAASzhD,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAE2T,EAAEqhD,oBAAoBzhD,EAAE1Q,KAAKqnC,EAAErnC,KAAKiB,GAAG,GAAG9D,EAAE,OAAO2T,EAAEqoD,QAAQh8D,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,MAAMA,EAAEi8D,OAAO,SAAS1oD,GAAG,IAAI22B,GAAG,IAAI32B,EAAE1Q,QAAQ,EAAE7C,EAAE2T,EAAEuoD,WAAWhyB,GAAG7qB,EAAErf,EAAE,GAAGmjD,EAAEnjD,EAAE,GAAGuQ,EAAEvQ,EAAE,GAAG,MAAM,CAAC8yD,IAAIhvD,EAAE8wD,MAAMv1C,EAAE8jC,EAAE5yC,GAAG1N,KAAKqnC,IAAIlqC,EAAE03C,QAAQ,SAASnkC,EAAE22B,GAAG,IAAIlqC,EAAEoD,KAAKkB,MAAM,IAAI4lC,GAAG7qB,EAAE1L,EAAEuoD,WAAW3oD,EAAE1Q,MAAMsgD,EAAE9jC,EAAE,GAAG9O,EAAE8O,EAAE,GAAGlE,EAAEkE,EAAE,GAAG,MAAM,CAACyzC,IAAIhvD,EAAE8wD,MAAMzR,EAAE5yC,EAAE4K,EAAEnb,GAAG6C,KAAKiB,EAAE+3D,OAAO1Y,EAAE5yC,EAAE4K,EAAEnb,MAAMkqC,EAAE4oB,MAAM5oB,EAAE4oB,IAAI,KAAKkJ,QAAQ,SAASzoD,GAAG,OAAOA,EAAEzT,QAAQ,KAAK,EAAE,MAAM,CAACgzD,IAAIv/C,EAAE1Q,MAAMsB,SAASoP,EAAElR,MAAM,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,MAAM,CAACywD,IAAIv/C,EAAE1Q,KAAKsB,SAASoP,EAAElR,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI9C,MAAM,wCAAwC,SAASgU,GAAG,SAAS22B,EAAE32B,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEuT,EAAE,IAAI8L,EAAE6qB,EAAE,IAAIv2B,EAAE7P,EAAE,IAAI,MAAM,OAAO9D,GAAG,OAAOA,EAAE,MAAMoD,KAAK+4D,KAAKn8D,EAAE,MAAM,MAAM,MAAM,OAAOqf,GAAG,OAAOA,EAAE,MAAMjc,KAAK+4D,KAAK98C,EAAE,MAAM,MAAM,MAAM,OAAO1L,GAAG,OAAOA,EAAE,MAAMvQ,KAAK+4D,KAAKxoD,EAAE,MAAM,MAAM,MAAMJ,EAAE6oD,kBAAkB,SAAS7oD,GAAG,OAAO22B,EAAE32B,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAE8oD,mBAAmBnyB,EAA9T,CAAiU7qB,EAAE6qB,EAAEvnC,MAAMunC,EAAEvnC,IAAI,KAAK,SAAS4Q,GAAG,SAAS22B,EAAE32B,EAAE22B,EAAEpmC,GAAG,IAAI,IAAI9D,EAAEuT,GAAG,GAAG,IAAII,EAAEJ,GAAG,GAAG,IAAI4vC,EAAE5vC,GAAG,EAAE,IAAI4H,EAAE+uB,GAAG,GAAG,IAAI2Y,EAAE3Y,GAAG,GAAG,IAAItlC,EAAEslC,GAAG,EAAE,IAAIoa,EAAE/zC,EAAE8O,EAAEg9C,mBAAmBlhD,EAAEvW,EAAEi+C,GAAGxjC,EAAEg9C,mBAAmBr8D,EAAE2T,EAAEwvC,IAAImB,EAAExgD,IAAIqX,EAAE,GAAG0nC,EAAE,GAAGj+C,EAAE,IAAIuW,GAAG/X,KAAKuE,IAAI,EAAEvE,KAAK0F,KAAK,GAAGqS,IAAI0nC,GAAGz/C,KAAKuE,IAAI,EAAEvE,KAAK0F,KAAK,GAAG+5C,IAAIj+C,GAAGxB,KAAKuE,IAAI,EAAEvE,KAAK0F,KAAK,GAAGlE,IAAI0/C,EAAE/zC,EAAE8O,EAAEg9C,mBAAmBlhD,EAAEvW,EAAEi+C,GAAGxjC,EAAEg9C,mBAAmBr8D,EAAE2T,EAAEwvC,IAAI,OAAOhoC,GAAG,GAAG0nC,GAAG,GAAGj+C,GAAG,EAAE,OAAO,EAAE,SAAS5E,EAAEuT,EAAE22B,EAAEpmC,GAAG,IAAI,IAAI9D,EAAEuT,GAAG,GAAG,IAAII,EAAEJ,GAAG,GAAG,IAAI4vC,EAAE5vC,GAAG,EAAE,IAAI4H,EAAE+uB,GAAG,GAAG,IAAI2Y,EAAE3Y,GAAG,GAAG,IAAItlC,EAAEslC,GAAG,EAAE,IAAIoa,EAAE/zC,EAAE8O,EAAEg9C,mBAAmBlhD,EAAEvW,EAAEi+C,GAAGxjC,EAAEg9C,mBAAmBr8D,EAAE2T,EAAEwvC,IAAImB,EAAExgD,IAAIqX,EAAE,KAAK0nC,EAAE,KAAKj+C,EAAE,MAAMuW,EAAE/X,KAAKC,IAAI,IAAI8X,EAAE/X,KAAK0F,KAAK,IAAI,IAAIqS,KAAK0nC,EAAEz/C,KAAKC,IAAI,IAAIw/C,EAAEz/C,KAAK0F,KAAK,IAAI,IAAI+5C,KAAKj+C,EAAExB,KAAKC,IAAI,IAAIuB,EAAExB,KAAK0F,KAAK,IAAI,IAAIlE,KAAK0/C,EAAE/zC,EAAE8O,EAAEg9C,mBAAmBlhD,EAAEvW,EAAEi+C,GAAGxjC,EAAEg9C,mBAAmBr8D,EAAE2T,EAAEwvC,IAAI,OAAOhoC,GAAG,GAAG0nC,GAAG,GAAGj+C,GAAG,EAAE,OAAO,EAAE2O,EAAEyhD,oBAAoB,SAASzhD,EAAEzP,EAAE6P,GAAG,IAAIwvC,EAAE9jC,EAAE+8C,kBAAkB7oD,GAAG,GAAG4H,EAAEkE,EAAE+8C,kBAAkBt4D,GAAG,GAAG,GAAGyM,EAAE4yC,EAAEhoC,GAAGxH,EAAE,OAAOwH,EAAEgoC,EAAEjZ,EAAE32B,EAAEzP,EAAE6P,GAAG3T,EAAEuT,EAAEzP,EAAE6P,IAAIJ,EAAE+oD,gBAAgBpyB,EAAE32B,EAAEgpD,kBAAkBv8D,EAAEuT,EAAE2oD,WAAW,SAAS3oD,GAAG,MAAM,CAACA,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAEyoD,QAAQ,SAASzoD,EAAE22B,EAAElqC,GAAG,MAAM,CAAC8yD,IAAIhvD,EAAE8wD,MAAMrhD,EAAE22B,EAAElqC,GAAG6C,KAAKiB,EAAE+3D,OAAOtoD,EAAE22B,EAAElqC,KAA1kC,CAAglC2T,EAAEu2B,EAAErnC,OAAOqnC,EAAErnC,KAAK,KAAKqnC,EAAE0xB,YAAYzY,EAAEjZ,EAAEyxB,cAAcprD,GAAGi0D,KAAK,CAACjxD,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEu6B,wBAAmB,EAAO,IAAI3gE,EAAE,WAAW,SAASyP,IAAIhT,KAAKmkE,OAAO,GAAGnkE,KAAKokE,MAAM,GAAG,OAAOpxD,EAAExR,UAAUgR,MAAM,WAAWxS,KAAKmkE,OAAO,GAAGnkE,KAAKokE,MAAM,IAAIpxD,EAAExR,UAAUkzD,OAAO,SAAS1hD,EAAE22B,EAAEpmC,GAAGvD,KAAKokE,MAAMpxD,KAAKhT,KAAKokE,MAAMpxD,GAAG,IAAIhT,KAAKokE,MAAMpxD,GAAG22B,GAAGpmC,GAAGyP,EAAExR,UAAUgzD,OAAO,SAASxhD,EAAE22B,GAAG,OAAO3pC,KAAKokE,MAAMpxD,GAAGhT,KAAKokE,MAAMpxD,GAAG22B,QAAG,GAAQ32B,EAAExR,UAAU6iE,SAAS,SAASrxD,EAAE22B,EAAEpmC,GAAGvD,KAAKmkE,OAAOnxD,KAAKhT,KAAKmkE,OAAOnxD,GAAG,IAAIhT,KAAKmkE,OAAOnxD,GAAG22B,GAAGpmC,GAAGyP,EAAExR,UAAU8iE,SAAS,SAAStxD,EAAE22B,GAAG,OAAO3pC,KAAKmkE,OAAOnxD,GAAGhT,KAAKmkE,OAAOnxD,GAAG22B,QAAG,GAAQ32B,EAAhd,GAAqd22B,EAAEu6B,mBAAmB3gE,GAAGghE,KAAK,CAACvxD,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE66B,aAAa76B,EAAE86B,yBAAoB,EAAO,IAAIhlE,EAAE8D,EAAE,MAAMub,EAAEvb,EAAE,MAAM6P,EAAE3T,EAAE8yD,IAAIkJ,QAAQ,WAAW7Y,EAAEnjD,EAAE8yD,IAAIkJ,QAAQ,WAAWzrD,EAAEvQ,EAAE8yD,IAAIkJ,QAAQ,WAAW7gD,EAAEnb,EAAE8yD,IAAIkJ,QAAQ,WAAWnZ,EAAE,CAACiQ,IAAI,2BAA2BjwD,KAAK,YAAYqnC,EAAE86B,oBAAoBx2D,OAAOy2D,OAAO,WAAW,IAAI,IAAI1xD,EAAE,CAACvT,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,WAAWh8D,EAAE8yD,IAAIkJ,QAAQ,YAAY9xB,EAAE,CAAC,EAAE,GAAG,IAAI,IAAI,IAAI,KAAKpmC,EAAE,EAAEA,EAAE,IAAIA,IAAI,CAAC,IAAIub,EAAE6qB,EAAEpmC,EAAE,GAAG,EAAE,GAAG6P,EAAEu2B,EAAEpmC,EAAE,EAAE,EAAE,GAAGq/C,EAAEjZ,EAAEpmC,EAAE,GAAGyP,EAAE9S,KAAK,CAACqyD,IAAI9yD,EAAE20D,SAASC,MAAMv1C,EAAE1L,EAAEwvC,GAAGtgD,KAAK7C,EAAE20D,SAASkH,OAAOx8C,EAAE1L,EAAEwvC,KAAK,IAAIr/C,EAAE,EAAEA,EAAE,GAAGA,IAAI,CAAC,IAAIyM,EAAE,EAAE,GAAGzM,EAAEyP,EAAE9S,KAAK,CAACqyD,IAAI9yD,EAAE20D,SAASC,MAAMrkD,EAAEA,EAAEA,GAAG1N,KAAK7C,EAAE20D,SAASkH,OAAOtrD,EAAEA,EAAEA,KAAK,OAAOgD,EAArqB,IAA2qB,IAAI3O,EAAE,WAAW,SAAS2O,EAAEA,EAAEzP,GAAGvD,KAAK4yD,kBAAkBrvD,EAAE,IAAIc,EAAE2O,EAAE0P,cAAc,UAAUre,EAAE8X,MAAM,EAAE9X,EAAE0Z,OAAO,EAAE,IAAIgmC,EAAE1/C,EAAE0qD,WAAW,MAAM,IAAIhL,EAAE,MAAM,IAAI/kD,MAAM,mCAAmCgB,KAAK62D,KAAK9S,EAAE/jD,KAAK62D,KAAK3B,yBAAyB,OAAOl1D,KAAK2kE,aAAa3kE,KAAK62D,KAAK+N,qBAAqB,EAAE,EAAE,EAAE,GAAG5kE,KAAK6kE,eAAe,IAAI/lD,EAAEolD,mBAAmBlkE,KAAKgC,OAAO,CAACk4C,WAAW9mC,EAAEiK,WAAWulC,EAAExS,OAAOpgC,EAAEwiD,aAAa53C,EAAE63C,qBAAqBnQ,EAAEkG,gBAAgB/oD,EAAE2F,MAAMm2D,MAAM3Y,EAAEN,GAAG0H,KAAKrgB,EAAE86B,oBAAoB3iE,QAAQ4wD,cAAc1yD,KAAK6kE,gBAAgB,OAAO7xD,EAAExR,UAAUsjE,gBAAgB,SAAS9xD,GAAG,yBAAyBA,GAAGhT,KAAK6kE,eAAeryD,SAASQ,EAAExR,UAAUujE,SAAS,SAAS/xD,QAAG,IAASA,IAAIA,EAAE,IAAIhT,KAAKgC,OAAOk4C,WAAWl6C,KAAKglE,YAAYhyD,EAAEknC,WAAW9mC,GAAGpT,KAAKgC,OAAOqb,WAAWrd,KAAKglE,YAAYhyD,EAAEqK,WAAWulC,GAAG5iD,KAAKgC,OAAOouC,OAAOpwC,KAAKglE,YAAYhyD,EAAEo9B,OAAOpgC,GAAE,GAAIhQ,KAAKgC,OAAOwwD,aAAaxyD,KAAKglE,YAAYhyD,EAAEw/C,aAAa53C,GAAE,GAAI5a,KAAKgC,OAAOywD,qBAAqBzyD,KAAKglE,YAAYhyD,EAAE+X,UAAUu3B,GAAE,GAAItiD,KAAKgC,OAAOwmD,gBAAgB/oD,EAAE2F,MAAMm2D,MAAMv7D,KAAKgC,OAAOqb,WAAWrd,KAAKgC,OAAOywD,sBAAsBhzD,EAAE2F,MAAMo2D,SAASx7D,KAAKgC,OAAOywD,wBAAwBzyD,KAAKgC,OAAOywD,qBAAqBhzD,EAAE2F,MAAM+xC,QAAQn3C,KAAKgC,OAAOywD,qBAAqB,KAAKzyD,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEiyD,MAAMt7B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEkyD,IAAIv7B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEmyD,MAAMx7B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEoyD,OAAOz7B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEqyD,KAAK17B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEsyD,QAAQ37B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEuyD,KAAK57B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEwyD,MAAM77B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAEyyD,YAAY97B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,GAAGhqD,KAAKglE,YAAYhyD,EAAE0yD,UAAU/7B,EAAE86B,oBAAoB,IAAIzkE,KAAKgC,OAAOgoD,KAAK,IAAIhqD,KAAKglE,YAAYhyD,EAAE2yD,YAAYh8B,EAAE86B,oBAAoB,KAAKzkE,KAAKgC,OAAOgoD,KAAK,IAAIhqD,KAAKglE,YAAYhyD,EAAE4yD,aAAaj8B,EAAE86B,oBAAoB,KAAKzkE,KAAKgC,OAAOgoD,KAAK,IAAIhqD,KAAKglE,YAAYhyD,EAAE6yD,WAAWl8B,EAAE86B,oBAAoB,KAAKzkE,KAAKgC,OAAOgoD,KAAK,IAAIhqD,KAAKglE,YAAYhyD,EAAE8yD,cAAcn8B,EAAE86B,oBAAoB,KAAKzkE,KAAKgC,OAAOgoD,KAAK,IAAIhqD,KAAKglE,YAAYhyD,EAAE+yD,WAAWp8B,EAAE86B,oBAAoB,KAAKzkE,KAAKgC,OAAOgoD,KAAK,IAAIhqD,KAAKglE,YAAYhyD,EAAEgzD,YAAYr8B,EAAE86B,oBAAoB,KAAKzkE,KAAK6kE,eAAeryD,SAASQ,EAAExR,UAAUwjE,YAAY,SAAShyD,EAAE22B,EAAEpmC,GAAG,QAAG,IAASA,IAAIA,EAAEvD,KAAK4yD,wBAAmB,IAAS5/C,EAAE,OAAO22B,EAAE,GAAG3pC,KAAK62D,KAAK1B,UAAUn1D,KAAK2kE,aAAa3kE,KAAK62D,KAAK1B,UAAUniD,EAAE,iBAAiBhT,KAAK62D,KAAK1B,UAAU,OAAO10D,QAAQC,KAAK,UAAUsS,EAAE,8BAA8B22B,EAAE4oB,KAAK5oB,EAAE3pC,KAAK62D,KAAKzB,SAAS,EAAE,EAAE,EAAE,GAAG,IAAIt2C,EAAE9e,KAAK62D,KAAKnB,aAAa,EAAE,EAAE,EAAE,GAAG/jD,KAAK,GAAG,MAAMmN,EAAE,GAAG,CAAC,IAAIvb,EAAE,OAAO9C,QAAQC,KAAK,UAAUsS,EAAE,0EAA0E22B,EAAE4oB,IAAI,KAAK5oB,EAAE,IAAIv2B,EAAEpT,KAAK62D,KAAK1B,UAAU14C,UAAU,EAAEzc,KAAK62D,KAAK1B,UAAU51D,OAAO,GAAGD,MAAM,KAAKqE,KAAI,SAAUqP,GAAG,OAAOizD,OAAOjzD,MAAM4vC,EAAExvC,EAAE,GAAGpD,EAAEoD,EAAE,GAAGwH,EAAExH,EAAE,GAAGkvC,EAAElvC,EAAE,GAAG/O,EAAExB,KAAKkB,MAAM,IAAIu+C,GAAG,MAAM,CAAChgD,KAAK7C,EAAE20D,SAASkH,OAAO1Y,EAAE5yC,EAAE4K,EAAEvW,GAAGkuD,IAAIv/C,GAAG,MAAM,CAACu/C,IAAIvyD,KAAK62D,KAAK1B,UAAU7yD,KAAK7C,EAAE20D,SAASkH,OAAOx8C,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,MAAM9L,EAAlpG,GAAupG22B,EAAE66B,aAAangE,GAAG6hE,KAAK,CAAClzD,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEw4B,6BAAwB,EAAOx4B,EAAEw4B,wBAAwB,WAAW,IAAI,IAAInvD,EAAE22B,EAAE,GAAGpmC,EAAE,EAAEA,EAAE7D,UAAUH,OAAOgE,IAAIomC,EAAEpmC,GAAG7D,UAAU6D,GAAG,IAAI,IAAI9D,EAAE,EAAEqf,EAAE6qB,EAAElqC,EAAEqf,EAAEvf,OAAOE,IAAI,CAAC,IAAI2T,EAAE0L,EAAErf,GAAG,QAAQuT,EAAE,MAAMI,OAAE,EAAOA,EAAE+xB,qBAAgB,IAASnyB,GAAGA,EAAEpD,YAAYwD,MAAM+yD,KAAK,CAACnzD,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEu4B,8BAAyB,EAAOv4B,EAAEu4B,yBAAyB,SAASlvD,EAAE22B,EAAEpmC,EAAE9D,GAAGuT,EAAEF,iBAAiB62B,EAAEpmC,EAAE9D,GAAG,IAAIqf,GAAE,EAAG,MAAM,CAAC2iC,QAAQ,WAAW3iC,IAAIA,GAAE,EAAG9L,EAAEwS,oBAAoBmkB,EAAEpmC,EAAE9D,QAAQ2mE,KAAK,SAASpzD,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAG9jC,EAAE9e,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE88B,UAAU98B,EAAE+8B,eAAU,EAAO,IAAItzD,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAE,WAAW,SAASgD,EAAEA,EAAE22B,EAAEpmC,GAAGvD,KAAK2mE,eAAe3zD,EAAEhT,KAAK4mE,YAAYj9B,EAAE3pC,KAAK6mE,gBAAgBtjE,EAAEvD,KAAK8mE,cAAc,GAAG9mE,KAAK+mE,mBAAmB,EAAE/mE,KAAKy6D,qBAAqB,IAAIrnD,EAAE26C,aAAa/tD,KAAK26D,qBAAqB,IAAIvnD,EAAE26C,aAAa/tD,KAAKgnE,eAAe,IAAI5zD,EAAE26C,aAAa/tD,KAAKinE,eAAe,CAAC5qD,WAAM,EAAOK,SAAI,GAAQ,OAAOzO,OAAOqzC,eAAetuC,EAAExR,UAAU,sBAAsB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKy6D,qBAAqB1nB,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,sBAAsB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK26D,qBAAqB5nB,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKgnE,eAAej0B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAU0lE,YAAY,SAASl0D,EAAE22B,GAAG3pC,KAAKmnE,SAASn0D,EAAEhT,KAAKonE,kBAAkBz9B,GAAG32B,EAAExR,UAAU6lE,YAAY,SAAS19B,EAAEpmC,GAAG,IAAI9D,EAAEO,KAAKA,KAAKonE,yBAAoB,IAASpnE,KAAKinE,eAAe5qD,YAAO,IAASrc,KAAKinE,eAAevqD,KAAK1c,KAAKinE,eAAe5qD,MAAMstB,EAAE3pC,KAAKinE,eAAevqD,IAAInZ,IAAIvD,KAAKinE,eAAe5qD,MAAMxZ,KAAKC,IAAI9C,KAAKinE,eAAe5qD,MAAMstB,GAAG3pC,KAAKinE,eAAevqD,IAAI7Z,KAAKuE,IAAIpH,KAAKinE,eAAevqD,IAAInZ,IAAIvD,KAAKonE,kBAAkBE,SAAS39B,EAAEpmC,GAAGvD,KAAKunE,gBAAgBz/D,aAAa9H,KAAKunE,gBAAgBvnE,KAAKunE,eAAejmE,YAAW,WAAY,OAAO7B,EAAE+nE,iBAAiBx0D,EAAEy0D,sBAAsBz0D,EAAExR,UAAUgmE,aAAa,WAAWxnE,KAAKunE,oBAAe,EAAO,IAAIv0D,EAAEhT,KAAK2mE,eAAe3iB,OAAO,QAAG,IAAShkD,KAAKinE,eAAe5qD,YAAO,IAASrc,KAAKinE,eAAevqD,IAAI,CAAC,IAAIitB,EAAE32B,EAAEw9C,MAAMxwD,KAAKinE,eAAe5qD,MAAM,KAAKstB,GAAG32B,EAAEgmC,MAAMz5C,QAAQ,CAAC,IAAI,IAAIgE,EAAEyP,EAAEw9C,MAAM3tD,KAAKC,IAAI9C,KAAKinE,eAAevqD,IAAI1c,KAAK2mE,eAAe1tC,MAAM,EAAEx5B,EAAEoD,KAAK0F,KAAK,IAAIvI,KAAK2mE,eAAe9kB,MAAM/iC,EAAE9e,KAAK2mE,eAAe3iB,OAAO0jB,UAAS,EAAG/9B,EAAEpmC,EAAE9D,EAAEA,GAAGqf,EAAE6oD,WAAW,IAAI,IAAIv0D,EAAE0L,EAAE8oD,OAAOhlB,EAAE,EAAEA,EAAE5iD,KAAK8mE,cAAcvnE,OAAOqjD,IAAI5iD,KAAK6nE,cAAcz0D,EAAE0qB,MAAMgqC,MAAM10D,EAAE9J,QAAQtJ,KAAK8mE,cAAclkB,IAAI5iD,KAAKinE,eAAe5qD,WAAM,EAAOrc,KAAKinE,eAAevqD,SAAI,QAAa1c,KAAK4mE,YAAYmB,MAAM,2DAA2D/0D,EAAExR,UAAU+hD,oBAAoB,SAASvwC,EAAE22B,EAAEpmC,GAAG,QAAG,IAASA,IAAIA,EAAE,KAAKomC,EAAE,MAAM,IAAI3qC,MAAM,2BAA2B,IAAIS,EAAE,CAACsM,GAAG/L,KAAK+mE,qBAAqBiB,MAAMh1D,EAAEuS,QAAQokB,EAAEuZ,WAAW3/C,EAAE2/C,WAAW+kB,mBAAmB1kE,EAAE0kE,mBAAmBC,qBAAqB3kE,EAAE4kE,gBAAgBC,mBAAmB7kE,EAAE8kE,cAAcC,iBAAiB/kE,EAAE+kE,iBAAiBC,SAAShlE,EAAEglE,UAAU,GAAG,OAAOvoE,KAAKwoE,sBAAsB/oE,GAAGA,EAAEsM,IAAIiH,EAAExR,UAAUgnE,sBAAsB,SAASx1D,GAAG,GAAG,IAAIhT,KAAK8mE,cAAcvnE,OAAO,CAAC,IAAI,IAAIoqC,EAAE3pC,KAAK8mE,cAAcvnE,OAAO,EAAEoqC,GAAG,EAAEA,IAAI,GAAG32B,EAAEu1D,UAAUvoE,KAAK8mE,cAAcn9B,GAAG4+B,SAAS,YAAYvoE,KAAK8mE,cAAchjE,OAAO6lC,EAAE,EAAE,EAAE32B,GAAGhT,KAAK8mE,cAAchjE,OAAO,EAAE,EAAEkP,QAAQhT,KAAK8mE,cAAc5mE,KAAK8S,IAAIA,EAAExR,UAAUgiD,sBAAsB,SAASxwC,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAE3pC,KAAK8mE,cAAcvnE,OAAOoqC,IAAI,GAAG3pC,KAAK8mE,cAAcn9B,GAAG59B,KAAKiH,EAAE,OAAOhT,KAAK8mE,cAAchjE,OAAO6lC,EAAE,IAAG,EAAG,OAAM,GAAI32B,EAAExR,UAAUqmE,cAAc,SAAS70D,EAAE22B,EAAEpmC,GAAG,IAAI,IAAI9D,EAAEqf,EAAE9e,KAAKoT,EAAE,IAAI/Q,OAAOkB,EAAEykE,MAAM9oE,QAAQqE,EAAEykE,MAAMnkB,OAAO,IAAI,KAAKjB,GAAG,EAAE5yC,EAAE,WAAW,IAAIA,EAAEvQ,EAAE,iBAAiB8D,EAAE2/C,WAAW,EAAE3/C,EAAE2/C,YAAY,IAAIlzC,EAAE,OAAO4K,EAAEgsD,YAAYmB,MAAM,+CAA+CtoE,EAAE8D,GAAG,QAAQ,GAAGq/C,EAAEjZ,EAAEtmC,QAAQ2M,EAAE4yC,EAAE,GAAGxvC,EAAEsb,UAAUk0B,EAAE5yC,EAAEzQ,OAAOqjD,EAAE,EAAE,MAAM,QAAQ,IAAIN,EAAE1nC,EAAE+rD,eAAe3iB,OAAOykB,yBAAyBz1D,EAAE4vC,GAAG,GAAGN,EAAE,GAAG,EAAE,MAAM,QAAQ,IAAIj+C,EAAEuW,EAAE+rD,eAAe3iB,OAAOhL,MAAM9tC,IAAIo3C,EAAE,IAAI,IAAIj+C,EAAE,MAAM,QAAQ,IAAI0/C,EAAE1/C,EAAEqkE,MAAMpmB,EAAE,IAAInhD,EAAE4iD,EAAEA,GAAG,EAAE,SAAI,EAAOxgD,EAAE0kE,mBAAmB1kE,EAAE0kE,mBAAmBj4D,GAAE,SAAUgD,GAAG8L,EAAEyoD,gBAAgBv0D,GAAG8L,EAAE6pD,SAASrmB,EAAE,GAAGA,EAAE,GAAGxjC,EAAE6nD,eAAe3iB,OAAOwM,MAAMxgD,EAAEzM,EAAEpC,MAAMyZ,EAAE+tD,SAASrmB,EAAE,GAAGA,EAAE,GAAG1nC,EAAE+rD,eAAe3iB,OAAOwM,MAAMxgD,EAAEzM,EAAEpC,IAAIyZ,EAAE5a,KAAK,QAAQP,EAAE2T,EAAEub,KAAKgb,KAAK,UAAU35B,QAAQgD,EAAExR,UAAUmnE,SAAS,SAAS31D,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG,IAAI1L,EAAEpT,KAAK,GAAGA,KAAKonE,mBAAmBpnE,KAAKmnE,SAAS,CAAC,IAAIvkB,EAAE5iD,KAAK6mE,gBAAgB+B,mBAAmBrlE,GAAGyM,EAAEgD,EAAEhT,KAAK2mE,eAAe9kB,KAAKS,EAAE3Y,EAAE9mC,KAAK2F,MAAMwK,EAAEhT,KAAK2mE,eAAe9kB,MAAMx9C,GAAG2L,EAAE4yC,GAAG5iD,KAAK2mE,eAAe9kB,KAAKkC,EAAEzB,EAAEz/C,KAAK2F,OAAOwH,EAAE4yC,GAAG5iD,KAAK2mE,eAAe9kB,MAAM,IAAIx9C,IAAIA,EAAErE,KAAK2mE,eAAe9kB,KAAKkC,KAAK/jD,KAAKonE,kBAAkB31D,IAAI,IAAImJ,EAAE5K,EAAE,EAAEsyC,EAAE,EAAEj+C,EAAE,EAAE0/C,EAAE,GAAE,SAAU/wC,GAAG,GAAGvT,EAAE8lB,QAAQ,OAAO9lB,EAAE8lB,QAAQvS,EAAEzP,GAAG,IAAIomC,EAAEppC,OAAOsK,OAAO8+B,GAAGA,EAAEmZ,OAAO,KAAKnZ,EAAEpjB,SAAS+E,KAAK/nB,GAAG9C,QAAQC,KAAK,0DAAyD,WAAY0S,EAAEqnD,qBAAqB7K,KAAKx8C,EAAEy1D,sBAAsB74D,EAAEsyC,EAAEj+C,EAAE0/C,EAAEjlC,IAAI1L,EAAE+zD,SAASzQ,UAAUjlD,IAAI,2BAA0B,SAAUuB,GAAGI,EAAE4zD,eAAepX,KAAKx8C,EAAEy1D,sBAAsB74D,EAAEsyC,EAAEj+C,EAAE0/C,EAAEjlC,IAAIrf,EAAEyoE,sBAAsBzoE,EAAEyoE,qBAAqBl1D,EAAEzP,EAAE,CAAC8Y,MAAM,CAAC0tB,EAAE/5B,EAAE65B,EAAEyY,GAAG5lC,IAAI,CAACqtB,EAAE1lC,EAAEwlC,EAAEka,QAAO,WAAY3wC,EAAEunD,qBAAqB/K,KAAKx8C,EAAEy1D,sBAAsB74D,EAAEsyC,EAAEj+C,EAAE0/C,EAAEjlC,IAAI1L,EAAE+zD,SAASzQ,UAAU/jD,OAAO,wBAAwBlT,EAAE2oE,oBAAoB3oE,EAAE2oE,wBAAuB,SAAUp1D,GAAG,OAAOvT,EAAE6oE,kBAAkB7oE,EAAE6oE,iBAAiBt1D,EAAEzP,SAASyP,EAAExR,UAAUqnE,sBAAsB,SAAS71D,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG,MAAM,CAACg8C,GAAG9nD,EAAE+nD,GAAGpxB,EAAEsxB,GAAG13D,EAAEy3D,GAAGv7D,EAAEoiD,KAAK7hD,KAAK2mE,eAAe9kB,KAAKyH,GAAGxqC,IAAI9L,EAAEy0D,mBAAmB,IAAIz0D,EAAEvT,EAAE,CAACqf,EAAE,EAAE8jC,EAAEkmB,gBAAgBhqD,EAAE,EAAE8jC,EAAEmmB,aAAajqD,EAAE,EAAE8jC,EAAEomB,kBAAkBh2D,GAAz2J,GAA+2J22B,EAAE+8B,UAAU12D,EAAE,IAAI4K,EAAE,SAAS5H,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,EAAE4K,GAAG5a,KAAK86D,GAAG9nD,EAAEhT,KAAK+6D,GAAGpxB,EAAE3pC,KAAKi7D,GAAG13D,EAAEvD,KAAKg7D,GAAGv7D,EAAEO,KAAKipE,cAAcnqD,EAAE9e,KAAKkpE,cAAc91D,EAAEpT,KAAKmoE,gBAAgBvlB,EAAE5iD,KAAKqoE,cAAcr4D,EAAEhQ,KAAKsoE,iBAAiB1tD,GAAG+uB,EAAE88B,UAAU7rD,GAAGuuD,KAAK,SAASn2D,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEy/B,gBAAW,EAAO,IAAIp5D,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAE,SAAS/wC,GAAG,SAAS22B,EAAEA,GAAG,IAAIpmC,EAAEyP,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOuD,EAAEojE,eAAeh9B,EAAEpmC,EAAE8lE,eAAe,GAAG9lE,EAAE+lE,sBAAsB,GAAG/lE,EAAEgmE,aAAY,EAAGhmE,EAAEimE,aAAa,EAAEjmE,EAAEk3D,qBAAqBl3D,EAAEs5D,SAAS,IAAIjiD,EAAEmzC,cAAcxqD,EAAEo3D,qBAAqBp3D,EAAEs5D,SAAS,IAAIjiD,EAAEmzC,cAAcxqD,EAAEs5D,SAASva,EAAEma,0BAA0Bl5D,EAAE+lE,wBAAwB/lE,EAAE,OAAOub,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,cAAc,CAAC0J,IAAI,WAAW,OAAOlL,KAAKypE,cAAclnB,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,sBAAsB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKy6D,qBAAqB1nB,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,sBAAsB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK26D,qBAAqB5nB,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAU4hD,qBAAqB,SAASpwC,GAAG,IAAI22B,EAAE3pC,KAAK,OAAOA,KAAKqpE,eAAenpE,KAAK8S,GAAG,CAACyuC,QAAQ,WAAW,IAAIl+C,EAAEomC,EAAE0/B,eAAehmE,QAAQ2P,IAAI,IAAIzP,GAAGomC,EAAE0/B,eAAevlE,OAAOP,EAAE,MAAMomC,EAAEnoC,UAAU0lE,YAAY,SAASl0D,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,KAAKA,KAAKmnE,SAASn0D,EAAEhT,KAAK0pE,cAAc//B,EAAE3pC,KAAK8hD,eAAev+C,EAAEvD,KAAK68D,SAASx4D,EAAE69D,yBAAyBliE,KAAKmnE,SAAS,cAAa,WAAY1nE,EAAE8pE,aAAY,EAAG9pE,EAAEo7D,wBAAwB76D,KAAK68D,SAASx4D,EAAE69D,yBAAyBliE,KAAKmnE,SAAS,YAAYnnE,KAAK2pE,aAAaz/D,KAAKlK,QAAQA,KAAK68D,SAASx4D,EAAE69D,yBAAyBliE,KAAKmnE,SAAS,QAAQnnE,KAAK4pE,SAAS1/D,KAAKlK,SAAS2pC,EAAEnoC,UAAUmoE,aAAa,SAAS32D,GAAG,GAAGhT,KAAK6pE,gBAAgB72D,EAAEhT,KAAKmnE,UAAUnnE,KAAK0pE,cAAc,CAAC,IAAI//B,EAAE3pC,KAAK8pE,wBAAwB92D,EAAEhT,KAAKmnE,SAASnnE,KAAK0pE,eAAe,GAAG//B,EAAE,CAAC3pC,KAAKupE,aAAY,EAAG,IAAI,IAAIhmE,EAAEyP,EAAE+2D,eAAetqE,EAAE,EAAEA,EAAE8D,EAAEhE,OAAOE,IAAI,CAAC,IAAIqf,EAAEvb,EAAE9D,GAAG,GAAGqf,EAAE43C,UAAUtH,SAAS,SAAS,MAAM,GAAGtwC,EAAE43C,UAAUtH,SAAS,eAAe,OAAOpvD,KAAKgqE,iBAAiBrgC,EAAEI,IAAI/pC,KAAKgqE,gBAAgBjgC,GAAGJ,EAAEE,IAAI7pC,KAAKgqE,gBAAgBngC,IAAI7pC,KAAKiqE,SAAStgC,GAAG3pC,KAAKgqE,gBAAgBrgC,MAAMA,EAAEnoC,UAAUyoE,SAAS,SAASj3D,GAAG,GAAGhT,KAAKwpE,cAAcx2D,EAAE62B,EAAE,OAAO7pC,KAAK66D,yBAAyB76D,KAAKkqE,YAAYl3D,GAAE,GAAIhT,KAAKypE,cAAczpE,KAAKmqE,gBAAgBnqE,KAAKypE,aAAaW,KAAKp3D,KAAKhT,KAAK66D,oBAAoB76D,KAAKkqE,YAAYl3D,GAAE,KAAM22B,EAAEnoC,UAAU0oE,YAAY,SAASl3D,EAAE22B,GAAG,IAAIpmC,EAAE9D,EAAEO,KAAKA,KAAKqqE,wBAAwB1gC,IAAI,QAAQpmC,EAAEvD,KAAKqqE,8BAAyB,IAAS9mE,GAAGA,EAAEqN,SAAQ,SAAUoC,GAAG,MAAMA,GAAGA,EAAEpC,SAAQ,SAAUoC,GAAGA,EAAEo3D,KAAK3oB,SAASzuC,EAAEo3D,KAAK3oB,gBAAgBzhD,KAAKqqE,uBAAuB,IAAIC,IAAItqE,KAAKwpE,YAAYx2D,EAAE62B,GAAG,IAAI/qB,GAAE,EAAG9e,KAAKqpE,eAAez4D,SAAQ,SAAUrN,EAAE6P,GAAG,IAAIwvC,EAAEjZ,GAAG,QAAQiZ,EAAEnjD,EAAE4qE,8BAAyB,IAASznB,OAAE,EAAOA,EAAE13C,IAAIkI,MAAM0L,EAAErf,EAAE8qE,yBAAyBn3D,EAAEJ,EAAE8L,IAAIvb,EAAEogD,aAAa3wC,EAAE62B,GAAE,SAAUF,GAAG,IAAIpmC,EAAEq/C,EAAE,IAAInjD,EAAE8pE,YAAY,CAAC,IAAIv5D,EAAE,MAAM25B,OAAE,EAAOA,EAAEhmC,KAAI,SAAUqP,GAAG,MAAM,CAACo3D,KAAKp3D,MAAM,QAAQzP,EAAE9D,EAAE4qE,8BAAyB,IAAS9mE,GAAGA,EAAEoM,IAAIyD,EAAEpD,GAAG8O,EAAErf,EAAE8qE,yBAAyBn3D,EAAEJ,EAAE8L,IAAI,QAAQ8jC,EAAEnjD,EAAE4qE,8BAAyB,IAASznB,OAAE,EAAOA,EAAEt/C,QAAQ7D,EAAE4pE,eAAe9pE,QAAQE,EAAE+qE,yBAAyBx3D,EAAE62B,EAAEpqC,EAAE4qE,gCAAgC1gC,EAAEnoC,UAAUgpE,yBAAyB,SAASx3D,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,IAAIknE,IAAIhrE,EAAE,EAAEA,EAAEkqC,EAAErmC,KAAK7D,IAAI,CAAC,IAAIqf,EAAE6qB,EAAEz+B,IAAIzL,GAAG,GAAGqf,EAAE,IAAI,IAAI1L,EAAE,EAAEA,EAAE0L,EAAEvf,OAAO6T,IAAI,IAAI,IAAIwvC,EAAE9jC,EAAE1L,GAAGpD,EAAE4yC,EAAEwnB,KAAKtsC,MAAMzhB,MAAMwtB,EAAE72B,EAAE,EAAE4vC,EAAEwnB,KAAKtsC,MAAMzhB,MAAM0tB,EAAEnvB,EAAEgoC,EAAEwnB,KAAKtsC,MAAMphB,IAAImtB,EAAE72B,EAAEhT,KAAK2mE,eAAe9kB,KAAKe,EAAEwnB,KAAKtsC,MAAMphB,IAAIqtB,EAAEuY,EAAEtyC,EAAEsyC,GAAG1nC,EAAE0nC,IAAI,CAAC,GAAG/+C,EAAEmnE,IAAIpoB,GAAG,CAACxjC,EAAEhb,OAAOsP,IAAI,GAAG,MAAM7P,EAAEkO,IAAI6wC,MAAM3Y,EAAEnoC,UAAU+oE,yBAAyB,SAASv3D,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,KAAK,IAAIA,KAAKqqE,uBAAuB,OAAO9mE,EAAE,IAAI,IAAI6P,EAAEpT,KAAKqqE,uBAAuBn/D,IAAI8H,GAAG4vC,GAAE,EAAG5yC,EAAE,EAAEA,EAAEgD,EAAEhD,IAAIhQ,KAAKqqE,uBAAuBK,IAAI16D,KAAKhQ,KAAKqqE,uBAAuBn/D,IAAI8E,KAAK4yC,GAAE,GAAI,IAAIA,GAAGxvC,EAAE,CAAC,IAAIwH,EAAExH,EAAEu3D,MAAK,SAAU33D,GAAG,OAAO8L,EAAEqrD,gBAAgBn3D,EAAEo3D,KAAKzgC,MAAM/uB,IAAIrX,GAAE,EAAGvD,KAAK4qE,eAAehwD,IAAI,GAAG5a,KAAKqqE,uBAAuB/mE,OAAOtD,KAAKqpE,eAAe9pE,SAASgE,EAAE,IAAIyM,EAAE,EAAEA,EAAEhQ,KAAKqqE,uBAAuB/mE,KAAK0M,IAAI,CAAC,IAAIsyC,EAAE,QAAQ7iD,EAAEO,KAAKqqE,uBAAuBn/D,IAAI8E,UAAK,IAASvQ,OAAE,EAAOA,EAAEkrE,MAAK,SAAU33D,GAAG,OAAO8L,EAAEqrD,gBAAgBn3D,EAAEo3D,KAAKzgC,MAAM,GAAG2Y,EAAE,CAAC/+C,GAAE,EAAGvD,KAAK4qE,eAAetoB,GAAG,OAAO,OAAO/+C,GAAGomC,EAAEnoC,UAAUooE,SAAS,SAAS52D,GAAG,GAAGhT,KAAKmnE,UAAUnnE,KAAK0pE,eAAe1pE,KAAKypE,aAAa,CAAC,IAAI9/B,EAAE3pC,KAAK8pE,wBAAwB92D,EAAEhT,KAAKmnE,SAASnnE,KAAK0pE,eAAe//B,GAAG3pC,KAAKmqE,gBAAgBnqE,KAAKypE,aAAaW,KAAKzgC,IAAI3pC,KAAKypE,aAAaW,KAAK19D,SAASsG,EAAEhT,KAAKypE,aAAaW,KAAKnzC,QAAQ0S,EAAEnoC,UAAUq5D,kBAAkB,SAAS7nD,EAAE22B,GAAG3pC,KAAKmnE,UAAUnnE,KAAKypE,cAAczpE,KAAK6pE,mBAAmB72D,IAAI22B,GAAG3pC,KAAKypE,aAAaW,KAAKtsC,MAAMzhB,MAAMwtB,GAAG72B,GAAGhT,KAAKypE,aAAaW,KAAKtsC,MAAMphB,IAAImtB,GAAGF,KAAK3pC,KAAK6qE,WAAW7qE,KAAKmnE,SAASnnE,KAAKypE,aAAaW,KAAKpqE,KAAK6pE,iBAAiB7pE,KAAKypE,kBAAa,EAAOnnB,EAAEoa,aAAa18D,KAAKspE,yBAAyB3/B,EAAEnoC,UAAUopE,eAAe,SAAS53D,GAAG,IAAI22B,EAAE3pC,KAAK,GAAGA,KAAKmnE,UAAUnnE,KAAK6pE,iBAAiB7pE,KAAK0pE,cAAc,CAAC,IAAInmE,EAAEvD,KAAK8pE,wBAAwB9pE,KAAK6pE,gBAAgB7pE,KAAKmnE,SAASnnE,KAAK0pE,eAAenmE,GAAGvD,KAAKmqE,gBAAgBn3D,EAAEo3D,KAAK7mE,KAAKvD,KAAKypE,aAAaz2D,EAAEhT,KAAKypE,aAAa3/D,MAAM,CAACghE,YAAY,CAACrvC,eAAU,IAASzoB,EAAEo3D,KAAKU,aAAa93D,EAAEo3D,KAAKU,YAAYrvC,UAAUsvC,mBAAc,IAAS/3D,EAAEo3D,KAAKU,aAAa93D,EAAEo3D,KAAKU,YAAYC,eAAeC,WAAU,GAAIhrE,KAAKirE,WAAWjrE,KAAKmnE,SAASn0D,EAAEo3D,KAAKpqE,KAAK6pE,iBAAiB72D,EAAEo3D,KAAKU,YAAY,GAAG78D,OAAOi9D,iBAAiBl4D,EAAEo3D,KAAKU,YAAY,CAACC,cAAc,CAAC7/D,IAAI,WAAW,IAAI8H,EAAEzP,EAAE,OAAO,QAAQA,EAAE,QAAQyP,EAAE22B,EAAE8/B,oBAAe,IAASz2D,OAAE,EAAOA,EAAElJ,aAAQ,IAASvG,OAAE,EAAOA,EAAEunE,YAAYC,eAAep7D,IAAI,SAASqD,GAAG,IAAIzP,EAAE9D,GAAG,QAAQ8D,EAAEomC,EAAE8/B,oBAAe,IAASlmE,OAAE,EAAOA,EAAEuG,QAAQ6/B,EAAE8/B,aAAa3/D,MAAMghE,YAAYC,gBAAgB/3D,IAAI22B,EAAE8/B,aAAa3/D,MAAMghE,YAAYC,cAAc/3D,EAAE22B,EAAE8/B,aAAa3/D,MAAMkhE,YAAY,QAAQvrE,EAAEkqC,EAAEw9B,gBAAW,IAAS1nE,GAAGA,EAAEi3D,UAAUyU,OAAO,uBAAuBn4D,OAAOyoB,UAAU,CAACvwB,IAAI,WAAW,IAAI8H,EAAEzP,EAAE,OAAO,QAAQA,EAAE,QAAQyP,EAAE22B,EAAE8/B,oBAAe,IAASz2D,OAAE,EAAOA,EAAElJ,aAAQ,IAASvG,OAAE,EAAOA,EAAEunE,YAAYrvC,WAAW9rB,IAAI,SAASpM,GAAG,IAAI9D,EAAEqf,EAAE1L,GAAG,QAAQ3T,EAAEkqC,EAAE8/B,oBAAe,IAAShqE,OAAE,EAAOA,EAAEqK,SAAS,QAAQsJ,EAAE,QAAQ0L,EAAE6qB,EAAE8/B,oBAAe,IAAS3qD,OAAE,EAAOA,EAAEhV,aAAQ,IAASsJ,OAAE,EAAOA,EAAE03D,YAAYrvC,aAAal4B,IAAIomC,EAAE8/B,aAAa3/D,MAAMghE,YAAYrvC,UAAUl4B,EAAEomC,EAAE8/B,aAAa3/D,MAAMkhE,WAAWrhC,EAAEyhC,oBAAoBp4D,EAAEo3D,KAAK7mE,QAAQvD,KAAK8hD,gBAAgB9hD,KAAKspE,sBAAsBppE,KAAKF,KAAK8hD,eAAeupB,wBAAuB,SAAUr4D,GAAG,IAAIzP,EAAE,IAAIyP,EAAEqJ,MAAM,EAAErJ,EAAEqJ,MAAM,EAAEstB,EAAEg9B,eAAe3iB,OAAOwM,MAAM7mB,EAAEkxB,kBAAkBt3D,EAAEyP,EAAE0J,IAAI,EAAEitB,EAAEg9B,eAAe3iB,OAAOwM,cAAc7mB,EAAEnoC,UAAUypE,WAAW,SAASj4D,EAAE22B,EAAEpmC,GAAG,IAAI9D,GAAG,QAAQA,EAAEO,KAAKypE,oBAAe,IAAShqE,OAAE,EAAOA,EAAEqK,SAAS9J,KAAKypE,aAAa3/D,MAAMkhE,WAAU,EAAGhrE,KAAKypE,aAAa3/D,MAAMghE,YAAYrvC,WAAWz7B,KAAKorE,oBAAoBzhC,GAAE,GAAI3pC,KAAKypE,aAAa3/D,MAAMghE,YAAYC,eAAe/3D,EAAE0jD,UAAUjlD,IAAI,yBAAyBk4B,EAAE2hC,OAAO3hC,EAAE2hC,MAAM/nE,EAAEomC,EAAE1S,OAAO0S,EAAEnoC,UAAU4pE,oBAAoB,SAASp4D,EAAE22B,GAAG,IAAIpmC,EAAEyP,EAAE8qB,MAAMr+B,EAAEO,KAAK2mE,eAAe3iB,OAAOwM,MAAM1xC,EAAE9e,KAAKurE,0BAA0BhoE,EAAE8Y,MAAM0tB,EAAE,EAAExmC,EAAE8Y,MAAMwtB,EAAEpqC,EAAE,EAAE8D,EAAEmZ,IAAIqtB,EAAExmC,EAAEmZ,IAAImtB,EAAEpqC,EAAE,OAAE,IAASkqC,EAAE3pC,KAAKy6D,qBAAqBz6D,KAAK26D,sBAAsB/K,KAAK9wC,IAAI6qB,EAAEnoC,UAAUqpE,WAAW,SAAS73D,EAAE22B,EAAEpmC,GAAG,IAAI9D,GAAG,QAAQA,EAAEO,KAAKypE,oBAAe,IAAShqE,OAAE,EAAOA,EAAEqK,SAAS9J,KAAKypE,aAAa3/D,MAAMkhE,WAAU,EAAGhrE,KAAKypE,aAAa3/D,MAAMghE,YAAYrvC,WAAWz7B,KAAKorE,oBAAoBzhC,GAAE,GAAI3pC,KAAKypE,aAAa3/D,MAAMghE,YAAYC,eAAe/3D,EAAE0jD,UAAU/jD,OAAO,yBAAyBg3B,EAAE6hC,OAAO7hC,EAAE6hC,MAAMjoE,EAAEomC,EAAE1S,OAAO0S,EAAEnoC,UAAU2oE,gBAAgB,SAASn3D,EAAE22B,GAAG,IAAIpmC,EAAEyP,EAAE8qB,MAAMzhB,MAAMwtB,IAAI72B,EAAE8qB,MAAMphB,IAAImtB,EAAEpqC,EAAEuT,EAAE8qB,MAAMzhB,MAAMwtB,EAAEF,EAAEE,EAAE/qB,EAAE9L,EAAE8qB,MAAMphB,IAAImtB,EAAEF,EAAEE,EAAE,OAAOtmC,GAAGyP,EAAE8qB,MAAMzhB,MAAM0tB,GAAGJ,EAAEI,GAAG/2B,EAAE8qB,MAAMphB,IAAIqtB,GAAGJ,EAAEI,GAAGtqC,GAAGuT,EAAE8qB,MAAMphB,IAAIqtB,GAAGJ,EAAEI,GAAGjrB,GAAG9L,EAAE8qB,MAAMzhB,MAAM0tB,GAAGJ,EAAEI,GAAGtqC,GAAGqf,IAAI9L,EAAE8qB,MAAMzhB,MAAMwtB,GAAGF,EAAEE,GAAG72B,EAAE8qB,MAAMphB,IAAImtB,GAAGF,EAAEE,GAAGF,EAAEnoC,UAAUsoE,wBAAwB,SAAS92D,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAE8D,EAAEkoE,UAAUz4D,EAAE22B,EAAE3pC,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe1tC,MAAM,GAAGx5B,EAAE,MAAM,CAACsqC,EAAEtqC,EAAE,GAAGoqC,EAAEpqC,EAAE,GAAGO,KAAK2mE,eAAe3iB,OAAOwM,QAAQ7mB,EAAEnoC,UAAU+pE,0BAA0B,SAASv4D,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG,MAAM,CAACg8C,GAAG9nD,EAAE+nD,GAAGpxB,EAAEsxB,GAAG13D,EAAEy3D,GAAGv7D,EAAEoiD,KAAK7hD,KAAK2mE,eAAe9kB,KAAKyH,GAAGxqC,IAAI1L,EAAE,CAACwvC,EAAE,EAAE5yC,EAAE84D,iBAAiBn/B,GAAjkP,CAAqkP2Y,EAAEsO,YAAYjnB,EAAEy/B,WAAWrlB,GAAG2nB,KAAK,CAAC14D,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEg5B,cAAch5B,EAAEgiC,iBAAY,EAAOhiC,EAAEgiC,YAAY,iBAAiBhiC,EAAEg5B,cAAc,kEAAkEiJ,KAAK,SAAS54D,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEkiC,sBAAiB,EAAO,IAAI77D,EAAEzM,EAAE,KAAKqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAE,SAAS/wC,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,GAAG,IAAI5yC,EAAEgD,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOgQ,EAAEm3D,SAASx9B,EAAE35B,EAAE87D,eAAevoE,EAAEyM,EAAE22D,eAAelnE,EAAEuQ,EAAE05D,cAAc5qD,EAAE9O,EAAE+7D,kBAAkB34D,EAAEpD,EAAEg8D,gBAAgBppB,EAAE5yC,EAAEi8D,OAAO,GAAGj8D,EAAEk8D,iBAAgB,EAAGl8D,EAAEm8D,iBAAiB,MAAC,OAAO,GAAQn8D,EAAEo8D,wBAAwB,EAAEp8D,EAAE6sD,SAASjiD,EAAEsnD,yBAAyBlyD,EAAEm3D,SAAS,aAAY,SAAUn0D,GAAG,OAAOhD,EAAEq8D,aAAar5D,OAAOhD,EAAEs8D,mBAAmB,SAASt5D,GAAG,OAAOhD,EAAE25D,aAAa32D,IAAIhD,EAAEu8D,oBAAoB,SAASv5D,GAAG,OAAOhD,EAAEw8D,cAAcx5D,IAAIhD,EAAEy8D,eAAe,SAASz5D,GAAG,OAAOhD,EAAE45D,SAAS52D,IAAIhD,EAAE,OAAO8O,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUigD,QAAQ,WAAWzuC,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,MAAMA,KAAK0sE,eAAe/iC,EAAEnoC,UAAUiQ,IAAI,SAASuB,GAAGhT,KAAKisE,OAAO/rE,KAAK8S,GAAG,IAAIhT,KAAKisE,OAAO1sE,QAAQS,KAAK2sE,aAAahjC,EAAEnoC,UAAU8lE,SAAS,SAASt0D,EAAE22B,GAAG,GAAG,IAAI3pC,KAAKisE,OAAO1sE,OAAO,CAACyT,GAAG22B,IAAI32B,EAAE,EAAE22B,EAAE3pC,KAAK2mE,eAAe1tC,KAAK,GAAG,IAAI,IAAI11B,EAAE,EAAEA,EAAEvD,KAAKisE,OAAO1sE,OAAOgE,IAAI,CAAC,IAAI9D,EAAEO,KAAKisE,OAAO1oE,IAAI9D,EAAEs7D,GAAG/nD,GAAGvT,EAAEs7D,IAAIpxB,EAAE,GAAGlqC,EAAEu7D,GAAGhoD,GAAGvT,EAAEu7D,IAAIrxB,EAAE,GAAGlqC,EAAEs7D,GAAG/nD,GAAGvT,EAAEu7D,GAAGrxB,EAAE,KAAK3pC,KAAK4sE,cAAc5sE,KAAK4sE,eAAentE,IAAIO,KAAK4sE,aAAavE,gBAAgBroE,KAAK4sE,kBAAa,GAAQ5sE,KAAKisE,OAAOnoE,OAAOP,IAAI,IAAI,IAAIvD,KAAKisE,OAAO1sE,QAAQS,KAAK0sE,gBAAgB/iC,EAAEnoC,UAAUmrE,UAAU,WAAW3sE,KAAKksE,kBAAkBlsE,KAAKksE,iBAAgB,EAAGlsE,KAAKmnE,SAASr0D,iBAAiB,YAAY9S,KAAKssE,oBAAoBtsE,KAAKmnE,SAASr0D,iBAAiB,aAAa9S,KAAKusE,qBAAqBvsE,KAAKmnE,SAASr0D,iBAAiB,QAAQ9S,KAAKysE,kBAAkB9iC,EAAEnoC,UAAUkrE,YAAY,WAAW1sE,KAAKksE,kBAAkBlsE,KAAKksE,iBAAgB,EAAGlsE,KAAKmnE,SAAS3hD,oBAAoB,YAAYxlB,KAAKssE,oBAAoBtsE,KAAKmnE,SAAS3hD,oBAAoB,aAAaxlB,KAAKusE,qBAAqBvsE,KAAKmnE,SAAS3hD,oBAAoB,QAAQxlB,KAAKysE,kBAAkB9iC,EAAEnoC,UAAUmoE,aAAa,SAAS32D,GAAGhT,KAAKmsE,iBAAiB,KAAKn5D,EAAE65D,OAAO7sE,KAAKmsE,iBAAiB,KAAKn5D,EAAE85D,QAAQ9sE,KAAKiqE,SAASj3D,GAAGhT,KAAKmsE,iBAAiB,CAACn5D,EAAE65D,MAAM75D,EAAE85D,SAASnjC,EAAEnoC,UAAUyoE,SAAS,SAASj3D,GAAG,IAAI22B,EAAE3pC,KAAKuD,EAAEvD,KAAK+sE,iBAAiB/5D,GAAGzP,IAAIvD,KAAK4sE,eAAe5sE,KAAK4sE,eAAe5sE,KAAK4sE,aAAavE,gBAAgBroE,KAAK4sE,kBAAa,EAAO5sE,KAAKgtE,iBAAiBllE,aAAa9H,KAAKgtE,kBAAkBzpE,IAAIvD,KAAK4sE,aAAarpE,EAAEA,EAAE2lE,eAAe3lE,EAAE2lE,cAAcl2D,GAAGhT,KAAKgtE,gBAAgBzsE,OAAOe,YAAW,WAAY,OAAOqoC,EAAEsjC,WAAWj6D,KAAKhT,KAAKgsE,gBAAgBvtD,QAAQyuD,6BAA6BvjC,EAAEnoC,UAAUyrE,WAAW,SAASj6D,GAAGhT,KAAKgtE,qBAAgB,EAAO,IAAIrjC,EAAE3pC,KAAK+sE,iBAAiB/5D,GAAG,MAAM22B,GAAGA,EAAEw+B,gBAAgBn1D,IAAI22B,EAAEnoC,UAAU6qE,aAAa,SAASr5D,GAAG,GAAGhT,KAAKosE,wBAAwBpsE,KAAKmtE,sBAAsBntE,KAAKksE,gBAAgB,CAAC,IAAIviC,EAAE3pC,KAAK+sE,iBAAiB/5D,IAAI,MAAM22B,OAAE,EAAOA,EAAE2+B,iBAAiBt1D,MAAMA,EAAEoT,iBAAiBpT,EAAEuvD,8BAA8B54B,EAAEnoC,UAAUgrE,cAAc,SAASx5D,GAAGhT,KAAK4sE,eAAe5sE,KAAK4sE,aAAavE,gBAAgBroE,KAAK4sE,kBAAa,EAAO5sE,KAAKgtE,iBAAiBllE,aAAa9H,KAAKgtE,mBAAmBrjC,EAAEnoC,UAAUooE,SAAS,SAAS52D,GAAG,IAAI22B,EAAE3pC,KAAK+sE,iBAAiB/5D,GAAGzP,EAAEvD,KAAKmtE,sBAAsBxjC,GAAGpmC,IAAIvD,KAAKosE,0BAA0BziC,EAAEs/B,cAAcj2D,GAAGA,EAAEoT,iBAAiBpT,EAAEuvD,6BAA6B54B,EAAEnoC,UAAU2rE,oBAAoB,WAAW,IAAIn6D,EAAEhT,KAAK+rE,kBAAkBlI,cAAc,OAAO7wD,EAAEA,EAAEzT,OAAO,GAAGoqC,EAAEnoC,UAAUurE,iBAAiB,SAAS/5D,GAAG,IAAI22B,EAAE3pC,KAAK0pE,cAAc+B,UAAUz4D,EAAEhT,KAAK8rE,eAAe9rE,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe1tC,MAAM,GAAG0Q,EAAE,IAAI,IAAIpmC,EAAEomC,EAAE,GAAGlqC,EAAEkqC,EAAE,GAAG7qB,EAAE,EAAEA,EAAE9e,KAAKisE,OAAO1sE,OAAOuf,IAAI,CAAC,IAAI1L,EAAEpT,KAAKisE,OAAOntD,GAAG,GAAG1L,EAAE2nD,KAAK3nD,EAAE4nD,IAAI,GAAGv7D,IAAI2T,EAAE2nD,IAAIx3D,GAAG6P,EAAE0nD,IAAIv3D,EAAE6P,EAAE6nD,GAAG,OAAO7nD,OAAO,GAAG3T,IAAI2T,EAAE2nD,IAAIx3D,GAAG6P,EAAE0nD,IAAIr7D,IAAI2T,EAAE4nD,IAAIz3D,EAAE6P,EAAE6nD,IAAIx7D,EAAE2T,EAAE2nD,IAAIt7D,EAAE2T,EAAE4nD,GAAG,OAAO5nD,IAAIA,EAAE,CAACwvC,EAAE,EAAEv+C,EAAEykE,gBAAgBlmB,EAAE,EAAEN,EAAE8qB,eAAexqB,EAAE,EAAEN,EAAE+qB,mBAAmBzqB,EAAE,EAAEv+C,EAAEipE,kBAAkB3jC,GAA3gH,CAA+gH35B,EAAE4gD,YAAYjnB,EAAEkiC,iBAAiB9nB,GAAGwpB,KAAK,CAACv6D,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEm3B,qBAAgB,EAAO,IAAIv9D,EAAE,WAAW,SAASyP,EAAEA,GAAGhT,KAAKy5D,gBAAgBzmD,EAAE,OAAOA,EAAExR,UAAUigD,QAAQ,WAAWzhD,KAAK85D,kBAAkBv5D,OAAOw5D,qBAAqB/5D,KAAK85D,iBAAiB95D,KAAK85D,qBAAgB,IAAS9mD,EAAExR,UAAUqhE,QAAQ,SAAS7vD,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,KAAKA,KAAKwtE,UAAUjqE,EAAEyP,OAAE,IAASA,EAAEA,EAAE,EAAE22B,OAAE,IAASA,EAAEA,EAAE3pC,KAAKwtE,UAAU,EAAExtE,KAAKytE,eAAU,IAASztE,KAAKytE,UAAU5qE,KAAKC,IAAI9C,KAAKytE,UAAUz6D,GAAGA,EAAEhT,KAAK0tE,aAAQ,IAAS1tE,KAAK0tE,QAAQ7qE,KAAKuE,IAAIpH,KAAK0tE,QAAQ/jC,GAAGA,EAAE3pC,KAAK85D,kBAAkB95D,KAAK85D,gBAAgBv5D,OAAO25D,uBAAsB,WAAY,OAAOz6D,EAAEkuE,qBAAqB36D,EAAExR,UAAUmsE,cAAc,WAAW,QAAG,IAAS3tE,KAAKytE,gBAAW,IAASztE,KAAK0tE,cAAS,IAAS1tE,KAAKwtE,UAAU,CAAC,IAAIx6D,EAAEnQ,KAAKuE,IAAIpH,KAAKytE,UAAU,GAAG9jC,EAAE9mC,KAAKC,IAAI9C,KAAK0tE,QAAQ1tE,KAAKwtE,UAAU,GAAGxtE,KAAKytE,eAAU,EAAOztE,KAAK0tE,aAAQ,EAAO1tE,KAAK85D,qBAAgB,EAAO95D,KAAKy5D,gBAAgBzmD,EAAE22B,KAAK32B,EAAj0B,GAAs0B22B,EAAEm3B,gBAAgBv9D,GAAGqqE,KAAK,SAAS56D,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEq4B,sBAAiB,EAAO,IAAI5uD,EAAE,SAASJ,GAAG,SAAS22B,IAAI,IAAIA,EAAE,OAAO32B,GAAGA,EAAElT,MAAME,KAAKN,YAAYM,KAAK,OAAO2pC,EAAEkkC,yBAAyBttE,OAAOkuD,iBAAiB9kB,EAAE,OAAO7qB,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUygE,YAAY,SAASjvD,GAAG,IAAI22B,EAAE3pC,KAAKA,KAAK8tE,WAAW9tE,KAAK+tE,gBAAgB/tE,KAAK8tE,UAAU96D,EAAEhT,KAAKguE,eAAe,WAAWrkC,EAAEmkC,YAAYnkC,EAAEmkC,UAAUvtE,OAAOkuD,iBAAiB9kB,EAAEkkC,0BAA0BlkC,EAAEskC,eAAejuE,KAAKiuE,cAActkC,EAAEnoC,UAAUigD,QAAQ,WAAWzuC,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,MAAMA,KAAK+tE,iBAAiBpkC,EAAEnoC,UAAUysE,WAAW,WAAW,IAAIj7D,EAAEhT,KAAKguE,iBAAiB,QAAQh7D,EAAEhT,KAAKkuE,iCAA4B,IAASl7D,GAAGA,EAAEm7D,eAAenuE,KAAKguE,gBAAgBhuE,KAAK6tE,yBAAyBttE,OAAOkuD,iBAAiBzuD,KAAKkuE,0BAA0B3tE,OAAO6tE,WAAW,2BAA2B7tE,OAAOkuD,iBAAiB,SAASzuD,KAAKkuE,0BAA0B97D,YAAYpS,KAAKguE,kBAAkBrkC,EAAEnoC,UAAUusE,cAAc,WAAW/tE,KAAKkuE,2BAA2BluE,KAAK8tE,WAAW9tE,KAAKguE,iBAAiBhuE,KAAKkuE,0BAA0BC,eAAenuE,KAAKguE,gBAAgBhuE,KAAKkuE,+BAA0B,EAAOluE,KAAK8tE,eAAU,EAAO9tE,KAAKguE,oBAAe,IAASrkC,EAAlmC,CAAqmCpmC,EAAE,KAAKqtD,YAAYjnB,EAAEq4B,iBAAiB5uD,GAAGi7D,KAAK,SAASr7D,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEe,cAAS,EAAO,IAAIt3B,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE5X,EAAE,MAAM+kB,EAAE/kB,EAAE,MAAMX,EAAEW,EAAE,KAAKC,EAAED,EAAE,MAAMsmC,EAAEtmC,EAAE,MAAME,EAAEF,EAAE,MAAMwuB,EAAExuB,EAAE,MAAM8C,EAAE9C,EAAE,MAAMsvB,EAAEtvB,EAAE,MAAM+uC,EAAE/uC,EAAE,MAAM4tB,EAAE5tB,EAAE,MAAM+uB,EAAE/uB,EAAE,MAAM6S,EAAE7S,EAAE,KAAKuuB,EAAEvuB,EAAE,MAAM6tB,EAAE7tB,EAAE,MAAMwmC,EAAExmC,EAAE,MAAM8tB,EAAE9tB,EAAE,MAAMkuB,EAAEluB,EAAE,MAAMyuB,EAAEzuB,EAAE,MAAMmuB,EAAE,oBAAoBnxB,OAAOA,OAAO0d,SAAS,KAAKgV,EAAE,SAASjgB,GAAG,SAAS22B,EAAEA,QAAG,IAASA,IAAIA,EAAE,IAAI,IAAIpmC,EAAEyP,EAAEwU,KAAKxnB,KAAK2pC,IAAI3pC,KAAK,OAAOuD,EAAEg1C,QAAQkM,EAAElhD,EAAE+qE,iBAAgB,EAAG/qE,EAAEgrE,cAAc,IAAIloE,EAAE0nD,aAAaxqD,EAAEq+D,OAAO,IAAIv7D,EAAE0nD,aAAaxqD,EAAEirE,UAAU,IAAInoE,EAAE0nD,aAAaxqD,EAAEkrE,mBAAmB,IAAIpoE,EAAE0nD,aAAaxqD,EAAEmrE,eAAe,IAAIroE,EAAE0nD,aAAaxqD,EAAEorE,QAAQ,IAAItoE,EAAE0nD,aAAaxqD,EAAEqrE,SAAS,IAAIvoE,EAAE0nD,aAAaxqD,EAAEsrE,QAAQ,IAAIxoE,EAAE0nD,aAAaxqD,EAAEurE,mBAAmB,IAAIzoE,EAAE0nD,aAAaxqD,EAAEwrE,kBAAkB,IAAI1oE,EAAE0nD,aAAaxqD,EAAEyrE,SAASzrE,EAAEg3D,UAAUh3D,EAAE0rE,sBAAsBC,eAAenrB,EAAE2iB,WAAWnjE,EAAEq3D,WAAWr3D,EAAEs5D,SAASt5D,EAAE0rE,sBAAsBC,eAAe99C,EAAEg4C,aAAa7lE,EAAEs5D,SAASt5D,EAAE4rE,cAAcC,eAAc,WAAY,OAAO7rE,EAAE8rE,WAAW9rE,EAAEs5D,SAASt5D,EAAE4rE,cAAcG,sBAAqB,SAAUt8D,EAAE22B,GAAG,OAAOpmC,EAAEs/D,QAAQ7vD,EAAE22B,OAAOpmC,EAAEs5D,SAASt5D,EAAE4rE,cAAcI,gBAAe,WAAY,OAAOhsE,EAAEiN,YAAYjN,EAAEs5D,SAASt5D,EAAE4rE,cAAcK,+BAA8B,SAAUx8D,GAAG,OAAOzP,EAAEksE,sBAAsBz8D,OAAOzP,EAAEs5D,SAASt5D,EAAE4rE,cAAcO,mBAAkB,SAAU18D,GAAG,OAAOzP,EAAEosE,iBAAiB38D,OAAOzP,EAAEs5D,SAASx2D,EAAE+1D,aAAa74D,EAAE4rE,cAActf,aAAatsD,EAAEgrE,gBAAgBhrE,EAAEs5D,SAASx2D,EAAE+1D,aAAa74D,EAAE4rE,cAAcS,cAAcrsE,EAAEmrE,iBAAiBnrE,EAAEs5D,SAASx2D,EAAE+1D,aAAa74D,EAAE4rE,cAAc7N,WAAW/9D,EAAEurE,qBAAqBvrE,EAAEs5D,SAASx2D,EAAE+1D,aAAa74D,EAAE4rE,cAAc1N,UAAUl+D,EAAEwrE,oBAAoBxrE,EAAEs5D,SAASt5D,EAAEojE,eAAenf,UAAS,SAAUx0C,GAAG,OAAOzP,EAAEssE,aAAa78D,EAAE6uC,KAAK7uC,EAAEimB,UAAU11B,EAAE,OAAOub,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAK8vE,eAAerxD,SAAS8jC,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,eAAe,CAAC0J,IAAI,WAAW,OAAOlL,KAAKuuE,cAAcx7B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,QAAQ,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hE,OAAO7uB,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAKwuE,UAAUz7B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,oBAAoB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKyuE,mBAAmB17B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK0uE,eAAe37B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2uE,QAAQ57B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4uE,SAAS77B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAK6uE,QAAQ97B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,aAAa,CAAC0J,IAAI,WAAW,OAAOlL,KAAK8uE,mBAAmB/7B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAK+uE,kBAAkBh8B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUmuE,iBAAiB,SAAS38D,GAAG,IAAI22B,EAAEpmC,EAAE,GAAGvD,KAAK8sD,cAAc,CAAC,IAAI,IAAIrtD,EAAE,EAAEqf,EAAE9L,EAAEhR,OAAOvC,EAAEqf,EAAEvf,OAAOE,IAAI,CAAC,IAAI2T,EAAE0L,EAAErf,GAAGmjD,EAAEnxB,EAAEnvB,KAAKm5D,QAAQroD,EAAE8xD,IAAI9xD,EAAE+xD,MAAM/xD,EAAEiyD,MAAMrlE,KAAK8sD,cAAc9qD,OAAOgoD,KAAK52C,EAAEwsC,YAAYgD,EAAE,QAAQjZ,EAAE3pC,KAAK8hD,sBAAiB,IAASnY,GAAGA,EAAEugB,UAAUlqD,KAAK8sD,cAAc9qD,QAAQ,QAAQuB,EAAEvD,KAAKoiD,gBAAW,IAAS7+C,GAAGA,EAAEwsE,cAAc/vE,KAAK8sD,cAAc9qD,UAAU2nC,EAAEnoC,UAAUigD,QAAQ,WAAW,IAAI9X,EAAEpmC,EAAE9D,EAAEO,KAAK48D,cAAc5pD,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,MAAM,QAAQ2pC,EAAE3pC,KAAK8hD,sBAAiB,IAASnY,GAAGA,EAAE8X,UAAUzhD,KAAKgwE,4BAAuB,EAAOhwE,KAAKiwE,MAAM,aAAa,QAAQxwE,EAAE,QAAQ8D,EAAEvD,KAAKslB,eAAU,IAAS/hB,OAAE,EAAOA,EAAE4e,kBAAa,IAAS1iB,GAAGA,EAAEmQ,YAAY5P,KAAKslB,WAAWqkB,EAAEnoC,UAAUwtE,OAAO,WAAWh8D,EAAExR,UAAUwtE,OAAOxnD,KAAKxnB,MAAMA,KAAKgwE,4BAAuB,GAAQ/hE,OAAOqzC,eAAe3X,EAAEnoC,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKkwE,QAAQjsB,QAAQ1B,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUyd,MAAM,WAAWjf,KAAKq6D,UAAUr6D,KAAKq6D,SAASp7C,MAAM,CAACkxD,eAAc,KAAMxmC,EAAEnoC,UAAU4uE,eAAe,SAASzmC,GAAG,IAAIpmC,EAAE9D,EAAEqf,EAAE1L,EAAE,OAAOJ,EAAExR,UAAU4uE,eAAe5oD,KAAKxnB,KAAK2pC,GAAGA,GAAG,IAAI,aAAa,IAAI,WAAW,QAAQpmC,EAAEvD,KAAK8hD,sBAAiB,IAASv+C,GAAGA,EAAEiP,QAAQ,QAAQ/S,EAAEO,KAAKswD,wBAAmB,IAAS7wD,GAAGA,EAAE4wE,UAAU,MAAM,IAAI,cAAc,IAAI,cAAcrwE,KAAK6iE,QAAQ7iE,KAAKgkD,OAAOna,EAAE7pC,KAAKgkD,OAAOna,GAAG,MAAM,IAAI,6BAA6B,IAAI,gBAAgB,IAAI,aAAa,IAAI,aAAa,IAAI,iBAAiB,IAAI,uBAAuB7pC,KAAK8hD,iBAAiB9hD,KAAK8hD,eAAetvC,QAAQxS,KAAK8hD,eAAe0F,SAASxnD,KAAK6hD,KAAK7hD,KAAKi5B,MAAMj5B,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,IAAI,MAAM,IAAI,eAAej5B,KAAK8hD,iBAAiB9hD,KAAK8hD,eAAemL,YAAYjtD,KAAKktD,mBAAmBltD,KAAK8hD,eAAe0F,SAASxnD,KAAK6hD,KAAK7hD,KAAKi5B,OAAO,MAAM,IAAI,aAAa,QAAQna,EAAE9e,KAAKoiD,gBAAW,IAAStjC,GAAGA,EAAEwxD,iBAAiB,MAAM,IAAI,mBAAmBtwE,KAAK8vE,eAAerxD,QAAQ8xD,kBAAkBvwE,KAAKwwE,uBAAuBxwE,KAAK8hD,iBAAiB9hD,KAAKwwE,sBAAsB,IAAI3mC,EAAEo2B,qBAAqBjgE,KAAKA,KAAK8hD,kBAAkB,QAAQ1uC,EAAEpT,KAAKwwE,6BAAwB,IAASp9D,GAAGA,EAAEquC,UAAUzhD,KAAKwwE,2BAAsB,GAAQ,MAAM,IAAI,eAAexwE,KAAKkwE,QAAQO,gBAAgB,MAAM,IAAI,QAAQzwE,KAAK0wE,UAAU1wE,KAAK8vE,eAAerxD,QAAQkyD,SAAShnC,EAAEnoC,UAAUovE,iBAAiB,SAAS59D,GAAGhT,KAAKi5D,aAAaiK,gBAAgB2N,WAAW7wE,KAAKi5D,aAAamK,iBAAiBxoD,EAAEk2D,GAAGxhD,IAAI,MAAMtvB,KAAK+wE,kBAAkB/9D,GAAGhT,KAAKslB,QAAQoxC,UAAUjlD,IAAI,SAASzR,KAAKgxE,cAAchxE,KAAK4uE,SAAShf,QAAQjmB,EAAEnoC,UAAUyvE,KAAK,WAAW,IAAIj+D,EAAE,OAAO,QAAQA,EAAEhT,KAAKq6D,gBAAW,IAASrnD,OAAE,EAAOA,EAAEi+D,QAAQtnC,EAAEnoC,UAAU0vE,gBAAgB,WAAWlxE,KAAKq6D,SAAS33D,MAAM,GAAG1C,KAAK6iE,QAAQ7iE,KAAKgkD,OAAOna,EAAE7pC,KAAKgkD,OAAOna,GAAG7pC,KAAKi5D,aAAaiK,gBAAgB2N,WAAW7wE,KAAKi5D,aAAamK,iBAAiBxoD,EAAEk2D,GAAGxhD,IAAI,MAAMtvB,KAAKslB,QAAQoxC,UAAU/jD,OAAO,SAAS3S,KAAK6uE,QAAQjf,QAAQjmB,EAAEnoC,UAAU2vE,cAAc,WAAW,GAAGnxE,KAAKq6D,UAAUr6D,KAAKgkD,OAAOotB,qBAAqBpxE,KAAKqxE,mBAAmBC,aAAatxE,KAAK8hD,eAAe,CAAC,IAAI9uC,EAAEhT,KAAKgkD,OAAOutB,MAAMvxE,KAAKgkD,OAAOna,EAAEF,EAAE3pC,KAAKgkD,OAAOhL,MAAM9tC,IAAI8H,GAAG,GAAG22B,EAAE,CAAC,IAAIpmC,EAAEV,KAAKC,IAAI9C,KAAKgkD,OAAOja,EAAE/pC,KAAK6hD,KAAK,GAAGpiD,EAAEO,KAAK8hD,eAAeC,WAAWE,iBAAiBnjC,EAAE6qB,EAAEjR,SAASn1B,GAAG6P,EAAEpT,KAAK8hD,eAAeC,WAAWC,gBAAgBljC,EAAE8jC,EAAE5iD,KAAKgkD,OAAOna,EAAE7pC,KAAK8hD,eAAeC,WAAWE,iBAAiBjyC,EAAEzM,EAAEvD,KAAK8hD,eAAeC,WAAWC,gBAAgBhiD,KAAKq6D,SAAS55C,MAAMwmB,KAAKj3B,EAAE,KAAKhQ,KAAKq6D,SAAS55C,MAAM0mB,IAAIyb,EAAE,KAAK5iD,KAAKq6D,SAAS55C,MAAMtE,MAAM/I,EAAE,KAAKpT,KAAKq6D,SAAS55C,MAAM1C,OAAOte,EAAE,KAAKO,KAAKq6D,SAAS55C,MAAM+wD,WAAW/xE,EAAE,KAAKO,KAAKq6D,SAAS55C,MAAMk2C,OAAO,QAAQhtB,EAAEnoC,UAAUiwE,YAAY,WAAW,IAAIz+D,EAAEhT,KAAKA,KAAK0xE,YAAY1xE,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKslB,QAAQ,QAAO,SAAUqkB,GAAG32B,EAAEg5C,gBAAgBh8C,EAAEwzD,YAAY75B,EAAE32B,EAAE+4D,uBAAuB,IAAIpiC,EAAE,SAASA,GAAG,OAAO35B,EAAEuzD,iBAAiB55B,EAAE32B,EAAEqnD,SAASrnD,EAAEimD,eAAej5D,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,QAAQ1wB,IAAI3pC,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKslB,QAAQ,QAAQqkB,IAAI8a,EAAEktB,UAAU3xE,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKslB,QAAQ,aAAY,SAAUqkB,GAAG,IAAIA,EAAE4F,QAAQv/B,EAAEqzD,kBAAkB15B,EAAE32B,EAAEqnD,SAASrnD,EAAEk7C,cAAcl7C,EAAE+4D,kBAAkB/4D,EAAEyL,QAAQmzD,2BAA2B5xE,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKslB,QAAQ,eAAc,SAAUqkB,GAAG35B,EAAEqzD,kBAAkB15B,EAAE32B,EAAEqnD,SAASrnD,EAAEk7C,cAAcl7C,EAAE+4D,kBAAkB/4D,EAAEyL,QAAQmzD,2BAA2BntB,EAAEotB,SAAS7xE,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKslB,QAAQ,YAAW,SAAUqkB,GAAG,IAAIA,EAAE4F,QAAQv/B,EAAEszD,6BAA6B35B,EAAE32B,EAAEqnD,SAASrnD,EAAEk7C,oBAAoBvkB,EAAEnoC,UAAUkwE,UAAU,WAAW,IAAI1+D,EAAEhT,KAAKA,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,SAAQ,SAAU1wB,GAAG,OAAO32B,EAAE8+D,OAAOnoC,MAAK,IAAK3pC,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,WAAU,SAAU1wB,GAAG,OAAO32B,EAAE++D,SAASpoC,MAAK,IAAK3pC,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,YAAW,SAAU1wB,GAAG,OAAO32B,EAAEg/D,UAAUroC,MAAK,IAAK3pC,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,oBAAmB,WAAY,OAAOrnD,EAAEq+D,mBAAmBY,uBAAuBjyE,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,qBAAoB,SAAU1wB,GAAG,OAAO32B,EAAEq+D,mBAAmBa,kBAAkBvoC,OAAO3pC,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,kBAAiB,WAAY,OAAOrnD,EAAEq+D,mBAAmBc,qBAAqBnyE,KAAK68D,SAAS78D,KAAKohE,UAAS,WAAY,OAAOpuD,EAAEq+D,mBAAmBe,gCAAgCpyE,KAAK68D,SAAS78D,KAAKohE,UAAS,SAAUz3B,GAAG,OAAO32B,EAAEq/D,oBAAoB1oC,EAAEttB,MAAMstB,EAAEjtB,UAAUitB,EAAEnoC,UAAUqJ,KAAK,SAASmI,GAAG,IAAI22B,EAAE3pC,KAAK,IAAIgT,EAAE,MAAM,IAAIhU,MAAM,uCAAuCgU,EAAEs/D,aAAatyE,KAAK4mE,YAAYmB,MAAM,2EAA2E/nE,KAAKuyE,UAAUv/D,EAAEqnB,cAAcr6B,KAAKslB,QAAQtlB,KAAKuyE,UAAU7vD,cAAc,OAAO1iB,KAAKslB,QAAQktD,IAAI,MAAMxyE,KAAKslB,QAAQoxC,UAAUjlD,IAAI,YAAYzR,KAAKslB,QAAQoxC,UAAUjlD,IAAI,SAASzR,KAAKslB,QAAQnZ,aAAa,WAAW,KAAKnM,KAAKslB,QAAQnZ,aAAa,OAAO,YAAY6G,EAAE8P,YAAY9iB,KAAKslB,SAAS,IAAI/hB,EAAEmuB,EAAE+gD,yBAAyBzyE,KAAK0yE,iBAAiBhhD,EAAEhP,cAAc,OAAO1iB,KAAK0yE,iBAAiBhc,UAAUjlD,IAAI,kBAAkBlO,EAAEuf,YAAY9iB,KAAK0yE,kBAAkB1yE,KAAK2yE,oBAAoBjhD,EAAEhP,cAAc,OAAO1iB,KAAK2yE,oBAAoBjc,UAAUjlD,IAAI,qBAAqBzR,KAAK0yE,iBAAiB5vD,YAAY9iB,KAAK2yE,qBAAqB3yE,KAAKkuD,cAAcx8B,EAAEhP,cAAc,OAAO1iB,KAAKkuD,cAAcwI,UAAUjlD,IAAI,gBAAgBzR,KAAK4yE,iBAAiBlhD,EAAEhP,cAAc,OAAO1iB,KAAK4yE,iBAAiBlc,UAAUjlD,IAAI,iBAAiBzR,KAAKkuD,cAAcprC,YAAY9iB,KAAK4yE,kBAAkBrvE,EAAEuf,YAAY9iB,KAAKkuD,eAAeluD,KAAKq6D,SAAS3oC,EAAEhP,cAAc,YAAY1iB,KAAKq6D,SAAS3D,UAAUjlD,IAAI,yBAAyBzR,KAAKq6D,SAASluD,aAAa,aAAamc,EAAEqjD,aAAa3rE,KAAKq6D,SAASluD,aAAa,iBAAiB,SAASnM,KAAKq6D,SAASluD,aAAa,cAAc,OAAOnM,KAAKq6D,SAASluD,aAAa,iBAAiB,OAAOnM,KAAKq6D,SAASluD,aAAa,aAAa,SAASnM,KAAKq6D,SAASoI,SAAS,EAAEziE,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,SAAQ,SAAUrnD,GAAG,OAAO22B,EAAEinC,iBAAiB59D,OAAOhT,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKq6D,SAAS,QAAO,WAAY,OAAO1wB,EAAEunC,sBAAsBlxE,KAAK4yE,iBAAiB9vD,YAAY9iB,KAAKq6D,UAAU,IAAI56D,EAAEO,KAAKivE,sBAAsBC,eAAenlC,EAAE8oC,mBAAmB7yE,KAAKq6D,UAAUr6D,KAAKivE,sBAAsB6D,WAAWxgD,EAAEygD,oBAAoBtzE,GAAGO,KAAKswD,iBAAiBtwD,KAAKivE,sBAAsBC,eAAe94D,EAAE48D,gBAAgBhzE,KAAKuyE,UAAUvyE,KAAK4yE,kBAAkB5yE,KAAKivE,sBAAsB6D,WAAWxgD,EAAE2gD,iBAAiBjzE,KAAKswD,kBAAkBtwD,KAAKkzE,OAAOlzE,KAAKye,QAAQkyD,OAAO3wE,KAAKkzE,OAAOlzE,KAAK8sD,cAAc,IAAIxa,EAAEkyB,aAAa9yC,EAAE1xB,KAAKye,QAAQm0C,mBAAmB5yD,KAAK68D,SAAS78D,KAAK8vE,eAAeqD,gBAAe,SAAUngE,GAAG,OAAO22B,EAAEmjB,cAAcgY,gBAAgB9xD,OAAOhT,KAAK8sD,cAAciY,SAAS/kE,KAAKkzE,QAAQlzE,KAAKozE,wBAAwBpzE,KAAKivE,sBAAsBC,eAAel9C,EAAEqhD,wBAAwBrzE,KAAKivE,sBAAsB6D,WAAWxgD,EAAEghD,wBAAwBtzE,KAAKozE,yBAAyB,IAAIt0D,EAAE9e,KAAKktD,kBAAkBltD,KAAK8hD,eAAe9hD,KAAK68D,SAAS78D,KAAKivE,sBAAsBC,eAAe/9C,EAAEoiD,cAAcz0D,EAAE9e,KAAKi5B,KAAKj5B,KAAKkuD,gBAAgBluD,KAAKivE,sBAAsB6D,WAAWxgD,EAAEkhD,eAAexzE,KAAK8hD,gBAAgB9hD,KAAK68D,SAAS78D,KAAK8hD,eAAeupB,wBAAuB,SAAUr4D,GAAG,OAAO22B,EAAE6kC,UAAU5e,KAAK58C,OAAOhT,KAAKwnD,UAAS,SAAUx0C,GAAG,OAAO22B,EAAEmY,eAAe1iC,OAAOpM,EAAE6uC,KAAK7uC,EAAEimB,SAASj5B,KAAKyzE,iBAAiB/hD,EAAEhP,cAAc,OAAO1iB,KAAKyzE,iBAAiB/c,UAAUjlD,IAAI,oBAAoBzR,KAAKqxE,mBAAmBrxE,KAAKivE,sBAAsBC,eAAe97D,EAAEsgE,kBAAkB1zE,KAAKq6D,SAASr6D,KAAKyzE,kBAAkBzzE,KAAK4yE,iBAAiB9vD,YAAY9iB,KAAKyzE,kBAAkBzzE,KAAKslB,QAAQxC,YAAYvf,GAAGvD,KAAK2zE,cAAc3zE,KAAKivE,sBAAsBC,eAAetsE,EAAEgxE,cAAc5zE,KAAKivE,sBAAsB6D,WAAWxgD,EAAEuhD,cAAc7zE,KAAK2zE,eAAe3zE,KAAK0pE,cAAc1pE,KAAKivE,sBAAsBC,eAAep9C,EAAEgiD,cAAc9zE,KAAKivE,sBAAsB6D,WAAWxgD,EAAE86C,cAAcptE,KAAK0pE,eAAe1pE,KAAKoiD,SAASpiD,KAAKivE,sBAAsBC,eAAetsB,EAAEmxB,UAAS,SAAU/gE,GAAG,OAAO22B,EAAE24B,YAAYtvD,GAAE,EAAG,KAAKhT,KAAK0yE,iBAAiB1yE,KAAK2yE,qBAAqB3yE,KAAKoiD,SAAS2tB,cAAc/vE,KAAK8sD,cAAc9qD,QAAQhC,KAAK68D,SAAS78D,KAAKmvE,cAAc6E,wBAAuB,WAAY,OAAOrqC,EAAEyY,SAASkuB,qBAAqBtwE,KAAK68D,SAAS78D,KAAKoiD,UAAUpiD,KAAK68D,SAAS78D,KAAK6vD,cAAa,WAAYlmB,EAAEmY,eAAe+N,eAAelmB,EAAEwnC,oBAAoBnxE,KAAK68D,SAAS78D,KAAKwnD,UAAS,WAAY,OAAO7d,EAAEmY,eAAe0F,SAAS7d,EAAEkY,KAAKlY,EAAE1Q,UAAUj5B,KAAK68D,SAAS78D,KAAKwvD,QAAO,WAAY,OAAO7lB,EAAEmY,eAAe0N,aAAaxvD,KAAK68D,SAAS78D,KAAKyvD,SAAQ,WAAY,OAAO9lB,EAAEmY,eAAe2N,cAAczvD,KAAK68D,SAAS78D,KAAK8hD,eAAeggB,oBAAmB,WAAY,OAAOn4B,EAAEyY,SAASkuB,qBAAqBtwE,KAAK+rE,kBAAkB/rE,KAAK68D,SAAS78D,KAAKivE,sBAAsBC,eAAe/tE,EAAE8yE,iBAAiBj0E,KAAKslB,QAAQtlB,KAAKkuD,cAAcluD,KAAK46D,aAAa56D,KAAKivE,sBAAsB6D,WAAWxgD,EAAE+6C,kBAAkBrtE,KAAK+rE,mBAAmB/rE,KAAK68D,SAAS78D,KAAK+rE,kBAAkBmI,sBAAqB,SAAUlhE,GAAG,OAAO22B,EAAE24B,YAAYtvD,EAAEmhE,OAAOnhE,EAAEohE,yBAAyBp0E,KAAK68D,SAAS78D,KAAK+rE,kBAAkBsI,mBAAkB,WAAY,OAAO1qC,EAAE8kC,mBAAmB7e,WAAW5vD,KAAK68D,SAAS78D,KAAK+rE,kBAAkBuI,iBAAgB,SAAUthE,GAAG,OAAO22B,EAAEmY,eAAe4N,mBAAmB18C,EAAEqJ,MAAMrJ,EAAE0J,IAAI1J,EAAEy1C,sBAAsBzoD,KAAK68D,SAAS78D,KAAK+rE,kBAAkBwI,uBAAsB,SAAUvhE,GAAG22B,EAAE0wB,SAAS33D,MAAMsQ,EAAE22B,EAAE0wB,SAASp7C,QAAQ0qB,EAAE0wB,SAAS0J,aAAa/jE,KAAK68D,SAAS78D,KAAKw0E,UAAUzhC,OAAM,SAAU//B,GAAG22B,EAAEyY,SAASkuB,iBAAiB3mC,EAAEoiC,kBAAkBlJ,cAAc7iE,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAK0yE,iBAAiB,UAAS,WAAY,OAAO/oC,EAAEoiC,kBAAkBlJ,cAAc7iE,KAAKonE,kBAAkBpnE,KAAKivE,sBAAsBC,eAAe1rE,EAAEqoE,iBAAiB7rE,KAAKslB,QAAQtlB,KAAKkuD,eAAeluD,KAAK68D,SAAS78D,KAAKonE,mBAAmBpnE,KAAK68D,SAAS78D,KAAKqhE,UAAS,WAAY,OAAO13B,EAAEy9B,kBAAkBE,eAAetnE,KAAKu6D,UAAU2M,YAAYlnE,KAAKslB,QAAQtlB,KAAKonE,mBAAmBpnE,KAAK46D,WAAWsM,YAAYlnE,KAAKslB,QAAQtlB,KAAK0pE,cAAc1pE,KAAK8hD,gBAAgB9hD,KAAK68D,SAAS1hD,EAAE+mD,yBAAyBliE,KAAKslB,QAAQ,aAAY,SAAUtS,GAAG,OAAO22B,EAAEoiC,kBAAkB0I,YAAYzhE,OAAOhT,KAAK00E,kBAAkBC,sBAAsB30E,KAAK+rE,kBAAkB6I,UAAU50E,KAAKslB,QAAQoxC,UAAUjlD,IAAI,wBAAwBzR,KAAK+rE,kBAAkB5kB,SAASnnD,KAAKye,QAAQ8xD,mBAAmBvwE,KAAKwwE,sBAAsB,IAAI3mC,EAAEo2B,qBAAqBjgE,KAAKA,KAAK8hD,iBAAiB9hD,KAAKswD,iBAAiB+f,UAAUrwE,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,GAAGj5B,KAAKyxE,cAAczxE,KAAK60E,aAAalrC,EAAEnoC,UAAU0rD,gBAAgB,WAAW,OAAOltD,KAAKye,QAAQq2D,cAAc,IAAI,SAAS,OAAO90E,KAAKivE,sBAAsBC,eAAe7qE,EAAE0wE,SAAS/0E,KAAK8sD,cAAc9qD,OAAOhC,KAAKkuD,cAAcluD,KAAKu6D,UAAUv6D,KAAK46D,YAAY,IAAI,MAAM,OAAO56D,KAAKivE,sBAAsBC,eAAezrE,EAAEuxE,YAAYh1E,KAAK8sD,cAAc9qD,OAAOhC,KAAKslB,QAAQtlB,KAAKkuD,cAAcluD,KAAK0yE,iBAAiB1yE,KAAKu6D,UAAUv6D,KAAK46D,YAAY,QAAQ,MAAM,IAAI57D,MAAM,8BAA8BgB,KAAKye,QAAQq2D,aAAa,OAAOnrC,EAAEnoC,UAAUkvE,UAAU,SAAS19D,GAAG,IAAI22B,EAAEpmC,EAAE9D,EAAEO,KAAKkzE,OAAOlgE,EAAE,QAAQ22B,EAAE3pC,KAAK8sD,qBAAgB,IAASnjB,GAAGA,EAAEo7B,SAAS/xD,GAAG,QAAQzP,EAAEvD,KAAK8hD,sBAAiB,IAASv+C,GAAGA,EAAE2mD,UAAUlqD,KAAK8sD,cAAc9qD,QAAQ,QAAQvC,EAAEO,KAAKoiD,gBAAW,IAAS3iD,GAAGA,EAAEswE,cAAc/vE,KAAK8sD,cAAc9qD,SAAS2nC,EAAEnoC,UAAUqzE,UAAU,WAAW,IAAI7hE,EAAEhT,KAAK2pC,EAAE3pC,KAAKuD,EAAEvD,KAAKslB,QAAQ,SAAS7lB,EAAEuT,GAAG,IAAIzP,EAAE9D,EAAEqf,EAAE6qB,EAAE+/B,cAAcuL,iBAAiBjiE,EAAE22B,EAAEukB,cAAcvkB,EAAEkY,KAAKlY,EAAE1Q,MAAM,IAAIna,EAAE,OAAM,EAAG,OAAO9L,EAAEkiE,cAAcliE,EAAEtB,MAAM,IAAI,YAAYjS,EAAE,QAAG,IAASuT,EAAEorC,SAAS76C,EAAE,OAAE,IAASyP,EAAEu8B,SAAShsC,EAAEyP,EAAEu8B,OAAO,EAAEv8B,EAAEu8B,OAAO,IAAIhsC,EAAE,EAAEyP,EAAEorC,QAAQ,EAAE,EAAEprC,EAAEorC,QAAQ,EAAE,EAAEprC,EAAEorC,QAAQ,EAAE,EAAE,MAAM,IAAI,UAAU3+C,EAAE,EAAE8D,EAAEyP,EAAEu8B,OAAO,EAAEv8B,EAAEu8B,OAAO,EAAE,MAAM,IAAI,YAAY9vC,EAAE,EAAE8D,EAAEyP,EAAEu8B,OAAO,EAAEv8B,EAAEu8B,OAAO,EAAE,MAAM,IAAI,QAAQ,IAAIv8B,EAAEq2B,SAAS5pC,EAAEuT,EAAEq2B,OAAO,EAAE,EAAE,GAAG9lC,EAAE,EAAE,MAAM,QAAQ,OAAM,EAAG,aAAQ,IAAS9D,QAAG,IAAS8D,GAAGA,EAAE,IAAIomC,EAAE+qC,kBAAkBS,kBAAkB,CAAChgC,IAAIr2B,EAAEirB,EAAE,GAAGrqB,IAAIZ,EAAE+qB,EAAE,GAAG0F,OAAOhsC,EAAEmjB,OAAOjnB,EAAE4nB,KAAKrU,EAAE6S,QAAQgB,IAAI7T,EAAE+S,OAAO7kB,MAAM8R,EAAEmT,WAAW,IAAIrH,EAAE,CAACs2D,QAAQ,KAAKC,MAAM,KAAKC,UAAU,KAAKC,UAAU,MAAMniE,EAAE,SAASu2B,GAAG,OAAOlqC,EAAEkqC,GAAGA,EAAEyU,UAAUprC,EAAEu/D,UAAU/sD,oBAAoB,UAAU1G,EAAEs2D,SAASt2D,EAAEw2D,WAAWtiE,EAAEu/D,UAAU/sD,oBAAoB,YAAY1G,EAAEw2D,YAAYtiE,EAAEwiE,OAAO7rC,IAAIiZ,EAAE,SAASjZ,GAAG,OAAOlqC,EAAEkqC,GAAGA,EAAEvjB,iBAAiBpT,EAAEwiE,OAAO7rC,IAAI35B,EAAE,SAASgD,GAAGA,EAAEorC,SAAS3+C,EAAEuT,IAAIsvC,EAAE,SAAStvC,GAAGA,EAAEorC,SAAS3+C,EAAEuT,IAAIhT,KAAK68D,SAAS78D,KAAK00E,kBAAkBe,kBAAiB,SAAU9rC,GAAGA,GAAG,UAAU32B,EAAE88D,eAAerxD,QAAQi3D,UAAU1iE,EAAE4zD,YAAYmB,MAAM,2BAA2B/0D,EAAE0hE,kBAAkBiB,cAAchsC,IAAI32B,EAAEsS,QAAQoxC,UAAUjlD,IAAI,uBAAuBuB,EAAE+4D,kBAAkB6I,YAAY5hE,EAAE4zD,YAAYmB,MAAM,gCAAgC/0D,EAAEsS,QAAQoxC,UAAU/jD,OAAO,uBAAuBK,EAAE+4D,kBAAkB5kB,UAAU,EAAExd,EAAE7qB,EAAEy2D,YAAYhyE,EAAEuP,iBAAiB,YAAYwvC,GAAGxjC,EAAEy2D,UAAUjzB,IAAI/+C,EAAEiiB,oBAAoB,YAAY1G,EAAEy2D,WAAWz2D,EAAEy2D,UAAU,MAAM,GAAG5rC,EAAE7qB,EAAEu2D,QAAQ9xE,EAAEuP,iBAAiB,QAAQ8vC,EAAE,CAACgzB,SAAQ,IAAK92D,EAAEu2D,MAAMzyB,IAAIr/C,EAAEiiB,oBAAoB,QAAQ1G,EAAEu2D,OAAOv2D,EAAEu2D,MAAM,MAAM,EAAE1rC,EAAE7qB,EAAEs2D,UAAUt2D,EAAEs2D,QAAQhiE,IAAIJ,EAAEu/D,UAAU/sD,oBAAoB,UAAU1G,EAAEs2D,SAASt2D,EAAEs2D,QAAQ,MAAM,EAAEzrC,EAAE7qB,EAAEw2D,YAAYx2D,EAAEw2D,UAAUtlE,IAAIgD,EAAEu/D,UAAU/sD,oBAAoB,YAAY1G,EAAEw2D,WAAWx2D,EAAEw2D,UAAU,UAAUt1E,KAAK00E,kBAAkBmB,eAAe71E,KAAK00E,kBAAkBmB,eAAe71E,KAAK68D,SAAS1hD,EAAE+mD,yBAAyB3+D,EAAE,aAAY,SAAUomC,GAAG,GAAGA,EAAEvjB,iBAAiBpT,EAAEiM,QAAQjM,EAAE0hE,kBAAkBC,uBAAuB3hE,EAAE+4D,kBAAkB+J,qBAAqBnsC,GAAG,OAAOlqC,EAAEkqC,GAAG7qB,EAAEs2D,SAASpiE,EAAEu/D,UAAUz/D,iBAAiB,UAAUgM,EAAEs2D,SAASt2D,EAAEw2D,WAAWtiE,EAAEu/D,UAAUz/D,iBAAiB,YAAYgM,EAAEw2D,WAAWtiE,EAAEwiE,OAAO7rC,OAAO3pC,KAAK68D,SAAS1hD,EAAE+mD,yBAAyB3+D,EAAE,SAAQ,SAAUomC,GAAG,GAAG7qB,EAAEu2D,YAAY,IAAIriE,EAAEgxC,OAAO+xB,cAAc,CAAC,IAAIxyE,EAAEyP,EAAEovC,SAAS4zB,iBAAiBrsC,GAAG,GAAG,IAAIpmC,EAAE,OAAO,IAAI,IAAI9D,EAAEmb,EAAEk2D,GAAGxhD,KAAKtc,EAAEimD,aAAaiK,gBAAgB+S,sBAAsB,IAAI,MAAMtsC,EAAEN,OAAO,EAAE,IAAI,KAAKj2B,EAAE,GAAGwvC,EAAE,EAAEA,EAAE//C,KAAKo2C,IAAI11C,GAAGq/C,IAAIxvC,GAAG3T,EAAEuT,EAAEimD,aAAamK,iBAAiBhwD,GAAE,MAAO,CAACwiE,SAAQ,KAAM51E,KAAK68D,SAAS1hD,EAAE+mD,yBAAyB3+D,EAAE,SAAQ,SAAUomC,GAAG,IAAI7qB,EAAEu2D,MAAM,OAAOriE,EAAEovC,SAAS8zB,QAAQvsC,QAAG,EAAO32B,EAAEwiE,OAAO7rC,KAAK,CAACisC,SAAQ,KAAM51E,KAAK68D,SAAS1hD,EAAE+mD,yBAAyB3+D,EAAE,cAAa,SAAUomC,GAAG,IAAI32B,EAAE0hE,kBAAkBC,qBAAqB,OAAO3hE,EAAEovC,SAAS+zB,aAAaxsC,GAAG32B,EAAEwiE,OAAO7rC,KAAK,CAACisC,SAAQ,KAAM51E,KAAK68D,SAAS1hD,EAAE+mD,yBAAyB3+D,EAAE,aAAY,SAAUomC,GAAG,IAAI32B,EAAE0hE,kBAAkBC,qBAAqB,OAAO3hE,EAAEovC,SAASg0B,YAAYzsC,QAAG,EAAO32B,EAAEwiE,OAAO7rC,KAAK,CAACisC,SAAQ,MAAOjsC,EAAEnoC,UAAUqhE,QAAQ,SAAS7vD,EAAE22B,GAAG,IAAIpmC,EAAE,QAAQA,EAAEvD,KAAK8hD,sBAAiB,IAASv+C,GAAGA,EAAE8yE,YAAYrjE,EAAE22B,IAAIA,EAAEnoC,UAAU6wE,oBAAoB,SAASr/D,EAAE22B,GAAG,IAAIpmC,EAAE,QAAQA,EAAEvD,KAAKu6D,iBAAY,IAASh3D,GAAGA,EAAE8jE,YAAYr0D,EAAE22B,IAAIA,EAAEnoC,UAAUuvE,kBAAkB,SAAS/9D,GAAG,IAAI22B,GAAG,QAAQA,EAAE3pC,KAAK+rE,yBAAoB,IAASpiC,OAAE,EAAOA,EAAE2sC,mBAAmBtjE,IAAIhT,KAAKslB,QAAQoxC,UAAUjlD,IAAI,iBAAiBzR,KAAKslB,QAAQoxC,UAAU/jD,OAAO,kBAAkBg3B,EAAEnoC,UAAUwvE,YAAY,WAAWhxE,KAAKi5D,aAAaC,sBAAsBl5D,KAAKi5D,aAAaC,qBAAoB,EAAGl5D,KAAK6iE,QAAQ7iE,KAAKgkD,OAAOna,EAAE7pC,KAAKgkD,OAAOna,KAAKF,EAAEnoC,UAAU8gE,YAAY,SAAS34B,EAAEpmC,EAAE9D,QAAG,IAASA,IAAIA,EAAE,GAAGuT,EAAExR,UAAU8gE,YAAY96C,KAAKxnB,KAAK2pC,EAAEpmC,EAAE9D,GAAGO,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,IAAI0Q,EAAEnoC,UAAUkqB,MAAM,SAAS1Y,GAAGhD,EAAE0b,MAAM1Y,EAAEhT,KAAKq6D,SAASr6D,KAAKi5D,eAAetvB,EAAEnoC,UAAU+0E,4BAA4B,SAASvjE,GAAGhT,KAAKgwE,uBAAuBh9D,GAAG22B,EAAEnoC,UAAU+hD,oBAAoB,SAASvwC,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,KAAKu6D,UAAUhX,oBAAoBvwC,EAAE22B,EAAEpmC,GAAG,OAAOvD,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,GAAGx5B,GAAGkqC,EAAEnoC,UAAUgiD,sBAAsB,SAASxwC,GAAGhT,KAAKu6D,UAAU/W,sBAAsBxwC,IAAIhT,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,IAAI0Q,EAAEnoC,UAAU4hD,qBAAqB,SAASpwC,GAAG,OAAOhT,KAAK46D,WAAWxX,qBAAqBpwC,IAAI22B,EAAEnoC,UAAU2uD,wBAAwB,SAASn9C,GAAG,IAAIhT,KAAKozE,wBAAwB,MAAM,IAAIp0E,MAAM,iCAAiC,IAAI2qC,EAAE3pC,KAAKozE,wBAAwBvW,SAAS7pD,GAAG,OAAOhT,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,GAAG0Q,GAAGA,EAAEnoC,UAAU4uD,0BAA0B,SAASp9C,GAAG,IAAIhT,KAAKozE,wBAAwB,MAAM,IAAIp0E,MAAM,iCAAiCgB,KAAKozE,wBAAwBoD,WAAWxjE,IAAIhT,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,IAAIhrB,OAAOqzC,eAAe3X,EAAEnoC,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAKgkD,OAAOyyB,SAASl0B,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUk1E,UAAU,SAAS1jE,GAAG,GAAGhT,KAAKgkD,SAAShkD,KAAKkwE,QAAQzoD,OAAO,OAAOznB,KAAKgkD,OAAO0yB,UAAU12E,KAAKgkD,OAAOutB,MAAMvxE,KAAKgkD,OAAOna,EAAE72B,IAAI22B,EAAEnoC,UAAUwqD,aAAa,WAAW,QAAQhsD,KAAK+rE,mBAAmB/rE,KAAK+rE,kBAAkB/f,cAAcriB,EAAEnoC,UAAUuiE,OAAO,SAAS/wD,EAAE22B,EAAEpmC,GAAGvD,KAAK+rE,kBAAkB4K,aAAa3jE,EAAE22B,EAAEpmC,IAAIomC,EAAEnoC,UAAUypB,aAAa,WAAW,OAAOjrB,KAAK+rE,kBAAkB/rE,KAAK+rE,kBAAkBlI,cAAc,IAAIl6B,EAAEnoC,UAAUo1E,qBAAqB,WAAW,GAAG52E,KAAK+rE,mBAAmB/rE,KAAK+rE,kBAAkB/f,aAAa,MAAM,CAAC6qB,YAAY72E,KAAK+rE,kBAAkB+K,eAAe,GAAGn2C,SAAS3gC,KAAK+rE,kBAAkB+K,eAAe,GAAGC,UAAU/2E,KAAK+rE,kBAAkBiL,aAAa,GAAGp2C,OAAO5gC,KAAK+rE,kBAAkBiL,aAAa,KAAKrtC,EAAEnoC,UAAUgrD,eAAe,WAAW,IAAIx5C,EAAE,QAAQA,EAAEhT,KAAK+rE,yBAAoB,IAAS/4D,GAAGA,EAAEw5C,kBAAkB7iB,EAAEnoC,UAAU6mC,UAAU,WAAW,IAAIr1B,EAAE,QAAQA,EAAEhT,KAAK+rE,yBAAoB,IAAS/4D,GAAGA,EAAEq1B,aAAasB,EAAEnoC,UAAUy1E,YAAY,SAASjkE,EAAE22B,GAAG,IAAIpmC,EAAE,QAAQA,EAAEvD,KAAK+rE,yBAAoB,IAASxoE,GAAGA,EAAE0zE,YAAYjkE,EAAE22B,IAAIA,EAAEnoC,UAAUuwE,SAAS,SAAS/+D,GAAG,GAAGhT,KAAKsuE,iBAAgB,EAAGtuE,KAAKgwE,yBAAwB,IAAKhwE,KAAKgwE,uBAAuBh9D,GAAG,OAAM,EAAG,IAAIhT,KAAKqxE,mBAAmB6F,QAAQlkE,GAAG,OAAOhT,KAAKgkD,OAAOutB,QAAQvxE,KAAKgkD,OAAOwM,OAAOxwD,KAAK2mE,eAAetwC,kBAAiB,EAAG,IAAIsT,EAAE5X,EAAEolD,sBAAsBnkE,EAAEhT,KAAKi5D,aAAaiK,gBAAgB+S,sBAAsBj2E,KAAKu4C,QAAQqqB,MAAM5iE,KAAKye,QAAQ24D,iBAAiB,GAAGp3E,KAAK+wE,kBAAkB/9D,GAAG,IAAI22B,EAAEj4B,MAAM,IAAIi4B,EAAEj4B,KAAK,CAAC,IAAInO,EAAEvD,KAAKi5B,KAAK,EAAE,OAAOj5B,KAAKsiE,YAAY,IAAI34B,EAAEj4B,MAAMnO,EAAEA,GAAGvD,KAAKw1E,OAAOxiE,GAAE,GAAI,OAAO,IAAI22B,EAAEj4B,MAAM1R,KAAKqoC,cAAcroC,KAAKq3E,mBAAmBr3E,KAAKu4C,QAAQvlC,KAAK22B,EAAE6rC,QAAQx1E,KAAKw1E,OAAOxiE,GAAE,IAAK22B,EAAExgC,MAAMwgC,EAAExgC,MAAMyR,EAAEk2D,GAAGwG,KAAK3tC,EAAExgC,MAAMyR,EAAEk2D,GAAGyG,KAAKv3E,KAAKq6D,SAAS33D,MAAM,IAAI1C,KAAK4hE,OAAOhS,KAAK,CAACzmD,IAAIwgC,EAAExgC,IAAIquE,SAASxkE,IAAIhT,KAAKgxE,cAAchxE,KAAKi5D,aAAamK,iBAAiBz5B,EAAExgC,KAAI,GAAInJ,KAAK8vE,eAAerxD,QAAQ8xD,sBAAsBvwE,KAAKsuE,iBAAgB,GAAItuE,KAAKw1E,OAAOxiE,GAAE,MAAO22B,EAAEnoC,UAAU61E,mBAAmB,SAASrkE,EAAE22B,GAAG,IAAIpmC,EAAEyP,EAAE4vD,QAAQ5iE,KAAKye,QAAQ24D,iBAAiBztC,EAAE5jB,SAAS4jB,EAAE9jB,UAAU8jB,EAAE7jB,SAAS9S,EAAEykE,WAAW9tC,EAAE5jB,QAAQ4jB,EAAE9jB,UAAU8jB,EAAE7jB,QAAQ,MAAM,aAAa6jB,EAAEj4B,KAAKnO,EAAEA,KAAKomC,EAAEzjB,SAASyjB,EAAEzjB,QAAQ,KAAKyjB,EAAEnoC,UAAUswE,OAAO,SAAS9+D,GAAGhT,KAAKgwE,yBAAwB,IAAKhwE,KAAKgwE,uBAAuBh9D,KAAK,SAASA,GAAG,OAAO,KAAKA,EAAEkT,SAAS,KAAKlT,EAAEkT,SAAS,KAAKlT,EAAEkT,QAA1D,CAAmElT,IAAIhT,KAAKif,QAAQjf,KAAK+wE,kBAAkB/9D,KAAK22B,EAAEnoC,UAAUwwE,UAAU,SAASh/D,GAAG,IAAI22B,EAAE,GAAG3pC,KAAKsuE,gBAAgB,OAAM,EAAG,GAAGtuE,KAAKgwE,yBAAwB,IAAKhwE,KAAKgwE,uBAAuBh9D,GAAG,OAAM,EAAG,GAAGhT,KAAKw1E,OAAOxiE,GAAGA,EAAEgT,SAAS2jB,EAAE32B,EAAEgT,cAAc,GAAG,OAAOhT,EAAE4S,YAAO,IAAS5S,EAAE4S,MAAM+jB,EAAE32B,EAAEkT,YAAY,CAAC,GAAG,IAAIlT,EAAE4S,OAAO,IAAI5S,EAAEgT,SAAS,OAAM,EAAG2jB,EAAE32B,EAAE4S,MAAM,SAAS+jB,IAAI32B,EAAE+S,QAAQ/S,EAAE6S,SAAS7S,EAAE8S,WAAW9lB,KAAKq3E,mBAAmBr3E,KAAKu4C,QAAQvlC,KAAK22B,EAAEpoC,OAAOwZ,aAAa4uB,GAAG3pC,KAAK4hE,OAAOhS,KAAK,CAACzmD,IAAIwgC,EAAE6tC,SAASxkE,IAAIhT,KAAKgxE,cAAchxE,KAAKi5D,aAAamK,iBAAiBz5B,GAAE,GAAI,KAAKA,EAAEnoC,UAAU6tE,KAAK,WAAW,IAAIr8D,EAAEhT,KAAK03E,eAAe,QAAQ1kE,EAAEhT,KAAK2zE,qBAAgB,IAAS3gE,GAAGA,EAAE2kE,iBAAiB33E,KAAK2uE,QAAQ/e,QAAQjmB,EAAEnoC,UAAU4d,OAAO,SAASuqB,EAAEpmC,GAAGomC,IAAI3pC,KAAK6hD,MAAMt+C,IAAIvD,KAAKi5B,KAAKjmB,EAAExR,UAAU4d,OAAOoI,KAAKxnB,KAAK2pC,EAAEpmC,GAAGvD,KAAKswD,mBAAmBtwD,KAAKswD,iBAAiBsnB,cAAc53E,KAAKswD,iBAAiB+f,WAAW1mC,EAAEnoC,UAAUquE,aAAa,SAAS78D,EAAE22B,GAAG,IAAIpmC,EAAE9D,EAAE,QAAQ8D,EAAEvD,KAAKswD,wBAAmB,IAAS/sD,GAAGA,EAAE8sE,UAAU,QAAQ5wE,EAAEO,KAAKoiD,gBAAW,IAAS3iD,GAAGA,EAAE6wE,gBAAe,IAAK3mC,EAAEnoC,UAAUgR,MAAM,WAAW,GAAG,IAAIxS,KAAKgkD,OAAOutB,OAAO,IAAIvxE,KAAKgkD,OAAOna,EAAE,CAAC7pC,KAAKgkD,OAAOhL,MAAMrpC,IAAI,EAAE3P,KAAKgkD,OAAOhL,MAAM9tC,IAAIlL,KAAKgkD,OAAOutB,MAAMvxE,KAAKgkD,OAAOna,IAAI7pC,KAAKgkD,OAAOhL,MAAMz5C,OAAO,EAAES,KAAKgkD,OAAOwM,MAAM,EAAExwD,KAAKgkD,OAAOutB,MAAM,EAAEvxE,KAAKgkD,OAAOna,EAAE,EAAE,IAAI,IAAI72B,EAAE,EAAEA,EAAEhT,KAAKi5B,KAAKjmB,IAAIhT,KAAKgkD,OAAOhL,MAAM94C,KAAKF,KAAKgkD,OAAO6zB,aAAahlD,EAAEilD,oBAAoB93E,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,GAAGj5B,KAAKw0E,UAAU5kB,KAAK,CAACtyB,SAASt9B,KAAKgkD,OAAOwM,MAAMtxD,OAAO,MAAMyqC,EAAEnoC,UAAUgP,MAAM,WAAW,IAAIm5B,EAAEpmC,EAAEvD,KAAKye,QAAQwa,KAAKj5B,KAAKi5B,KAAKj5B,KAAKye,QAAQojC,KAAK7hD,KAAK6hD,KAAK,IAAIpiD,EAAEO,KAAKgwE,uBAAuBhwE,KAAKgvE,SAASh8D,EAAExR,UAAUgP,MAAMgX,KAAKxnB,MAAM,QAAQ2pC,EAAE3pC,KAAK+rE,yBAAoB,IAASpiC,GAAGA,EAAEn5B,QAAQxQ,KAAKgwE,uBAAuBvwE,EAAEO,KAAK6iE,QAAQ,EAAE7iE,KAAKi5B,KAAK,GAAG,QAAQ11B,EAAEvD,KAAKoiD,gBAAW,IAAS7+C,GAAGA,EAAE+sE,kBAAkB3mC,EAAEnoC,UAAUiuE,sBAAsB,SAASz8D,GAAG,GAAGhT,KAAK8hD,eAAe,OAAO9uC,GAAG,KAAKsvC,EAAEy1B,yBAAyBC,oBAAoB,IAAIruC,EAAE3pC,KAAK8hD,eAAeC,WAAWoG,kBAAkB/uC,QAAQ,GAAG7V,EAAEvD,KAAK8hD,eAAeC,WAAWqG,mBAAmBhvC,QAAQ,GAAGpZ,KAAKi5D,aAAamK,iBAAiBxoD,EAAEk2D,GAAGxhD,IAAI,MAAM/rB,EAAE,IAAIomC,EAAE,KAAK,MAAM,KAAK2Y,EAAEy1B,yBAAyBE,qBAAqB,IAAIx4E,EAAEO,KAAK8hD,eAAeC,WAAW+J,gBAAgB1yC,QAAQ,GAAG0F,EAAE9e,KAAK8hD,eAAeC,WAAWgK,iBAAiB3yC,QAAQ,GAAGpZ,KAAKi5D,aAAamK,iBAAiBxoD,EAAEk2D,GAAGxhD,IAAI,MAAMxQ,EAAE,IAAIrf,EAAE,OAAOkqC,EAAEnoC,UAAUg0E,OAAO,SAASxiE,EAAE22B,GAAG,GAAG3pC,KAAKye,QAAQy5D,cAAcvuC,EAAE,OAAO32B,EAAEoT,iBAAiBpT,EAAEqT,mBAAkB,GAAIsjB,EAAEnoC,UAAU22E,YAAY,WAAW,OAAM,GAAIxuC,EAAEnoC,UAAUk2E,WAAW,WAAW,MAAM,UAAU13E,KAAKye,QAAQ25D,WAAWzuC,EAAhqxB,CAAmqxBtY,EAAEgnD,cAAc1uC,EAAEe,SAASzX,GAAGqlD,KAAK,SAAStlE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEoqC,cAAS,EAAO,IAAI/jE,EAAEzM,EAAE,KAAKqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAE,SAAS/wC,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,GAAG,IAAIsyC,EAAEtvC,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOsiD,EAAEi2B,aAAa5uC,EAAE2Y,EAAEowB,iBAAiBnvE,EAAE++C,EAAEk2B,YAAY/4E,EAAE6iD,EAAEqkB,eAAe7nD,EAAEwjC,EAAE0pB,gBAAgB54D,EAAEkvC,EAAEgO,iBAAiB1N,EAAEN,EAAER,eAAe9xC,EAAEsyC,EAAED,eAAe,EAAEC,EAAEiR,kBAAkB,EAAEjR,EAAEm2B,0BAA0B,EAAEn2B,EAAEo2B,4BAA4B,EAAEp2B,EAAEq2B,0BAA0B,EAAEr2B,EAAEs2B,YAAY,EAAEt2B,EAAEu2B,eAAe,EAAEv2B,EAAEw2B,oBAAoB,EAAEx2B,EAAEy2B,uBAAuB,KAAKz2B,EAAE02B,wBAAuB,EAAG12B,EAAED,eAAeC,EAAEowB,iBAAiBuG,YAAY32B,EAAEk2B,YAAYS,aAAa,GAAG32B,EAAEua,SAASjiD,EAAEsnD,yBAAyB5f,EAAEowB,iBAAiB,SAASpwB,EAAEkyB,UAAUtqE,KAAKo4C,KAAKhhD,YAAW,WAAY,OAAOghD,EAAEguB,mBAAmB,GAAGhuB,EAAE,OAAOxjC,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUuuE,cAAc,SAAS/8D,GAAGhT,KAAK0yE,iBAAiBjyD,MAAMgB,gBAAgBzO,EAAEqK,WAAWk1C,KAAK5oB,EAAEnoC,UAAU03E,SAAS,SAASlmE,GAAG,IAAI22B,EAAE3pC,KAAK,GAAGgT,EAAE,OAAOhT,KAAK2tE,qBAAqB,OAAO3tE,KAAK+4E,wBAAwBhf,qBAAqB/5D,KAAK+4E,yBAAyB,OAAO/4E,KAAK+4E,yBAAyB/4E,KAAK+4E,uBAAuB7e,uBAAsB,WAAY,OAAOvwB,EAAEgkC,qBAAqBhkC,EAAEnoC,UAAUmsE,cAAc,WAAW,GAAG3tE,KAAKswD,iBAAiBvyC,OAAO,EAAE,CAAC/d,KAAKuzD,kBAAkBvzD,KAAK8hD,eAAeC,WAAWgK,iBAAiBxrD,OAAOkuD,iBAAiBzuD,KAAK04E,4BAA4B14E,KAAK0yE,iBAAiByG,aAAa,IAAInmE,EAAEnQ,KAAKkB,MAAM/D,KAAKuzD,kBAAkBvzD,KAAKy4E,4BAA4Bz4E,KAAK04E,4BAA4B14E,KAAK8hD,eAAeC,WAAWwM,cAAcvuD,KAAK24E,4BAA4B3lE,IAAIhT,KAAK24E,0BAA0B3lE,EAAEhT,KAAKw4E,YAAY/3D,MAAM1C,OAAO/d,KAAK24E,0BAA0B,MAAM,IAAIhvC,EAAE3pC,KAAK2mE,eAAe3iB,OAAOwM,MAAMxwD,KAAKuzD,kBAAkBvzD,KAAK0yE,iBAAiB9pC,YAAYe,IAAI3pC,KAAKg5E,wBAAuB,EAAGh5E,KAAK0yE,iBAAiB9pC,UAAUe,GAAG3pC,KAAK+4E,uBAAuB,MAAMpvC,EAAEnoC,UAAU8uE,eAAe,SAASt9D,GAAG,QAAG,IAASA,IAAIA,GAAE,GAAIhT,KAAKy4E,4BAA4Bz4E,KAAK2mE,eAAe3iB,OAAOhL,MAAMz5C,OAAO,OAAOS,KAAKy4E,0BAA0Bz4E,KAAK2mE,eAAe3iB,OAAOhL,MAAMz5C,YAAYS,KAAKk5E,SAASlmE,GAAG,GAAGhT,KAAK04E,8BAA8B14E,KAAK8hD,eAAeC,WAAWwM,aAAa,CAAC,IAAI5kB,EAAE3pC,KAAK2mE,eAAe3iB,OAAOwM,MAAMxwD,KAAKuzD,kBAAkBvzD,KAAK64E,iBAAiBlvC,GAAG3pC,KAAK64E,iBAAiB74E,KAAK0yE,iBAAiB9pC,WAAW5oC,KAAK8hD,eAAeC,WAAWgK,iBAAiBxrD,OAAOkuD,mBAAmBzuD,KAAKuzD,mBAAmBvzD,KAAKk5E,SAASlmE,QAAQhT,KAAKk5E,SAASlmE,IAAI22B,EAAEnoC,UAAUgzE,UAAU,SAASxhE,GAAG,GAAGhT,KAAK64E,eAAe74E,KAAK0yE,iBAAiB9pC,UAAU5oC,KAAK0yE,iBAAiB0G,aAAa,CAAC,GAAGp5E,KAAKg5E,uBAAuB,OAAOh5E,KAAKg5E,wBAAuB,OAAQh5E,KAAKu4E,aAAa,GAAG,IAAI5uC,EAAE9mC,KAAKkB,MAAM/D,KAAK64E,eAAe74E,KAAKuzD,mBAAmBvzD,KAAK2mE,eAAe3iB,OAAOwM,MAAMxwD,KAAKu4E,aAAa5uC,KAAKA,EAAEnoC,UAAU63E,cAAc,SAASrmE,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAK0yE,iBAAiB9pC,UAAU5oC,KAAK04E,4BAA4B,QAAQ/uC,EAAE,GAAG,IAAI3pC,KAAK0yE,iBAAiB9pC,WAAWe,EAAE,GAAGpmC,EAAEvD,KAAK24E,6BAA6B3lE,EAAEsmE,YAAYtmE,EAAEoT,kBAAiB,IAAKujB,EAAEnoC,UAAU00E,QAAQ,SAASljE,GAAG,IAAI22B,EAAE3pC,KAAKu5E,mBAAmBvmE,GAAG,OAAO,IAAI22B,IAAI3pC,KAAK0yE,iBAAiB9pC,WAAWe,EAAE3pC,KAAKq5E,cAAcrmE,EAAE22B,KAAKA,EAAEnoC,UAAU+3E,mBAAmB,SAASvmE,GAAG,GAAG,IAAIA,EAAEq2B,OAAO,OAAO,EAAE,IAAIM,EAAE3pC,KAAKw5E,qBAAqBxmE,EAAEq2B,OAAOr2B,GAAG,OAAOA,EAAEk2B,YAAYC,WAAWG,eAAeK,GAAG3pC,KAAKuzD,kBAAkBvgD,EAAEk2B,YAAYC,WAAWI,iBAAiBI,GAAG3pC,KAAKuzD,kBAAkBvzD,KAAK2mE,eAAe1tC,MAAM0Q,GAAGA,EAAEnoC,UAAUw0E,iBAAiB,SAAShjE,GAAG,GAAG,IAAIA,EAAEq2B,OAAO,OAAO,EAAE,IAAIM,EAAE3pC,KAAKw5E,qBAAqBxmE,EAAEq2B,OAAOr2B,GAAG,OAAOA,EAAEk2B,YAAYC,WAAWC,iBAAiBO,GAAG3pC,KAAKuzD,kBAAkB,EAAEvzD,KAAK84E,qBAAqBnvC,EAAEA,EAAE9mC,KAAK2F,MAAM3F,KAAKo2C,IAAIj5C,KAAK84E,uBAAuB94E,KAAK84E,oBAAoB,EAAE,GAAG,GAAG94E,KAAK84E,qBAAqB,GAAG9lE,EAAEk2B,YAAYC,WAAWI,iBAAiBI,GAAG3pC,KAAK2mE,eAAe1tC,MAAM0Q,GAAGA,EAAEnoC,UAAUg4E,qBAAqB,SAASxmE,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAKgsE,gBAAgBvtD,QAAQg7D,mBAAmB,MAAM,QAAQl2E,GAAGomC,EAAE5jB,QAAQ,SAASxiB,GAAGomC,EAAE9jB,SAAS,UAAUtiB,GAAGomC,EAAExjB,SAASnT,EAAEhT,KAAKgsE,gBAAgBvtD,QAAQi7D,sBAAsB15E,KAAKgsE,gBAAgBvtD,QAAQk7D,kBAAkB3mE,EAAEhT,KAAKgsE,gBAAgBvtD,QAAQk7D,mBAAmBhwC,EAAEnoC,UAAU20E,aAAa,SAASnjE,GAAGhT,KAAK44E,YAAY5lE,EAAE4mE,QAAQ,GAAG9M,OAAOnjC,EAAEnoC,UAAU40E,YAAY,SAASpjE,GAAG,IAAI22B,EAAE3pC,KAAK44E,YAAY5lE,EAAE4mE,QAAQ,GAAG9M,MAAM,OAAO9sE,KAAK44E,YAAY5lE,EAAE4mE,QAAQ,GAAG9M,MAAM,IAAInjC,IAAI3pC,KAAK0yE,iBAAiB9pC,WAAWe,EAAE3pC,KAAKq5E,cAAcrmE,EAAE22B,KAAKv2B,EAAE,CAACwvC,EAAE,EAAEv+C,EAAEykE,gBAAgBlmB,EAAE,EAAEv+C,EAAEipE,iBAAiB1qB,EAAE,EAAEN,EAAE2wB,kBAAkBrwB,EAAE,EAAEN,EAAEkxB,iBAAiB7pC,GAA54I,CAAg5I35B,EAAE4gD,YAAYjnB,EAAEoqC,SAAShwB,GAAG81B,KAAK,SAAS7mE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAG9jC,EAAE9e,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE+pC,uBAAkB,EAAO,IAAItgE,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAE,WAAW,SAASgD,EAAEA,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,GAAGpT,KAAK85E,UAAU9mE,EAAEhT,KAAKyzE,iBAAiB9pC,EAAE3pC,KAAK2mE,eAAepjE,EAAEvD,KAAKgsE,gBAAgBvsE,EAAEO,KAAKi5D,aAAan6C,EAAE9e,KAAK8hD,eAAe1uC,EAAEpT,KAAK+5E,cAAa,EAAG/5E,KAAKg6E,uBAAsB,EAAGh6E,KAAKi6E,qBAAqB,CAAC59D,MAAM,EAAEK,IAAI,GAAG1c,KAAKk6E,iBAAiB,GAAG,OAAOjsE,OAAOqzC,eAAetuC,EAAExR,UAAU,cAAc,CAAC0J,IAAI,WAAW,OAAOlL,KAAK+5E,cAAcx3B,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUywE,iBAAiB,WAAWjyE,KAAK+5E,cAAa,EAAG/5E,KAAKi6E,qBAAqB59D,MAAMrc,KAAK85E,UAAUp3E,MAAMnD,OAAOS,KAAKyzE,iBAAiBvnE,YAAY,GAAGlM,KAAKk6E,iBAAiB,GAAGl6E,KAAKyzE,iBAAiB/c,UAAUjlD,IAAI,WAAWuB,EAAExR,UAAU0wE,kBAAkB,SAASl/D,GAAG,IAAI22B,EAAE3pC,KAAKA,KAAKyzE,iBAAiBvnE,YAAY8G,EAAErB,KAAK3R,KAAKoyE,4BAA4B9wE,YAAW,WAAYqoC,EAAEswC,qBAAqBv9D,IAAIitB,EAAEmwC,UAAUp3E,MAAMnD,SAAS,IAAIyT,EAAExR,UAAU2wE,eAAe,WAAWnyE,KAAKm6E,sBAAqB,IAAKnnE,EAAExR,UAAU01E,QAAQ,SAASlkE,GAAG,GAAGhT,KAAK+5E,cAAc/5E,KAAKg6E,sBAAsB,CAAC,GAAG,MAAMhnE,EAAEkT,QAAQ,OAAM,EAAG,GAAG,KAAKlT,EAAEkT,SAAS,KAAKlT,EAAEkT,SAAS,KAAKlT,EAAEkT,QAAQ,OAAM,EAAGlmB,KAAKm6E,sBAAqB,GAAI,OAAO,MAAMnnE,EAAEkT,UAAUlmB,KAAKo6E,6BAA4B,IAAKpnE,EAAExR,UAAU24E,qBAAqB,SAASnnE,GAAG,IAAI22B,EAAE3pC,KAAK,GAAGA,KAAKyzE,iBAAiB/c,UAAU/jD,OAAO,UAAU3S,KAAK+5E,cAAa,EAAG/mE,EAAE,CAAC,IAAIzP,EAAE,CAAC8Y,MAAMrc,KAAKi6E,qBAAqB59D,MAAMK,IAAI1c,KAAKi6E,qBAAqBv9D,KAAK1c,KAAKg6E,uBAAsB,EAAG14E,YAAW,WAAmE,IAAI0R,EAAxD22B,EAAEqwC,wBAAuBrwC,EAAEqwC,uBAAsB,EAASz2E,EAAE8Y,OAAOstB,EAAEuwC,iBAAiB36E,QAAQyT,EAAE22B,EAAEowC,aAAapwC,EAAEmwC,UAAUp3E,MAAM+Z,UAAUlZ,EAAE8Y,MAAM9Y,EAAEmZ,KAAKitB,EAAEmwC,UAAUp3E,MAAM+Z,UAAUlZ,EAAE8Y,QAAQ9c,OAAO,GAAGoqC,EAAEsvB,aAAamK,iBAAiBpwD,GAAE,MAAO,OAAO,CAAChT,KAAKg6E,uBAAsB,EAAG,IAAIv6E,EAAEO,KAAK85E,UAAUp3E,MAAM+Z,UAAUzc,KAAKi6E,qBAAqB59D,MAAMrc,KAAKi6E,qBAAqBv9D,KAAK1c,KAAKi5D,aAAamK,iBAAiB3jE,GAAE,KAAMuT,EAAExR,UAAU44E,0BAA0B,WAAW,IAAIpnE,EAAEhT,KAAK2pC,EAAE3pC,KAAK85E,UAAUp3E,MAAMpB,YAAW,WAAY,IAAI0R,EAAE+mE,aAAa,CAAC,IAAIx2E,EAAEyP,EAAE8mE,UAAUp3E,MAAMlD,QAAQmqC,EAAE,IAAIpmC,EAAEhE,OAAO,IAAIyT,EAAEknE,iBAAiB32E,EAAEyP,EAAEimD,aAAamK,iBAAiB7/D,GAAE,OAAQ,IAAIyP,EAAExR,UAAU4wE,0BAA0B,SAASp/D,GAAG,IAAI22B,EAAE3pC,KAAK,GAAGA,KAAK+5E,aAAa,CAAC,GAAG/5E,KAAK2mE,eAAe3iB,OAAOotB,mBAAmB,CAAC,IAAI7tE,EAAEV,KAAKC,IAAI9C,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe9kB,KAAK,GAAGpiD,EAAEO,KAAK8hD,eAAeC,WAAWE,iBAAiBnjC,EAAE9e,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAK8hD,eAAeC,WAAWE,iBAAiB7uC,EAAE7P,EAAEvD,KAAK8hD,eAAeC,WAAWC,gBAAgBhiD,KAAKyzE,iBAAiBhzD,MAAMwmB,KAAK7zB,EAAE,KAAKpT,KAAKyzE,iBAAiBhzD,MAAM0mB,IAAIroB,EAAE,KAAK9e,KAAKyzE,iBAAiBhzD,MAAM1C,OAAOte,EAAE,KAAKO,KAAKyzE,iBAAiBhzD,MAAM+wD,WAAW/xE,EAAE,KAAKO,KAAKyzE,iBAAiBhzD,MAAMsB,WAAW/hB,KAAKgsE,gBAAgBvtD,QAAQsD,WAAW/hB,KAAKyzE,iBAAiBhzD,MAAMoB,SAAS7hB,KAAKgsE,gBAAgBvtD,QAAQoD,SAAS,KAAK,IAAI+gC,EAAE5iD,KAAKyzE,iBAAiB71D,wBAAwB5d,KAAK85E,UAAUr5D,MAAMwmB,KAAK7zB,EAAE,KAAKpT,KAAK85E,UAAUr5D,MAAM0mB,IAAIroB,EAAE,KAAK9e,KAAK85E,UAAUr5D,MAAMtE,MAAMtZ,KAAKuE,IAAIw7C,EAAEzmC,MAAM,GAAG,KAAKnc,KAAK85E,UAAUr5D,MAAM1C,OAAOlb,KAAKuE,IAAIw7C,EAAE7kC,OAAO,GAAG,KAAK/d,KAAK85E,UAAUr5D,MAAM+wD,WAAW5uB,EAAE7kC,OAAO,KAAK/K,GAAG1R,YAAW,WAAY,OAAOqoC,EAAEyoC,2BAA0B,KAAM,KAAK3yE,EAAE,CAACqf,EAAE,EAAE8jC,EAAEkmB,gBAAgBhqD,EAAE,EAAE8jC,EAAE0qB,iBAAiBxuD,EAAE,EAAE8jC,EAAEy3B,cAAcv7D,EAAE,EAAE1L,EAAEogE,iBAAiBxgE,GAA1rG,GAAgsG22B,EAAE+pC,kBAAkB1jE,GAAGsqE,KAAK,CAACtnE,EAAE22B,KAAK,SAASpmC,EAAEyP,EAAE22B,GAAG,IAAIpmC,EAAEomC,EAAE/rB,wBAAwB,MAAM,CAAC5K,EAAEg3B,QAAQzmC,EAAE0jC,KAAKj0B,EAAE82B,QAAQvmC,EAAE4jC,KAAKl5B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEsrC,iBAAiBtrC,EAAE8hC,UAAU9hC,EAAE4wC,gCAA2B,EAAO5wC,EAAE4wC,2BAA2Bh3E,EAAEomC,EAAE8hC,UAAU,SAASz4D,EAAE22B,EAAElqC,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,EAAE4K,GAAG,GAAGxH,EAAE,CAAC,IAAIkvC,EAAE/+C,EAAEyP,EAAE22B,GAAG,GAAG2Y,EAAE,OAAOA,EAAE,GAAGz/C,KAAK0F,MAAM+5C,EAAE,IAAI1nC,EAAEgoC,EAAE,EAAE,IAAIA,GAAGN,EAAE,GAAGz/C,KAAK0F,KAAK+5C,EAAE,GAAGtyC,GAAGsyC,EAAE,GAAGz/C,KAAKC,IAAID,KAAKuE,IAAIk7C,EAAE,GAAG,GAAG7iD,GAAGmb,EAAE,EAAE,IAAI0nC,EAAE,GAAGz/C,KAAKC,IAAID,KAAKuE,IAAIk7C,EAAE,GAAG,GAAGxjC,GAAGwjC,IAAI3Y,EAAEsrC,iBAAiB,SAASjiE,GAAG,GAAGA,EAAE,MAAM,CAAC+2B,EAAE/2B,EAAE,GAAG,GAAG62B,EAAE72B,EAAE,GAAG,MAAMwnE,KAAK,CAACxnE,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE8wC,wBAAmB,EAAO,IAAIh7E,EAAE8D,EAAE,MAAM,SAASub,EAAE9L,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE9L,EAAEI,EAAE7P,EAAEyP,GAAGhD,EAAE25B,EAAEv2B,EAAE7P,EAAEomC,GAAG,OAAO2Y,EAAEz/C,KAAKo2C,IAAIn6B,EAAE9O,GAAG,SAASgD,EAAE22B,EAAEpmC,GAAG,IAAI,IAAI9D,EAAE,EAAEqf,EAAE9L,EAAEI,EAAE7P,EAAEyP,GAAGhD,EAAE25B,EAAEv2B,EAAE7P,EAAEomC,GAAG/uB,EAAE,EAAEA,EAAE/X,KAAKo2C,IAAIn6B,EAAE9O,GAAG4K,IAAI,CAAC,IAAI0nC,EAAE,MAAMM,EAAE5vC,EAAE22B,IAAI,EAAE,EAAEtlC,EAAEd,EAAEygD,OAAOhL,MAAM9tC,IAAI4T,EAAEwjC,EAAE1nC,GAAGvW,GAAGA,EAAE8/C,WAAW1kD,IAAI,OAAOA,EAA1J,CAA6JuT,EAAE22B,EAAEpmC,GAAGqX,EAAEgoC,EAAE5vC,EAAE22B,GAAGlqC,IAAI,SAAS2T,EAAEJ,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,EAAE9D,EAAEuT,EAAEgxC,OAAOhL,MAAM9tC,IAAIy+B,GAAG7qB,EAAErf,GAAGA,EAAE0kD,UAAUrlC,GAAG6qB,GAAG,GAAGA,EAAE32B,EAAEimB,MAAM11B,IAAIub,GAAGrf,EAAEuT,EAAEgxC,OAAOhL,MAAM9tC,MAAMy+B,KAAKlqC,EAAE0kD,UAAU,OAAO5gD,EAAE,SAASq/C,EAAE5vC,EAAE22B,GAAG,OAAO32B,EAAE22B,EAAE,IAAI,IAAI,SAAS35B,EAAEgD,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,GAAG,IAAI,IAAIwvC,EAAE5vC,EAAEhD,EAAE25B,EAAE/uB,EAAE,GAAGgoC,IAAIr/C,GAAGyM,IAAIvQ,GAAGmjD,GAAG9jC,EAAE,GAAG,EAAEA,GAAG8jC,EAAExvC,EAAEyuC,KAAK,GAAGjnC,GAAGxH,EAAE4wC,OAAO8e,4BAA4B9yD,GAAE,EAAGgD,EAAE4vC,GAAGA,EAAE,EAAE5vC,EAAE,EAAEhD,MAAM8O,GAAG8jC,EAAE,IAAIhoC,GAAGxH,EAAE4wC,OAAO8e,4BAA4B9yD,GAAE,EAAG,EAAEgD,EAAE,GAAGA,EAAE4vC,EAAExvC,EAAEyuC,KAAK,EAAE7xC,KAAK,OAAO4K,EAAExH,EAAE4wC,OAAO8e,4BAA4B9yD,GAAE,EAAGgD,EAAE4vC,GAAG,SAAShoC,EAAE5H,EAAE22B,GAAG,IAAIpmC,EAAEomC,EAAE,IAAI,IAAI,OAAOlqC,EAAEqxE,GAAGxhD,IAAI/rB,EAAEyP,EAAE,SAASsvC,EAAEtvC,EAAE22B,GAAG32B,EAAEnQ,KAAK2F,MAAMwK,GAAG,IAAI,IAAIzP,EAAE,GAAG9D,EAAE,EAAEA,EAAEuT,EAAEvT,IAAI8D,GAAGomC,EAAE,OAAOpmC,EAAEomC,EAAE8wC,mBAAmB,SAASznE,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAImjD,EAAEv+C,EAAEd,EAAEygD,OAAOja,EAAEga,EAAExgD,EAAEygD,OAAOna,EAAE,IAAItmC,EAAEygD,OAAO+xB,cAAc,OAAO,SAAS/iE,EAAE22B,EAAEpmC,EAAE9D,EAAEmjD,EAAEv+C,GAAG,OAAO,IAAIya,EAAE6qB,EAAElqC,EAAEmjD,EAAEv+C,GAAG9E,OAAO,GAAG+iD,EAAEtyC,EAAEgD,EAAE22B,EAAE32B,EAAE22B,EAAEv2B,EAAEwvC,EAAEjZ,IAAG,EAAGiZ,GAAGrjD,OAAOqb,EAAE,IAAIvW,IAA5F,CAAiGA,EAAE0/C,EAAE,EAAEpa,EAAEpmC,EAAE9D,GAAGqf,EAAEilC,EAAEpa,EAAEpmC,EAAE9D,GAAG,SAASuT,EAAE22B,EAAEpmC,EAAE9D,EAAEmjD,EAAEv+C,GAAG,IAAI0/C,EAAEA,EAAEjlC,EAAE6qB,EAAElqC,EAAEmjD,EAAEv+C,GAAG9E,OAAO,EAAEE,EAAE2T,EAAEwvC,EAAEnjD,GAAGkqC,EAAE,IAAIxoC,EAAE1B,EAAEglD,EAAE,SAASzxC,EAAE22B,EAAEpmC,EAAE9D,EAAEmjD,EAAE5yC,GAAG,IAAI4K,EAAE,OAAOA,EAAEkE,EAAEvb,EAAE9D,EAAEmjD,EAAE5yC,GAAGzQ,OAAO,EAAEE,EAAE2T,EAAEwvC,EAAEnjD,GAAGkqC,EAAE32B,EAAEzP,GAAGqX,GAAGnb,GAAGuT,GAAGzP,GAAGqX,EAAEnb,EAAE,IAAI,IAA7F,CAAkGuT,EAAE22B,EAAEpmC,EAAE9D,EAAEmjD,EAAEv+C,GAAG,OAAOi+C,EAAEtyC,EAAEgD,EAAE+wC,EAAExgD,EAAEpC,EAAE,MAAMsjD,EAAE7B,GAAGrjD,OAAOqb,EAAE6pC,EAAEpgD,IAA/N,CAAoOA,EAAE0/C,EAAE/wC,EAAE22B,EAAEpmC,EAAE9D,GAAG,GAAGskD,IAAIpa,EAAE,OAAOiZ,EAAEv+C,EAAE2O,EAAE,IAAI,IAAIsvC,EAAEz/C,KAAKo2C,IAAI50C,EAAE2O,GAAG4H,EAAEgoC,EAAEnjD,IAAImjD,EAAEmB,EAAEpa,EAAE,IAAI,IAAI,IAAIxoC,EAAE0B,KAAKo2C,IAAI8K,EAAEpa,GAAG,OAAO2Y,EAAE,SAAStvC,EAAE22B,GAAG,OAAOA,EAAEkY,KAAK7uC,EAA5B,CAA+B+wC,EAAEpa,EAAE32B,EAAE3O,EAAEd,IAAIpC,EAAE,GAAGoC,EAAEs+C,KAAK,IAAIkC,EAAEpa,EAAEtlC,EAAE2O,GAAG,GAAG4H,EAAEgoC,EAAEnjD,MAAMi7E,IAAI,CAAC1nE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEgxC,kBAAa,EAAO,IAAIp3E,EAAE,WAAW,SAASyP,IAAIhT,KAAK46E,QAAQ,GAAG,OAAO5nE,EAAExR,UAAUigD,QAAQ,WAAW,IAAI,IAAIzuC,EAAEhT,KAAK46E,QAAQr7E,OAAO,EAAEyT,GAAG,EAAEA,IAAIhT,KAAK46E,QAAQ5nE,GAAG6nE,SAASp5B,WAAWzuC,EAAExR,UAAUs5E,UAAU,SAAS9nE,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAKP,EAAE,CAACo7E,SAASlxC,EAAE8X,QAAQ9X,EAAE8X,QAAQs5B,YAAW,GAAI/6E,KAAK46E,QAAQ16E,KAAKT,GAAGkqC,EAAE8X,QAAQ,WAAW,OAAOl+C,EAAEy3E,qBAAqBv7E,IAAIkqC,EAAEj9B,SAASsG,IAAIA,EAAExR,UAAUw5E,qBAAqB,SAAShoE,GAAG,IAAIA,EAAE+nE,WAAW,CAAC,IAAI,IAAIpxC,GAAG,EAAEpmC,EAAE,EAAEA,EAAEvD,KAAK46E,QAAQr7E,OAAOgE,IAAI,GAAGvD,KAAK46E,QAAQr3E,KAAKyP,EAAE,CAAC22B,EAAEpmC,EAAE,MAAM,IAAI,IAAIomC,EAAE,MAAM,IAAI3qC,MAAM,uDAAuDgU,EAAE+nE,YAAW,EAAG/nE,EAAEyuC,QAAQ3hD,MAAMkT,EAAE6nE,UAAU76E,KAAK46E,QAAQ92E,OAAO6lC,EAAE,KAAK32B,EAAxnB,GAA6nB22B,EAAEgxC,aAAap3E,GAAG03E,KAAK,CAACjoE,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEe,cAAS,EAAO,IAAIjrC,EAAE8D,EAAE,KAAKub,EAAEvb,EAAE,MAAM6P,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAEzM,EAAE,KAAKqX,EAAE,WAAW,SAAS5H,EAAEA,GAAGhT,KAAK4hD,MAAM,IAAI9iC,EAAE4rB,SAAS13B,GAAGhT,KAAKk7E,cAAc,IAAIlrE,EAAE2qE,aAAa,OAAO3nE,EAAExR,UAAU25E,kBAAkB,WAAW,IAAIn7E,KAAK4hD,MAAMkuB,eAAerxD,QAAQ28D,iBAAiB,MAAM,IAAIp8E,MAAM,yEAAyEiP,OAAOqzC,eAAetuC,EAAExR,UAAU,eAAe,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMiO,cAActN,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,aAAa,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAM4f,YAAYjf,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,oBAAoB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMyyB,mBAAmB9xB,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMy5B,QAAQ94B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAM05B,UAAU/4B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMguB,eAAertB,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAM25B,QAAQh5B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMyf,UAAU9e,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,QAAQ,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAM+f,OAAOpf,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMwf,UAAU7e,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAM4F,UAAUjF,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMt8B,SAASi9B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKm7E,oBAAoBn7E,KAAKw7E,UAAUx7E,KAAKw7E,QAAQ,IAAIr6E,EAAEnB,KAAK4hD,QAAQ5hD,KAAKw7E,SAASj5B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAKm7E,oBAAoB,IAAI12B,EAAEzkD,KAAK4hD,QAAQW,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMyY,UAAU9X,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,OAAO,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAM3oB,MAAMspB,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,OAAO,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMC,MAAMU,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKm7E,oBAAoBn7E,KAAKy7E,UAAUz7E,KAAKy7E,QAAQ,IAAIp3E,EAAErE,KAAK4hD,QAAQ5hD,KAAKy7E,SAASl5B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAKm7E,oBAAoBn7E,KAAK4hD,MAAM60B,SAASl0B,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUyvE,KAAK,WAAWjxE,KAAK4hD,MAAMqvB,QAAQj+D,EAAExR,UAAUyd,MAAM,WAAWjf,KAAK4hD,MAAM3iC,SAASjM,EAAExR,UAAU4d,OAAO,SAASpM,EAAE22B,GAAG3pC,KAAK07E,gBAAgB1oE,EAAE22B,GAAG3pC,KAAK4hD,MAAMxiC,OAAOpM,EAAE22B,IAAI32B,EAAExR,UAAUqJ,KAAK,SAASmI,GAAGhT,KAAK4hD,MAAM/2C,KAAKmI,IAAIA,EAAExR,UAAU+0E,4BAA4B,SAASvjE,GAAGhT,KAAK4hD,MAAM20B,4BAA4BvjE,IAAIA,EAAExR,UAAU+hD,oBAAoB,SAASvwC,EAAE22B,EAAEpmC,GAAG,OAAOvD,KAAKm7E,oBAAoBn7E,KAAK4hD,MAAM2B,oBAAoBvwC,EAAE22B,EAAEpmC,IAAIyP,EAAExR,UAAUgiD,sBAAsB,SAASxwC,GAAGhT,KAAKm7E,oBAAoBn7E,KAAK4hD,MAAM4B,sBAAsBxwC,IAAIA,EAAExR,UAAU4hD,qBAAqB,SAASpwC,GAAG,OAAOhT,KAAKm7E,oBAAoBn7E,KAAK4hD,MAAMwB,qBAAqBpwC,IAAIA,EAAExR,UAAU2uD,wBAAwB,SAASn9C,GAAG,OAAOhT,KAAKm7E,oBAAoBn7E,KAAK4hD,MAAMuO,wBAAwBn9C,IAAIA,EAAExR,UAAU4uD,0BAA0B,SAASp9C,GAAGhT,KAAKm7E,oBAAoBn7E,KAAK4hD,MAAMwO,0BAA0Bp9C,IAAIA,EAAExR,UAAUm6E,eAAe,SAAS3oE,GAAG,OAAOhT,KAAKm7E,oBAAoBn7E,KAAK07E,gBAAgB1oE,GAAGhT,KAAK4hD,MAAM80B,UAAU1jE,IAAIA,EAAExR,UAAUk1E,UAAU,SAAS1jE,GAAG,OAAOhT,KAAK27E,eAAe3oE,IAAIA,EAAExR,UAAUwqD,aAAa,WAAW,OAAOhsD,KAAK4hD,MAAMoK,gBAAgBh5C,EAAExR,UAAUuiE,OAAO,SAAS/wD,EAAE22B,EAAEpmC,GAAGvD,KAAK07E,gBAAgB1oE,EAAE22B,EAAEpmC,GAAGvD,KAAK4hD,MAAMmiB,OAAO/wD,EAAE22B,EAAEpmC,IAAIyP,EAAExR,UAAUypB,aAAa,WAAW,OAAOjrB,KAAK4hD,MAAM32B,gBAAgBjY,EAAExR,UAAUo1E,qBAAqB,WAAW,OAAO52E,KAAK4hD,MAAMg1B,wBAAwB5jE,EAAExR,UAAUgrD,eAAe,WAAWxsD,KAAK4hD,MAAM4K,kBAAkBx5C,EAAExR,UAAU6mC,UAAU,WAAWroC,KAAK4hD,MAAMvZ,aAAar1B,EAAExR,UAAUy1E,YAAY,SAASjkE,EAAE22B,GAAG3pC,KAAK07E,gBAAgB1oE,EAAE22B,GAAG3pC,KAAK4hD,MAAMq1B,YAAYjkE,EAAE22B,IAAI32B,EAAExR,UAAUigD,QAAQ,WAAWzhD,KAAKk7E,cAAcz5B,UAAUzhD,KAAK4hD,MAAMH,WAAWzuC,EAAExR,UAAU8gE,YAAY,SAAStvD,GAAGhT,KAAK07E,gBAAgB1oE,GAAGhT,KAAK4hD,MAAM0gB,YAAYtvD,IAAIA,EAAExR,UAAUo6E,YAAY,SAAS5oE,GAAGhT,KAAK07E,gBAAgB1oE,GAAGhT,KAAK4hD,MAAMg6B,YAAY5oE,IAAIA,EAAExR,UAAU40B,YAAY,WAAWp2B,KAAK4hD,MAAMxrB,eAAepjB,EAAExR,UAAU60B,eAAe,WAAWr2B,KAAK4hD,MAAMvrB,kBAAkBrjB,EAAExR,UAAUq6E,aAAa,SAAS7oE,GAAGhT,KAAK07E,gBAAgB1oE,GAAGhT,KAAK4hD,MAAMi6B,aAAa7oE,IAAIA,EAAExR,UAAUgR,MAAM,WAAWxS,KAAK4hD,MAAMpvC,SAASQ,EAAExR,UAAUyuE,MAAM,SAASj9D,EAAE22B,GAAG3pC,KAAK4hD,MAAMquB,MAAMj9D,EAAE22B,IAAI32B,EAAExR,UAAUs6E,UAAU,SAAS9oE,EAAE22B,GAAG3pC,KAAK4hD,MAAMquB,MAAMj9D,EAAE22B,IAAI32B,EAAExR,UAAUu6E,QAAQ,SAAS/oE,EAAE22B,GAAG3pC,KAAK4hD,MAAMquB,MAAMj9D,GAAGhT,KAAK4hD,MAAMquB,MAAM,OAAOtmC,IAAI32B,EAAExR,UAAUkqB,MAAM,SAAS1Y,GAAGhT,KAAK4hD,MAAMl2B,MAAM1Y,IAAIA,EAAExR,UAAUmvD,UAAU,SAAS39C,GAAG,OAAOhT,KAAK4hD,MAAMkuB,eAAenf,UAAU39C,IAAIA,EAAExR,UAAUw6E,UAAU,SAAShpE,EAAE22B,GAAG3pC,KAAK4hD,MAAMkuB,eAAekM,UAAUhpE,EAAE22B,IAAI32B,EAAExR,UAAUqhE,QAAQ,SAAS7vD,EAAE22B,GAAG3pC,KAAK07E,gBAAgB1oE,EAAE22B,GAAG3pC,KAAK4hD,MAAMihB,QAAQ7vD,EAAE22B,IAAI32B,EAAExR,UAAUgP,MAAM,WAAWxQ,KAAK4hD,MAAMpxC,SAASwC,EAAExR,UAAUs5E,UAAU,SAAS9nE,GAAG,OAAOhT,KAAKk7E,cAAcJ,UAAU96E,KAAKgT,IAAI/E,OAAOqzC,eAAetuC,EAAE,UAAU,CAAC9H,IAAI,WAAW,OAAOkI,GAAGmvC,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUk6E,gBAAgB,WAAW,IAAI,IAAI1oE,EAAE,GAAG22B,EAAE,EAAEA,EAAEjqC,UAAUH,OAAOoqC,IAAI32B,EAAE22B,GAAGjqC,UAAUiqC,GAAG,IAAI,IAAIpmC,EAAE,EAAE9D,EAAEuT,EAAEzP,EAAE9D,EAAEF,OAAOgE,IAAI,CAAC,IAAIub,EAAErf,EAAE8D,GAAG,GAAGub,IAAI,KAAK6uB,MAAM7uB,IAAIA,EAAE,GAAG,EAAE,MAAM,IAAI9f,MAAM,oCAAoCgU,EAAvsL,GAA4sL22B,EAAEe,SAAS9vB,EAAE,IAAI0nC,EAAE,WAAW,SAAStvC,EAAEA,EAAE22B,GAAG3pC,KAAKy7E,QAAQzoE,EAAEhT,KAAK0R,KAAKi4B,EAAE,OAAO32B,EAAExR,UAAUy6E,KAAK,SAASjpE,GAAG,OAAOhT,KAAKy7E,QAAQzoE,EAAEhT,MAAMiO,OAAOqzC,eAAetuC,EAAExR,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAKy7E,QAAQ5xC,GAAG0Y,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAKy7E,QAAQ1xC,GAAGwY,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAKy7E,QAAQjrB,OAAOjO,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,QAAQ,CAAC0J,IAAI,WAAW,OAAOlL,KAAKy7E,QAAQlK,OAAOhvB,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKy7E,QAAQziC,MAAMz5C,QAAQgjD,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAU0iD,QAAQ,SAASlxC,GAAG,IAAI22B,EAAE3pC,KAAKy7E,QAAQziC,MAAM9tC,IAAI8H,GAAG,GAAG22B,EAAE,OAAO,IAAIoa,EAAEpa,IAAI32B,EAAExR,UAAU06E,YAAY,WAAW,OAAO,IAAIz8E,EAAEouD,UAAU76C,EAAv1B,GAA41B3O,EAAE,WAAW,SAAS2O,EAAEA,GAAG,IAAI22B,EAAE3pC,KAAKA,KAAK4hD,MAAM5uC,EAAEhT,KAAKm8E,gBAAgB,IAAIv5B,EAAEmL,aAAa/tD,KAAKo8E,QAAQ,IAAI95B,EAAEtiD,KAAK4hD,MAAMsuB,QAAQzoD,OAAO,UAAUznB,KAAKq8E,WAAW,IAAI/5B,EAAEtiD,KAAK4hD,MAAMsuB,QAAQrpD,IAAI,aAAa7mB,KAAK4hD,MAAMsuB,QAAQoM,kBAAiB,WAAY,OAAO3yC,EAAEwyC,gBAAgBvsB,KAAKjmB,EAAEsa,WAAW,OAAOh2C,OAAOqzC,eAAetuC,EAAExR,UAAU,iBAAiB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKm8E,gBAAgBppC,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,GAAGlL,KAAK4hD,MAAMsuB,QAAQjsB,SAASjkD,KAAK4hD,MAAMsuB,QAAQzoD,OAAO,OAAOznB,KAAKynB,OAAO,GAAGznB,KAAK4hD,MAAMsuB,QAAQjsB,SAASjkD,KAAK4hD,MAAMsuB,QAAQrpD,IAAI,OAAO7mB,KAAKu8E,UAAU,MAAM,IAAIv9E,MAAM,kDAAkDujD,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKo8E,QAAQH,KAAKj8E,KAAK4hD,MAAMsuB,QAAQzoD,SAAS86B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAKq8E,WAAWJ,KAAKj8E,KAAK4hD,MAAMsuB,QAAQrpD,MAAM07B,YAAW,EAAG6K,cAAa,IAAKp6C,EAA1gC,GAA+gC+wC,EAAE,WAAW,SAAS/wC,EAAEA,GAAGhT,KAAKw8E,MAAMxpE,EAAE,OAAO/E,OAAOqzC,eAAetuC,EAAExR,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAKw8E,MAAMr4B,WAAW5B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKw8E,MAAMj9E,QAAQgjD,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUsoD,QAAQ,SAAS92C,EAAE22B,GAAG,KAAK32B,EAAE,GAAGA,GAAGhT,KAAKw8E,MAAMj9E,QAAQ,OAAOoqC,GAAG3pC,KAAKw8E,MAAM/rB,SAASz9C,EAAE22B,GAAGA,GAAG3pC,KAAKw8E,MAAM/rB,SAASz9C,EAAE,IAAIvT,EAAEouD,WAAW76C,EAAExR,UAAU4iD,kBAAkB,SAASpxC,EAAE22B,EAAEpmC,GAAG,OAAOvD,KAAKw8E,MAAMp4B,kBAAkBpxC,EAAE22B,EAAEpmC,IAAIyP,EAAtgB,GAA2gB7R,EAAE,WAAW,SAAS6R,EAAEA,GAAGhT,KAAK4hD,MAAM5uC,EAAE,OAAOA,EAAExR,UAAUi7E,mBAAmB,SAASzpE,EAAE22B,GAAG,OAAO3pC,KAAK4hD,MAAM66B,mBAAmBzpE,GAAE,SAAUA,GAAG,OAAO22B,EAAE32B,EAAE0pE,eAAe1pE,EAAExR,UAAUm7E,cAAc,SAAS3pE,EAAE22B,GAAG,OAAO3pC,KAAKy8E,mBAAmBzpE,EAAE22B,IAAI32B,EAAExR,UAAUo7E,mBAAmB,SAAS5pE,EAAE22B,GAAG,OAAO3pC,KAAK4hD,MAAMg7B,mBAAmB5pE,GAAE,SAAUA,EAAEzP,GAAG,OAAOomC,EAAE32B,EAAEzP,EAAEm5E,eAAe1pE,EAAExR,UAAUq7E,cAAc,SAAS7pE,EAAE22B,GAAG,OAAO3pC,KAAK48E,mBAAmB5pE,EAAE22B,IAAI32B,EAAExR,UAAUs7E,mBAAmB,SAAS9pE,EAAE22B,GAAG,OAAO3pC,KAAK4hD,MAAMk7B,mBAAmB9pE,EAAE22B,IAAI32B,EAAExR,UAAUu7E,cAAc,SAAS/pE,EAAE22B,GAAG,OAAO3pC,KAAK88E,mBAAmB9pE,EAAE22B,IAAI32B,EAAExR,UAAUw7E,mBAAmB,SAAShqE,EAAE22B,GAAG,OAAO3pC,KAAK4hD,MAAMo7B,mBAAmBhqE,EAAE22B,IAAI32B,EAAExR,UAAUy7E,cAAc,SAASjqE,EAAE22B,GAAG,OAAO3pC,KAAKg9E,mBAAmBhqE,EAAE22B,IAAI32B,EAA3wB,GAAgxByxC,EAAE,WAAW,SAASzxC,EAAEA,GAAGhT,KAAK4hD,MAAM5uC,EAAE,OAAOA,EAAExR,UAAUq7D,SAAS,SAAS7pD,GAAGhT,KAAK4hD,MAAMs7B,eAAergB,SAAS7pD,IAAI/E,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMs7B,eAAeC,UAAU56B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4hD,MAAMs7B,eAAeE,eAAeztE,IAAI,SAASqD,GAAGhT,KAAK4hD,MAAMs7B,eAAeE,cAAcpqE,GAAGuvC,YAAW,EAAG6K,cAAa,IAAKp6C,EAA1c,IAAgdqqE,KAAK,CAACrqE,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEssB,qBAAgB,EAAO,IAAIx2D,EAAE8D,EAAE,KAAKub,EAAEvb,EAAE,MAAM6P,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAE,WAAW,SAAS2O,EAAEA,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,GAAGhQ,KAAKk2D,WAAWljD,EAAEhT,KAAKm2D,OAAO12D,EAAEO,KAAK0kD,QAAQ5lC,EAAE9e,KAAKs9E,YAAYlqE,EAAEpT,KAAK2mE,eAAe/jB,EAAE5iD,KAAKgsE,gBAAgBh8D,EAAEhQ,KAAKo2D,iBAAiB,EAAEp2D,KAAKq2D,kBAAkB,EAAEr2D,KAAKs2D,iBAAiB,EAAEt2D,KAAKu2D,kBAAkB,EAAEv2D,KAAKw2D,gBAAgB,EAAEx2D,KAAKy2D,eAAe,EAAEz2D,KAAKu9E,wBAAwB,CAACC,MAAM,GAAG71D,KAAK,EAAE4hC,GAAG,EAAED,GAAG,EAAEjP,MAAK,EAAGojC,KAAI,EAAGljC,QAAO,GAAIv6C,KAAK2uD,QAAQ1wC,SAASyE,cAAc,UAAU1iB,KAAK2uD,QAAQ+H,UAAUjlD,IAAI,SAASk4B,EAAE,UAAU3pC,KAAK2uD,QAAQluC,MAAMk2C,OAAOpzD,EAAER,WAAW/C,KAAK42D,cAAc52D,KAAKk2D,WAAWpzC,YAAY9iB,KAAK2uD,SAAS,OAAO37C,EAAExR,UAAUigD,QAAQ,WAAW,IAAIzuC,EAAEsvC,EAAE6f,wBAAwBniE,KAAK2uD,SAAS,QAAQ37C,EAAEhT,KAAKqvD,kBAAa,IAASr8C,GAAGA,EAAEyuC,WAAWzuC,EAAExR,UAAUo1D,YAAY,WAAW52D,KAAK62D,KAAK7mD,EAAEk1C,aAAallD,KAAK2uD,QAAQI,WAAW,KAAK,CAACpqD,MAAM3E,KAAKm2D,UAAUn2D,KAAKm2D,QAAQn2D,KAAK82D,aAAa9jD,EAAExR,UAAUsuD,iBAAiB,aAAa98C,EAAExR,UAAUguD,OAAO,aAAax8C,EAAExR,UAAUiuD,QAAQ,aAAaz8C,EAAExR,UAAUquD,aAAa,aAAa78C,EAAExR,UAAU+uD,cAAc,SAASv9C,EAAE22B,KAAK32B,EAAExR,UAAUkuD,mBAAmB,SAAS18C,EAAE22B,EAAEpmC,QAAG,IAASA,IAAIA,GAAE,IAAKyP,EAAExR,UAAU0oD,UAAU,SAASl3C,GAAGhT,KAAKsvD,kBAAkBt8C,IAAIA,EAAExR,UAAUu1D,iBAAiB,SAAS/jD,GAAG,GAAGA,IAAIhT,KAAKm2D,OAAO,CAAC,IAAIxsB,EAAE3pC,KAAK2uD,QAAQ3uD,KAAKm2D,OAAOnjD,EAAEhT,KAAK2uD,QAAQ3uD,KAAK2uD,QAAQ3zB,YAAYh7B,KAAK42D,cAAc52D,KAAKk2D,WAAWc,aAAah3D,KAAK2uD,QAAQhlB,GAAG3pC,KAAKsvD,kBAAkBtvD,KAAK0kD,SAAS1kD,KAAKuwD,cAAc,EAAEvwD,KAAK2mE,eAAe1tC,KAAK,KAAKjmB,EAAExR,UAAU8tD,kBAAkB,SAASt8C,GAAGhT,KAAKo2D,kBAAkB,GAAGp2D,KAAKq2D,mBAAmB,IAAIr2D,KAAKqvD,WAAWj8C,EAAE28C,iBAAiB/vD,KAAKgsE,gBAAgBvtD,QAAQze,KAAKs9E,YAAYtqE,EAAEhT,KAAKo2D,iBAAiBp2D,KAAKq2D,mBAAmBr2D,KAAKqvD,WAAWW,WAAWh9C,EAAExR,UAAU4d,OAAO,SAASpM,GAAGhT,KAAKs2D,iBAAiBtjD,EAAE84C,gBAAgB9rD,KAAKu2D,kBAAkBvjD,EAAE+4C,iBAAiB/rD,KAAKo2D,iBAAiBpjD,EAAEo7C,gBAAgBpuD,KAAKq2D,kBAAkBrjD,EAAEq7C,iBAAiBruD,KAAKw2D,gBAAgBxjD,EAAEi1C,eAAejoD,KAAKy2D,eAAezjD,EAAEk1C,cAAcloD,KAAK2uD,QAAQxyC,MAAMnJ,EAAEm1C,kBAAkBnoD,KAAK2uD,QAAQ5wC,OAAO/K,EAAEo1C,mBAAmBpoD,KAAK2uD,QAAQluC,MAAMtE,MAAMnJ,EAAEs7C,YAAY,KAAKtuD,KAAK2uD,QAAQluC,MAAM1C,OAAO/K,EAAEu7C,aAAa,KAAKvuD,KAAKm2D,QAAQn2D,KAAK82D,YAAY92D,KAAKsvD,kBAAkBtvD,KAAK0kD,UAAU1xC,EAAExR,UAAUy1D,WAAW,SAASjkD,EAAE22B,EAAEpmC,EAAE9D,GAAGO,KAAK62D,KAAKzB,SAASpiD,EAAEhT,KAAKs2D,iBAAiB3sB,EAAE3pC,KAAKu2D,kBAAkBhzD,EAAEvD,KAAKs2D,iBAAiB72D,EAAEO,KAAKu2D,oBAAoBvjD,EAAExR,UAAU01D,uBAAuB,SAASlkD,EAAE22B,EAAEpmC,QAAG,IAASA,IAAIA,EAAE,GAAGvD,KAAK62D,KAAKzB,SAASpiD,EAAEhT,KAAKs2D,kBAAkB3sB,EAAE,GAAG3pC,KAAKu2D,kBAAkBh2D,OAAOkuD,iBAAiB,EAAElrD,EAAEvD,KAAKs2D,iBAAiB/1D,OAAOkuD,mBAAmBz7C,EAAExR,UAAU21D,oBAAoB,SAASnkD,EAAE22B,EAAEpmC,GAAGvD,KAAK62D,KAAKzB,SAASpiD,EAAEhT,KAAKs2D,iBAAiB3sB,EAAE3pC,KAAKu2D,kBAAkBh2D,OAAOkuD,iBAAiBlrD,EAAEvD,KAAKu2D,oBAAoBvjD,EAAExR,UAAU41D,kBAAkB,SAASpkD,EAAE22B,EAAEpmC,EAAE9D,GAAGO,KAAK62D,KAAKQ,UAAU92D,OAAOkuD,iBAAiBzuD,KAAK62D,KAAKS,WAAWtkD,EAAEhT,KAAKs2D,iBAAiB/1D,OAAOkuD,iBAAiB,EAAE9kB,EAAE3pC,KAAKu2D,kBAAkBh2D,OAAOkuD,iBAAiB,EAAElrD,EAAEvD,KAAKs2D,iBAAiB/1D,OAAOkuD,iBAAiBhvD,EAAEO,KAAKu2D,kBAAkBh2D,OAAOkuD,mBAAmBz7C,EAAExR,UAAUs1D,UAAU,WAAW92D,KAAKm2D,OAAOn2D,KAAK62D,KAAK7C,UAAU,EAAE,EAAEh0D,KAAK2uD,QAAQxyC,MAAMnc,KAAK2uD,QAAQ5wC,SAAS/d,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQrnC,WAAWk1C,IAAIvyD,KAAK62D,KAAKzB,SAAS,EAAE,EAAEp1D,KAAK2uD,QAAQxyC,MAAMnc,KAAK2uD,QAAQ5wC,UAAU/K,EAAExR,UAAU+1D,YAAY,SAASvkD,EAAE22B,EAAEpmC,EAAE9D,GAAGO,KAAKm2D,OAAOn2D,KAAK62D,KAAK7C,UAAUhhD,EAAEhT,KAAKs2D,iBAAiB3sB,EAAE3pC,KAAKu2D,kBAAkBhzD,EAAEvD,KAAKs2D,iBAAiB72D,EAAEO,KAAKu2D,oBAAoBv2D,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQrnC,WAAWk1C,IAAIvyD,KAAK62D,KAAKzB,SAASpiD,EAAEhT,KAAKs2D,iBAAiB3sB,EAAE3pC,KAAKu2D,kBAAkBhzD,EAAEvD,KAAKs2D,iBAAiB72D,EAAEO,KAAKu2D,qBAAqBvjD,EAAExR,UAAUg2D,mBAAmB,SAASxkD,EAAE22B,EAAEpmC,GAAGvD,KAAK62D,KAAKxB,KAAKr1D,KAAKy3D,UAAS,GAAG,GAAIz3D,KAAK62D,KAAKvB,aAAa,cAAct1D,KAAK03D,SAASn0D,GAAGvD,KAAK62D,KAAKpB,SAASziD,EAAE+2C,WAAWpgB,EAAE3pC,KAAKs2D,iBAAiBt2D,KAAKw2D,gBAAgBjzD,EAAEvD,KAAKu2D,kBAAkBv2D,KAAKy2D,eAAez2D,KAAKq2D,oBAAoBrjD,EAAExR,UAAUk8E,WAAW,SAAS1qE,EAAE22B,EAAEpmC,GAAG,IAAI6P,EAAEwvC,EAAE5yC,EAAEhQ,KAAK29E,kBAAkB3qE,GAAGhD,GAAGgD,EAAEuqD,WAAWvqD,EAAEwqD,UAAUx9D,KAAK49E,mBAAmB5qE,EAAE22B,EAAEpmC,EAAEyM,IAAIgD,EAAE6hD,aAAazhD,EAAEJ,EAAE4qD,cAAc9+C,EAAEo8C,uBAAuBloD,EAAE22C,aAAa/G,EAAE5vC,EAAE2qD,cAAc7+C,EAAEo8C,uBAAuBloD,EAAEgiD,eAAepS,EAAE5vC,EAAE4qD,cAAcn+D,EAAEq1C,cAAc9hC,EAAE22C,aAAav2C,EAAEJ,EAAE2qD,cAAcl+D,EAAEq1C,cAAc9hC,EAAEgiD,cAAc5hD,GAAGpT,KAAKgsE,gBAAgBvtD,QAAQo0C,4BAA4B7/C,EAAE4hD,UAAUxhD,EAAE,EAAE,EAAE,EAAEpT,KAAKu9E,wBAAwBC,MAAMxqE,EAAE+2C,YAAYtqD,EAAE4/D,qBAAqBr/D,KAAKu9E,wBAAwB51D,KAAK3U,EAAE09C,WAAWjxD,EAAEqoD,qBAAqB9nD,KAAKu9E,wBAAwBh0B,GAAG3G,EAAE5iD,KAAKu9E,wBAAwBj0B,GAAGl2C,EAAEpT,KAAKu9E,wBAAwBljC,OAAOrnC,EAAE4hD,SAAS50D,KAAKu9E,wBAAwBE,MAAMzqE,EAAE8hD,QAAQ90D,KAAKu9E,wBAAwBhjC,SAASvnC,EAAE+hD,WAAW/0D,KAAKqvD,YAAYrvD,KAAKqvD,WAAWwuB,KAAK79E,KAAK62D,KAAK72D,KAAKu9E,wBAAwB5zC,EAAE3pC,KAAKs2D,iBAAiBt2D,KAAKw2D,gBAAgBjzD,EAAEvD,KAAKu2D,kBAAkBv2D,KAAKy2D,iBAAiBz2D,KAAK49E,mBAAmB5qE,EAAE22B,EAAEpmC,KAAKyP,EAAExR,UAAUo8E,mBAAmB,SAAS5qE,EAAE22B,EAAEpmC,EAAE9D,GAAG,GAAGO,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAKxB,KAAKr1D,KAAKy3D,WAAWzkD,EAAE4hD,WAAW5hD,EAAE+hD,YAAY/0D,KAAK62D,KAAKvB,aAAa,cAActiD,EAAE6hD,YAAY,GAAGp1D,EAAEO,KAAK62D,KAAK1B,UAAU11D,EAAE8yD,SAAS,GAAGv/C,EAAE4qD,cAAc59D,KAAK62D,KAAK1B,UAAUv6C,EAAExV,MAAMs2D,OAAO17D,KAAK0kD,QAAQrnC,YAAYk1C,SAAS,GAAGv/C,EAAEwqD,UAAUx9D,KAAK62D,KAAK1B,UAAU,OAAOvS,EAAEyG,cAAcO,WAAW52C,EAAE22C,cAAcj1C,KAAK,KAAK,QAAQ,CAAC,IAAItB,EAAEJ,EAAE22C,aAAa3pD,KAAKgsE,gBAAgBvtD,QAAQo0C,4BAA4B7/C,EAAE4hD,UAAUxhD,EAAE,IAAIA,GAAG,GAAGpT,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQsF,KAAK52C,GAAGm/C,SAAS,GAAG9yD,EAAEO,KAAK62D,KAAK1B,UAAU11D,EAAE8yD,SAAS,GAAGv/C,EAAE2qD,cAAc39D,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQxK,WAAWqY,SAAS,GAAGv/C,EAAEuqD,UAAUv9D,KAAK62D,KAAK1B,UAAU,OAAOvS,EAAEyG,cAAcO,WAAW52C,EAAEgiD,cAActgD,KAAK,KAAK,QAAQ,CAAC,IAAI1E,EAAEgD,EAAEgiD,aAAah1D,KAAKgsE,gBAAgBvtD,QAAQo0C,4BAA4B7/C,EAAE4hD,UAAU5kD,EAAE,IAAIA,GAAG,GAAGhQ,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQsF,KAAKh6C,GAAGuiD,IAAIvyD,KAAK03D,SAASn0D,GAAGyP,EAAE8hD,UAAU90D,KAAK62D,KAAKtB,YAAYz2C,EAAE02C,aAAax1D,KAAK62D,KAAKpB,SAASziD,EAAE+2C,WAAWpgB,EAAE3pC,KAAKs2D,iBAAiBt2D,KAAKw2D,gBAAgBjzD,EAAEvD,KAAKu2D,kBAAkBv2D,KAAKy2D,eAAez2D,KAAKq2D,mBAAmBr2D,KAAK62D,KAAK3Y,WAAWlrC,EAAExR,UAAUk2D,SAAS,SAAS1kD,GAAGhT,KAAK62D,KAAKc,YAAY33D,KAAK62D,KAAKe,KAAK,EAAE5kD,EAAEhT,KAAKu2D,kBAAkBv2D,KAAK2mE,eAAe9kB,KAAK7hD,KAAKs2D,iBAAiBt2D,KAAKu2D,mBAAmBv2D,KAAK62D,KAAKgB,QAAQ7kD,EAAExR,UAAUi2D,SAAS,SAASzkD,EAAE22B,GAAG,OAAOA,EAAE,SAAS,IAAI,KAAK32B,EAAEhT,KAAKgsE,gBAAgBvtD,QAAQk0C,eAAe3yD,KAAKgsE,gBAAgBvtD,QAAQsnB,YAAY,IAAI/lC,KAAKgsE,gBAAgBvtD,QAAQoD,SAASthB,OAAOkuD,iBAAiB,MAAMzuD,KAAKgsE,gBAAgBvtD,QAAQsD,YAAY/O,EAAExR,UAAUm8E,kBAAkB,SAAS3qE,GAAG,GAAG,IAAIhT,KAAKgsE,gBAAgBvtD,QAAQq0C,qBAAqB,CAAC,IAAInpB,EAAE3pC,KAAK0kD,QAAQgO,cAAc4R,SAAStxD,EAAEu2C,GAAGv2C,EAAEs2C,IAAI,QAAG,IAAS3f,EAAE,OAAOA,QAAG,EAAO,IAAIpmC,EAAEyP,EAAEgiD,aAAav1D,EAAEuT,EAAEiiD,iBAAiBn2C,EAAE9L,EAAE22C,aAAav2C,EAAEJ,EAAEy2C,iBAAiB7G,IAAI5vC,EAAE6hD,YAAY7kD,IAAIgD,EAAE6hD,YAAY,GAAGjS,EAAE,CAAC,IAAIN,EAAE/+C,EAAEA,EAAEub,EAAEA,EAAEwjC,EAAE,IAAIj+C,EAAE5E,EAAEA,EAAE2T,EAAEA,EAAE/O,EAAE,IAAI0/C,EAAE/jD,KAAKs0D,uBAAuBlhD,EAAE0L,EAAE8jC,GAAGzhD,EAAEnB,KAAKu0D,uBAAuB90D,EAAE8D,EAAEq/C,EAAE5yC,GAAGy0C,EAAE7pC,EAAEtY,KAAKmyD,oBAAoB1Q,EAAE5iD,EAAEnB,KAAKgsE,gBAAgBvtD,QAAQq0C,sBAAsB,GAAGrO,EAAE,CAAC,IAAItpC,EAAE,CAACo3C,IAAI33C,EAAEw5C,SAASC,MAAM5P,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,KAAKniD,KAAKmiD,GAAG,OAAOzkD,KAAK0kD,QAAQgO,cAAc2R,SAASrxD,EAAEu2C,GAAGv2C,EAAEs2C,GAAGnuC,GAAGA,EAAEnb,KAAK0kD,QAAQgO,cAAc2R,SAASrxD,EAAEu2C,GAAGv2C,EAAEs2C,GAAG,QAAQt2C,EAAExR,UAAU8yD,uBAAuB,SAASthD,EAAE22B,EAAEpmC,GAAG,OAAOyP,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOhT,KAAK0kD,QAAQsF,KAAKrgB,GAAGrnC,KAAK,KAAK,SAAS,OAAOqnC,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAOpmC,EAAEvD,KAAK0kD,QAAQxK,WAAW53C,KAAKtC,KAAK0kD,QAAQrnC,WAAW/a,OAAO0Q,EAAExR,UAAU+yD,uBAAuB,SAASvhD,EAAE22B,EAAEpmC,EAAE9D,GAAG,OAAOuT,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOhT,KAAKgsE,gBAAgBvtD,QAAQo0C,4BAA4BpzD,GAAGkqC,EAAE,IAAIA,GAAG,GAAG3pC,KAAK0kD,QAAQsF,KAAKrgB,GAAGrnC,KAAK,KAAK,SAAS,OAAOqnC,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAOpmC,EAAEvD,KAAK0kD,QAAQrnC,WAAW/a,KAAKtC,KAAK0kD,QAAQxK,WAAW53C,OAAO0Q,EAA1jP,GAA+jP22B,EAAEssB,gBAAgB5xD,GAAGy5E,KAAK,SAAS9qE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEwkB,uBAAkB,EAAO,IAAIn+C,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,KAAK++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAE,IAAI5iD,EAAE,SAAS6R,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,EAAEsyC,EAAEj+C,GAAG,IAAI0/C,EAAE/wC,EAAEwU,KAAKxnB,KAAK2pC,EAAE,SAASpmC,GAAE,EAAG9D,EAAEqf,EAAE8jC,EAAE5yC,IAAIhQ,KAAK,OAAO+jD,EAAE+J,iBAAiB16C,EAAE2wC,EAAEkV,aAAa3W,EAAEyB,EAAEg6B,oBAAoB15E,EAAE0/C,EAAEiU,MAAM,IAAIp9C,EAAEizC,SAAS9J,EAAEkU,OAAO,CAACluB,EAAE,EAAEF,EAAE,EAAEquB,WAAU,EAAGz3C,MAAM,GAAGtE,MAAM,GAAG4nC,EAAEoU,iBAAiB,CAACC,IAAIrU,EAAEsU,iBAAiBnuD,KAAK65C,GAAGuU,MAAMvU,EAAEwU,mBAAmBruD,KAAK65C,GAAGtoB,UAAUsoB,EAAEyU,uBAAuBtuD,KAAK65C,IAAIA,EAAE,OAAOjlC,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAU4d,OAAO,SAASuqB,GAAG32B,EAAExR,UAAU4d,OAAOoI,KAAKxnB,KAAK2pC,GAAG3pC,KAAKi4D,OAAO,CAACluB,EAAE,EAAEF,EAAE,EAAEquB,WAAU,EAAGz3C,MAAM,GAAGtE,MAAM,IAAIwtB,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAKy4D,eAAez4D,KAAK04D,2BAA2B14D,KAAK04D,yBAAyBjX,UAAUzhD,KAAK04D,8BAAyB,EAAO14D,KAAK8vD,qBAAqBnmB,EAAEnoC,UAAUguD,OAAO,WAAWxvD,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBC,QAAQ34D,KAAK8tD,iBAAiB8B,KAAK,CAACvzC,MAAMrc,KAAK2mE,eAAe3iB,OAAOna,EAAEntB,IAAI1c,KAAK2mE,eAAe3iB,OAAOna,KAAKF,EAAEnoC,UAAUiuD,QAAQ,WAAWzvD,KAAK04D,yBAAyB14D,KAAK04D,yBAAyBG,SAAS74D,KAAK8tD,iBAAiB8B,KAAK,CAACvzC,MAAMrc,KAAK2mE,eAAe3iB,OAAOna,EAAEntB,IAAI1c,KAAK2mE,eAAe3iB,OAAOna,KAAKF,EAAEnoC,UAAUsuD,iBAAiB,WAAW,IAAI98C,EAAE22B,EAAE3pC,KAAKA,KAAKgsE,gBAAgBvtD,QAAQwO,YAAYjtB,KAAK04D,2BAA2B14D,KAAK04D,yBAAyB,IAAIjU,EAAEzkD,KAAK+9E,oBAAoB7lB,WAAU,WAAYvuB,EAAEmvB,SAAQ,QAAS,QAAQ9lD,EAAEhT,KAAK04D,gCAA2B,IAAS1lD,GAAGA,EAAEyuC,UAAUzhD,KAAK04D,8BAAyB,GAAQ14D,KAAK8tD,iBAAiB8B,KAAK,CAACvzC,MAAMrc,KAAK2mE,eAAe3iB,OAAOna,EAAEntB,IAAI1c,KAAK2mE,eAAe3iB,OAAOna,KAAKF,EAAEnoC,UAAUquD,aAAa,WAAW7vD,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBK,yBAAyBpvB,EAAEnoC,UAAU+uD,cAAc,SAASv9C,EAAE22B,IAAI3pC,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBM,SAASh5D,KAAK84D,SAAQ,GAAI94D,KAAK04D,yBAAyBK,yBAAyBpvB,EAAEnoC,UAAUs3D,QAAQ,SAAS9lD,GAAG,GAAGhT,KAAKi5D,aAAaC,sBAAsBl5D,KAAKi5D,aAAaE,eAAe,CAAC,IAAIxvB,EAAE3pC,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe3iB,OAAOna,EAAEtmC,EAAEomC,EAAE3pC,KAAK2mE,eAAe3iB,OAAOwM,MAAM,GAAGjtD,EAAE,GAAGA,GAAGvD,KAAK2mE,eAAe1tC,KAAKj5B,KAAKy4D,mBAAmB,CAAC,IAAIh5D,EAAEoD,KAAKC,IAAI9C,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe9kB,KAAK,GAAG,GAAG7hD,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIy+B,GAAG8mB,SAAShxD,EAAEO,KAAKg4D,YAAO,IAASh4D,KAAKg4D,MAAM1uD,QAAQ,CAAC,IAAItJ,KAAK+9E,oBAAoB7lB,UAAU,CAACl4D,KAAKy4D,eAAez4D,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAI,IAAIzzC,EAAE9e,KAAKgsE,gBAAgBvtD,QAAQu/D,YAAY,OAAOl/D,GAAG,UAAUA,EAAE9e,KAAKm4D,iBAAiBr5C,GAAGrf,EAAE8D,EAAEvD,KAAKg4D,OAAOh4D,KAAKs5D,kBAAkB75D,EAAE8D,EAAEvD,KAAKg4D,OAAOh4D,KAAK62D,KAAK3Y,UAAUl+C,KAAKi4D,OAAOluB,EAAEtqC,EAAEO,KAAKi4D,OAAOpuB,EAAEtmC,EAAEvD,KAAKi4D,OAAOC,WAAU,EAAGl4D,KAAKi4D,OAAOx3C,MAAM3B,OAAO9e,KAAKi4D,OAAO97C,MAAMnc,KAAKg4D,MAAMt/B,YAAY,IAAI14B,KAAK04D,0BAA0B14D,KAAK04D,yBAAyBa,gBAAgB,CAAC,GAAGv5D,KAAKi4D,OAAO,CAAC,GAAGj4D,KAAKi4D,OAAOluB,IAAItqC,GAAGO,KAAKi4D,OAAOpuB,IAAItmC,GAAGvD,KAAKi4D,OAAOC,YAAYl4D,KAAK+9E,oBAAoB7lB,WAAWl4D,KAAKi4D,OAAOx3C,QAAQzgB,KAAKgsE,gBAAgBvtD,QAAQu/D,aAAah+E,KAAKi4D,OAAO97C,QAAQnc,KAAKg4D,MAAMt/B,WAAW,OAAO14B,KAAKy4D,eAAez4D,KAAK62D,KAAK1iD,OAAOnU,KAAKm4D,iBAAiBn4D,KAAKgsE,gBAAgBvtD,QAAQu/D,aAAa,SAASv+E,EAAE8D,EAAEvD,KAAKg4D,OAAOh4D,KAAK62D,KAAK3Y,UAAUl+C,KAAKi4D,OAAOluB,EAAEtqC,EAAEO,KAAKi4D,OAAOpuB,EAAEtmC,EAAEvD,KAAKi4D,OAAOC,WAAU,EAAGl4D,KAAKi4D,OAAOx3C,MAAMzgB,KAAKgsE,gBAAgBvtD,QAAQu/D,YAAYh+E,KAAKi4D,OAAO97C,MAAMnc,KAAKg4D,MAAMt/B,gBAAgB14B,KAAKy4D,sBAAsBz4D,KAAKy4D,gBAAgB9uB,EAAEnoC,UAAUi3D,aAAa,WAAWz4D,KAAKi4D,SAASj4D,KAAKu3D,YAAYv3D,KAAKi4D,OAAOluB,EAAE/pC,KAAKi4D,OAAOpuB,EAAE7pC,KAAKi4D,OAAO97C,MAAM,GAAGnc,KAAKi4D,OAAO,CAACluB,EAAE,EAAEF,EAAE,EAAEquB,WAAU,EAAGz3C,MAAM,GAAGtE,MAAM,KAAKwtB,EAAEnoC,UAAU62D,iBAAiB,SAASrlD,EAAE22B,EAAEpmC,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKm3D,oBAAoBnkD,EAAE22B,EAAE3pC,KAAKgsE,gBAAgBvtD,QAAQw/D,aAAaj+E,KAAK62D,KAAK3Y,WAAWvU,EAAEnoC,UAAU+2D,mBAAmB,SAASvlD,EAAE22B,EAAEpmC,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKi3D,WAAWjkD,EAAE22B,EAAEpmC,EAAEm1B,WAAW,GAAG14B,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQ8N,aAAaD,IAAIvyD,KAAKw3D,mBAAmBj0D,EAAEyP,EAAE22B,GAAG3pC,KAAK62D,KAAK3Y,WAAWvU,EAAEnoC,UAAUg3D,uBAAuB,SAASxlD,EAAE22B,EAAEpmC,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKk3D,uBAAuBlkD,EAAE22B,GAAG3pC,KAAK62D,KAAK3Y,WAAWvU,EAAEnoC,UAAU83D,kBAAkB,SAAStmD,EAAE22B,EAAEpmC,GAAGvD,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAK2C,YAAYx5D,KAAK0kD,QAAQtU,OAAOmiB,IAAIvyD,KAAKo3D,kBAAkBpkD,EAAE22B,EAAEpmC,EAAEm1B,WAAW,GAAG14B,KAAK62D,KAAK3Y,WAAW9qC,EAAE,CAACwvC,EAAE,EAAEN,EAAEwmB,gBAAgBlmB,EAAE,EAAEN,EAAEgrB,iBAAiB1qB,EAAE,EAAEN,EAAE+3B,cAAcz3B,EAAE,EAAEv+C,EAAE0uE,sBAAsBppC,GAA5xI,CAAgyI35B,EAAEimD,iBAAiBtsB,EAAEwkB,kBAAkBhtD,EAAE,IAAIsjD,EAAE,WAAW,SAASzxC,EAAEA,EAAE22B,GAAG3pC,KAAKy5D,gBAAgB9vB,EAAE3pC,KAAKu5D,iBAAgB,EAAGvmD,GAAGhT,KAAK05D,mBAAmB,OAAOzrD,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,QAAQlL,KAAK25D,oBAAoB35D,KAAK45D,iBAAiBrX,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUigD,QAAQ,WAAWzhD,KAAK45D,iBAAiBr5D,OAAOs5D,cAAc75D,KAAK45D,gBAAgB55D,KAAK45D,oBAAe,GAAQ55D,KAAK25D,qBAAqBp5D,OAAOuH,aAAa9H,KAAK25D,oBAAoB35D,KAAK25D,wBAAmB,GAAQ35D,KAAK85D,kBAAkBv5D,OAAOw5D,qBAAqB/5D,KAAK85D,iBAAiB95D,KAAK85D,qBAAgB,IAAS9mD,EAAExR,UAAUu3D,sBAAsB,WAAW,IAAI/lD,EAAEhT,KAAKA,KAAKg5D,WAAWh5D,KAAKg6D,wBAAwBxhD,KAAKyhD,MAAMj6D,KAAKu5D,iBAAgB,EAAGv5D,KAAK85D,kBAAkB95D,KAAK85D,gBAAgBv5D,OAAO25D,uBAAsB,WAAYlnD,EAAEymD,kBAAkBzmD,EAAE8mD,qBAAgB,QAAa9mD,EAAExR,UAAUk4D,iBAAiB,SAAS1mD,GAAG,IAAI22B,EAAE3pC,UAAK,IAASgT,IAAIA,EAAE+wC,GAAG/jD,KAAK45D,gBAAgBr5D,OAAOs5D,cAAc75D,KAAK45D,gBAAgB55D,KAAK25D,mBAAmBp5D,OAAOe,YAAW,WAAY,GAAGqoC,EAAEqwB,wBAAwB,CAAC,IAAIhnD,EAAE+wC,GAAGvrC,KAAKyhD,MAAMtwB,EAAEqwB,yBAAyB,GAAGrwB,EAAEqwB,6BAAwB,EAAOhnD,EAAE,EAAE,YAAY22B,EAAE+vB,iBAAiB1mD,GAAG22B,EAAE4vB,iBAAgB,EAAG5vB,EAAEmwB,gBAAgBv5D,OAAO25D,uBAAsB,WAAYvwB,EAAE8vB,kBAAkB9vB,EAAEmwB,qBAAgB,KAAUnwB,EAAEiwB,eAAer5D,OAAO45D,aAAY,WAAY,GAAGxwB,EAAEqwB,wBAAwB,CAAC,IAAIhnD,EAAE+wC,GAAGvrC,KAAKyhD,MAAMtwB,EAAEqwB,yBAAyB,OAAOrwB,EAAEqwB,6BAAwB,OAAYrwB,EAAE+vB,iBAAiB1mD,GAAG22B,EAAE4vB,iBAAiB5vB,EAAE4vB,gBAAgB5vB,EAAEmwB,gBAAgBv5D,OAAO25D,uBAAsB,WAAYvwB,EAAE8vB,kBAAkB9vB,EAAEmwB,qBAAgB,OAAY/V,KAAK/wC,IAAIA,EAAExR,UAAUm3D,MAAM,WAAW34D,KAAKu5D,iBAAgB,EAAGv5D,KAAK45D,iBAAiBr5D,OAAOs5D,cAAc75D,KAAK45D,gBAAgB55D,KAAK45D,oBAAe,GAAQ55D,KAAK25D,qBAAqBp5D,OAAOuH,aAAa9H,KAAK25D,oBAAoB35D,KAAK25D,wBAAmB,GAAQ35D,KAAK85D,kBAAkBv5D,OAAOw5D,qBAAqB/5D,KAAK85D,iBAAiB95D,KAAK85D,qBAAgB,IAAS9mD,EAAExR,UAAUq3D,OAAO,WAAW74D,KAAK24D,QAAQ34D,KAAKg6D,6BAAwB,EAAOh6D,KAAK05D,mBAAmB15D,KAAK+4D,yBAAyB/lD,EAA1mE,IAAgnEkrE,KAAK,CAAClrE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEw0C,eAAU,EAAO,IAAI56E,EAAE,WAAW,SAASyP,IAAIhT,KAAKo+E,MAAM,GAAG,OAAOprE,EAAExR,UAAU4d,OAAO,SAASpM,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,EAAEA,EAAEyP,EAAEzP,IAAI,CAACvD,KAAKo+E,MAAM7+E,QAAQgE,GAAGvD,KAAKo+E,MAAMl+E,KAAK,IAAI,IAAI,IAAIT,EAAEO,KAAKo+E,MAAM76E,GAAGhE,OAAOE,EAAEkqC,EAAElqC,IAAIO,KAAKo+E,MAAM76E,GAAGrD,UAAK,GAAQF,KAAKo+E,MAAM76E,GAAGhE,OAAOoqC,EAAE3pC,KAAKo+E,MAAM7+E,OAAOyT,GAAGA,EAAExR,UAAUgR,MAAM,WAAW,IAAI,IAAIQ,EAAE,EAAEA,EAAEhT,KAAKo+E,MAAM7+E,OAAOyT,IAAI,IAAI,IAAI22B,EAAE,EAAEA,EAAE3pC,KAAKo+E,MAAMprE,GAAGzT,OAAOoqC,IAAI3pC,KAAKo+E,MAAMprE,GAAG22B,QAAG,GAAQ32B,EAA5X,GAAiY22B,EAAEw0C,UAAU56E,GAAG86E,KAAK,SAASrrE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEskB,qBAAgB,EAAO,IAAIj+C,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAE,SAAS/wC,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,EAAE4K,GAAG,IAAI0nC,EAAEtvC,EAAEwU,KAAKxnB,KAAK2pC,EAAE,OAAOpmC,GAAE,EAAG9D,EAAEqf,EAAE9O,EAAE4K,IAAI5a,KAAK,OAAOoT,EAAEonD,qBAAoB,SAAUxnD,GAAG,OAAOsvC,EAAEmY,qBAAqBznD,MAAMI,EAAEsnD,qBAAoB,SAAU1nD,GAAG,OAAOsvC,EAAEqY,qBAAqB3nD,MAAM4vC,EAAE4X,qBAAoB,SAAUxnD,GAAG,OAAOsvC,EAAEmY,qBAAqBznD,MAAM4vC,EAAE8X,qBAAoB,SAAU1nD,GAAG,OAAOsvC,EAAEqY,qBAAqB3nD,MAAMsvC,EAAE,OAAOxjC,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAU4d,OAAO,SAASuqB,GAAG32B,EAAExR,UAAU4d,OAAOoI,KAAKxnB,KAAK2pC,GAAG3pC,KAAKi4D,YAAO,GAAQtuB,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAK66D,qBAAqBlxB,EAAEnoC,UAAUq5D,kBAAkB,WAAW,GAAG76D,KAAKi4D,OAAO,CAACj4D,KAAKu3D,YAAYv3D,KAAKi4D,OAAO6C,GAAG96D,KAAKi4D,OAAO8C,GAAG/6D,KAAKi4D,OAAOpW,KAAK7hD,KAAKi4D,OAAO6C,GAAG,GAAG,IAAI9nD,EAAEhT,KAAKi4D,OAAO+C,GAAGh7D,KAAKi4D,OAAO8C,GAAG,EAAE/nD,EAAE,GAAGhT,KAAKu3D,YAAY,EAAEv3D,KAAKi4D,OAAO8C,GAAG,EAAE/6D,KAAKi4D,OAAOpW,KAAK7uC,GAAGhT,KAAKu3D,YAAY,EAAEv3D,KAAKi4D,OAAO+C,GAAGh7D,KAAKi4D,OAAOgD,GAAG,GAAGj7D,KAAKi4D,YAAO,IAAStuB,EAAEnoC,UAAUi5D,qBAAqB,SAASznD,GAAG,GAAGA,EAAEs2C,KAAK1uC,EAAEsgD,uBAAuBl7D,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQrnC,WAAWk1C,IAAIv/C,EAAEs2C,IAAIhH,EAAEgQ,WAAWt/C,EAAEs2C,IAAItpD,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQsF,KAAKh3C,EAAEs2C,IAAIiJ,IAAIvyD,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQxK,WAAWqY,IAAIv/C,EAAE+nD,KAAK/nD,EAAEgoD,GAAGh7D,KAAKk3D,uBAAuBlkD,EAAE8nD,GAAG9nD,EAAE+nD,GAAG/nD,EAAEioD,GAAGjoD,EAAE8nD,QAAQ,CAAC96D,KAAKk3D,uBAAuBlkD,EAAE8nD,GAAG9nD,EAAE+nD,GAAG/nD,EAAE6uC,KAAK7uC,EAAE8nD,IAAI,IAAI,IAAInxB,EAAE32B,EAAE+nD,GAAG,EAAEpxB,EAAE32B,EAAEgoD,GAAGrxB,IAAI3pC,KAAKk3D,uBAAuB,EAAEvtB,EAAE32B,EAAE6uC,MAAM7hD,KAAKk3D,uBAAuB,EAAElkD,EAAEgoD,GAAGhoD,EAAEioD,IAAIj7D,KAAKi4D,OAAOjlD,GAAG22B,EAAEnoC,UAAUm5D,qBAAqB,SAAS3nD,GAAGhT,KAAK66D,qBAAqBznD,EAAE,CAACwvC,EAAE,EAAEv+C,EAAEykE,gBAAgBlmB,EAAE,EAAEv+C,EAAEipE,kBAAkB3jC,GAA76C,CAAi7C35B,EAAEimD,iBAAiBtsB,EAAEskB,gBAAgBlK,GAAGu6B,KAAK,SAAStrE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEorC,cAAS,EAAO,IAAI/kE,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,KAAKpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE5X,EAAE,MAAM+kB,EAAE/kB,EAAE,MAAMX,EAAE,EAAEY,EAAE,SAASwP,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAEmB,EAAE5iD,GAAG,IAAIsjD,EAAEzxC,EAAEwU,KAAKxnB,OAAOA,KAAKykD,EAAEC,QAAQ/a,EAAE8a,EAAEqnB,eAAevoE,EAAEkhD,EAAEkiB,eAAe/jB,EAAE6B,EAAE6L,iBAAiBvM,EAAEU,EAAEunB,gBAAgB7qE,EAAEsjD,EAAE85B,IAAI37E,IAAI6hD,EAAEqJ,iBAAiB,IAAIxlC,EAAEylC,aAAa,IAAI5yC,EAAEspC,EAAEunB,gBAAgBvtD,QAAQm0C,kBAAkB,OAAOnO,EAAEuJ,cAAc,CAAC56C,EAAE87D,eAAel/D,EAAEwuE,gBAAgB/5B,EAAEqnB,eAAe,EAAErnB,EAAEC,QAAQvpC,EAAEspC,EAAE85B,KAAKnrE,EAAE87D,eAAet0D,EAAE6jE,qBAAqBh6B,EAAEqnB,eAAe,EAAErnB,EAAEC,QAAQD,EAAE85B,KAAKnrE,EAAE87D,eAAe7qE,EAAE4pD,gBAAgBxJ,EAAEqnB,eAAe,EAAErnB,EAAEC,QAAQD,EAAE85B,IAAI9+E,EAAEqf,GAAG1L,EAAE87D,eAAe5sB,EAAE6L,kBAAkB1J,EAAEqnB,eAAe,EAAErnB,EAAEC,QAAQD,EAAE85B,IAAI95B,EAAEqJ,mBAAmBrJ,EAAE1C,WAAW,CAACqM,gBAAgB,EAAEC,iBAAiB,EAAEvC,gBAAgB,EAAEC,iBAAiB,EAAE9D,eAAe,EAAEC,cAAc,EAAEC,kBAAkB,EAAEC,mBAAmB,EAAEkG,YAAY,EAAEC,aAAa,EAAEvM,gBAAgB,EAAEC,iBAAiB,GAAGwC,EAAE+J,kBAAkBjuD,OAAOkuD,iBAAiBhK,EAAEiK,oBAAoBjK,EAAEqL,mBAAmBrL,EAAE,OAAO3lC,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,kBAAkB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK8tD,iBAAiB/a,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUigD,QAAQ,WAAW,IAAI,IAAI9X,EAAE,EAAEpmC,EAAEvD,KAAKguD,cAAcrkB,EAAEpmC,EAAEhE,OAAOoqC,IAAIpmC,EAAEomC,GAAG8X,UAAUzuC,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,MAAMmb,EAAE22C,wBAAwB9xD,KAAKu+E,MAAM50C,EAAEnoC,UAAU+tD,yBAAyB,WAAWvvD,KAAKwuD,oBAAoBjuD,OAAOkuD,mBAAmBzuD,KAAKwuD,kBAAkBjuD,OAAOkuD,iBAAiBzuD,KAAKwnD,SAASxnD,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe1tC,QAAQ0Q,EAAEnoC,UAAU0oD,UAAU,SAASl3C,GAAGhT,KAAK0kD,QAAQ1xC,EAAE,IAAI,IAAI22B,EAAE,EAAEpmC,EAAEvD,KAAKguD,cAAcrkB,EAAEpmC,EAAEhE,OAAOoqC,IAAI,CAAC,IAAIlqC,EAAE8D,EAAEomC,GAAGlqC,EAAEyqD,UAAUlqD,KAAK0kD,SAASjlD,EAAE+Q,UAAUm5B,EAAEnoC,UAAUgmD,SAAS,SAASx0C,EAAE22B,GAAG3pC,KAAK0uD,oBAAoB,IAAI,IAAInrD,EAAE,EAAE9D,EAAEO,KAAKguD,cAAczqD,EAAE9D,EAAEF,OAAOgE,IAAI9D,EAAE8D,GAAG6b,OAAOpf,KAAK+hD,YAAY/hD,KAAK8rE,eAAerrD,MAAMtE,MAAMnc,KAAK+hD,WAAWuM,YAAY,KAAKtuD,KAAK8rE,eAAerrD,MAAM1C,OAAO/d,KAAK+hD,WAAWwM,aAAa,MAAM5kB,EAAEnoC,UAAU0tD,kBAAkB,WAAWlvD,KAAKwnD,SAASxnD,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe1tC,OAAO0Q,EAAEnoC,UAAUguD,OAAO,WAAWxvD,KAAK0+E,eAAc,SAAU1rE,GAAG,OAAOA,EAAEw8C,aAAa7lB,EAAEnoC,UAAUiuD,QAAQ,WAAWzvD,KAAK0+E,eAAc,SAAU1rE,GAAG,OAAOA,EAAEy8C,cAAc9lB,EAAEnoC,UAAUkuD,mBAAmB,SAAS18C,EAAE22B,EAAEpmC,QAAG,IAASA,IAAIA,GAAE,GAAIvD,KAAK0+E,eAAc,SAAUj/E,GAAG,OAAOA,EAAEiwD,mBAAmB18C,EAAE22B,EAAEpmC,OAAOomC,EAAEnoC,UAAUquD,aAAa,WAAW7vD,KAAK0+E,eAAc,SAAU1rE,GAAG,OAAOA,EAAE68C,mBAAmBlmB,EAAEnoC,UAAUsuD,iBAAiB,WAAW9vD,KAAK0+E,eAAc,SAAU1rE,GAAG,OAAOA,EAAE88C,uBAAuBnmB,EAAEnoC,UAAUgR,MAAM,WAAWxS,KAAK0+E,eAAc,SAAU1rE,GAAG,OAAOA,EAAExC,YAAYm5B,EAAEnoC,UAAUk9E,cAAc,SAAS1rE,GAAG,IAAI,IAAI22B,EAAE,EAAEpmC,EAAEvD,KAAKguD,cAAcrkB,EAAEpmC,EAAEhE,OAAOoqC,IAAI32B,EAAEzP,EAAEomC,KAAKA,EAAEnoC,UAAU6uD,WAAW,SAASr9C,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,EAAE9D,EAAEO,KAAKguD,cAAczqD,EAAE9D,EAAEF,OAAOgE,IAAI9D,EAAE8D,GAAGgtD,cAAcv9C,EAAE22B,IAAIA,EAAEnoC,UAAUktD,kBAAkB,WAAW1uD,KAAKswD,iBAAiBsnB,eAAe53E,KAAK+hD,WAAWqM,gBAAgBvrD,KAAK2F,MAAMxI,KAAKswD,iBAAiBn0C,MAAM5b,OAAOkuD,kBAAkBzuD,KAAK+hD,WAAWsM,iBAAiBxrD,KAAK0F,KAAKvI,KAAKswD,iBAAiBvyC,OAAOxd,OAAOkuD,kBAAkBzuD,KAAK+hD,WAAWgK,iBAAiBlpD,KAAK2F,MAAMxI,KAAK+hD,WAAWsM,iBAAiBruD,KAAKgsE,gBAAgBvtD,QAAQ+yD,YAAYxxE,KAAK+hD,WAAWmG,cAAc,IAAIloD,KAAKgsE,gBAAgBvtD,QAAQ+yD,WAAW,EAAE3uE,KAAKkB,OAAO/D,KAAK+hD,WAAWgK,iBAAiB/rD,KAAK+hD,WAAWsM,kBAAkB,GAAGruD,KAAK+hD,WAAW+J,gBAAgB9rD,KAAK+hD,WAAWqM,gBAAgBvrD,KAAKkB,MAAM/D,KAAKgsE,gBAAgBvtD,QAAQkgE,eAAe3+E,KAAK+hD,WAAWkG,eAAeplD,KAAK2F,MAAMxI,KAAKgsE,gBAAgBvtD,QAAQkgE,cAAc,GAAG3+E,KAAK+hD,WAAWqG,mBAAmBpoD,KAAK2mE,eAAe1tC,KAAKj5B,KAAK+hD,WAAWgK,iBAAiB/rD,KAAK+hD,WAAWoG,kBAAkBnoD,KAAK2mE,eAAe9kB,KAAK7hD,KAAK+hD,WAAW+J,gBAAgB9rD,KAAK+hD,WAAWwM,aAAa1rD,KAAKkB,MAAM/D,KAAK+hD,WAAWqG,mBAAmB7nD,OAAOkuD,kBAAkBzuD,KAAK+hD,WAAWuM,YAAYzrD,KAAKkB,MAAM/D,KAAK+hD,WAAWoG,kBAAkB5nD,OAAOkuD,kBAAkBzuD,KAAK+hD,WAAWE,iBAAiBjiD,KAAK+hD,WAAWwM,aAAavuD,KAAK2mE,eAAe1tC,KAAKj5B,KAAK+hD,WAAWC,gBAAgBhiD,KAAK+hD,WAAWuM,YAAYtuD,KAAK2mE,eAAe9kB,OAAOzuC,EAAE,CAACwvC,EAAE,EAAE6B,EAAEm6B,uBAAuBh8B,EAAE,EAAE6B,EAAEqkB,gBAAgBlmB,EAAE,EAAEzhD,EAAE8xE,kBAAkBrwB,EAAE,EAAE6B,EAAE6oB,kBAAkB3jC,GAAxkI,CAA4kIoa,EAAE6M,YAAYjnB,EAAEorC,SAASvxE,GAAGq7E,KAAK,CAAC7rE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEub,kBAAa,EAAOvb,EAAEub,aAAa,SAASlyC,GAAG,IAAIA,EAAE,MAAM,IAAIhU,MAAM,2BAA2B,OAAOgU,IAAI8rE,KAAK,SAAS9rE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE80C,0BAAqB,EAAO,IAAIzuE,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE,SAAStvC,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,GAAG,IAAI5yC,EAAEgD,EAAEwU,KAAKxnB,KAAK2pC,EAAE,YAAYpmC,GAAE,EAAG9D,EAAEqf,EAAE1L,EAAEwvC,IAAI5iD,KAAK,OAAOgQ,EAAE+uE,cAAc/uE,EAAE,OAAO8O,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUu9E,YAAY,WAAW/+E,KAAKi4D,OAAO,CAAC57C,WAAM,EAAOK,SAAI,EAAO+rC,sBAAiB,EAAO+H,WAAM,IAAS7mB,EAAEnoC,UAAU4d,OAAO,SAASuqB,GAAG32B,EAAExR,UAAU4d,OAAOoI,KAAKxnB,KAAK2pC,GAAG3pC,KAAK++E,eAAep1C,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAKi4D,OAAO57C,OAAOrc,KAAKi4D,OAAOv7C,MAAM1c,KAAK++E,cAAc/+E,KAAK82D,cAAcntB,EAAEnoC,UAAUkuD,mBAAmB,SAAS18C,EAAE22B,EAAEpmC,GAAG,GAAGvD,KAAKg/E,gBAAgBhsE,EAAE22B,EAAEpmC,EAAEvD,KAAK2mE,eAAe3iB,OAAOwM,OAAO,GAAGxwD,KAAK82D,YAAY9jD,GAAG22B,EAAE,CAAC,IAAIlqC,EAAEuT,EAAE,GAAGhT,KAAK2mE,eAAe3iB,OAAOwM,MAAM1xC,EAAE6qB,EAAE,GAAG3pC,KAAK2mE,eAAe3iB,OAAOwM,MAAMp9C,EAAEvQ,KAAKuE,IAAI3H,EAAE,GAAGmjD,EAAE//C,KAAKC,IAAIgc,EAAE9e,KAAK2mE,eAAe1tC,KAAK,GAAG,GAAG7lB,GAAGpT,KAAK2mE,eAAe1tC,MAAM2pB,EAAE,EAAE5iD,KAAKi4D,OAAOzH,MAAMxwD,KAAK2mE,eAAe3iB,OAAOwM,UAAU,CAAC,GAAGxwD,KAAK62D,KAAK1B,UAAUn1D,KAAK0kD,QAAQ+N,qBAAqBF,IAAIhvD,EAAE,CAAC,IAAIyM,EAAEgD,EAAE,GAAG4H,EAAE+uB,EAAE,GAAG35B,EAAEsyC,EAAEM,EAAExvC,EAAE,EAAEpT,KAAKi3D,WAAWjnD,EAAEoD,EAAEwH,EAAE0nC,OAAO,CAACtyC,EAAEvQ,IAAI2T,EAAEJ,EAAE,GAAG,EAAE,IAAI3O,EAAE+O,IAAI0L,EAAE6qB,EAAE,GAAG3pC,KAAK2mE,eAAe9kB,KAAK7hD,KAAKi3D,WAAWjnD,EAAEoD,EAAE/O,EAAE2L,EAAE,GAAG,IAAI+zC,EAAElhD,KAAKuE,IAAIw7C,EAAExvC,EAAE,EAAE,GAAG,GAAGpT,KAAKi3D,WAAW,EAAE7jD,EAAE,EAAEpT,KAAK2mE,eAAe9kB,KAAKkC,GAAG3wC,IAAIwvC,EAAE,CAAC,IAAIzhD,EAAE2d,IAAI8jC,EAAEjZ,EAAE,GAAG3pC,KAAK2mE,eAAe9kB,KAAK7hD,KAAKi3D,WAAW,EAAErU,EAAEzhD,EAAE,IAAInB,KAAKi4D,OAAO57C,MAAM,CAACrJ,EAAE,GAAGA,EAAE,IAAIhT,KAAKi4D,OAAOv7C,IAAI,CAACitB,EAAE,GAAGA,EAAE,IAAI3pC,KAAKi4D,OAAOxP,iBAAiBllD,EAAEvD,KAAKi4D,OAAOzH,MAAMxwD,KAAK2mE,eAAe3iB,OAAOwM,YAAYxwD,KAAK++E,eAAep1C,EAAEnoC,UAAUw9E,gBAAgB,SAAShsE,EAAE22B,EAAEpmC,EAAE9D,GAAG,OAAOO,KAAKi/E,qBAAqBjsE,EAAEhT,KAAKi4D,OAAO57C,SAASrc,KAAKi/E,qBAAqBt1C,EAAE3pC,KAAKi4D,OAAOv7C,MAAMnZ,IAAIvD,KAAKi4D,OAAOxP,kBAAkBhpD,IAAIO,KAAKi4D,OAAOzH,OAAO7mB,EAAEnoC,UAAUy9E,qBAAqB,SAASjsE,EAAE22B,GAAG,SAAS32B,IAAI22B,IAAI32B,EAAE,KAAK22B,EAAE,IAAI32B,EAAE,KAAK22B,EAAE,IAAIv2B,EAAE,CAACwvC,EAAE,EAAEhoC,EAAEkuD,gBAAgBlmB,EAAE,EAAEhoC,EAAE0yD,kBAAkB3jC,GAA/nD,CAAmoD35B,EAAEimD,iBAAiBtsB,EAAE80C,qBAAqBn8B,GAAG48B,KAAK,SAASlsE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE60C,qBAAgB,EAAO,IAAIxuE,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,KAAKwgD,EAAExgD,EAAE,KAAKpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE5X,EAAE,MAAM+kB,EAAE,SAAStV,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAEhoC,EAAE0nC,GAAG,IAAIj+C,EAAE2O,EAAEwU,KAAKxnB,KAAK2pC,EAAE,OAAOpmC,EAAEub,EAAErf,EAAE2T,EAAEwvC,EAAEhoC,IAAI5a,KAAK,OAAOqE,EAAE+uE,wBAAwB9wB,EAAEj+C,EAAE86E,gBAAgB,EAAE96E,EAAE+6E,eAAe,GAAG/6E,EAAEg7E,uBAAuB,GAAGh7E,EAAEupD,UAAU,IAAI7J,EAAE8J,SAASxpD,EAAE4zD,OAAO,IAAIjoD,EAAEmuE,UAAU95E,EAAE,OAAOya,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAU4d,OAAO,SAASuqB,GAAG32B,EAAExR,UAAU4d,OAAOoI,KAAKxnB,KAAK2pC,GAAG,IAAIpmC,EAAEvD,KAAKy3D,UAAS,GAAG,GAAIz3D,KAAKm/E,kBAAkBx1C,EAAEykB,iBAAiBpuD,KAAKo/E,iBAAiB77E,IAAIvD,KAAKm/E,gBAAgBx1C,EAAEykB,gBAAgBpuD,KAAKo/E,eAAe77E,EAAEvD,KAAKq/E,uBAAuB,IAAIr/E,KAAKi4D,OAAOzlD,QAAQxS,KAAKi4D,OAAO74C,OAAOpf,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe1tC,OAAO0Q,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAKi4D,OAAOzlD,QAAQxS,KAAK82D,aAAantB,EAAEnoC,UAAU89E,aAAa,SAAStsE,EAAE22B,EAAEpmC,GAAG,IAAI,IAAI9D,EAAEuT,EAAEvT,GAAGkqC,EAAElqC,IAAI,IAAI,IAAIqf,EAAErf,EAAEO,KAAK2mE,eAAe3iB,OAAOwM,MAAMp9C,EAAEpT,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAI4T,GAAG8jC,EAAE5iD,KAAKozE,wBAAwBmM,oBAAoBzgE,GAAG9O,EAAE,EAAEA,EAAEhQ,KAAK2mE,eAAe9kB,KAAK7xC,IAAI,CAACoD,EAAEq9C,SAASzgD,EAAEhQ,KAAK4tD,WAAW,IAAIhzC,EAAE5a,KAAK4tD,UAAUtL,GAAE,EAAGyB,EAAE/zC,EAAE,GAAG,IAAI4K,EAAE8d,WAAW,CAAC,GAAGkqB,EAAErjD,OAAO,GAAGyQ,IAAI4yC,EAAE,GAAG,GAAG,CAACN,GAAE,EAAG,IAAInhD,EAAEyhD,EAAE1hD,QAAQ0Z,EAAE,IAAIO,EAAEqkE,eAAex/E,KAAK4tD,UAAUx6C,EAAEgxC,mBAAkB,EAAGjjD,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAI4iD,EAAE5iD,EAAE,GAAG,GAAGmhD,GAAGtiD,KAAKy/E,eAAe7kE,IAAImpC,EAAE3wC,EAAE7T,OAAO,GAAG6T,EAAEssE,aAAa37B,EAAE,KAAK1/C,EAAEwjD,iBAAiBjtC,EAAEtR,UAAU,SAASsR,EAAEtR,SAAS,GAAG,IAAI/F,EAAEqX,EAAE5K,EAAEvQ,GAAGuQ,EAAE+zC,KAAKpa,EAAEnoC,UAAUm+E,gBAAgB,SAAS3sE,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAKP,EAAEO,KAAK62D,KAAK/3C,EAAE9e,KAAK2mE,eAAe9kB,KAAKzuC,EAAE,EAAEwvC,EAAE,EAAE5yC,EAAE,KAAKvQ,EAAE0U,OAAOnU,KAAKs/E,aAAatsE,EAAE22B,GAAE,SAAU32B,EAAE22B,EAAE/uB,GAAG,IAAIvW,EAAE,KAAK2O,EAAE6hD,YAAYxwD,EAAE2O,EAAE2qD,cAAcp6D,EAAEmhD,QAAQxK,WAAWqY,IAAIv/C,EAAEuqD,UAAU,OAAOjb,EAAE+G,cAAcO,WAAW52C,EAAEgiD,cAActgD,KAAK,KAAK,IAAInR,EAAEmhD,QAAQsF,KAAKh3C,EAAEgiD,cAAczC,IAAIv/C,EAAEwqD,UAAUn5D,EAAE,OAAOi+C,EAAE+G,cAAcO,WAAW52C,EAAE22C,cAAcj1C,KAAK,KAAK,IAAI1B,EAAE0qD,gBAAgBr5D,EAAEd,EAAEmhD,QAAQsF,KAAKh3C,EAAE22C,cAAc4I,KAAK,OAAOviD,IAAIoD,EAAEu2B,EAAEiZ,EAAEhoC,GAAGA,IAAIgoC,GAAGnjD,EAAE01D,UAAUnlD,GAAG,GAAGzM,EAAE0zD,WAAW7jD,EAAEwvC,EAAE9jC,EAAE1L,EAAE,GAAGA,EAAEu2B,EAAEiZ,EAAEhoC,GAAG5K,IAAI3L,IAAI5E,EAAE01D,UAAUnlD,GAAG,GAAGzM,EAAE0zD,WAAW7jD,EAAEwvC,EAAEjZ,EAAEv2B,EAAE,GAAGA,EAAEu2B,EAAEiZ,EAAEhoC,GAAG5K,EAAE3L,KAAK,OAAO2L,IAAIvQ,EAAE01D,UAAUnlD,EAAEhQ,KAAKi3D,WAAW7jD,EAAEwvC,EAAE9jC,EAAE1L,EAAE,IAAI3T,EAAEy+C,WAAWvU,EAAEnoC,UAAUo+E,gBAAgB,SAAS5sE,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAKA,KAAKs/E,aAAatsE,EAAE22B,GAAE,SAAU32B,EAAE22B,EAAElqC,GAAG,IAAIuT,EAAE2hD,gBAAgBpxD,EAAEm6E,WAAW1qE,EAAE22B,EAAElqC,GAAGuT,EAAEqqD,eAAe,CAAC,GAAG95D,EAAEszD,KAAK1iD,OAAOnB,EAAE6hD,YAAY,GAAG7hD,EAAE4qD,cAAcr6D,EAAEszD,KAAK1B,UAAU5xD,EAAEmhD,QAAQrnC,WAAWk1C,SAAS,GAAGv/C,EAAEwqD,UAAUj6D,EAAEszD,KAAK1B,UAAU,OAAO7S,EAAE+G,cAAcO,WAAW52C,EAAE22C,cAAcj1C,KAAK,KAAK,QAAQ,CAAC,IAAIoK,EAAE9L,EAAE22C,aAAapmD,EAAEyoE,gBAAgBvtD,QAAQo0C,4BAA4B7/C,EAAE4hD,UAAU91C,EAAE,IAAIA,GAAG,GAAGvb,EAAEszD,KAAK1B,UAAU5xD,EAAEmhD,QAAQsF,KAAKlrC,GAAGyzC,SAAS,GAAGv/C,EAAE2qD,cAAcp6D,EAAEszD,KAAK1B,UAAU5xD,EAAEmhD,QAAQxK,WAAWqY,SAAS,GAAGv/C,EAAEuqD,UAAUh6D,EAAEszD,KAAK1B,UAAU,OAAO7S,EAAE+G,cAAcO,WAAW52C,EAAEgiD,cAActgD,KAAK,KAAK,QAAQ,CAAC,IAAItB,EAAEJ,EAAEgiD,aAAazxD,EAAEyoE,gBAAgBvtD,QAAQo0C,4BAA4B7/C,EAAE4hD,UAAUxhD,EAAE,IAAIA,GAAG,GAAG7P,EAAEszD,KAAK1B,UAAU5xD,EAAEmhD,QAAQsF,KAAK52C,GAAGm/C,IAAIhvD,EAAE2zD,uBAAuBvtB,EAAElqC,EAAEuT,EAAE0lB,YAAYn1B,EAAEszD,KAAK3Y,eAAevU,EAAEnoC,UAAU+uD,cAAc,SAASv9C,EAAE22B,GAAG,IAAI3pC,KAAKi4D,OAAOmmB,MAAM7+E,SAASS,KAAKqvD,YAAYrvD,KAAKqvD,WAAW5H,aAAaznD,KAAKu3D,YAAY,EAAEvkD,EAAEhT,KAAK2mE,eAAe9kB,KAAKlY,EAAE32B,EAAE,GAAGhT,KAAK2/E,gBAAgB3sE,EAAE22B,GAAG3pC,KAAK4/E,gBAAgB5sE,EAAE22B,KAAKA,EAAEnoC,UAAUsuD,iBAAiB,WAAW9vD,KAAK+2D,iBAAiB/2D,KAAKgsE,gBAAgBvtD,QAAQm0C,oBAAoBjpB,EAAEnoC,UAAUi+E,eAAe,SAASzsE,GAAG,GAAG,IAAIA,EAAE0lB,WAAW,OAAM,EAAG,GAAG1lB,EAAE09C,UAAU,IAAI,OAAM,EAAG,IAAI/mB,EAAE32B,EAAE+2C,WAAW,GAAG/pD,KAAKq/E,uBAAuBxxD,eAAe8b,GAAG,OAAO3pC,KAAKq/E,uBAAuB11C,GAAG3pC,KAAK62D,KAAK1iD,OAAOnU,KAAK62D,KAAKxB,KAAKr1D,KAAKo/E,eAAe,IAAI77E,EAAEV,KAAK2F,MAAMxI,KAAK62D,KAAKgpB,YAAYl2C,GAAGxtB,OAAOnc,KAAKm/E,gBAAgB,OAAOn/E,KAAK62D,KAAK3Y,UAAUl+C,KAAKq/E,uBAAuB11C,GAAGpmC,EAAEA,GAAG6P,EAAE,CAACwvC,EAAE,EAAEzhD,EAAE2nE,gBAAgBlmB,EAAE,EAAEzhD,EAAEmsE,iBAAiB1qB,EAAE,EAAE6B,EAAE6uB,0BAA0B3pC,GAAvhH,CAA2hH/uB,EAAEq7C,iBAAiBtsB,EAAE60C,gBAAgBl2D,GAAGw3D,KAAK,CAAC9sE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEo2C,mBAAc,EAAO,IAAIx8E,EAAE,WAAW,SAASyP,IAAIhT,KAAKkzD,YAAW,EAAG,OAAOlgD,EAAExR,UAAUigD,QAAQ,aAAazuC,EAAExR,UAAUwuD,OAAO,WAAWhwD,KAAKkzD,aAAalzD,KAAK8zD,YAAY9zD,KAAKkzD,YAAW,IAAKlgD,EAAExR,UAAUsyD,UAAU,aAAa9gD,EAAExR,UAAUimD,WAAW,aAAaz0C,EAAhP,GAAqP22B,EAAEo2C,cAAcx8E,GAAGy8E,KAAK,CAAChtE,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEmoB,wBAAwBnoB,EAAEomB,sBAAiB,EAAO,IAAItwD,EAAE8D,EAAE,MAAMub,EAAEvb,EAAE,MAAM6P,EAAE,GAAGu2B,EAAEomB,iBAAiB,SAAS/8C,EAAE22B,EAAEpmC,EAAEq/C,EAAE5yC,GAAG,IAAI,IAAI4K,EAAEnb,EAAEsyD,eAAenP,EAAE5yC,EAAEgD,EAAEzP,GAAG++C,EAAE,EAAEA,EAAElvC,EAAE7T,OAAO+iD,IAAI,CAAC,IAAIj+C,GAAG0/C,EAAE3wC,EAAEkvC,IAAI0P,QAAQ3uD,QAAQsmC,GAAG,GAAGtlC,GAAG,EAAE,CAAC,GAAG5E,EAAEwyD,aAAalO,EAAEmO,OAAOt3C,GAAG,OAAOmpC,EAAEoO,MAAM,IAAIpO,EAAEiO,QAAQzyD,QAAQwkD,EAAEoO,MAAM1Q,UAAUruC,EAAEtP,OAAOw+C,EAAE,IAAIyB,EAAEiO,QAAQluD,OAAOO,EAAE,GAAG,OAAO,IAAIi+C,EAAE,EAAEA,EAAElvC,EAAE7T,OAAO+iD,IAAI,CAAC,IAAIyB,EAAE3wC,EAAEkvC,GAAG,GAAG7iD,EAAEwyD,aAAalO,EAAEmO,OAAOt3C,GAAG,OAAOmpC,EAAEiO,QAAQ9xD,KAAKypC,GAAGoa,EAAEoO,MAAM,IAAIhxD,EAAE,CAACgxD,MAAM,IAAIrzC,EAAEmhE,iBAAiBhiE,SAASrD,GAAGs3C,OAAOt3C,EAAEo3C,QAAQ,CAACroB,IAAI,OAAOv2B,EAAElT,KAAKiB,GAAGA,EAAEgxD,OAAOxoB,EAAEmoB,wBAAwB,SAAS9+C,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAEv2B,EAAE7T,OAAOoqC,IAAI,CAAC,IAAIpmC,EAAE6P,EAAEu2B,GAAGqoB,QAAQ3uD,QAAQ2P,GAAG,IAAI,IAAIzP,EAAE,CAAC,IAAI6P,EAAEu2B,GAAGqoB,QAAQzyD,QAAQ6T,EAAEu2B,GAAGwoB,MAAM1Q,UAAUruC,EAAEtP,OAAO6lC,EAAE,IAAIv2B,EAAEu2B,GAAGqoB,QAAQluD,OAAOP,EAAE,GAAG,UAAU28E,KAAK,CAACltE,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE2oB,WAAW3oB,EAAEsoB,aAAatoB,EAAEooB,oBAAe,EAAO,IAAItyD,EAAE8D,EAAE,KAAKomC,EAAEooB,eAAe,SAAS/+C,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE,CAACo7B,WAAWz6C,EAAEy6C,WAAW78B,WAAW5d,EAAE4d,WAAW+yB,YAAO,EAAOoiB,kBAAa,EAAOznC,eAAU,EAAOi/B,KAAKvqD,EAAEuqD,MAAM,MAAM,CAACyE,iBAAiBluD,OAAOkuD,iBAAiBL,gBAAgBp7C,EAAEq7C,iBAAiB1kB,EAAE5nB,WAAWxe,EAAEwe,WAAWF,SAASte,EAAEse,SAASkkB,WAAWxiC,EAAEwiC,WAAW4sB,eAAepvD,EAAEovD,eAAeC,kBAAkBrvD,EAAEqvD,kBAAkB5wD,OAAO8c,IAAI6qB,EAAEsoB,aAAa,SAASj/C,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,EAAEA,EAAEyP,EAAEhR,OAAOgoD,KAAKzqD,OAAOgE,IAAI,GAAGyP,EAAEhR,OAAOgoD,KAAKzmD,GAAGjB,OAAOqnC,EAAE3nC,OAAOgoD,KAAKzmD,GAAGjB,KAAK,OAAM,EAAG,OAAO0Q,EAAEy7C,mBAAmB9kB,EAAE8kB,kBAAkBz7C,EAAE+O,aAAa4nB,EAAE5nB,YAAY/O,EAAE6O,WAAW8nB,EAAE9nB,UAAU7O,EAAE+yB,aAAa4D,EAAE5D,YAAY/yB,EAAE2/C,iBAAiBhpB,EAAEgpB,gBAAgB3/C,EAAE4/C,oBAAoBjpB,EAAEipB,mBAAmB5/C,EAAEo7C,kBAAkBzkB,EAAEykB,iBAAiBp7C,EAAEq7C,mBAAmB1kB,EAAE0kB,kBAAkBr7C,EAAEhR,OAAOk4C,aAAavQ,EAAE3nC,OAAOk4C,YAAYlnC,EAAEhR,OAAOqb,aAAassB,EAAE3nC,OAAOqb,YAAYssB,EAAE2oB,WAAW,SAASt/C,GAAG,OAAOA,EAAEvT,EAAEq1C,gBAAgBqrC,KAAK,CAACntE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEuyB,wBAAwBvyB,EAAE6rB,YAAY7rB,EAAEuxB,4BAAuB,EAAOvxB,EAAEuxB,uBAAuB,IAAIvxB,EAAE6rB,YAAY,GAAG7rB,EAAEuyB,wBAAwB,GAAGkkB,KAAK,SAASptE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE02C,cAAc12C,EAAEs2C,iBAAiBt2C,EAAE22C,sBAAiB,EAAO,IAAIltE,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMpC,EAAE,CAACoxD,IAAI,mBAAmBjwD,KAAK,GAAG,SAASmiD,EAAEzxC,GAAG,OAAOA,EAAE2U,MAAM,GAAG3U,EAAEu2C,IAAI,GAAGv2C,EAAEs2C,IAAI,GAAGt2C,EAAEqnC,KAAK,EAAE,IAAIrnC,EAAEyqE,IAAI,EAAE,IAAIzqE,EAAEunC,OAAO,EAAE,GAAG5Q,EAAE22C,iBAAiB77B,EAAE,IAAItpC,EAAE,SAASnI,GAAG,SAAS22B,EAAEA,EAAEpmC,GAAG,IAAI9D,EAAEuT,EAAEwU,KAAKxnB,OAAOA,KAAKP,EAAEwzD,QAAQ1vD,EAAE9D,EAAE8gF,kBAAkB,EAAE9gF,EAAE+gF,uBAAuB,GAAG/gF,EAAEghF,qBAAqB,KAAKhhF,EAAEihF,QAAQ,KAAKjhF,EAAEkhF,aAAah3C,EAAEjnB,cAAc,UAAUjjB,EAAEkhF,aAAaxkE,MAAM,KAAK1c,EAAEkhF,aAAa5iE,OAAO,KAAKte,EAAEk0D,UAAUtvD,EAAE6gD,aAAazlD,EAAEkhF,aAAa5xB,WAAW,KAAK,CAACpqD,OAAM,KAAM,IAAIma,EAAE6qB,EAAEjnB,cAAc,UAAU5D,EAAE3C,MAAM1c,EAAEwzD,QAAQ7E,gBAAgBtvC,EAAEf,OAAOte,EAAEwzD,QAAQ5E,iBAAiB5uD,EAAEo0D,QAAQxvD,EAAE6gD,aAAapmC,EAAEiwC,WAAW,KAAK,CAACpqD,MAAMlF,EAAEwzD,QAAQL,qBAAqBnzD,EAAEmhF,OAAO/9E,KAAK2F,MAAM,KAAK/I,EAAEwzD,QAAQ7E,iBAAiB3uD,EAAEohF,QAAQh+E,KAAK2F,MAAM,KAAK/I,EAAEwzD,QAAQ5E,kBAAkB,IAAIj7C,EAAE3T,EAAEmhF,OAAOnhF,EAAEohF,QAAQ,OAAOphF,EAAE0zD,UAAU,IAAIv4C,EAAEkmE,OAAO1tE,GAAG3T,EAAE0zD,UAAU4tB,SAAS3tE,GAAG3T,EAAE,OAAOqf,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUigD,QAAQ,WAAW,OAAOzhD,KAAKygF,uBAAuBlgF,OAAOuH,aAAa9H,KAAKygF,sBAAsBzgF,KAAKygF,qBAAqB,OAAO92C,EAAEnoC,UAAUimD,WAAW,WAAWznD,KAAKugF,kBAAkB,GAAG52C,EAAEnoC,UAAUq8E,KAAK,SAAS7qE,EAAE22B,EAAEpmC,EAAE9D,GAAG,GAAG,KAAKkqC,EAAEhiB,KAAK,OAAM,EAAG,IAAI3nB,KAAKghF,UAAUr3C,GAAG,OAAM,EAAG,IAAI7qB,EAAE2lC,EAAE9a,GAAGv2B,EAAEpT,KAAKmzD,UAAUjoD,IAAI4T,GAAG,GAAG,MAAM1L,EAAE,OAAOpT,KAAKihF,eAAejuE,EAAEI,EAAE7P,EAAE9D,IAAG,EAAG,GAAGO,KAAKugF,kBAAkB,IAAI,CAAC,IAAI39B,EAAEA,EAAE5iD,KAAKmzD,UAAU7vD,KAAKtD,KAAKmzD,UAAU+tB,SAASlhF,KAAKmzD,UAAU7vD,KAAKtD,KAAKmzD,UAAUguB,OAAOl2E,MAAM,IAAI+E,EAAEhQ,KAAK+zD,aAAapqB,EAAEiZ,GAAG,OAAO5iD,KAAKmzD,UAAUxjD,IAAImP,EAAE9O,GAAGhQ,KAAKihF,eAAejuE,EAAEhD,EAAEzM,EAAE9D,IAAG,EAAG,OAAM,GAAIkqC,EAAEnoC,UAAUw/E,UAAU,SAAShuE,GAAG,OAAOA,EAAE2U,KAAK,KAAKgiB,EAAEnoC,UAAU4/E,eAAe,SAASpuE,GAAG,OAAOA,EAAEhT,KAAK4gF,OAAO5gF,KAAKizD,QAAQ7E,iBAAiBzkB,EAAEnoC,UAAU6/E,eAAe,SAASruE,GAAG,OAAOnQ,KAAK2F,MAAMwK,EAAEhT,KAAK4gF,QAAQ5gF,KAAKizD,QAAQ5E,kBAAkB1kB,EAAEnoC,UAAUy/E,eAAe,SAASjuE,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIkqC,EAAEq0B,QAAQ,CAAC,IAAIl/C,EAAE9e,KAAKohF,eAAez3C,EAAE1+B,OAAOmI,EAAEpT,KAAKqhF,eAAe13C,EAAE1+B,OAAO+H,EAAEsuE,UAAU33C,EAAE43C,SAASvhF,KAAK0gF,QAAQ1gF,KAAK2gF,aAAa7hE,EAAE1L,EAAEpT,KAAKizD,QAAQ7E,gBAAgBpuD,KAAKizD,QAAQ5E,iBAAiB9qD,EAAE9D,EAAEO,KAAKizD,QAAQ7E,gBAAgBpuD,KAAKizD,QAAQ5E,oBAAoB1kB,EAAEnoC,UAAUkoD,uBAAuB,SAAS12C,GAAG,OAAOA,EAAEhT,KAAKizD,QAAQjxD,OAAOgoD,KAAKzqD,OAAOS,KAAKizD,QAAQjxD,OAAOgoD,KAAKh3C,GAAGhD,EAAEy0D,oBAAoBzxD,IAAI22B,EAAEnoC,UAAUyyD,oBAAoB,SAASjhD,GAAG,OAAOhT,KAAKizD,QAAQL,kBAAkBzxD,EAAE6R,EAAEu2C,KAAKn2C,EAAE8nD,uBAAuBl7D,KAAKizD,QAAQjxD,OAAOk4C,WAAWlnC,EAAEu2C,GAAG,IAAIvpD,KAAK0pD,uBAAuB12C,EAAEu2C,IAAIvpD,KAAKizD,QAAQjxD,OAAOqb,YAAYssB,EAAEnoC,UAAUggF,oBAAoB,SAASxuE,GAAG,OAAOA,EAAEs2C,KAAKl2C,EAAE8nD,uBAAuBnX,EAAE3+C,MAAMs2D,OAAO17D,KAAKizD,QAAQjxD,OAAOqb,YAAYrK,EAAEs2C,GAAG,IAAItpD,KAAK0pD,uBAAuB12C,EAAEs2C,IAAItpD,KAAKizD,QAAQjxD,OAAOk4C,YAAYvQ,EAAEnoC,UAAUuyD,aAAa,SAAS/gD,EAAE22B,GAAG3pC,KAAKugF,oBAAoBvgF,KAAK6zD,QAAQ1/C,OAAO,IAAI5Q,EAAEvD,KAAKi0D,oBAAoBjhD,GAAGhT,KAAK6zD,QAAQqB,yBAAyB,OAAOl1D,KAAK6zD,QAAQsB,UAAU5xD,EAAEgvD,IAAIvyD,KAAK6zD,QAAQuB,SAAS,EAAE,EAAEp1D,KAAKizD,QAAQ7E,gBAAgBpuD,KAAKizD,QAAQ5E,kBAAkBruD,KAAK6zD,QAAQqB,yBAAyB,cAAc,IAAIz1D,EAAEuT,EAAEqnC,KAAKr6C,KAAKizD,QAAQN,eAAe3yD,KAAKizD,QAAQltB,WAAWjnB,EAAE9L,EAAEunC,OAAO,SAAS,GAAGv6C,KAAK6zD,QAAQwB,KAAKv2C,EAAE,IAAIrf,EAAE,IAAIO,KAAKizD,QAAQpxC,SAAS7hB,KAAKizD,QAAQxE,iBAAiB,MAAMzuD,KAAKizD,QAAQlxC,WAAW/hB,KAAK6zD,QAAQyB,aAAa,cAAct1D,KAAK6zD,QAAQsB,UAAUn1D,KAAKwhF,oBAAoBxuE,GAAGu/C,IAAIv/C,EAAEyqE,MAAMz9E,KAAK6zD,QAAQ0B,YAAYniD,EAAEoiD,aAAax1D,KAAK6zD,QAAQ4B,SAASziD,EAAEwqE,MAAM,EAAEx9E,KAAKizD,QAAQ5E,kBAAkBruD,KAAK6zD,QAAQ3V,UAAU,IAAI0E,EAAE5iD,KAAK6zD,QAAQ6B,aAAa,EAAE,EAAE11D,KAAKizD,QAAQ7E,gBAAgBpuD,KAAKizD,QAAQ5E,kBAAkBr+C,GAAE,EAAGhQ,KAAKizD,QAAQL,oBAAoB5iD,EAAE,SAASgD,EAAE22B,GAAG,IAAI,IAAIpmC,GAAE,EAAG9D,EAAEkqC,EAAErnC,OAAO,GAAGwc,EAAE6qB,EAAErnC,OAAO,GAAG,IAAI8Q,EAAEu2B,EAAErnC,OAAO,EAAE,IAAIsgD,EAAE,EAAEA,EAAE5vC,EAAErB,KAAKpS,OAAOqjD,GAAG,EAAE5vC,EAAErB,KAAKixC,KAAKnjD,GAAGuT,EAAErB,KAAKixC,EAAE,KAAK9jC,GAAG9L,EAAErB,KAAKixC,EAAE,KAAKxvC,EAAEJ,EAAErB,KAAKixC,EAAE,GAAG,EAAEr/C,GAAE,EAAG,OAAOA,EAA/K,CAAkLq/C,EAAEr/C,IAAI,IAAIqX,EAAE5a,KAAKohF,eAAez3C,GAAG2Y,EAAEtiD,KAAKqhF,eAAe13C,GAAG3pC,KAAK2zD,UAAUkC,aAAajT,EAAEhoC,EAAE0nC,GAAG,IAAIj+C,EAAE,CAAC4G,MAAM0+B,EAAEq0B,QAAQhuD,EAAEuxE,UAAS,GAAI,OAAOvhF,KAAKyhF,kBAAkBp9E,GAAGA,GAAGslC,EAAEnoC,UAAUigF,kBAAkB,SAASzuE,GAAG,IAAI22B,EAAE3pC,OAAO,sBAAsBO,SAAS+hD,EAAEqvB,WAAWrvB,EAAEo/B,WAAW1hF,KAAKwgF,uBAAuBtgF,KAAK8S,GAAG,OAAOhT,KAAKygF,uBAAuBzgF,KAAKygF,qBAAqBlgF,OAAOe,YAAW,WAAY,OAAOqoC,EAAEg4C,oBAAoB,QAAQh4C,EAAEnoC,UAAUmgF,gBAAgB,WAAW,IAAI3uE,EAAEhT,KAAK2pC,EAAE3pC,KAAKwgF,uBAAuBxgF,KAAKwgF,uBAAuB,GAAGjgF,OAAOqhF,kBAAkB5hF,KAAK2gF,cAAckB,MAAK,SAAUt+E,GAAGyP,EAAE0tE,QAAQn9E,EAAE,IAAI,IAAI9D,EAAE,EAAEA,EAAEkqC,EAAEpqC,OAAOE,IAAIkqC,EAAElqC,GAAG8hF,UAAS,KAAMvhF,KAAKygF,qBAAqB,MAAM92C,EAAxoI,CAA2oIiZ,EAAEm9B,eAAep2C,EAAEs2C,iBAAiB9kE,EAAE,IAAImN,EAAE,SAAStV,GAAG,SAAS22B,EAAEA,EAAEpmC,GAAG,OAAOyP,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAO8e,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUq8E,KAAK,SAAS7qE,EAAE22B,EAAEpmC,EAAE9D,GAAG,OAAM,GAAIkqC,EAAjH,CAAoHiZ,EAAEm9B,eAAep2C,EAAE02C,cAAc/3D,GAAGw5D,KAAK,CAAC9uE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEm3C,YAAO,EAAO,IAAIv9E,EAAE,WAAW,SAASyP,EAAEA,GAAGhT,KAAKkhF,SAASluE,EAAEhT,KAAK+hF,KAAK,GAAG/hF,KAAKgiF,MAAM,KAAKhiF,KAAKiiF,MAAM,KAAKjiF,KAAKkiF,UAAU,GAAGliF,KAAKsD,KAAK,EAAE,OAAO0P,EAAExR,UAAU2gF,YAAY,SAASnvE,GAAG,IAAI22B,EAAE32B,EAAEovE,KAAK7+E,EAAEyP,EAAE40D,KAAK50D,IAAIhT,KAAKgiF,QAAQhiF,KAAKgiF,MAAMz+E,GAAGyP,IAAIhT,KAAKiiF,QAAQjiF,KAAKiiF,MAAMt4C,GAAG,OAAOA,IAAIA,EAAEi+B,KAAKrkE,GAAG,OAAOA,IAAIA,EAAE6+E,KAAKz4C,IAAI32B,EAAExR,UAAU6gF,YAAY,SAASrvE,GAAG,IAAI22B,EAAE3pC,KAAKiiF,MAAM,OAAOt4C,IAAIA,EAAEi+B,KAAK50D,GAAGA,EAAEovE,KAAKz4C,EAAE32B,EAAE40D,KAAK,KAAK5nE,KAAKiiF,MAAMjvE,EAAE,OAAOhT,KAAKgiF,QAAQhiF,KAAKgiF,MAAMhvE,IAAIA,EAAExR,UAAUu/E,SAAS,SAAS/tE,GAAG,IAAI,IAAI22B,EAAE3pC,KAAKkiF,UAAU3+E,EAAE,EAAEA,EAAEyP,EAAEzP,IAAIomC,EAAEzpC,KAAK,CAACkiF,KAAK,KAAKxa,KAAK,KAAKz+D,IAAI,KAAKzG,MAAM,QAAQsQ,EAAExR,UAAU0J,IAAI,SAAS8H,GAAG,IAAI22B,EAAE3pC,KAAK+hF,KAAK/uE,GAAG,YAAO,IAAS22B,GAAG3pC,KAAKmiF,YAAYx4C,GAAG3pC,KAAKqiF,YAAY14C,GAAGA,EAAEjnC,OAAO,MAAMsQ,EAAExR,UAAU8gF,UAAU,SAAStvE,GAAG,IAAI22B,EAAE3pC,KAAK+hF,KAAK/uE,GAAG,YAAO,IAAS22B,EAAEA,EAAEjnC,MAAM,MAAMsQ,EAAExR,UAAU2/E,KAAK,WAAW,IAAInuE,EAAEhT,KAAKgiF,MAAM,OAAO,OAAOhvE,EAAE,KAAKA,EAAEtQ,OAAOsQ,EAAExR,UAAUmO,IAAI,SAASqD,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAK+hF,KAAK/uE,GAAG,QAAG,IAASzP,EAAEA,EAAEvD,KAAK+hF,KAAK/uE,GAAGhT,KAAKmiF,YAAY5+E,GAAGA,EAAEb,MAAMinC,OAAO,GAAG3pC,KAAKsD,MAAMtD,KAAKkhF,SAAS39E,EAAEvD,KAAKgiF,MAAMhiF,KAAKmiF,YAAY5+E,UAAUvD,KAAK+hF,KAAKx+E,EAAE4F,KAAK5F,EAAE4F,IAAI6J,EAAEzP,EAAEb,MAAMinC,EAAE3pC,KAAK+hF,KAAK/uE,GAAGzP,MAAM,CAAC,IAAI9D,EAAEO,KAAKkiF,UAAUziF,EAAEF,OAAO,IAAIgE,EAAE9D,EAAEyvC,OAAO/lC,IAAI6J,EAAEzP,EAAEb,MAAMinC,GAAGpmC,EAAE,CAAC6+E,KAAK,KAAKxa,KAAK,KAAKz+D,IAAI6J,EAAEtQ,MAAMinC,GAAG3pC,KAAK+hF,KAAK/uE,GAAGzP,EAAEvD,KAAKsD,OAAOtD,KAAKqiF,YAAY9+E,IAAIyP,EAA/rC,GAAosC22B,EAAEm3C,OAAOv9E,GAAGg/E,KAAK,SAASvvE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEqrC,iBAAY,EAAO,IAAIhlE,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE5X,EAAE,MAAM+kB,EAAE,4BAA4B1lB,EAAE,YAAYY,EAAE,YAAYqmC,EAAE,cAAcpmC,EAAE,EAAEsuB,EAAE,SAAS/e,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAEhoC,EAAE0nC,EAAEj+C,EAAE0/C,GAAG,IAAI5iD,EAAE6R,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOmB,EAAEujD,QAAQ/a,EAAExoC,EAAEgmE,SAAS5jE,EAAEpC,EAAE2qE,eAAersE,EAAE0B,EAAEuxE,iBAAiB5zD,EAAE3d,EAAEqhF,WAAWpvE,EAAEjS,EAAEshF,YAAY7/B,EAAEzhD,EAAEmvD,iBAAiBhO,EAAEnhD,EAAE6qE,gBAAgB3nE,EAAElD,EAAEwlE,eAAe5iB,EAAE5iD,EAAEuhF,eAAej/E,IAAItC,EAAEo/D,aAAa,GAAGp/D,EAAEm/D,cAAcriD,SAASyE,cAAc,OAAOvhB,EAAEm/D,cAAc5J,UAAUjlD,IAAI,cAActQ,EAAEm/D,cAAc7/C,MAAM+wD,WAAW,SAASrwE,EAAEm/D,cAAcn0D,aAAa,cAAc,QAAQhL,EAAEwhF,oBAAoBxhF,EAAEwlE,eAAe9kB,KAAK1gD,EAAEwlE,eAAe1tC,MAAM93B,EAAEyhF,oBAAoB3kE,SAASyE,cAAc,OAAOvhB,EAAEyhF,oBAAoBlsB,UAAUjlD,IAAI,mBAAmBtQ,EAAEyhF,oBAAoBz2E,aAAa,cAAc,QAAQhL,EAAE4gD,WAAW,CAACqM,gBAAgB,EAAEC,iBAAiB,EAAEvC,gBAAgB,EAAEC,iBAAiB,EAAE9D,eAAe,EAAEC,cAAc,EAAEC,kBAAkB,EAAEC,mBAAmB,EAAEkG,YAAY,EAAEC,aAAa,EAAEvM,gBAAgB,EAAEC,iBAAiB,GAAG9gD,EAAEutD,oBAAoBvtD,EAAE0hF,aAAa1hF,EAAE2hF,YAAYloE,EAAEs0D,eAAel/D,EAAE+yE,sBAAsB9kE,SAAS9c,EAAEujD,SAASvjD,EAAEgmE,SAASzQ,UAAUjlD,IAAI6W,EAAEnnB,EAAEuhF,gBAAgBvhF,EAAE2qE,eAAehpD,YAAY3hB,EAAEm/D,eAAen/D,EAAE2qE,eAAehpD,YAAY3hB,EAAEyhF,qBAAqBzhF,EAAEqhF,WAAWhoB,qBAAoB,SAAUxnD,GAAG,OAAO7R,EAAE6hF,aAAahwE,MAAM7R,EAAEqhF,WAAW9nB,qBAAoB,SAAU1nD,GAAG,OAAO7R,EAAE8hF,aAAajwE,MAAM7R,EAAEshF,YAAYjoB,qBAAoB,SAAUxnD,GAAG,OAAO7R,EAAE6hF,aAAahwE,MAAM7R,EAAEshF,YAAY/nB,qBAAoB,SAAU1nD,GAAG,OAAO7R,EAAE8hF,aAAajwE,MAAM7R,EAAE,OAAO2d,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,kBAAkB,CAAC0J,IAAI,WAAW,OAAM,IAAK/J,EAAE4sD,cAAchb,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAKmnE,SAASzQ,UAAU/jD,OAAO2V,EAAEtoB,KAAK0iF,gBAAgBvnE,EAAEgnD,wBAAwBniE,KAAKsgE,cAActgE,KAAK4iF,oBAAoB5iF,KAAKkjF,mBAAmBljF,KAAKmjF,yBAAyBnwE,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,OAAO2pC,EAAEnoC,UAAUktD,kBAAkB,WAAW1uD,KAAK+hD,WAAWqM,gBAAgBpuD,KAAKswD,iBAAiBn0C,MAAM5b,OAAOkuD,iBAAiBzuD,KAAK+hD,WAAWsM,iBAAiBxrD,KAAK0F,KAAKvI,KAAKswD,iBAAiBvyC,OAAOxd,OAAOkuD,kBAAkBzuD,KAAK+hD,WAAW+J,gBAAgB9rD,KAAK+hD,WAAWqM,gBAAgBvrD,KAAKkB,MAAM/D,KAAKgsE,gBAAgBvtD,QAAQkgE,eAAe3+E,KAAK+hD,WAAWgK,iBAAiBlpD,KAAK2F,MAAMxI,KAAK+hD,WAAWsM,iBAAiBruD,KAAKgsE,gBAAgBvtD,QAAQ+yD,YAAYxxE,KAAK+hD,WAAWkG,eAAe,EAAEjoD,KAAK+hD,WAAWmG,cAAc,EAAEloD,KAAK+hD,WAAWoG,kBAAkBnoD,KAAK+hD,WAAW+J,gBAAgB9rD,KAAK2mE,eAAe9kB,KAAK7hD,KAAK+hD,WAAWqG,mBAAmBpoD,KAAK+hD,WAAWgK,iBAAiB/rD,KAAK2mE,eAAe1tC,KAAKj5B,KAAK+hD,WAAWuM,YAAYzrD,KAAKkB,MAAM/D,KAAK+hD,WAAWoG,kBAAkB5nD,OAAOkuD,kBAAkBzuD,KAAK+hD,WAAWwM,aAAa1rD,KAAKkB,MAAM/D,KAAK+hD,WAAWqG,mBAAmB7nD,OAAOkuD,kBAAkBzuD,KAAK+hD,WAAWC,gBAAgBhiD,KAAK+hD,WAAWuM,YAAYtuD,KAAK2mE,eAAe9kB,KAAK7hD,KAAK+hD,WAAWE,iBAAiBjiD,KAAK+hD,WAAWwM,aAAavuD,KAAK2mE,eAAe1tC,KAAK,IAAI,IAAIjmB,EAAE,EAAE22B,EAAE3pC,KAAKugE,aAAavtD,EAAE22B,EAAEpqC,OAAOyT,IAAI,CAAC,IAAIzP,EAAEomC,EAAE32B,GAAGzP,EAAEkd,MAAMtE,MAAMnc,KAAK+hD,WAAWuM,YAAY,KAAK/qD,EAAEkd,MAAM1C,OAAO/d,KAAK+hD,WAAWE,iBAAiB,KAAK1+C,EAAEkd,MAAM+wD,WAAWxxE,KAAK+hD,WAAWE,iBAAiB,KAAK1+C,EAAEkd,MAAMZ,SAAS,SAAS7f,KAAKmjF,0BAA0BnjF,KAAKmjF,wBAAwBllE,SAASyE,cAAc,SAAS1iB,KAAK8rE,eAAehpD,YAAY9iB,KAAKmjF,0BAA0B,IAAI1jF,EAAEO,KAAKojF,kBAAkB,wFAAwFpjF,KAAK+hD,WAAWC,gBAAgB,MAAMhiD,KAAKmjF,wBAAwBj3E,YAAYzM,EAAEO,KAAK4iF,oBAAoBniE,MAAM1C,OAAO/d,KAAK0yE,iBAAiBjyD,MAAM1C,OAAO/d,KAAK8rE,eAAerrD,MAAMtE,MAAMnc,KAAK+hD,WAAWuM,YAAY,KAAKtuD,KAAK8rE,eAAerrD,MAAM1C,OAAO/d,KAAK+hD,WAAWwM,aAAa,MAAM5kB,EAAEnoC,UAAU0oD,UAAU,SAASl3C,GAAGhT,KAAK0kD,QAAQ1xC,EAAEhT,KAAK6iF,cAAcl5C,EAAEnoC,UAAUqhF,WAAW,WAAW,IAAI7vE,EAAEhT,KAAKA,KAAKkjF,qBAAqBljF,KAAKkjF,mBAAmBjlE,SAASyE,cAAc,SAAS1iB,KAAK8rE,eAAehpD,YAAY9iB,KAAKkjF,qBAAqB,IAAIv5C,EAAE3pC,KAAKojF,kBAAkB,yBAAyBpjF,KAAK0kD,QAAQxK,WAAWqY,IAAI,kBAAkBvyD,KAAKgsE,gBAAgBvtD,QAAQsD,WAAW,gBAAgB/hB,KAAKgsE,gBAAgBvtD,QAAQoD,SAAS,OAAO8nB,GAAG3pC,KAAKojF,kBAAkB,cAAcpzE,EAAEqzE,WAAW,oBAAoBrjF,KAAKgsE,gBAAgBvtD,QAAQsnB,WAAW,KAAK/lC,KAAKojF,kBAAkB,SAASpzE,EAAEqzE,WAAW,mBAAmBrjF,KAAKgsE,gBAAgBvtD,QAAQk0C,eAAe,KAAK3yD,KAAKojF,kBAAkB,SAASpzE,EAAEszE,aAAa,0BAA0B35C,GAAG,+BAA+B3pC,KAAK0iF,eAAe,iCAAiC/4C,GAAG,0BAA0B3pC,KAAK0iF,eAAe,8BAA8B1iF,KAAK0kD,QAAQtU,OAAOmiB,IAAI,aAAavyD,KAAK0kD,QAAQ8N,aAAaD,IAAI,gCAAgCvyD,KAAK0kD,QAAQ8N,aAAaD,IAAI,aAAavyD,KAAK0kD,QAAQtU,OAAOmiB,IAAI,OAAO5oB,GAAG3pC,KAAKojF,kBAAkB,mCAAmCpzE,EAAEuzE,aAAa,IAAIvzE,EAAEwzE,yBAAyB,yBAAyBxjF,KAAK0kD,QAAQtU,OAAOmiB,IAAI,2BAA2BvyD,KAAKojF,kBAAkB,6BAA6BpzE,EAAEuzE,aAAa,IAAIvzE,EAAEyzE,mBAAmB,SAASzzE,EAAEwzE,yBAAyB,mCAAmCxjF,KAAK0iF,eAAe,0BAA0B1iF,KAAKojF,kBAAkB,6BAA6BpzE,EAAEuzE,aAAa,IAAIvzE,EAAEyzE,mBAAmB,IAAIzzE,EAAEwzE,yBAAyB,6BAA6BxjF,KAAK0iF,eAAe,0BAA0B1iF,KAAKojF,kBAAkB,6BAA6BpzE,EAAEuzE,aAAa,IAAIvzE,EAAEwzE,yBAAyB,wBAAwBxjF,KAAK0kD,QAAQtU,OAAOmiB,IAAI,YAAYvyD,KAAK0kD,QAAQ8N,aAAaD,IAAI,KAAKvyD,KAAKojF,kBAAkB,iBAAiBpzE,EAAEuzE,aAAa,IAAIvzE,EAAE0zE,uBAAuB,kBAAkB1jF,KAAKgsE,gBAAgBvtD,QAAQw/D,YAAY,UAAUj+E,KAAK0kD,QAAQtU,OAAOmiB,IAAI,WAAWvyD,KAAKojF,kBAAkB,iBAAiBpzE,EAAEuzE,aAAa,IAAIvzE,EAAE2zE,6BAA6B,2BAA2B3jF,KAAK0kD,QAAQtU,OAAOmiB,IAAI,WAAW5oB,GAAG3pC,KAAKojF,kBAAkB,8FAA8FpjF,KAAKojF,kBAAkB,iEAAiEpjF,KAAK0kD,QAAQ+N,qBAAqBF,IAAI,KAAKvyD,KAAK0kD,QAAQsF,KAAKp5C,SAAQ,SAAUrN,EAAE9D,GAAGkqC,GAAG32B,EAAEowE,kBAAkB,KAAKxgF,EAAEnD,EAAE,aAAa8D,EAAEgvD,IAAI,MAAMv/C,EAAEowE,kBAAkB,KAAK5/E,EAAE/D,EAAE,wBAAwB8D,EAAEgvD,IAAI,SAAS5oB,GAAG3pC,KAAKojF,kBAAkB,KAAKxgF,EAAEgY,EAAEsgD,uBAAuB,aAAazW,EAAEr/C,MAAMs2D,OAAO17D,KAAK0kD,QAAQrnC,YAAYk1C,IAAI,MAAMvyD,KAAKojF,kBAAkB,KAAK5/E,EAAEoX,EAAEsgD,uBAAuB,wBAAwBl7D,KAAK0kD,QAAQxK,WAAWqY,IAAI,MAAMvyD,KAAKkjF,mBAAmBh3E,YAAYy9B,GAAGA,EAAEnoC,UAAU+tD,yBAAyB,WAAWvvD,KAAK0uD,qBAAqB/kB,EAAEnoC,UAAUmhF,oBAAoB,SAAS3vE,EAAE22B,GAAG,IAAI,IAAIpmC,EAAEvD,KAAKugE,aAAahhE,OAAOgE,GAAGomC,EAAEpmC,IAAI,CAAC,IAAI9D,EAAEwe,SAASyE,cAAc,OAAO1iB,KAAKsgE,cAAcx9C,YAAYrjB,GAAGO,KAAKugE,aAAargE,KAAKT,GAAG,KAAKO,KAAKugE,aAAahhE,OAAOoqC,GAAG3pC,KAAKsgE,cAAc1wD,YAAY5P,KAAKugE,aAAarxB,QAAQvF,EAAEnoC,UAAUgmD,SAAS,SAASx0C,EAAE22B,GAAG3pC,KAAK2iF,oBAAoB3vE,EAAE22B,GAAG3pC,KAAK0uD,qBAAqB/kB,EAAEnoC,UAAU0tD,kBAAkB,WAAWlvD,KAAK0uD,qBAAqB/kB,EAAEnoC,UAAUguD,OAAO,WAAWxvD,KAAKsgE,cAAc5J,UAAU/jD,OAAOk3B,IAAIF,EAAEnoC,UAAUiuD,QAAQ,WAAWzvD,KAAKsgE,cAAc5J,UAAUjlD,IAAIo4B,IAAIF,EAAEnoC,UAAUkuD,mBAAmB,SAAS18C,EAAE22B,EAAEpmC,GAAG,KAAKvD,KAAK4iF,oBAAoBpgB,SAASjjE,QAAQS,KAAK4iF,oBAAoBhzE,YAAY5P,KAAK4iF,oBAAoBpgB,SAAS,IAAI,GAAGxvD,GAAG22B,EAAE,CAAC,IAAIlqC,EAAEuT,EAAE,GAAGhT,KAAK2mE,eAAe3iB,OAAOwM,MAAM1xC,EAAE6qB,EAAE,GAAG3pC,KAAK2mE,eAAe3iB,OAAOwM,MAAMp9C,EAAEvQ,KAAKuE,IAAI3H,EAAE,GAAGmjD,EAAE//C,KAAKC,IAAIgc,EAAE9e,KAAK2mE,eAAe1tC,KAAK,GAAG,KAAK7lB,GAAGpT,KAAK2mE,eAAe1tC,MAAM2pB,EAAE,GAAG,CAAC,IAAI5yC,EAAEiO,SAASw0D,yBAAyB,GAAGlvE,EAAEyM,EAAE8S,YAAY9iB,KAAK4jF,wBAAwBxwE,EAAEJ,EAAE,GAAG22B,EAAE,GAAGiZ,EAAExvC,EAAE,QAAQ,CAAC,IAAIwH,EAAEnb,IAAI2T,EAAEJ,EAAE,GAAG,EAAEsvC,EAAElvC,IAAI0L,EAAE6qB,EAAE,GAAG3pC,KAAK2mE,eAAe9kB,KAAK7xC,EAAE8S,YAAY9iB,KAAK4jF,wBAAwBxwE,EAAEwH,EAAE0nC,IAAI,IAAIj+C,EAAEu+C,EAAExvC,EAAE,EAAE,GAAGpD,EAAE8S,YAAY9iB,KAAK4jF,wBAAwBxwE,EAAE,EAAE,EAAEpT,KAAK2mE,eAAe9kB,KAAKx9C,IAAI+O,IAAIwvC,EAAE,CAAC,IAAImB,EAAEjlC,IAAI8jC,EAAEjZ,EAAE,GAAG3pC,KAAK2mE,eAAe9kB,KAAK7xC,EAAE8S,YAAY9iB,KAAK4jF,wBAAwBhhC,EAAE,EAAEmB,KAAK/jD,KAAK4iF,oBAAoB9/D,YAAY9S,MAAM25B,EAAEnoC,UAAUoiF,wBAAwB,SAAS5wE,EAAE22B,EAAEpmC,EAAE9D,QAAG,IAASA,IAAIA,EAAE,GAAG,IAAIqf,EAAEb,SAASyE,cAAc,OAAO,OAAO5D,EAAE2B,MAAM1C,OAAOte,EAAEO,KAAK+hD,WAAWE,iBAAiB,KAAKnjC,EAAE2B,MAAM0mB,IAAIn0B,EAAEhT,KAAK+hD,WAAWE,iBAAiB,KAAKnjC,EAAE2B,MAAMwmB,KAAK0C,EAAE3pC,KAAK+hD,WAAWC,gBAAgB,KAAKljC,EAAE2B,MAAMtE,MAAMnc,KAAK+hD,WAAWC,iBAAiBz+C,EAAEomC,GAAG,KAAK7qB,GAAG6qB,EAAEnoC,UAAUquD,aAAa,aAAalmB,EAAEnoC,UAAUsuD,iBAAiB,WAAW9vD,KAAK0uD,oBAAoB1uD,KAAK6iF,cAAcl5C,EAAEnoC,UAAUgR,MAAM,WAAW,IAAI,IAAIQ,EAAE,EAAE22B,EAAE3pC,KAAKugE,aAAavtD,EAAE22B,EAAEpqC,OAAOyT,IAAI22B,EAAE32B,GAAG+vD,UAAU,IAAIp5B,EAAEnoC,UAAU6uD,WAAW,SAASr9C,EAAE22B,GAAG,IAAI,IAAIpmC,EAAEvD,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe3iB,OAAOna,EAAEpqC,EAAEoD,KAAKC,IAAI9C,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe9kB,KAAK,GAAG/iC,EAAE9e,KAAKgsE,gBAAgBvtD,QAAQwO,YAAY7Z,EAAEJ,EAAEI,GAAGu2B,EAAEv2B,IAAI,CAAC,IAAIwvC,EAAE5iD,KAAKugE,aAAantD,GAAGwvC,EAAEmgB,UAAU,GAAG,IAAI/yD,EAAEoD,EAAEpT,KAAK2mE,eAAe3iB,OAAOwM,MAAM51C,EAAE5a,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAI8E,GAAGsyC,EAAEtiD,KAAKgsE,gBAAgBvtD,QAAQu/D,YAAYp7B,EAAE9/B,YAAY9iB,KAAK8iF,YAAYe,UAAUjpE,EAAE5K,EAAEA,IAAIzM,EAAE++C,EAAE7iD,EAAEqf,EAAE9e,KAAK+hD,WAAWC,gBAAgBhiD,KAAK2mE,eAAe9kB,SAAS5zC,OAAOqzC,eAAe3X,EAAEnoC,UAAU,oBAAoB,CAAC0J,IAAI,WAAW,MAAM,IAAIod,EAAEtoB,KAAK0iF,gBAAgBngC,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUwhF,aAAa,SAAShwE,GAAGhT,KAAK8jF,kBAAkB9wE,EAAE8nD,GAAG9nD,EAAEioD,GAAGjoD,EAAE+nD,GAAG/nD,EAAEgoD,GAAGhoD,EAAE6uC,MAAK,IAAKlY,EAAEnoC,UAAUyhF,aAAa,SAASjwE,GAAGhT,KAAK8jF,kBAAkB9wE,EAAE8nD,GAAG9nD,EAAEioD,GAAGjoD,EAAE+nD,GAAG/nD,EAAEgoD,GAAGhoD,EAAE6uC,MAAK,IAAKlY,EAAEnoC,UAAUsiF,kBAAkB,SAAS9wE,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,GAAG,KAAKJ,IAAI22B,GAAGpmC,IAAI9D,GAAG,CAAC,IAAImjD,EAAE5iD,KAAKugE,aAAah9D,GAAG,IAAIq/C,EAAE,OAAO,IAAI5yC,EAAE4yC,EAAE4f,SAASxvD,GAAGhD,IAAIA,EAAEyQ,MAAMub,eAAe5oB,EAAE,YAAY,UAAUJ,GAAG8L,IAAI9L,EAAE,EAAEzP,OAAO6P,EAAE,CAACwvC,EAAE,EAAEmB,EAAE66B,uBAAuBh8B,EAAE,EAAEv+C,EAAE4uE,kBAAkBrwB,EAAE,EAAEmB,EAAEupB,iBAAiB1qB,EAAE,EAAEmB,EAAE+kB,iBAAiBn/B,GAA5kT,CAAglT2Y,EAAEsO,YAAYjnB,EAAEqrC,YAAYjjD,GAAGgyD,KAAK,SAAS/wE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAG9jC,EAAE9e,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEo5C,sBAAsBp5C,EAAEg6C,6BAA6Bh6C,EAAE+5C,uBAAuB/5C,EAAE65C,yBAAyB75C,EAAE85C,mBAAmB95C,EAAE45C,aAAa55C,EAAEq6C,gBAAgBr6C,EAAE25C,aAAa35C,EAAEs6C,UAAUt6C,EAAE05C,gBAAW,EAAO,IAAIjwE,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,KAAKyM,EAAEzM,EAAE,KAAKqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMomC,EAAE05C,WAAW,aAAa15C,EAAEs6C,UAAU,YAAYt6C,EAAE25C,aAAa,eAAe35C,EAAEq6C,gBAAgB,kBAAkBr6C,EAAE45C,aAAa,eAAe55C,EAAE85C,mBAAmB,qBAAqB95C,EAAE65C,yBAAyB,qBAAqB75C,EAAE+5C,uBAAuB,mBAAmB/5C,EAAEg6C,6BAA6B,yBAAyB,IAAIxiF,EAAE,WAAW,SAAS6R,EAAEA,EAAE22B,EAAEpmC,EAAE9D,GAAGO,KAAKuyE,UAAUv/D,EAAEhT,KAAK0kD,QAAQ/a,EAAE3pC,KAAKozE,wBAAwB7vE,EAAEvD,KAAKgsE,gBAAgBvsE,EAAEO,KAAK4tD,UAAU,IAAI59C,EAAE69C,SAAS,OAAO76C,EAAExR,UAAU0oD,UAAU,SAASl3C,GAAGhT,KAAK0kD,QAAQ1xC,GAAGA,EAAExR,UAAUqiF,UAAU,SAAS7wE,EAAEzP,EAAE9D,EAAEqf,EAAE9O,EAAE4K,EAAEvW,EAAElD,GAAG,IAAI,IAAIga,EAAEnb,KAAKuyE,UAAUE,yBAAyBnqD,EAAEtoB,KAAKozE,wBAAwBmM,oBAAoBh8E,GAAGX,EAAE,EAAEY,EAAEX,KAAKC,IAAIkQ,EAAEzT,OAAO4B,GAAG,EAAEqC,GAAG,EAAEA,IAAI,GAAGwP,EAAEy9C,SAASjtD,EAAExD,KAAK4tD,WAAW8C,YAAY9N,EAAEiF,gBAAgBpoD,GAAG+D,IAAIwM,EAAE,CAACpN,EAAEY,EAAE,EAAE,MAAM,IAAIA,EAAE,EAAEA,EAAEZ,EAAEY,IAAI,CAACwP,EAAEy9C,SAASjtD,EAAExD,KAAK4tD,WAAW,IAAI/jB,EAAE7pC,KAAK4tD,UAAUl1B,WAAW,GAAG,IAAImR,EAAE,CAAC,IAAIpmC,GAAE,EAAGsuB,EAAEvuB,EAAE6C,EAAErG,KAAK4tD,UAAU,GAAGtlC,EAAE/oB,OAAO,GAAGiE,IAAI8kB,EAAE,GAAG,GAAG,CAAC7kB,GAAE,EAAG,IAAIovB,EAAEvK,EAAEpnB,QAAQmF,EAAE,IAAI09C,EAAEy7B,eAAex/E,KAAK4tD,UAAU56C,EAAEoxC,mBAAkB,EAAGvxB,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAId,EAAEc,EAAE,GAAG,EAAEgX,EAAExjC,EAAEqyB,WAAW,IAAI4Z,EAAEtyC,KAAKuyE,UAAU7vD,cAAc,QAAQ,GAAGmnB,EAAE,IAAIyI,EAAE7xB,MAAMtE,MAAM9X,EAAEwlC,EAAE,MAAMpmC,IAAI6uC,EAAE7xB,MAAMC,QAAQ,SAAS1Q,GAAGxM,GAAGwM,GAAG+hB,IAAI/hB,EAAExM,IAAI/D,GAAG+D,IAAIwM,EAAE,OAAOsiC,EAAEokB,UAAUjlD,IAAIk4B,EAAE45C,cAAc3oE,GAAG03B,EAAEokB,UAAUjlD,IAAIk4B,EAAE85C,oBAAoB3kE,GAAG,IAAI,MAAMwzB,EAAEokB,UAAUjlD,IAAIk4B,EAAE+5C,wBAAwB,MAAM,IAAI,YAAYpxC,EAAEokB,UAAUjlD,IAAIk4B,EAAEg6C,8BAA8B,MAAM,QAAQrxC,EAAEokB,UAAUjlD,IAAIk4B,EAAE65C,0BAA0Bn9E,EAAEuuD,UAAUtiB,EAAEokB,UAAUjlD,IAAIk4B,EAAE05C,YAAYh9E,EAAE0uD,YAAYziB,EAAEokB,UAAUjlD,IAAIk4B,EAAE25C,cAAcj9E,EAAEyuD,SAASxiB,EAAEokB,UAAUjlD,IAAIk4B,EAAEs6C,WAAW59E,EAAEg3D,eAAe/qB,EAAEokB,UAAUjlD,IAAIk4B,EAAEq6C,iBAAiB39E,EAAEsuD,cAAcriB,EAAEpmC,YAAY02C,EAAEyc,qBAAqB/sB,EAAEpmC,YAAY7F,EAAE0jD,YAAYnH,EAAEyc,qBAAqB,IAAIluC,EAAE9qB,EAAE2uD,aAAa1iC,EAAEjsB,EAAE4uD,iBAAiB7+C,EAAE/P,EAAEsjD,aAAa73B,EAAEzrB,EAAEojD,iBAAiBr4B,IAAI/qB,EAAEwuD,YAAY,GAAGzjC,EAAE,CAAC,IAAI2Y,EAAE5Y,EAAEA,EAAE/a,EAAEA,EAAE2zB,EAAE,IAAI1Y,EAAEiB,EAAEA,EAAER,EAAEA,EAAET,EAAE,OAAOiB,GAAG,KAAK,SAAS,KAAK,SAASjsB,EAAEuuD,UAAUzjC,EAAE,GAAGnxB,KAAKgsE,gBAAgBvtD,QAAQo0C,6BAA6B1hC,GAAG,GAAGnxB,KAAKkkF,sBAAsB5xC,EAAEtyC,KAAK0kD,QAAQrnC,WAAWrd,KAAK0kD,QAAQsF,KAAK74B,KAAKmhB,EAAEokB,UAAUjlD,IAAI,YAAY0f,GAAG,MAAM,KAAK,SAAS,IAAIM,EAAE6wB,EAAEhgD,KAAKm5D,QAAQtqC,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,GAAGnxB,KAAKkkF,sBAAsB5xC,EAAEtyC,KAAK0kD,QAAQrnC,WAAWoU,IAAIzxB,KAAKmkF,UAAU7xC,EAAE,UAAUmS,EAAEtzB,EAAEpuB,SAAS,IAAI,IAAI,IAAI,MAAM,KAAK,EAAE,QAAQ/C,KAAKkkF,sBAAsB5xC,EAAEtyC,KAAK0kD,QAAQrnC,WAAWrd,KAAK0kD,QAAQxK,aAAa9oB,GAAGkhB,EAAEokB,UAAUjlD,IAAI,YAAY2B,EAAE8nD,wBAAwB,OAAOppC,GAAG,KAAK,SAAS,KAAK,SAASwgB,EAAEokB,UAAUjlD,IAAI,YAAY2E,GAAG,MAAM,KAAK,SAASpW,KAAKmkF,UAAU7xC,EAAE,qBAAqBmS,EAAEruC,EAAErT,SAAS,IAAI,IAAI,IAAI,MAAM,KAAK,EAAE,QAAQquB,GAAGkhB,EAAEokB,UAAUjlD,IAAI,YAAY2B,EAAE8nD,wBAAwB//C,EAAE2H,YAAYwvB,GAAG9uC,EAAEuuB,GAAG,OAAO5W,GAAGnI,EAAExR,UAAU0iF,sBAAsB,SAASlxE,EAAE22B,EAAEpmC,GAAG,GAAG,IAAIvD,KAAKgsE,gBAAgBvtD,QAAQq0C,qBAAqB,OAAM,EAAG,IAAIrzD,EAAEO,KAAK0kD,QAAQgO,cAAc4R,SAAStkE,KAAK4tD,UAAUrE,GAAGvpD,KAAK4tD,UAAUtE,IAAI,YAAO,IAAS7pD,IAAIA,EAAE6iD,EAAEl9C,MAAMqvD,oBAAoB9qB,EAAEpmC,EAAEvD,KAAKgsE,gBAAgBvtD,QAAQq0C,sBAAsB9yD,KAAK0kD,QAAQgO,cAAc2R,SAASrkE,KAAK4tD,UAAUrE,GAAGvpD,KAAK4tD,UAAUtE,GAAG,MAAM7pD,EAAEA,EAAE,SAASA,IAAIO,KAAKmkF,UAAUnxE,EAAE,SAASvT,EAAE8yD,MAAK,IAAKv/C,EAAExR,UAAU2iF,UAAU,SAASnxE,EAAE22B,GAAG32B,EAAE7G,aAAa,QAAQ,IAAI6G,EAAEnH,aAAa,UAAU,IAAI89B,EAAE,MAAMlqC,EAAE,CAACqf,EAAE,EAAEza,EAAEivE,yBAAyBx0D,EAAE,EAAElE,EAAE0yD,kBAAkBt6D,GAAp6F,GAA06F,SAASyxC,EAAEzxC,EAAE22B,EAAEpmC,GAAG,KAAKyP,EAAEzT,OAAOgE,GAAGyP,EAAE22B,EAAE32B,EAAE,OAAOA,EAAE22B,EAAEo5C,sBAAsB5hF,GAAGijF,IAAI,CAACpxE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE06C,oBAAe,EAAO,IAAI9gF,EAAE,WAAW,SAASyP,EAAEA,GAAGhT,KAAK2mE,eAAe3zD,EAAEhT,KAAKskF,mBAAkB,EAAGtkF,KAAKukF,qBAAqB,EAAE,OAAOvxE,EAAExR,UAAUgrD,eAAe,WAAWxsD,KAAK82E,oBAAe,EAAO92E,KAAKg3E,kBAAa,EAAOh3E,KAAKskF,mBAAkB,EAAGtkF,KAAKukF,qBAAqB,GAAGt2E,OAAOqzC,eAAetuC,EAAExR,UAAU,sBAAsB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKskF,kBAAkB,CAAC,EAAE,GAAGtkF,KAAKg3E,cAAch3E,KAAK82E,gBAAgB92E,KAAKwkF,6BAA6BxkF,KAAKg3E,aAAah3E,KAAK82E,gBAAgBv0B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,oBAAoB,CAAC0J,IAAI,WAAW,GAAGlL,KAAKskF,kBAAkB,MAAM,CAACtkF,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe1tC,KAAK,GAAG,GAAGj5B,KAAK82E,eAAe,CAAC,IAAI92E,KAAKg3E,cAAch3E,KAAKwkF,6BAA6B,CAAC,IAAIxxE,EAAEhT,KAAK82E,eAAe,GAAG92E,KAAKukF,qBAAqB,OAAOvxE,EAAEhT,KAAK2mE,eAAe9kB,KAAK,CAAC7uC,EAAEhT,KAAK2mE,eAAe9kB,KAAK7hD,KAAK82E,eAAe,GAAGj0E,KAAK2F,MAAMwK,EAAEhT,KAAK2mE,eAAe9kB,OAAO,CAAC7uC,EAAEhT,KAAK82E,eAAe,IAAI,OAAO92E,KAAKukF,sBAAsBvkF,KAAKg3E,aAAa,KAAKh3E,KAAK82E,eAAe,GAAG,CAACj0E,KAAKuE,IAAIpH,KAAK82E,eAAe,GAAG92E,KAAKukF,qBAAqBvkF,KAAKg3E,aAAa,IAAIh3E,KAAKg3E,aAAa,IAAIh3E,KAAKg3E,eAAez0B,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUgjF,2BAA2B,WAAW,IAAIxxE,EAAEhT,KAAK82E,eAAentC,EAAE3pC,KAAKg3E,aAAa,SAAShkE,IAAI22B,KAAK32B,EAAE,GAAG22B,EAAE,IAAI32B,EAAE,KAAK22B,EAAE,IAAI32B,EAAE,GAAG22B,EAAE,KAAK32B,EAAExR,UAAUijF,OAAO,SAASzxE,GAAG,OAAOhT,KAAK82E,iBAAiB92E,KAAK82E,eAAe,IAAI9jE,GAAGhT,KAAKg3E,eAAeh3E,KAAKg3E,aAAa,IAAIhkE,GAAGhT,KAAKg3E,cAAch3E,KAAKg3E,aAAa,GAAG,GAAGh3E,KAAKwsD,kBAAiB,IAAKxsD,KAAK82E,gBAAgB92E,KAAK82E,eAAe,GAAG,IAAI92E,KAAK82E,eAAe,GAAG,IAAG,IAAK9jE,EAAlnD,GAAunD22B,EAAE06C,eAAe9gF,GAAGmhF,IAAI,SAAS1xE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAG9jC,EAAE9e,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEqpC,qBAAgB,EAAO,IAAI5/D,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAE,WAAW,SAASgD,EAAEA,EAAE22B,EAAEpmC,GAAGvD,KAAKgsE,gBAAgBzoE,EAAEvD,KAAKmc,MAAM,EAAEnc,KAAK+d,OAAO,EAAE/d,KAAK2kF,kBAAkB,IAAI/hC,EAAEmL,aAAa/tD,KAAK4kF,iBAAiB,IAAIhqE,EAAE5H,EAAE22B,EAAE3pC,KAAKgsE,iBAAiB,OAAO/9D,OAAOqzC,eAAetuC,EAAExR,UAAU,eAAe,CAAC0J,IAAI,WAAW,OAAOlL,KAAKmc,MAAM,GAAGnc,KAAK+d,OAAO,GAAGwkC,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,mBAAmB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2kF,kBAAkB5xC,OAAOwP,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAU6uE,QAAQ,WAAW,IAAIr9D,EAAEhT,KAAK4kF,iBAAiBvU,UAAUr9D,EAAEmJ,QAAQnc,KAAKmc,OAAOnJ,EAAE+K,SAAS/d,KAAK+d,SAAS/d,KAAKmc,MAAMnJ,EAAEmJ,MAAMnc,KAAK+d,OAAO/K,EAAE+K,OAAO/d,KAAK2kF,kBAAkB/0B,SAASnwD,EAAE,CAACqf,EAAE,EAAE1L,EAAEk6D,kBAAkBt6D,GAA5pB,GAAkqB22B,EAAEqpC,gBAAgBhjE,EAAE,IAAI4K,EAAE,WAAW,SAAS5H,EAAEA,EAAE22B,EAAEpmC,GAAGvD,KAAKuyE,UAAUv/D,EAAEhT,KAAK6kF,eAAel7C,EAAE3pC,KAAKgsE,gBAAgBzoE,EAAEvD,KAAK8kF,QAAQ,CAAC3oE,MAAM,EAAE4B,OAAO,GAAG/d,KAAK+kF,gBAAgB/kF,KAAKuyE,UAAU7vD,cAAc,QAAQ1iB,KAAK+kF,gBAAgBruB,UAAUjlD,IAAI,8BAA8BzR,KAAK+kF,gBAAgB74E,YAAY,IAAIlM,KAAK+kF,gBAAgB54E,aAAa,cAAc,QAAQnM,KAAK6kF,eAAe/hE,YAAY9iB,KAAK+kF,iBAAiB,OAAO/xE,EAAExR,UAAU6uE,QAAQ,WAAWrwE,KAAK+kF,gBAAgBtkE,MAAMsB,WAAW/hB,KAAKgsE,gBAAgBvtD,QAAQsD,WAAW/hB,KAAK+kF,gBAAgBtkE,MAAMoB,SAAS7hB,KAAKgsE,gBAAgBvtD,QAAQoD,SAAS,KAAK,IAAI7O,EAAEhT,KAAK+kF,gBAAgBnnE,wBAAwB,OAAO,IAAI5K,EAAEmJ,OAAO,IAAInJ,EAAE+K,SAAS/d,KAAK8kF,QAAQ3oE,MAAMnJ,EAAEmJ,MAAMnc,KAAK8kF,QAAQ/mE,OAAOlb,KAAK0F,KAAKyK,EAAE+K,SAAS/d,KAAK8kF,SAAS9xE,EAApvB,IAA0vBgyE,KAAK,SAAShyE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE0pC,uBAAuB1pC,EAAE61C,oBAAe,EAAO,IAAIxvE,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,KAAK++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAE,SAAS/wC,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE9L,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAO8e,EAAExV,QAAQ,EAAEwV,EAAE4/C,aAAa,GAAG5/C,EAAEwqC,GAAG3f,EAAE2f,GAAGxqC,EAAEyqC,GAAG5f,EAAE4f,GAAGzqC,EAAE4/C,aAAan7D,EAAEub,EAAE8hE,OAAOnhF,EAAEqf,EAAE,OAAOA,EAAE6qB,EAAE32B,GAAG22B,EAAEnoC,UAAUq9D,WAAW,WAAW,OAAO,SAASl1B,EAAEnoC,UAAUk3B,SAAS,WAAW,OAAO14B,KAAK4gF,QAAQj3C,EAAEnoC,UAAUuoD,SAAS,WAAW,OAAO/pD,KAAK0+D,cAAc/0B,EAAEnoC,UAAUkvD,QAAQ,WAAW,OAAO,SAAS/mB,EAAEnoC,UAAUo9D,gBAAgB,SAAS5rD,GAAG,MAAM,IAAIhU,MAAM,oBAAoB2qC,EAAEnoC,UAAU09D,cAAc,WAAW,MAAM,CAACl/D,KAAKspD,GAAGtpD,KAAK+pD,WAAW/pD,KAAK04B,WAAW14B,KAAK0wD,YAAY/mB,EAA5hB,CAA+hB35B,EAAEq5C,eAAe1f,EAAE61C,eAAez7B,EAAE,IAAI5iD,EAAE,WAAW,SAAS6R,EAAEA,GAAGhT,KAAK2mE,eAAe3zD,EAAEhT,KAAKilF,kBAAkB,GAAGjlF,KAAKklF,uBAAuB,EAAEllF,KAAK4tD,UAAU,IAAItL,EAAEuL,SAAS,OAAO76C,EAAExR,UAAUq7D,SAAS,SAAS7pD,GAAG,IAAI22B,EAAE,CAAC59B,GAAG/L,KAAKklF,yBAAyB3/D,QAAQvS,GAAG,OAAOhT,KAAKilF,kBAAkB/kF,KAAKypC,GAAGA,EAAE59B,IAAIiH,EAAExR,UAAUg1E,WAAW,SAASxjE,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAE3pC,KAAKilF,kBAAkB1lF,OAAOoqC,IAAI,GAAG3pC,KAAKilF,kBAAkBt7C,GAAG59B,KAAKiH,EAAE,OAAOhT,KAAKilF,kBAAkBnhF,OAAO6lC,EAAE,IAAG,EAAG,OAAM,GAAI32B,EAAExR,UAAU+9E,oBAAoB,SAASvsE,GAAG,GAAG,IAAIhT,KAAKilF,kBAAkB1lF,OAAO,MAAM,GAAG,IAAIoqC,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAI8H,GAAG,IAAI22B,GAAG,IAAIA,EAAEpqC,OAAO,MAAM,GAAG,IAAI,IAAIgE,EAAE,GAAG9D,EAAEkqC,EAAEya,mBAAkB,GAAItlC,EAAE,EAAE1L,EAAE,EAAEwvC,EAAE,EAAE5yC,EAAE25B,EAAE++B,MAAM,GAAGpmB,EAAE3Y,EAAEw7C,MAAM,GAAG9gF,EAAE,EAAEA,EAAEslC,EAAEy7C,mBAAmB/gF,IAAI,GAAGslC,EAAE8mB,SAASpsD,EAAErE,KAAK4tD,WAAW,IAAI5tD,KAAK4tD,UAAUl1B,WAAW,CAAC,GAAG14B,KAAK4tD,UAAUtE,KAAKt5C,GAAGhQ,KAAK4tD,UAAUrE,KAAKjH,EAAE,CAAC,GAAGj+C,EAAEya,EAAE,EAAE,IAAI,IAAIilC,EAAE/jD,KAAKqlF,iBAAiB5lF,EAAEmjD,EAAExvC,EAAEu2B,EAAE7qB,GAAG3d,EAAE,EAAEA,EAAE4iD,EAAExkD,OAAO4B,IAAIoC,EAAErD,KAAK6jD,EAAE5iD,IAAI2d,EAAEza,EAAEu+C,EAAExvC,EAAEpD,EAAEhQ,KAAK4tD,UAAUtE,GAAGhH,EAAEtiD,KAAK4tD,UAAUrE,GAAGn2C,GAAGpT,KAAK4tD,UAAU7D,WAAWxqD,QAAQqb,EAAEykD,qBAAqB9/D,OAAO,GAAGS,KAAK2mE,eAAe9kB,KAAK/iC,EAAE,EAAE,IAAIilC,EAAE/jD,KAAKqlF,iBAAiB5lF,EAAEmjD,EAAExvC,EAAEu2B,EAAE7qB,GAAG3d,EAAE,EAAEA,EAAE4iD,EAAExkD,OAAO4B,IAAIoC,EAAErD,KAAK6jD,EAAE5iD,IAAI,OAAOoC,GAAGyP,EAAExR,UAAU6jF,iBAAiB,SAAS17C,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,GAAG,IAAI,IAAIwvC,EAAEjZ,EAAEltB,UAAUlZ,EAAE9D,GAAGuQ,EAAEhQ,KAAKilF,kBAAkB,GAAG1/D,QAAQq9B,GAAGhoC,EAAE,EAAEA,EAAE5a,KAAKilF,kBAAkB1lF,OAAOqb,IAAI,IAAI,IAAI0nC,EAAEtiD,KAAKilF,kBAAkBrqE,GAAG2K,QAAQq9B,GAAGv+C,EAAE,EAAEA,EAAEi+C,EAAE/iD,OAAO8E,IAAI2O,EAAEsyE,aAAat1E,EAAEsyC,EAAEj+C,IAAI,OAAOrE,KAAKulF,0BAA0Bv1E,EAAE8O,EAAE1L,GAAGpD,GAAGgD,EAAExR,UAAU+jF,0BAA0B,SAASvyE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAE,EAAEqf,GAAE,EAAG1L,EAAE,EAAEwvC,EAAE5vC,EAAEvT,GAAG,GAAGmjD,EAAE,CAAC,IAAI,IAAI5yC,EAAEzM,EAAEyM,EAAEhQ,KAAK2mE,eAAe9kB,KAAK7xC,IAAI,CAAC,IAAIsyC,EAAE3Y,EAAEjR,SAAS1oB,GAAG3L,EAAEslC,EAAE67C,UAAUx1E,GAAGzQ,QAAQqb,EAAEykD,qBAAqB9/D,OAAO,GAAG,IAAI+iD,EAAE,CAAC,IAAIxjC,GAAG8jC,EAAE,IAAIxvC,IAAIwvC,EAAE,GAAG5yC,EAAE8O,GAAE,GAAI8jC,EAAE,IAAIxvC,EAAE,CAAC,GAAGwvC,EAAE,GAAG5yC,IAAI4yC,EAAE5vC,IAAIvT,IAAI,MAAMmjD,EAAE,IAAIxvC,GAAGwvC,EAAE,GAAG5yC,EAAE8O,GAAE,GAAIA,GAAE,EAAG1L,GAAG/O,GAAGu+C,IAAIA,EAAE,GAAG5iD,KAAK2mE,eAAe9kB,QAAQ7uC,EAAEsyE,aAAa,SAAStyE,EAAE22B,GAAG,IAAI,IAAIpmC,GAAE,EAAG9D,EAAE,EAAEA,EAAEuT,EAAEzT,OAAOE,IAAI,CAAC,IAAIqf,EAAE9L,EAAEvT,GAAG,GAAG8D,EAAE,CAAC,GAAGomC,EAAE,IAAI7qB,EAAE,GAAG,OAAO9L,EAAEvT,EAAE,GAAG,GAAGkqC,EAAE,GAAG32B,EAAE,GAAG22B,EAAE,IAAI7qB,EAAE,GAAG,OAAO9L,EAAEvT,EAAE,GAAG,GAAGoD,KAAKuE,IAAIuiC,EAAE,GAAG7qB,EAAE,IAAI9L,EAAElP,OAAOrE,EAAE,GAAGuT,EAAEA,EAAElP,OAAOrE,EAAE,GAAGA,QAAQ,CAAC,GAAGkqC,EAAE,IAAI7qB,EAAE,GAAG,OAAO9L,EAAElP,OAAOrE,EAAE,EAAEkqC,GAAG32B,EAAE,GAAG22B,EAAE,IAAI7qB,EAAE,GAAG,OAAOA,EAAE,GAAGjc,KAAKC,IAAI6mC,EAAE,GAAG7qB,EAAE,IAAI9L,EAAE22B,EAAE,GAAG7qB,EAAE,KAAKA,EAAE,GAAGjc,KAAKC,IAAI6mC,EAAE,GAAG7qB,EAAE,IAAIvb,GAAE,IAAK,OAAOA,EAAEyP,EAAEA,EAAEzT,OAAO,GAAG,GAAGoqC,EAAE,GAAG32B,EAAE9S,KAAKypC,GAAG32B,GAAGA,EAAEI,EAAE,CAACwvC,EAAE,EAAEv+C,EAAEykE,iBAAiB91D,GAA/oE,GAAqpE22B,EAAE0pC,uBAAuBlyE,GAAGskF,KAAK,CAACzyE,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEkpC,wBAAmB,EAAO,IAAItvE,EAAE,WAAW,SAASyP,EAAEA,GAAGhT,KAAK85E,UAAU9mE,EAAE,OAAO/E,OAAOqzC,eAAetuC,EAAExR,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAK85E,UAAU4L,YAAY1lF,KAAK85E,UAAU4L,cAAcznE,UAAUm8C,gBAAgBp6D,KAAK85E,WAAW77D,SAAS04B,YAAY4L,YAAW,EAAG6K,cAAa,IAAKp6C,EAA7Q,GAAkR22B,EAAEkpC,mBAAmBtvE,GAAGoiF,KAAK,SAAS3yE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAG9jC,EAAE9e,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEmqC,kBAAa,EAAO,IAAI1gE,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAE,WAAW,SAASgD,EAAEA,EAAE22B,GAAG3pC,KAAK8hD,eAAe9uC,EAAEhT,KAAKswD,iBAAiB3mB,EAAE,OAAO32B,EAAExR,UAAUiqE,UAAU,SAASz4D,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG,OAAO8jC,EAAE6oB,UAAUz4D,EAAE22B,EAAEpmC,EAAE9D,EAAEO,KAAKswD,iBAAiBsnB,aAAa53E,KAAK8hD,eAAeC,WAAWC,gBAAgBhiD,KAAK8hD,eAAeC,WAAWE,iBAAiBnjC,IAAI9L,EAAExR,UAAUyzE,iBAAiB,SAASjiE,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE9e,KAAKyrE,UAAUz4D,EAAE22B,EAAEpmC,EAAE9D,GAAG,OAAOmjD,EAAEqyB,iBAAiBn2D,IAAIrf,EAAE,CAACqf,EAAE,EAAE1L,EAAEogE,gBAAgB10D,EAAE,EAAE1L,EAAE6/D,mBAAmBjgE,GAAxb,GAA8b22B,EAAEmqC,aAAa9jE,GAAG41E,KAAK,SAAS5yE,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE4pC,mBAAc,EAAO,IAAIvjE,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE,SAASnI,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,GAAG,IAAIN,EAAEtvC,EAAEwU,KAAKxnB,OAAOA,KAAK,GAAGsiD,EAAEyK,UAAUpjB,EAAE2Y,EAAEkrB,UAAUjqE,EAAE++C,EAAEgO,iBAAiBl9C,EAAEkvC,EAAEujC,WAAU,EAAGvjC,EAAEwjC,mBAAkB,EAAGxjC,EAAEyjC,yBAAwB,EAAGzjC,EAAE0jC,wBAAuB,EAAG1jC,EAAE2jC,aAAa,EAAE3jC,EAAE4jC,cAAc,EAAE5jC,EAAE6jC,gBAAgB,CAAC9pE,WAAM,EAAOK,SAAI,EAAO+rC,kBAAiB,GAAInG,EAAE8jC,oBAAoB,IAAIxrE,EAAEmzC,aAAazL,EAAEksB,UAAU,IAAI5zD,EAAEmzC,aAAazL,EAAE+jC,kBAAkB,IAAIzrE,EAAEmzC,aAAazL,EAAEua,SAAS,CAACpb,QAAQ,WAAW,OAAOa,EAAEyK,UAAUtL,aAAaa,EAAEgkC,iBAAiB,IAAIt2E,EAAE8wD,iBAAgB,SAAU9tD,EAAE22B,GAAG,OAAO2Y,EAAEye,YAAY/tD,EAAE22B,MAAM2Y,EAAEua,SAASva,EAAEgkC,kBAAkBhkC,EAAEyf,kBAAkB,IAAI19D,EAAE29D,iBAAiB1f,EAAEyf,kBAAkBE,aAAY,WAAY,OAAO3f,EAAEiN,8BAA8BjN,EAAEua,SAASva,EAAEyf,mBAAmBzf,EAAEua,SAASja,EAAE4E,UAAS,SAAUx0C,GAAG,OAAOsvC,EAAEikC,mBAAmBjkC,EAAEua,SAAS/9C,EAAEq0D,gBAAe,WAAY,OAAO7wB,EAAEyK,UAAU+C,uBAAuBxN,EAAEua,SAASva,EAAEgO,iBAAiBk2B,kBAAiB,WAAY,OAAOlkC,EAAE4M,wBAAwB5M,EAAEyK,UAAUunB,iBAAgB,SAAUthE,GAAG,OAAOsvC,EAAE+zB,YAAYrjE,EAAEqJ,MAAMrJ,EAAE0J,KAAI,MAAO4lC,EAAEua,SAAS9Y,EAAEme,yBAAyB3hE,OAAO,UAAS,WAAY,OAAO+hD,EAAEiN,+BAA+B,yBAAyBhvD,OAAO,CAAC,IAAIY,EAAE,IAAIslF,sBAAqB,SAAUzzE,GAAG,OAAOsvC,EAAEokC,sBAAsB1zE,EAAEA,EAAEzT,OAAO,MAAM,CAAConF,UAAU,IAAIxlF,EAAEylF,QAAQnnF,GAAG6iD,EAAEua,SAAS,CAACpb,QAAQ,WAAW,OAAOtgD,EAAE0lF,gBAAgB,OAAOvkC,EAAE,OAAOxjC,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,qBAAqB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKomF,oBAAoBrzC,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,yBAAyB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKwuE,UAAUz7B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,mBAAmB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKqmF,kBAAkBtzC,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,aAAa,CAAC0J,IAAI,WAAW,OAAOlL,KAAK+sD,UAAUhL,YAAYQ,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUklF,sBAAsB,SAAS1zE,GAAGhT,KAAK6lF,eAAU,IAAS7yE,EAAE8zE,eAAe,IAAI9zE,EAAE+zE,mBAAmB/zE,EAAE8zE,eAAe9mF,KAAK6lF,WAAW7lF,KAAKswD,iBAAiBsnB,cAAc53E,KAAKswD,iBAAiB+f,WAAWrwE,KAAK6lF,WAAW7lF,KAAK8lF,oBAAoB9lF,KAAKq2E,YAAY,EAAEr2E,KAAKwtE,UAAU,GAAGxtE,KAAK8lF,mBAAkB,IAAKn8C,EAAEnoC,UAAU60E,YAAY,SAASrjE,EAAE22B,EAAEpmC,QAAG,IAASA,IAAIA,GAAE,GAAIvD,KAAK6lF,UAAU7lF,KAAK8lF,mBAAkB,GAAIviF,IAAIvD,KAAK+lF,yBAAwB,GAAI/lF,KAAKsmF,iBAAiBzjB,QAAQ7vD,EAAE22B,EAAE3pC,KAAKwtE,aAAa7jC,EAAEnoC,UAAUu/D,YAAY,SAAS/tD,EAAE22B,GAAG3pC,KAAK+sD,UAAUsD,WAAWr9C,EAAE22B,GAAG3pC,KAAKgmF,yBAAyBhmF,KAAK+sD,UAAU2C,mBAAmB1vD,KAAKmmF,gBAAgB9pE,MAAMrc,KAAKmmF,gBAAgBzpE,IAAI1c,KAAKmmF,gBAAgB19B,kBAAkBzoD,KAAKgmF,wBAAuB,GAAIhmF,KAAK+lF,yBAAyB/lF,KAAKwuE,UAAU5e,KAAK,CAACvzC,MAAMrJ,EAAE0J,IAAIitB,IAAI3pC,KAAK+lF,yBAAwB,GAAIp8C,EAAEnoC,UAAU4d,OAAO,SAASpM,EAAE22B,GAAG3pC,KAAKwtE,UAAU7jC,EAAE3pC,KAAKgnF,uBAAuBr9C,EAAEnoC,UAAUylF,cAAc,WAAWjnF,KAAK+sD,UAAU+C,mBAAmB9vD,KAAKq2E,YAAY,EAAEr2E,KAAKwtE,UAAU,GAAGxtE,KAAKgnF,uBAAuBr9C,EAAEnoC,UAAUwlF,oBAAoB,WAAWhnF,KAAK+sD,UAAUhL,WAAWuM,cAActuD,KAAKimF,cAAcjmF,KAAK+sD,UAAUhL,WAAWwM,eAAevuD,KAAKkmF,eAAelmF,KAAKomF,oBAAoBx2B,KAAK5vD,KAAK+sD,UAAUhL,aAAapY,EAAEnoC,UAAUigD,QAAQ,WAAWzuC,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,OAAO2pC,EAAEnoC,UAAUyrD,YAAY,SAASj6C,GAAG,IAAI22B,EAAE3pC,KAAKA,KAAK+sD,UAAUtL,UAAUzhD,KAAK+sD,UAAU/5C,EAAEhT,KAAK+sD,UAAUunB,iBAAgB,SAAUthE,GAAG,OAAO22B,EAAE0sC,YAAYrjE,EAAEqJ,MAAMrJ,EAAE0J,KAAI,MAAO1c,KAAKgmF,wBAAuB,EAAGhmF,KAAKumF,gBAAgB58C,EAAEnoC,UAAU+kF,aAAa,WAAWvmF,KAAK6lF,UAAU7lF,KAAK8lF,mBAAkB,EAAG9lF,KAAKq2E,YAAY,EAAEr2E,KAAKwtE,UAAU,IAAI7jC,EAAEnoC,UAAU0oD,UAAU,SAASl3C,GAAGhT,KAAK+sD,UAAU7C,UAAUl3C,GAAGhT,KAAKumF,gBAAgB58C,EAAEnoC,UAAU+tD,yBAAyB,WAAWvvD,KAAKswD,iBAAiB+f,UAAUrwE,KAAK+sD,UAAUwC,2BAA2BvvD,KAAKq2E,YAAY,EAAEr2E,KAAKwtE,UAAU,IAAI7jC,EAAEnoC,UAAUgmD,SAAS,SAASx0C,EAAE22B,GAAG3pC,KAAK+sD,UAAUvF,SAASx0C,EAAE22B,GAAG3pC,KAAKumF,gBAAgB58C,EAAEnoC,UAAU0tD,kBAAkB,WAAWlvD,KAAK+sD,UAAUmC,qBAAqBvlB,EAAEnoC,UAAUguD,OAAO,WAAWxvD,KAAK+sD,UAAUyC,UAAU7lB,EAAEnoC,UAAUiuD,QAAQ,WAAWzvD,KAAK+sD,UAAU0C,WAAW9lB,EAAEnoC,UAAUkuD,mBAAmB,SAAS18C,EAAE22B,EAAEpmC,GAAGvD,KAAKmmF,gBAAgB9pE,MAAMrJ,EAAEhT,KAAKmmF,gBAAgBzpE,IAAIitB,EAAE3pC,KAAKmmF,gBAAgB19B,iBAAiBllD,EAAEvD,KAAK+sD,UAAU2C,mBAAmB18C,EAAE22B,EAAEpmC,IAAIomC,EAAEnoC,UAAUquD,aAAa,WAAW7vD,KAAK+sD,UAAU8C,gBAAgBlmB,EAAEnoC,UAAUgR,MAAM,WAAWxS,KAAK+sD,UAAUv6C,SAASY,EAAE,CAACwvC,EAAE,EAAEzhD,EAAEmsE,iBAAiB1qB,EAAE,EAAE6B,EAAEwuB,kBAAkBrwB,EAAE,EAAEzhD,EAAE2nE,iBAAiBn/B,GAA/8I,CAAm9I2Y,EAAEsO,YAAYjnB,EAAE4pC,cAAcp4D,GAAG+rE,KAAK,SAASl0E,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK6P,EAAEpT,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAGA,EAAE5iD,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEsqC,sBAAiB,EAAO,IAAIjkE,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,KAAK++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE5X,EAAE,MAAM+kB,EAAE/kB,EAAE,KAAKX,EAAEW,EAAE,MAAMC,EAAEjC,OAAOwZ,aAAa,KAAK8uB,EAAE,IAAIxnC,OAAOmB,EAAE,KAAKC,EAAE,SAASuP,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,EAAE+zC,GAAG,IAAI5iD,EAAE6R,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOmB,EAAEgmE,SAASx9B,EAAExoC,EAAE2qE,eAAevoE,EAAEpC,EAAEqhF,WAAW/iF,EAAE0B,EAAEwlE,eAAe7nD,EAAE3d,EAAE83D,aAAa7lD,EAAEjS,EAAEuoE,cAAc9mB,EAAEzhD,EAAE6qE,gBAAgBh8D,EAAE7O,EAAE2gD,eAAeiC,EAAE5iD,EAAEgmF,kBAAkB,EAAEhmF,EAAEimF,UAAS,EAAGjmF,EAAEysD,UAAU,IAAItL,EAAEuL,SAAS1sD,EAAEkmF,oBAAoB,EAAElmF,EAAEmmF,kBAAiB,EAAGnmF,EAAEomF,wBAAmB,EAAOpmF,EAAEqmF,sBAAiB,EAAOrmF,EAAEsmF,uBAAuBtmF,EAAE07D,SAAS,IAAIx4D,EAAE0pD,cAAc5sD,EAAEumF,iBAAiBvmF,EAAE07D,SAAS,IAAIx4D,EAAE0pD,cAAc5sD,EAAEstE,mBAAmBttE,EAAE07D,SAAS,IAAIx4D,EAAE0pD,cAAc5sD,EAAEwmF,sBAAsBxmF,EAAE07D,SAAS,IAAIx4D,EAAE0pD,cAAc5sD,EAAEmrE,mBAAmB,SAASt5D,GAAG,OAAO7R,EAAEwoE,aAAa32D,IAAI7R,EAAEymF,iBAAiB,SAAS50E,GAAG,OAAO7R,EAAE0mF,WAAW70E,IAAI7R,EAAE83D,aAAa6uB,aAAY,WAAY3mF,EAAE6qD,cAAc7qD,EAAEqrD,oBAAoBrrD,EAAE4mF,cAAc5mF,EAAEwlE,eAAe3iB,OAAOhL,MAAMyrC,QAAO,SAAUzxE,GAAG,OAAO7R,EAAE6mF,QAAQh1E,MAAM7R,EAAE07D,SAAS17D,EAAEwlE,eAAeuJ,QAAQoM,kBAAiB,SAAUtpE,GAAG,OAAO7R,EAAE8mF,kBAAkBj1E,OAAO7R,EAAEgmD,SAAShmD,EAAEwsD,OAAO,IAAI/yC,EAAEypE,eAAeljF,EAAEwlE,gBAAgBxlE,EAAE+mF,qBAAqB,EAAE/mF,EAAE,OAAO2d,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,wBAAwB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKynF,uBAAuB10C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,kBAAkB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK0nF,iBAAiB30C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,oBAAoB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKyuE,mBAAmB17B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,uBAAuB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2nF,sBAAsB50C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAKmoF,6BAA6Bx+C,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAKwsD,kBAAkB7iB,EAAEnoC,UAAUozE,QAAQ,WAAW50E,KAAKwsD,iBAAiBxsD,KAAKonF,UAAS,GAAIz9C,EAAEnoC,UAAU2lD,OAAO,WAAWnnD,KAAKonF,UAAS,GAAIn5E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,iBAAiB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2tD,OAAOy6B,qBAAqB7lC,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,eAAe,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2tD,OAAO06B,mBAAmB9lC,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,eAAe,CAAC0J,IAAI,WAAW,IAAI8H,EAAEhT,KAAK2tD,OAAOy6B,oBAAoBz+C,EAAE3pC,KAAK2tD,OAAO06B,kBAAkB,SAASr1E,IAAI22B,GAAG32B,EAAE,KAAK22B,EAAE,IAAI32B,EAAE,KAAK22B,EAAE,KAAK4Y,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,IAAI8H,EAAEhT,KAAK2tD,OAAOy6B,oBAAoBz+C,EAAE3pC,KAAK2tD,OAAO06B,kBAAkB,IAAIr1E,IAAI22B,EAAE,MAAM,GAAG,IAAIpmC,EAAEvD,KAAK2mE,eAAe3iB,OAAOvkD,EAAE,GAAG,GAAG,IAAIO,KAAKkoF,qBAAqB,CAAC,GAAGl1E,EAAE,KAAK22B,EAAE,GAAG,MAAM,GAAG,IAAI,IAAI7qB,EAAE9L,EAAE,GAAG8L,GAAG6qB,EAAE,GAAG7qB,IAAI,CAAC,IAAI1L,EAAE7P,EAAEu/D,4BAA4BhkD,GAAE,EAAG9L,EAAE,GAAG22B,EAAE,IAAIlqC,EAAES,KAAKkT,QAAQ,CAAC,IAAIwvC,EAAE5vC,EAAE,KAAK22B,EAAE,GAAGA,EAAE,QAAG,EAAO,IAAIlqC,EAAES,KAAKqD,EAAEu/D,4BAA4B9vD,EAAE,IAAG,EAAGA,EAAE,GAAG4vC,IAAI9jC,EAAE9L,EAAE,GAAG,EAAE8L,GAAG6qB,EAAE,GAAG,EAAE7qB,IAAI,CAAC,IAAIlE,EAAErX,EAAEy1C,MAAM9tC,IAAI4T,GAAG1L,EAAE7P,EAAEu/D,4BAA4BhkD,GAAE,GAAIlE,GAAGA,EAAEupC,UAAU1kD,EAAEA,EAAEF,OAAO,IAAI6T,EAAE3T,EAAES,KAAKkT,GAAGJ,EAAE,KAAK22B,EAAE,KAAK/uB,EAAErX,EAAEy1C,MAAM9tC,IAAIy+B,EAAE,IAAIv2B,EAAE7P,EAAEu/D,4BAA4Bn5B,EAAE,IAAG,EAAG,EAAEA,EAAE,IAAI/uB,GAAGA,EAAEupC,UAAU1kD,EAAEA,EAAEF,OAAO,IAAI6T,EAAE3T,EAAES,KAAKkT,IAAI,OAAO3T,EAAEkE,KAAI,SAAUqP,GAAG,OAAOA,EAAExT,QAAQqqC,EAAE,QAAQn1B,KAAK1E,EAAEynE,UAAU,OAAO,OAAOl1B,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUgrD,eAAe,WAAWxsD,KAAK2tD,OAAOnB,iBAAiBxsD,KAAKmoF,4BAA4BnoF,KAAK6iE,UAAU7iE,KAAKyuE,mBAAmB7e,QAAQjmB,EAAEnoC,UAAUqhE,QAAQ,SAAS7vD,GAAG,IAAI22B,EAAE3pC,KAAKA,KAAK+4E,yBAAyB/4E,KAAK+4E,uBAAuBx4E,OAAO25D,uBAAsB,WAAY,OAAOvwB,EAAEuvC,eAAelpE,EAAE6hE,SAAS7+D,GAAGhT,KAAK6jE,cAActkE,QAAQS,KAAKynF,uBAAuB73B,KAAK5vD,KAAK6jE,gBAAgBl6B,EAAEnoC,UAAU03E,SAAS,WAAWl5E,KAAK+4E,4BAAuB,EAAO/4E,KAAK0nF,iBAAiB93B,KAAK,CAACvzC,MAAMrc,KAAK2tD,OAAOy6B,oBAAoB1rE,IAAI1c,KAAK2tD,OAAO06B,kBAAkB5/B,iBAAiB,IAAIzoD,KAAKkoF,wBAAwBv+C,EAAEnoC,UAAU8mF,oBAAoB,SAASt1E,GAAG,IAAI22B,EAAE3pC,KAAKuoF,sBAAsBv1E,GAAGzP,EAAEvD,KAAK2tD,OAAOy6B,oBAAoB3oF,EAAEO,KAAK2tD,OAAO06B,kBAAkB,SAAS9kF,GAAG9D,GAAGkqC,IAAI3pC,KAAKwoF,sBAAsB7+C,EAAEpmC,EAAE9D,IAAIkqC,EAAEnoC,UAAUgnF,sBAAsB,SAASx1E,EAAE22B,EAAEpmC,GAAG,OAAOyP,EAAE,GAAG22B,EAAE,IAAI32B,EAAE,GAAGzP,EAAE,IAAIomC,EAAE,KAAKpmC,EAAE,IAAIyP,EAAE,KAAK22B,EAAE,IAAI32B,EAAE,IAAI22B,EAAE,IAAI32B,EAAE,GAAGzP,EAAE,IAAIomC,EAAE,GAAGpmC,EAAE,IAAIyP,EAAE,KAAKzP,EAAE,IAAIyP,EAAE,GAAGzP,EAAE,IAAIomC,EAAE,GAAGpmC,EAAE,IAAIyP,EAAE,KAAK22B,EAAE,IAAI32B,EAAE,IAAI22B,EAAE,IAAIA,EAAEnoC,UAAUinF,oBAAoB,SAASz1E,EAAE22B,GAAG,IAAIpmC,EAAE9D,EAAEqf,EAAE,QAAQrf,EAAE,QAAQ8D,EAAEvD,KAAKwiF,WAAWkG,mBAAc,IAASnlF,OAAE,EAAOA,EAAE6mE,YAAO,IAAS3qE,OAAE,EAAOA,EAAEq+B,MAAM,GAAGhf,EAAE,OAAO9e,KAAK2tD,OAAOmpB,eAAe,CAACh4D,EAAEzC,MAAM0tB,EAAE,EAAEjrB,EAAEzC,MAAMwtB,EAAE,GAAG7pC,KAAK2tD,OAAO42B,qBAAqB3hF,EAAE+lF,eAAe7pE,EAAE9e,KAAK2mE,eAAe9kB,MAAM7hD,KAAK2tD,OAAOqpB,kBAAa,GAAO,EAAG,IAAI5jE,EAAEpT,KAAKuoF,sBAAsBv1E,GAAG,QAAQI,IAAIpT,KAAK4oF,cAAcx1E,EAAEu2B,GAAG3pC,KAAK2tD,OAAOqpB,kBAAa,GAAO,IAAKrtC,EAAEnoC,UAAU6mC,UAAU,WAAWroC,KAAK2tD,OAAO22B,mBAAkB,EAAGtkF,KAAK6iE,UAAU7iE,KAAKyuE,mBAAmB7e,QAAQjmB,EAAEnoC,UAAUy1E,YAAY,SAASjkE,EAAE22B,GAAG3pC,KAAK2tD,OAAOnB,iBAAiBx5C,EAAEnQ,KAAKuE,IAAI4L,EAAE,GAAG22B,EAAE9mC,KAAKC,IAAI6mC,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhL,MAAMz5C,OAAO,GAAGS,KAAK2tD,OAAOmpB,eAAe,CAAC,EAAE9jE,GAAGhT,KAAK2tD,OAAOqpB,aAAa,CAACh3E,KAAK2mE,eAAe9kB,KAAKlY,GAAG3pC,KAAK6iE,UAAU7iE,KAAKyuE,mBAAmB7e,QAAQjmB,EAAEnoC,UAAUwmF,QAAQ,SAASh1E,GAAGhT,KAAK2tD,OAAO82B,OAAOzxE,IAAIhT,KAAK6iE,WAAWl5B,EAAEnoC,UAAU+mF,sBAAsB,SAASv1E,GAAG,IAAI22B,EAAE3pC,KAAK0pE,cAAc+B,UAAUz4D,EAAEhT,KAAK8rE,eAAe9rE,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe1tC,MAAK,GAAI,GAAG0Q,EAAE,OAAOA,EAAE,KAAKA,EAAE,KAAKA,EAAE,IAAI3pC,KAAK2mE,eAAe3iB,OAAOwM,MAAM7mB,GAAGA,EAAEnoC,UAAUqnF,2BAA2B,SAAS71E,GAAG,IAAI22B,EAAE8a,EAAE81B,2BAA2BvnE,EAAEhT,KAAK8rE,gBAAgB,GAAGvoE,EAAEvD,KAAK8hD,eAAeC,WAAWwM,aAAa,OAAO5kB,GAAG,GAAGA,GAAGpmC,EAAE,GAAGomC,EAAEpmC,IAAIomC,GAAGpmC,GAAGomC,EAAE9mC,KAAKC,IAAID,KAAKuE,IAAIuiC,GAAG,IAAI,KAAKA,GAAG,IAAI9mC,KAAKo2C,IAAItP,GAAG9mC,KAAKkB,MAAM,GAAG4lC,KAAKA,EAAEnoC,UAAUs0E,qBAAqB,SAAS9iE,GAAG,OAAOhD,EAAE4yD,MAAM5vD,EAAE+S,QAAQ/lB,KAAKgsE,gBAAgBvtD,QAAQqqE,8BAA8B91E,EAAEmT,UAAUwjB,EAAEnoC,UAAUizE,YAAY,SAASzhE,GAAG,GAAGhT,KAAKqnF,oBAAoBr0E,EAAE+1E,WAAW,IAAI/1E,EAAEu8B,SAASvvC,KAAKgsD,eAAe,IAAIh5C,EAAEu8B,OAAO,CAAC,IAAIvvC,KAAKonF,SAAS,CAAC,IAAIpnF,KAAK81E,qBAAqB9iE,GAAG,OAAOA,EAAEqT,kBAAkBrT,EAAEoT,iBAAiBpmB,KAAKmnF,kBAAkB,EAAEnnF,KAAKonF,UAAUp0E,EAAEmT,SAASnmB,KAAKgpF,oBAAoBh2E,GAAG,IAAIA,EAAEi2E,OAAOjpF,KAAKkpF,eAAel2E,GAAG,IAAIA,EAAEi2E,OAAOjpF,KAAKmpF,eAAen2E,GAAG,IAAIA,EAAEi2E,QAAQjpF,KAAKopF,eAAep2E,GAAGhT,KAAKqpF,yBAAyBrpF,KAAK6iE,SAAQ,KAAMl5B,EAAEnoC,UAAU6nF,uBAAuB,WAAW,IAAIr2E,EAAEhT,KAAKA,KAAK8rE,eAAezxC,gBAAgBr6B,KAAK8rE,eAAezxC,cAAcvnB,iBAAiB,YAAY9S,KAAKssE,oBAAoBtsE,KAAK8rE,eAAezxC,cAAcvnB,iBAAiB,UAAU9S,KAAK4nF,mBAAmB5nF,KAAKspF,yBAAyB/oF,OAAO45D,aAAY,WAAY,OAAOnnD,EAAEu2E,gBAAgB,KAAK5/C,EAAEnoC,UAAU2mF,0BAA0B,WAAWnoF,KAAK8rE,eAAezxC,gBAAgBr6B,KAAK8rE,eAAezxC,cAAc7U,oBAAoB,YAAYxlB,KAAKssE,oBAAoBtsE,KAAK8rE,eAAezxC,cAAc7U,oBAAoB,UAAUxlB,KAAK4nF,mBAAmB/tB,cAAc75D,KAAKspF,0BAA0BtpF,KAAKspF,8BAAyB,GAAQ3/C,EAAEnoC,UAAUwnF,oBAAoB,SAASh2E,GAAGhT,KAAK2tD,OAAOmpB,iBAAiB92E,KAAK2tD,OAAOqpB,aAAah3E,KAAKuoF,sBAAsBv1E,KAAK22B,EAAEnoC,UAAU0nF,eAAe,SAASl2E,GAAG,GAAGhT,KAAK2tD,OAAO42B,qBAAqB,EAAEvkF,KAAK2tD,OAAO22B,mBAAkB,EAAGtkF,KAAKkoF,qBAAqBloF,KAAKs2E,mBAAmBtjE,GAAG,EAAE,EAAEhT,KAAK2tD,OAAOmpB,eAAe92E,KAAKuoF,sBAAsBv1E,GAAGhT,KAAK2tD,OAAOmpB,eAAe,CAAC92E,KAAK2tD,OAAOqpB,kBAAa,EAAO,IAAIrtC,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIlL,KAAK2tD,OAAOmpB,eAAe,IAAIntC,GAAGA,EAAEpqC,SAASS,KAAK2tD,OAAOmpB,eAAe,IAAI,IAAIntC,EAAE6/C,SAASxpF,KAAK2tD,OAAOmpB,eAAe,KAAK92E,KAAK2tD,OAAOmpB,eAAe,OAAOntC,EAAEnoC,UAAU2nF,eAAe,SAASn2E,GAAGhT,KAAKyoF,oBAAoBz1E,GAAE,KAAMhT,KAAKkoF,qBAAqB,IAAIv+C,EAAEnoC,UAAU4nF,eAAe,SAASp2E,GAAG,IAAI22B,EAAE3pC,KAAKuoF,sBAAsBv1E,GAAG22B,IAAI3pC,KAAKkoF,qBAAqB,EAAEloF,KAAKypF,cAAc9/C,EAAE,MAAMA,EAAEnoC,UAAU80E,mBAAmB,SAAStjE,GAAG,OAAOA,EAAE+S,UAAU/V,EAAE4yD,OAAO5iE,KAAKgsE,gBAAgBvtD,QAAQqqE,gCAAgCn/C,EAAEnoC,UAAUmoE,aAAa,SAAS32D,GAAG,GAAGA,EAAEuvD,2BAA2BviE,KAAK2tD,OAAOmpB,eAAe,CAAC,IAAIntC,EAAE3pC,KAAK2tD,OAAOqpB,aAAa,CAACh3E,KAAK2tD,OAAOqpB,aAAa,GAAGh3E,KAAK2tD,OAAOqpB,aAAa,IAAI,KAAK,GAAGh3E,KAAK2tD,OAAOqpB,aAAah3E,KAAKuoF,sBAAsBv1E,GAAGhT,KAAK2tD,OAAOqpB,aAAa,CAAC,IAAIh3E,KAAKkoF,qBAAqBloF,KAAK2tD,OAAOqpB,aAAa,GAAGh3E,KAAK2tD,OAAOmpB,eAAe,GAAG92E,KAAK2tD,OAAOqpB,aAAa,GAAG,EAAEh3E,KAAK2tD,OAAOqpB,aAAa,GAAGh3E,KAAK2mE,eAAe9kB,KAAK,IAAI7hD,KAAKkoF,sBAAsBloF,KAAK0pF,gBAAgB1pF,KAAK2tD,OAAOqpB,cAAch3E,KAAKmnF,kBAAkBnnF,KAAK6oF,2BAA2B71E,GAAG,IAAIhT,KAAKkoF,uBAAuBloF,KAAKmnF,kBAAkB,EAAEnnF,KAAK2tD,OAAOqpB,aAAa,GAAGh3E,KAAK2mE,eAAe9kB,KAAK7hD,KAAKmnF,kBAAkB,IAAInnF,KAAK2tD,OAAOqpB,aAAa,GAAG,IAAI,IAAIzzE,EAAEvD,KAAK2mE,eAAe3iB,OAAO,GAAGhkD,KAAK2tD,OAAOqpB,aAAa,GAAGzzE,EAAEy1C,MAAMz5C,OAAO,CAAC,IAAIE,EAAE8D,EAAEy1C,MAAM9tC,IAAIlL,KAAK2tD,OAAOqpB,aAAa,IAAIv3E,GAAG,IAAIA,EAAE+pF,SAASxpF,KAAK2tD,OAAOqpB,aAAa,KAAKh3E,KAAK2tD,OAAOqpB,aAAa,KAAKrtC,GAAGA,EAAE,KAAK3pC,KAAK2tD,OAAOqpB,aAAa,IAAIrtC,EAAE,KAAK3pC,KAAK2tD,OAAOqpB,aAAa,IAAIh3E,KAAK6iE,SAAQ,QAAS7iE,KAAK6iE,SAAQ,KAAMl5B,EAAEnoC,UAAU+nF,YAAY,WAAW,GAAGvpF,KAAK2tD,OAAOqpB,cAAch3E,KAAK2tD,OAAOmpB,gBAAgB92E,KAAKmnF,kBAAkB,CAACnnF,KAAK2nF,sBAAsB/3B,KAAK,CAACukB,OAAOn0E,KAAKmnF,kBAAkB/S,qBAAoB,IAAK,IAAIphE,EAAEhT,KAAK2mE,eAAe3iB,OAAOhkD,KAAKmnF,kBAAkB,GAAG,IAAInnF,KAAKkoF,uBAAuBloF,KAAK2tD,OAAOqpB,aAAa,GAAGh3E,KAAK2mE,eAAe9kB,MAAM7hD,KAAK2tD,OAAOqpB,aAAa,GAAGn0E,KAAKC,IAAIkQ,EAAEw9C,MAAMxwD,KAAK2mE,eAAe1tC,KAAKjmB,EAAEgmC,MAAMz5C,OAAO,KAAK,IAAIS,KAAKkoF,uBAAuBloF,KAAK2tD,OAAOqpB,aAAa,GAAG,GAAGh3E,KAAK2tD,OAAOqpB,aAAa,GAAGhkE,EAAEw9C,OAAOxwD,KAAK6iE,YAAYl5B,EAAEnoC,UAAUqmF,WAAW,SAAS70E,GAAG,IAAI22B,EAAE32B,EAAE+1E,UAAU/oF,KAAKqnF,oBAAoB,GAAGrnF,KAAKmoF,4BAA4BnoF,KAAK6jE,cAActkE,QAAQ,GAAGoqC,EAAE,KAAK32B,EAAE+S,QAAQ/lB,KAAKgsE,gBAAgBrb,UAAU,wBAAwB,GAAG3wD,KAAK2mE,eAAe3iB,OAAOutB,QAAQvxE,KAAK2mE,eAAe3iB,OAAOwM,MAAM,CAAC,IAAIjtD,EAAEvD,KAAK0pE,cAAc+B,UAAUz4D,EAAEhT,KAAKmnE,SAASnnE,KAAK2mE,eAAe9kB,KAAK7hD,KAAK2mE,eAAe1tC,MAAK,GAAI,GAAG11B,QAAG,IAASA,EAAE,SAAI,IAASA,EAAE,GAAG,CAAC,IAAI9D,EAAE0b,EAAEs/D,mBAAmBl3E,EAAE,GAAG,EAAEA,EAAE,GAAG,EAAEvD,KAAK2mE,eAAe3mE,KAAKi5D,aAAaiK,gBAAgB+S,uBAAuBj2E,KAAKi5D,aAAamK,iBAAiB3jE,GAAE,UAAWO,KAAK2pF,gCAAgChgD,EAAEnoC,UAAUmoF,6BAA6B,WAAW,IAAI32E,EAAEhT,KAAK2tD,OAAOy6B,oBAAoBz+C,EAAE3pC,KAAK2tD,OAAO06B,kBAAkB9kF,KAAKyP,IAAI22B,GAAG32B,EAAE,KAAK22B,EAAE,IAAI32B,EAAE,KAAK22B,EAAE,IAAIpmC,EAAEyP,GAAG22B,IAAI3pC,KAAKunF,oBAAoBvnF,KAAKwnF,kBAAkBx0E,EAAE,KAAKhT,KAAKunF,mBAAmB,IAAIv0E,EAAE,KAAKhT,KAAKunF,mBAAmB,IAAI59C,EAAE,KAAK3pC,KAAKwnF,iBAAiB,IAAI79C,EAAE,KAAK3pC,KAAKwnF,iBAAiB,IAAIxnF,KAAK4pF,uBAAuB52E,EAAE22B,EAAEpmC,IAAIvD,KAAKsnF,kBAAkBtnF,KAAK4pF,uBAAuB52E,EAAE22B,EAAEpmC,IAAIomC,EAAEnoC,UAAUooF,uBAAuB,SAAS52E,EAAE22B,EAAEpmC,GAAGvD,KAAKunF,mBAAmBv0E,EAAEhT,KAAKwnF,iBAAiB79C,EAAE3pC,KAAKsnF,iBAAiB/jF,EAAEvD,KAAKyuE,mBAAmB7e,QAAQjmB,EAAEnoC,UAAUymF,kBAAkB,SAASj1E,GAAG,IAAI22B,EAAE3pC,KAAKA,KAAKwsD,iBAAiBxsD,KAAK+nF,cAActmC,UAAUzhD,KAAK+nF,cAAc/0E,EAAE62E,aAAa7wC,MAAMyrC,QAAO,SAAUzxE,GAAG,OAAO22B,EAAEq+C,QAAQh1E,OAAO22B,EAAEnoC,UAAUsoF,oCAAoC,SAAS92E,EAAE22B,GAAG,IAAI,IAAIpmC,EAAEomC,EAAE,GAAGlqC,EAAE,EAAEkqC,EAAE,IAAIlqC,EAAEA,IAAI,CAAC,IAAIqf,EAAE9L,EAAEy9C,SAAShxD,EAAEO,KAAK4tD,WAAW7D,WAAWxqD,OAAO,IAAIS,KAAK4tD,UAAUl1B,WAAWn1B,IAAIub,EAAE,GAAG6qB,EAAE,KAAKlqC,IAAI8D,GAAGub,EAAE,GAAG,OAAOvb,GAAGomC,EAAEnoC,UAAUm1E,aAAa,SAAS3jE,EAAE22B,EAAEpmC,GAAGvD,KAAK2tD,OAAOnB,iBAAiBxsD,KAAKmoF,4BAA4BnoF,KAAK2tD,OAAOmpB,eAAe,CAAC9jE,EAAE22B,GAAG3pC,KAAK2tD,OAAO42B,qBAAqBhhF,EAAEvD,KAAK6iE,WAAWl5B,EAAEnoC,UAAUsiE,iBAAiB,SAAS9wD,GAAGhT,KAAKsoF,oBAAoBt1E,KAAKhT,KAAKyoF,oBAAoBz1E,GAAE,IAAKhT,KAAK6iE,SAAQ,GAAI7iE,KAAK2pF,iCAAiChgD,EAAEnoC,UAAUuoF,WAAW,SAAS/2E,EAAE22B,EAAEpmC,EAAE9D,GAAG,QAAG,IAAS8D,IAAIA,GAAE,QAAI,IAAS9D,IAAIA,GAAE,KAAMuT,EAAE,IAAIhT,KAAK2mE,eAAe9kB,MAAM,CAAC,IAAI/iC,EAAE9e,KAAK2mE,eAAe3iB,OAAO5wC,EAAE0L,EAAEk6B,MAAM9tC,IAAI8H,EAAE,IAAI,GAAGI,EAAE,CAAC,IAAIwvC,EAAE9jC,EAAEgkD,4BAA4B9vD,EAAE,IAAG,GAAIhD,EAAEhQ,KAAK8pF,oCAAoC12E,EAAEJ,GAAG4H,EAAE5K,EAAEsyC,EAAEtvC,EAAE,GAAGhD,EAAE3L,EAAE,EAAE0/C,EAAE,EAAE5iD,EAAE,EAAEsjD,EAAE,EAAE,GAAG,MAAM7B,EAAE9nC,OAAO9K,GAAG,CAAC,KAAKA,EAAE,GAAG,MAAM4yC,EAAE9nC,OAAO9K,EAAE,IAAIA,IAAI,KAAK4K,EAAEgoC,EAAErjD,QAAQ,MAAMqjD,EAAE9nC,OAAOF,EAAE,IAAIA,QAAQ,CAAC,IAAIO,EAAEnI,EAAE,GAAGsV,EAAEtV,EAAE,GAAG,IAAII,EAAEslB,SAASvd,KAAK9W,IAAI8W,KAAK,IAAI/H,EAAEslB,SAASpQ,KAAKy7B,IAAIz7B,KAAK,IAAI1lB,EAAEwQ,EAAEoyE,UAAUl9D,GAAG/oB,OAAO,IAAIqD,EAAE,IAAI6hD,GAAG7hD,EAAE,EAAEgY,GAAGhY,EAAE,GAAGuY,EAAE,GAAGnL,EAAE,IAAIhQ,KAAKgqF,qBAAqB52E,EAAEq9C,SAASt1C,EAAE,EAAEnb,KAAK4tD,aAAa,CAACx6C,EAAEq9C,SAASt1C,EAAE,EAAEnb,KAAK4tD,WAAW,IAAIpqD,EAAExD,KAAK4tD,UAAU7D,WAAWxqD,OAAO,IAAIS,KAAK4tD,UAAUl1B,YAAYr0B,IAAI8W,KAAK3X,EAAE,IAAIrC,GAAGqC,EAAE,EAAEwM,GAAGxM,EAAE,GAAGwM,IAAImL,IAAI,KAAKmN,EAAElV,EAAE7T,QAAQqb,EAAE,EAAEgoC,EAAErjD,SAASS,KAAKgqF,qBAAqB52E,EAAEq9C,SAASnoC,EAAE,EAAEtoB,KAAK4tD,aAAa,CAACx6C,EAAEq9C,SAASnoC,EAAE,EAAEtoB,KAAK4tD,WAAW,IAAI/jB,EAAE7pC,KAAK4tD,UAAU7D,WAAWxqD,OAAO,IAAIS,KAAK4tD,UAAUl1B,YAAYqrB,IAAIz7B,KAAKuhB,EAAE,IAAI4a,GAAG5a,EAAE,EAAEjvB,GAAGivB,EAAE,GAAGjvB,IAAI0N,KAAK1N,IAAI,IAAInX,EAAEuM,EAAEsyC,EAAEj+C,EAAElD,EAAE4wB,EAAElvB,KAAKC,IAAI9C,KAAK2mE,eAAe9kB,KAAKjnC,EAAE5K,EAAE3L,EAAE0/C,EAAE5iD,EAAEsjD,GAAG,GAAG9a,GAAG,KAAKiZ,EAAE9gD,MAAMkO,EAAE4K,GAAGqvE,OAAO,CAAC,GAAG1mF,GAAG,IAAIE,GAAG,KAAK2P,EAAEssE,aAAa,GAAG,CAAC,IAAIr5E,EAAEyY,EAAEk6B,MAAM9tC,IAAI8H,EAAE,GAAG,GAAG,GAAG3M,GAAG+M,EAAE+wC,WAAW,KAAK99C,EAAEq5E,aAAa1/E,KAAK2mE,eAAe9kB,KAAK,GAAG,CAAC,IAAIhvB,EAAE7yB,KAAK+pF,WAAW,CAAC/pF,KAAK2mE,eAAe9kB,KAAK,EAAE7uC,EAAE,GAAG,IAAG,GAAG,GAAG,GAAI,GAAG6f,EAAE,CAAC,IAAIyf,EAAEtyC,KAAK2mE,eAAe9kB,KAAKhvB,EAAExW,MAAM5Y,GAAG6uC,EAAEvgB,GAAGugB,IAAI,GAAG7yC,GAAGgE,EAAEsuB,IAAI/xB,KAAK2mE,eAAe9kB,MAAM,KAAKzuC,EAAEssE,aAAa1/E,KAAK2mE,eAAe9kB,KAAK,GAAG,CAAC,IAAI1wB,EAAErS,EAAEk6B,MAAM9tC,IAAI8H,EAAE,GAAG,GAAG,GAAGme,GAAGA,EAAEgzB,WAAW,KAAKhzB,EAAEuuD,aAAa,GAAG,CAAC,IAAIptD,EAAEtyB,KAAK+pF,WAAW,CAAC,EAAE/2E,EAAE,GAAG,IAAG,GAAG,GAAG,GAAIsf,IAAIP,GAAGO,EAAE/yB,SAAS,MAAM,CAAC8c,MAAM5Y,EAAElE,OAAOwyB,OAAO4X,EAAEnoC,UAAUonF,cAAc,SAAS51E,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAK+pF,WAAW/2E,EAAE22B,GAAG,GAAGpmC,EAAE,CAAC,KAAKA,EAAE8Y,MAAM,GAAG9Y,EAAE8Y,OAAOrc,KAAK2mE,eAAe9kB,KAAK7uC,EAAE,KAAKhT,KAAK2tD,OAAOmpB,eAAe,CAACvzE,EAAE8Y,MAAMrJ,EAAE,IAAIhT,KAAK2tD,OAAO42B,qBAAqBhhF,EAAEhE,SAASoqC,EAAEnoC,UAAUkoF,gBAAgB,SAAS12E,GAAG,IAAI22B,EAAE3pC,KAAK+pF,WAAW/2E,GAAE,GAAI,GAAG22B,EAAE,CAAC,IAAI,IAAIpmC,EAAEyP,EAAE,GAAG22B,EAAEttB,MAAM,GAAGstB,EAAEttB,OAAOrc,KAAK2mE,eAAe9kB,KAAKt+C,IAAI,IAAIvD,KAAK2tD,OAAO62B,6BAA6B,KAAK76C,EAAEttB,MAAMstB,EAAEpqC,OAAOS,KAAK2mE,eAAe9kB,MAAMlY,EAAEpqC,QAAQS,KAAK2mE,eAAe9kB,KAAKt+C,IAAIvD,KAAK2tD,OAAOqpB,aAAa,CAACh3E,KAAK2tD,OAAO62B,6BAA6B76C,EAAEttB,MAAMstB,EAAEttB,MAAMstB,EAAEpqC,OAAOgE,KAAKomC,EAAEnoC,UAAUwoF,qBAAqB,SAASh3E,GAAG,OAAO,IAAIA,EAAE0lB,YAAY14B,KAAKgsE,gBAAgBvtD,QAAQyrE,cAAc7mF,QAAQ2P,EAAE+2C,aAAa,GAAGpgB,EAAEnoC,UAAUioF,cAAc,SAASz2E,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAOmmC,uBAAuBn3E,GAAGhT,KAAK2tD,OAAOmpB,eAAe,CAAC,EAAEntC,EAAEm+B,OAAO9nE,KAAK2tD,OAAOqpB,aAAa,CAACh3E,KAAK2mE,eAAe9kB,KAAKlY,EAAEygD,MAAMpqF,KAAK2tD,OAAO42B,qBAAqB,GAAGnxE,EAAE,CAACwvC,EAAE,EAAEzhD,EAAE2nE,gBAAgBlmB,EAAE,EAAEzhD,EAAEk5E,cAAcz3B,EAAE,EAAEmB,EAAEqpB,eAAexqB,EAAE,EAAEzhD,EAAEmsE,iBAAiB1qB,EAAE,EAAEmB,EAAEyvB,iBAAiB7pC,GAAhyb,CAAoybrhB,EAAEsoC,YAAYjnB,EAAEsqC,iBAAiBxwE,GAAG4mF,KAAK,CAACr3E,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE2pC,wBAAwB3pC,EAAEkqC,cAAclqC,EAAE0jC,kBAAkB1jC,EAAE6pC,eAAe7pC,EAAEyjC,cAAczjC,EAAEopC,oBAAoBppC,EAAEspC,sBAAiB,EAAO,IAAIxzE,EAAE8D,EAAE,MAAMomC,EAAEspC,iBAAiBxzE,EAAE6qF,gBAAgB,mBAAmB3gD,EAAEopC,oBAAoBtzE,EAAE6qF,gBAAgB,sBAAsB3gD,EAAEyjC,cAAc3tE,EAAE6qF,gBAAgB,gBAAgB3gD,EAAE6pC,eAAe/zE,EAAE6qF,gBAAgB,iBAAiB3gD,EAAE0jC,kBAAkB5tE,EAAE6qF,gBAAgB,oBAAoB3gD,EAAEkqC,cAAcp0E,EAAE6qF,gBAAgB,gBAAgB3gD,EAAE2pC,wBAAwB7zE,EAAE6qF,gBAAgB,2BAA2BC,IAAI,SAASv3E,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEO,MAAMA,KAAKqmE,YAAY,SAASrzD,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIqf,EAAE1L,EAAE1T,UAAUH,OAAOqjD,EAAExvC,EAAE,EAAEu2B,EAAE,OAAOlqC,EAAEA,EAAEwO,OAAOq4D,yBAAyB38B,EAAEpmC,GAAG9D,EAAE,GAAG,iBAAiB8mE,SAAS,mBAAmBA,QAAQ1kC,SAAS+gB,EAAE2jB,QAAQ1kC,SAAS7uB,EAAE22B,EAAEpmC,EAAE9D,QAAQ,IAAI,IAAIuQ,EAAEgD,EAAEzT,OAAO,EAAEyQ,GAAG,EAAEA,KAAK8O,EAAE9L,EAAEhD,MAAM4yC,GAAGxvC,EAAE,EAAE0L,EAAE8jC,GAAGxvC,EAAE,EAAE0L,EAAE6qB,EAAEpmC,EAAEq/C,GAAG9jC,EAAE6qB,EAAEpmC,KAAKq/C,GAAG,OAAOxvC,EAAE,GAAGwvC,GAAG30C,OAAOqzC,eAAe3X,EAAEpmC,EAAEq/C,GAAGA,GAAG9jC,EAAE9e,MAAMA,KAAKwmE,SAAS,SAASxzD,EAAE22B,GAAG,OAAO,SAASpmC,EAAE9D,GAAGkqC,EAAEpmC,EAAE9D,EAAEuT,KAAK/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEiqC,kBAAa,EAAO,IAAIxgE,EAAE7P,EAAE,MAAMq/C,EAAE,WAAW,SAAS5vC,EAAEA,GAAGhT,KAAKgsE,gBAAgBh5D,EAAE,OAAO/E,OAAOqzC,eAAetuC,EAAE,eAAe,CAAC9H,IAAI,WAAW,IAAI8H,EAAEw3E,cAAc,CAAC,IAAI7gD,EAAEppC,OAAOkqF,cAAclqF,OAAOmqF,mBAAmB,IAAI/gD,EAAE,OAAOlpC,QAAQC,KAAK,4FAA4F,KAAKsS,EAAEw3E,cAAc,IAAI7gD,EAAE,OAAO32B,EAAEw3E,eAAejoC,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUm2E,cAAc,WAAW,IAAIhuC,EAAE32B,EAAE23E,aAAa,GAAGhhD,EAAE,CAAC,IAAIpmC,EAAEomC,EAAEihD,qBAAqBjhD,EAAEkhD,gBAAgB7qF,KAAK8qF,qBAAqB9qF,KAAK+qF,gBAAgB/qF,KAAKgsE,gBAAgBvtD,QAAQusE,aAAY,SAAUh4E,GAAGzP,EAAEygD,OAAOhxC,EAAEzP,EAAE0nF,QAAQthD,EAAEuhD,aAAa3nF,EAAE8Y,MAAM,QAAQrJ,EAAExR,UAAUspF,qBAAqB,SAAS93E,GAAG,IAAI,IAAI22B,EAAEppC,OAAOw/C,KAAK/sC,GAAGzP,EAAEomC,EAAEpqC,OAAOE,EAAE,IAAI2mD,WAAW7iD,GAAGub,EAAE,EAAEA,EAAEvb,EAAEub,IAAIrf,EAAEqf,GAAG6qB,EAAE9uB,WAAWiE,GAAG,OAAOrf,EAAEukD,QAAQhxC,EAAExR,UAAUupF,gBAAgB,SAAS/3E,GAAG,OAAOA,EAAE1T,MAAM,KAAK,IAAI0T,EAAEvT,EAAE,CAACqf,EAAE,EAAE1L,EAAEk6D,kBAAkBt6D,GAA73B,GAAm4B22B,EAAEiqC,aAAahxB,GAAGuoC,KAAK,CAACn4E,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEyhD,kBAAa,EAAO,IAAI3rF,EAAE8D,EAAE,MAAMub,EAAE,WAAW,SAAS9L,EAAEA,GAAGhT,KAAKqrF,WAAWr4E,EAAEhT,KAAKsrF,gBAAgB,IAAI7rF,EAAEsuD,aAAa/tD,KAAKurF,gBAAgB,IAAI9rF,EAAEsuD,aAAa/tD,KAAKwrF,cAAc,IAAI/rF,EAAEsuD,aAAa/tD,KAAKyrF,OAAO,IAAI7rF,MAAMI,KAAKqrF,YAAYrrF,KAAK0rF,YAAY,EAAE1rF,KAAK2rF,QAAQ,EAAE,OAAO19E,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAKsrF,gBAAgBv4C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAKurF,gBAAgBx4C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKwrF,cAAcz4C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAKqrF,YAAY17E,IAAI,SAASqD,GAAG,GAAGhT,KAAKqrF,aAAar4E,EAAE,CAAC,IAAI,IAAI22B,EAAE,IAAI/pC,MAAMoT,GAAGzP,EAAE,EAAEA,EAAEV,KAAKC,IAAIkQ,EAAEhT,KAAKT,QAAQgE,IAAIomC,EAAEpmC,GAAGvD,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgBroF,IAAIvD,KAAKyrF,OAAO9hD,EAAE3pC,KAAKqrF,WAAWr4E,EAAEhT,KAAK0rF,YAAY,IAAInpC,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2rF,SAASh8E,IAAI,SAASqD,GAAG,GAAGA,EAAEhT,KAAK2rF,QAAQ,IAAI,IAAIhiD,EAAE3pC,KAAK2rF,QAAQhiD,EAAE32B,EAAE22B,IAAI3pC,KAAKyrF,OAAO9hD,QAAG,EAAO3pC,KAAK2rF,QAAQ34E,GAAGuvC,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAU0J,IAAI,SAAS8H,GAAG,OAAOhT,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB54E,KAAKA,EAAExR,UAAUmO,IAAI,SAASqD,EAAE22B,GAAG3pC,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB54E,IAAI22B,GAAG32B,EAAExR,UAAUtB,KAAK,SAAS8S,GAAGhT,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB5rF,KAAK2rF,UAAU34E,EAAEhT,KAAK2rF,UAAU3rF,KAAKqrF,YAAYrrF,KAAK0rF,cAAc1rF,KAAK0rF,YAAY1rF,KAAKqrF,WAAWrrF,KAAKwrF,cAAc57B,KAAK,IAAI5vD,KAAK2rF,WAAW34E,EAAExR,UAAUqqF,QAAQ,WAAW,GAAG7rF,KAAK2rF,UAAU3rF,KAAKqrF,WAAW,MAAM,IAAIrsF,MAAM,4CAA4C,OAAOgB,KAAK0rF,cAAc1rF,KAAK0rF,YAAY1rF,KAAKqrF,WAAWrrF,KAAKwrF,cAAc57B,KAAK,GAAG5vD,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB5rF,KAAK2rF,QAAQ,KAAK19E,OAAOqzC,eAAetuC,EAAExR,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2rF,UAAU3rF,KAAKqrF,YAAY9oC,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAU0tC,IAAI,WAAW,OAAOlvC,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB5rF,KAAK2rF,UAAU,KAAK34E,EAAExR,UAAUsC,OAAO,SAASkP,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,GAAG9D,EAAE,EAAEA,EAAEC,UAAUH,OAAOE,IAAI8D,EAAE9D,EAAE,GAAGC,UAAUD,GAAG,GAAGkqC,EAAE,CAAC,IAAI,IAAI7qB,EAAE9L,EAAE8L,EAAE9e,KAAK2rF,QAAQhiD,EAAE7qB,IAAI9e,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB9sE,IAAI9e,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB9sE,EAAE6qB,IAAI3pC,KAAK2rF,SAAShiD,EAAE3pC,KAAKsrF,gBAAgB17B,KAAK,CAAC3kD,MAAM+H,EAAEmhE,OAAOxqC,IAAI,IAAI7qB,EAAE9e,KAAK2rF,QAAQ,EAAE7sE,GAAG9L,EAAE8L,IAAI9e,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB9sE,EAAEvb,EAAEhE,SAASS,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB9sE,IAAI,IAAIA,EAAE,EAAEA,EAAEvb,EAAEhE,OAAOuf,IAAI9e,KAAKyrF,OAAOzrF,KAAK4rF,gBAAgB54E,EAAE8L,IAAIvb,EAAEub,GAAG,GAAGvb,EAAEhE,QAAQS,KAAKurF,gBAAgB37B,KAAK,CAAC3kD,MAAM+H,EAAEmhE,OAAO5wE,EAAEhE,SAASS,KAAK2rF,QAAQpoF,EAAEhE,OAAOS,KAAKqrF,WAAW,CAAC,IAAIj4E,EAAEpT,KAAK2rF,QAAQpoF,EAAEhE,OAAOS,KAAKqrF,WAAWrrF,KAAK0rF,aAAat4E,EAAEpT,KAAK2rF,QAAQ3rF,KAAKqrF,WAAWrrF,KAAKwrF,cAAc57B,KAAKx8C,QAAQpT,KAAK2rF,SAASpoF,EAAEhE,QAAQyT,EAAExR,UAAUsqF,UAAU,SAAS94E,GAAGA,EAAEhT,KAAK2rF,UAAU34E,EAAEhT,KAAK2rF,SAAS3rF,KAAK0rF,aAAa14E,EAAEhT,KAAK2rF,SAAS34E,EAAEhT,KAAKwrF,cAAc57B,KAAK58C,IAAIA,EAAExR,UAAUuqF,cAAc,SAAS/4E,EAAE22B,EAAEpmC,GAAG,KAAKomC,GAAG,GAAG,CAAC,GAAG32B,EAAE,GAAGA,GAAGhT,KAAK2rF,QAAQ,MAAM,IAAI3sF,MAAM,+BAA+B,GAAGgU,EAAEzP,EAAE,EAAE,MAAM,IAAIvE,MAAM,gDAAgD,GAAGuE,EAAE,EAAE,CAAC,IAAI,IAAI9D,EAAEkqC,EAAE,EAAElqC,GAAG,EAAEA,IAAIO,KAAK2P,IAAIqD,EAAEvT,EAAE8D,EAAEvD,KAAKkL,IAAI8H,EAAEvT,IAAI,IAAIqf,EAAE9L,EAAE22B,EAAEpmC,EAAEvD,KAAK2rF,QAAQ,GAAG7sE,EAAE,EAAE,IAAI9e,KAAK2rF,SAAS7sE,EAAE9e,KAAK2rF,QAAQ3rF,KAAKqrF,YAAYrrF,KAAK2rF,UAAU3rF,KAAK0rF,cAAc1rF,KAAKwrF,cAAc57B,KAAK,QAAQ,IAAInwD,EAAE,EAAEA,EAAEkqC,EAAElqC,IAAIO,KAAK2P,IAAIqD,EAAEvT,EAAE8D,EAAEvD,KAAKkL,IAAI8H,EAAEvT,MAAMuT,EAAExR,UAAUoqF,gBAAgB,SAAS54E,GAAG,OAAOhT,KAAK0rF,YAAY14E,GAAGhT,KAAKqrF,YAAYr4E,EAArxG,GAA0xG22B,EAAEyhD,aAAatsE,GAAGktE,KAAK,CAACh5E,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEtqB,WAAM,EAAOsqB,EAAEtqB,MAAM,SAASrM,EAAE22B,EAAEpmC,GAAG,QAAG,IAASA,IAAIA,EAAE,GAAG,iBAAiBomC,EAAE,OAAOA,EAAE,IAAIlqC,EAAEG,MAAMqsF,QAAQtiD,GAAG,GAAG,GAAG,IAAI,IAAI7qB,KAAK6qB,EAAElqC,EAAEqf,GAAGvb,GAAG,EAAEomC,EAAE7qB,GAAG6qB,EAAE7qB,GAAG9L,EAAE22B,EAAE7qB,GAAGvb,EAAE,GAAGomC,EAAE7qB,GAAG,OAAOrf,IAAIysF,KAAK,SAASl5E,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE0uC,kBAAa,EAAO,IAAIjlE,EAAE7P,EAAE,KAAKq/C,EAAEr/C,EAAE,MAAMyM,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,MAAMpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE5X,EAAE,MAAM+kB,EAAE/kB,EAAE,MAAMX,EAAEW,EAAE,MAAMC,EAAED,EAAE,MAAMsmC,EAAEtmC,EAAE,MAAME,EAAEF,EAAE,MAAMwuB,GAAE,EAAG1rB,EAAE,SAAS2M,GAAG,SAAS22B,EAAEA,GAAG,IAAIpmC,EAAEyP,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOuD,EAAE4oF,UAAU,IAAIhrF,EAAE4sD,aAAaxqD,EAAE6oF,QAAQ,IAAIjrF,EAAE4sD,aAAaxqD,EAAE8oF,YAAY,IAAIlrF,EAAE4sD,aAAaxqD,EAAE49D,UAAU,IAAIhgE,EAAE4sD,aAAaxqD,EAAEixE,UAAU,IAAIrzE,EAAE4sD,aAAaxqD,EAAE0rE,sBAAsB,IAAIj/D,EAAEs8E,qBAAqB/oF,EAAEusE,eAAe,IAAIzrE,EAAEkoF,eAAe5iD,GAAGpmC,EAAE0rE,sBAAsB6D,WAAWlwB,EAAE0qB,gBAAgB/pE,EAAEusE,gBAAgBvsE,EAAEojE,eAAepjE,EAAEs5D,SAASt5D,EAAE0rE,sBAAsBC,eAAe5sB,EAAEkqC,gBAAgBjpF,EAAE0rE,sBAAsB6D,WAAWlwB,EAAEkmB,eAAevlE,EAAEojE,gBAAgBpjE,EAAEqjE,YAAYrjE,EAAE0rE,sBAAsBC,eAAet0D,EAAE6xE,YAAYlpF,EAAE0rE,sBAAsB6D,WAAWlwB,EAAEmmB,YAAYxlE,EAAEqjE,aAAarjE,EAAE01D,aAAa11D,EAAEs5D,SAASt5D,EAAE0rE,sBAAsBC,eAAenrB,EAAE2oC,aAAY,WAAY,OAAOnpF,EAAE8yB,qBAAqB9yB,EAAE0rE,sBAAsB6D,WAAWlwB,EAAEy3B,aAAa92E,EAAE01D,cAAc11D,EAAEmxE,kBAAkBnxE,EAAE0rE,sBAAsBC,eAAezqB,EAAEkoC,kBAAkBppF,EAAE0rE,sBAAsB6D,WAAWlwB,EAAEgqC,kBAAkBrpF,EAAEmxE,mBAAmBnxE,EAAEspF,iBAAiBtpF,EAAE0rE,sBAAsBC,eAAe/zD,EAAE2xE,iBAAiBvpF,EAAE0rE,sBAAsB6D,WAAWlwB,EAAEmqC,iBAAiBxpF,EAAEspF,kBAAkBtpF,EAAE25E,eAAe35E,EAAE0rE,sBAAsBC,eAAe5mD,EAAE0kE,gBAAgBzpF,EAAE0rE,sBAAsB6D,WAAWlwB,EAAEomB,gBAAgBzlE,EAAE25E,gBAAgB35E,EAAE0pF,gBAAgB1pF,EAAE0rE,sBAAsBC,eAAetsE,EAAEsqF,gBAAgB3pF,EAAE0rE,sBAAsB6D,WAAWlwB,EAAEuqC,gBAAgB5pF,EAAE0pF,iBAAiB1pF,EAAE4rE,cAAc,IAAItlC,EAAEujD,aAAa7pF,EAAEojE,eAAepjE,EAAE0pF,gBAAgB1pF,EAAE01D,aAAa11D,EAAEspF,iBAAiBtpF,EAAEqjE,YAAYrjE,EAAEusE,eAAevsE,EAAEmxE,kBAAkBnxE,EAAE25E,gBAAgB35E,EAAEs5D,SAAS17D,EAAEi7D,aAAa74D,EAAE4rE,cAAc3N,WAAWj+D,EAAE8oF,cAAc9oF,EAAEs5D,SAASt5D,EAAE4rE,eAAe5rE,EAAEs5D,SAAS17D,EAAEi7D,aAAa74D,EAAEojE,eAAenf,SAASjkD,EAAE49D,YAAY59D,EAAEs5D,SAAS17D,EAAEi7D,aAAa74D,EAAE01D,aAAaoiB,OAAO93E,EAAE6oF,UAAU7oF,EAAEs5D,SAAS17D,EAAEi7D,aAAa74D,EAAE01D,aAAaqiB,SAAS/3E,EAAE4oF,YAAY5oF,EAAEs5D,SAASt5D,EAAEusE,eAAeqD,gBAAe,SAAUngE,GAAG,OAAOzP,EAAE6sE,eAAep9D,OAAOzP,EAAEs5D,SAASt5D,EAAEojE,eAAetF,UAAS,SAAUruD,GAAGzP,EAAEixE,UAAU5kB,KAAK,CAACtyB,SAAS/5B,EAAEojE,eAAe3iB,OAAOwM,MAAMtxD,OAAO,IAAIqE,EAAEspF,iBAAiBQ,eAAe9pF,EAAEojE,eAAe3iB,OAAOpb,UAAUrlC,EAAEojE,eAAe3iB,OAAOjQ,kBAAkBxwC,EAAE+pF,aAAa,IAAI7pF,EAAE8pF,aAAY,SAAUv6E,EAAE22B,GAAG,OAAOpmC,EAAE4rE,cAAcxkE,MAAMqI,EAAE22B,MAAMpmC,EAAE,OAAOub,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAKmsF,UAAUp5C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKosF,QAAQr5C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,aAAa,CAAC0J,IAAI,WAAW,OAAOlL,KAAKqsF,YAAYt5C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAKmhE,UAAUpuB,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,WAAW,CAAC0J,IAAI,WAAW,IAAI8H,EAAEhT,KAAK,OAAOA,KAAKwtF,eAAextF,KAAKwtF,aAAa,IAAIrsF,EAAE4sD,aAAa/tD,KAAK68D,SAAS78D,KAAKw0E,UAAUzhC,OAAM,SAAUpJ,GAAG,IAAIpmC,EAAE,QAAQA,EAAEyP,EAAEw6E,oBAAe,IAASjqF,GAAGA,EAAEqsD,KAAKjmB,EAAErM,eAAet9B,KAAKwtF,aAAaz6C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,OAAO,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2mE,eAAe9kB,MAAMU,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,OAAO,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2mE,eAAe1tC,MAAMspB,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,UAAU,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2mE,eAAeuJ,SAAS3tB,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUigD,QAAQ,WAAW,IAAI9X,EAAE3pC,KAAK48D,cAAc5pD,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,MAAM,QAAQ2pC,EAAE3pC,KAAKytF,oBAAe,IAAS9jD,GAAGA,EAAE8X,UAAUzhD,KAAKytF,kBAAa,IAAS9jD,EAAEnoC,UAAUyuE,MAAM,SAASj9D,EAAE22B,GAAG3pC,KAAKstF,aAAard,MAAMj9D,EAAE22B,IAAIA,EAAEnoC,UAAUksF,UAAU,SAAS16E,EAAE22B,GAAG3pC,KAAK4mE,YAAY8O,UAAU9yB,EAAE+qC,aAAaC,OAAO77D,IAAI/xB,KAAK4mE,YAAYlmE,KAAK,qDAAqDqxB,GAAE,GAAI/xB,KAAKstF,aAAaI,UAAU16E,EAAE22B,IAAIA,EAAEnoC,UAAU4d,OAAO,SAASpM,EAAE22B,GAAGgE,MAAM36B,IAAI26B,MAAMhE,KAAK32B,EAAEnQ,KAAKuE,IAAI4L,EAAEsvC,EAAEurC,cAAclkD,EAAE9mC,KAAKuE,IAAIuiC,EAAE2Y,EAAEwrC,cAAc9tF,KAAK2mE,eAAevnD,OAAOpM,EAAE22B,KAAKA,EAAEnoC,UAAUusF,OAAO,SAAS/6E,EAAE22B,QAAG,IAASA,IAAIA,GAAE,GAAI3pC,KAAK2mE,eAAeonB,OAAO/6E,EAAE22B,IAAIA,EAAEnoC,UAAU8gE,YAAY,SAAStvD,EAAE22B,EAAEpmC,GAAGvD,KAAK2mE,eAAerE,YAAYtvD,EAAE22B,EAAEpmC,IAAIomC,EAAEnoC,UAAUo6E,YAAY,SAAS5oE,GAAGhT,KAAK2mE,eAAeiV,YAAY5oE,IAAI22B,EAAEnoC,UAAU40B,YAAY,WAAWp2B,KAAK2mE,eAAevwC,eAAeuT,EAAEnoC,UAAU60B,eAAe,WAAWr2B,KAAK2mE,eAAetwC,kBAAkBsT,EAAEnoC,UAAUq6E,aAAa,SAAS7oE,GAAGhT,KAAK2mE,eAAekV,aAAa7oE,IAAI22B,EAAEnoC,UAAUs7E,mBAAmB,SAAS9pE,EAAE22B,GAAG,OAAO3pC,KAAKmvE,cAAc2N,mBAAmB9pE,EAAE22B,IAAIA,EAAEnoC,UAAUo7E,mBAAmB,SAAS5pE,EAAE22B,GAAG,OAAO3pC,KAAKmvE,cAAcyN,mBAAmB5pE,EAAE22B,IAAIA,EAAEnoC,UAAUi7E,mBAAmB,SAASzpE,EAAE22B,GAAG,OAAO3pC,KAAKmvE,cAAcsN,mBAAmBzpE,EAAE22B,IAAIA,EAAEnoC,UAAUw7E,mBAAmB,SAAShqE,EAAE22B,GAAG,OAAO3pC,KAAKmvE,cAAc6N,mBAAmBhqE,EAAE22B,IAAIA,EAAEnoC,UAAUwtE,OAAO,WAAWhvE,KAAK8vE,eAAerxD,QAAQuvE,aAAahuF,KAAKiuF,sBAAsBtkD,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAKmvE,cAAc3+D,QAAQxQ,KAAK2mE,eAAen2D,QAAQxQ,KAAKitF,gBAAgBz8E,QAAQxQ,KAAKi5D,aAAazoD,QAAQxQ,KAAK00E,kBAAkBlkE,SAASm5B,EAAEnoC,UAAU4uE,eAAe,SAASp9D,GAAG,IAAI22B,EAAE,OAAO32B,GAAG,IAAI,aAAahT,KAAKkwE,QAAQ9wD,OAAOpf,KAAK6hD,KAAK7hD,KAAKi5B,MAAM,MAAM,IAAI,cAAcj5B,KAAK8vE,eAAerxD,QAAQuvE,YAAYhuF,KAAKiuF,sBAAsB,QAAQtkD,EAAE3pC,KAAKytF,oBAAe,IAAS9jD,GAAGA,EAAE8X,UAAUzhD,KAAKytF,kBAAa,KAAU9jD,EAAEnoC,UAAUysF,mBAAmB,WAAW,IAAIj7E,EAAEhT,KAAK,IAAIA,KAAKytF,aAAa,CAAC,IAAI9jD,EAAE,GAAGA,EAAEzpC,KAAKF,KAAKwhE,WAAWh+D,EAAE0qF,8BAA8BhkF,KAAK,KAAKlK,KAAK2mE,kBAAkBh9B,EAAEzpC,KAAKF,KAAKy8E,mBAAmB,CAAC0R,MAAM,MAAK,WAAY,OAAO3qF,EAAE0qF,8BAA8Bl7E,EAAE2zD,iBAAgB,MAAO3mE,KAAKytF,aAAa,CAAChsC,QAAQ,WAAW,IAAI,IAAIzuC,EAAE,EAAEzP,EAAEomC,EAAE32B,EAAEzP,EAAEhE,OAAOyT,IAAIzP,EAAEyP,GAAGyuC,cAAc9X,EAAztL,CAA4tLv2B,EAAEw9C,YAAYjnB,EAAE0uC,aAAahyE,GAAG+nF,KAAK,CAACp7E,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEyyB,aAAazyB,EAAEokB,kBAAa,EAAO,IAAIxqD,EAAE,WAAW,SAASyP,IAAIhT,KAAKq8D,WAAW,GAAGr8D,KAAKs8D,WAAU,EAAG,OAAOruD,OAAOqzC,eAAetuC,EAAExR,UAAU,QAAQ,CAAC0J,IAAI,WAAW,IAAI8H,EAAEhT,KAAK,OAAOA,KAAKu8D,SAASv8D,KAAKu8D,OAAO,SAAS5yB,GAAG,OAAO32B,EAAEqpD,WAAWn8D,KAAKypC,GAAG,CAAC8X,QAAQ,WAAW,IAAIzuC,EAAEspD,UAAU,IAAI,IAAI/4D,EAAE,EAAEA,EAAEyP,EAAEqpD,WAAW98D,OAAOgE,IAAI,GAAGyP,EAAEqpD,WAAW94D,KAAKomC,EAAE,YAAY32B,EAAEqpD,WAAWv4D,OAAOP,EAAE,OAAOvD,KAAKu8D,QAAQha,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUouD,KAAK,SAAS58C,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,GAAG9D,EAAE,EAAEA,EAAEO,KAAKq8D,WAAW98D,OAAOE,IAAI8D,EAAErD,KAAKF,KAAKq8D,WAAW58D,IAAI,IAAIA,EAAE,EAAEA,EAAE8D,EAAEhE,OAAOE,IAAI8D,EAAE9D,GAAG+nB,UAAK,EAAOxU,EAAE22B,IAAI32B,EAAExR,UAAUigD,QAAQ,WAAWzhD,KAAKq8D,aAAar8D,KAAKq8D,WAAW98D,OAAO,GAAGS,KAAKs8D,WAAU,GAAItpD,EAA7nB,GAAkoB22B,EAAEokB,aAAaxqD,EAAEomC,EAAEyyB,aAAa,SAASppD,EAAE22B,GAAG,OAAO32B,GAAE,SAAUA,GAAG,OAAO22B,EAAEimB,KAAK58C,QAAQq7E,KAAK,SAASr7E,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEyjD,aAAazjD,EAAEouC,8BAAyB,EAAO,IAAI3kE,EAAEwvC,EAAEr/C,EAAE,MAAMyM,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,KAAKc,EAAEd,EAAE,MAAMwgD,EAAExgD,EAAE,KAAKpC,EAAEoC,EAAE,MAAMkhD,EAAElhD,EAAE,MAAM4X,EAAE5X,EAAE,KAAK+kB,EAAE/kB,EAAE,KAAKX,EAAEW,EAAE,MAAMC,EAAED,EAAE,MAAMsmC,EAAEtmC,EAAE,MAAME,EAAEF,EAAE,MAAMwuB,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAG1rB,EAAE,OAAO,SAASwsB,EAAE7f,EAAE22B,GAAG,GAAG32B,EAAE,GAAG,OAAO22B,EAAE2kD,cAAa,EAAG,OAAOt7E,GAAG,KAAK,EAAE,QAAQ22B,EAAE4kD,WAAW,KAAK,EAAE,QAAQ5kD,EAAE6kD,YAAY,KAAK,EAAE,QAAQ7kD,EAAE8kD,eAAe,KAAK,EAAE,QAAQ9kD,EAAE+kD,iBAAiB,KAAK,EAAE,QAAQ/kD,EAAEglD,SAAS,KAAK,EAAE,QAAQhlD,EAAEilD,SAAS,KAAK,EAAE,QAAQjlD,EAAEklD,WAAW,KAAK,EAAE,QAAQllD,EAAEmlD,gBAAgB,KAAK,EAAE,QAAQnlD,EAAEolD,YAAY,KAAK,GAAG,QAAQplD,EAAEqlD,cAAc,KAAK,GAAG,QAAQrlD,EAAEslD,YAAY,KAAK,GAAG,QAAQtlD,EAAEulD,eAAe,KAAK,GAAG,QAAQvlD,EAAEwlD,iBAAiB,KAAK,GAAG,QAAQxlD,EAAEylD,oBAAoB,KAAK,GAAG,QAAQzlD,EAAE0lD,kBAAkB,KAAK,GAAG,QAAQ1lD,EAAE2lD,gBAAgB,KAAK,GAAG,QAAQ3lD,EAAE4lD,mBAAmB,KAAK,GAAG,QAAQ5lD,EAAE6lD,aAAa,KAAK,GAAG,QAAQ7lD,EAAE8lD,YAAY,KAAK,GAAG,QAAQ9lD,EAAE+lD,UAAU,KAAK,GAAG,QAAQ/lD,EAAEgmD,SAAS,KAAK,GAAG,QAAQhmD,EAAE2kD,YAAY,OAAM,GAAI,SAASt7E,GAAGA,EAAEA,EAAEglE,oBAAoB,GAAG,sBAAsBhlE,EAAEA,EAAEilE,qBAAqB,GAAG,uBAAzF,CAAiH7kE,EAAEu2B,EAAEouC,2BAA2BpuC,EAAEouC,yBAAyB,KAAK,IAAIzlC,EAAE,WAAW,SAASt/B,EAAEA,EAAE22B,EAAEpmC,EAAE9D,GAAGO,KAAK2mE,eAAe3zD,EAAEhT,KAAKi5D,aAAatvB,EAAE3pC,KAAK4mE,YAAYrjE,EAAEvD,KAAKgsE,gBAAgBvsE,EAAEO,KAAK4vF,MAAM,IAAIrjC,YAAY,GAAG,OAAOv5C,EAAExR,UAAUquF,KAAK,SAAS78E,GAAGhT,KAAK4vF,MAAM,IAAIrjC,YAAY,IAAIv5C,EAAExR,UAAUsuF,IAAI,SAAS98E,EAAE22B,EAAEpmC,GAAGvD,KAAK4vF,MAAMvrF,EAAEqF,OAAO1J,KAAK4vF,MAAM58E,EAAEs3C,SAAS3gB,EAAEpmC,KAAKyP,EAAExR,UAAUuuF,OAAO,SAAS/8E,GAAG,IAAIA,EAAE,OAAOhT,KAAK4vF,MAAM,IAAIrjC,YAAY,IAAG,EAAG,IAAI5iB,EAAEoa,EAAE8b,cAAc7/D,KAAK4vF,OAAO,OAAO5vF,KAAK4vF,MAAM,IAAIrjC,YAAY,GAAG5iB,GAAG,IAAI,KAAK3pC,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,UAAUszB,EAAEkuB,GAAGxhD,IAAI,MAAM,MAAM,IAAI,KAAKtvB,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,aAAaszB,EAAEkuB,GAAGxhD,IAAI,MAAM,MAAM,IAAI,IAAI,IAAI/rB,EAAEvD,KAAK2mE,eAAe3iB,OAAOpb,UAAU,EAAE,KAAK5oC,KAAK2mE,eAAe3iB,OAAOjQ,aAAa,GAAG,IAAI/zC,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,OAAO/rB,EAAEq/C,EAAEkuB,GAAGxhD,IAAI,MAAM,MAAM,IAAI,IAAItvB,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,SAASszB,EAAEkuB,GAAGxhD,IAAI,MAAM,MAAM,IAAI,KAAK,IAAI7vB,EAAE,CAAC64D,MAAM,EAAE78B,UAAU,EAAE28B,IAAI,GAAGp4D,KAAKgsE,gBAAgBvtD,QAAQu/D,aAAav+E,GAAGO,KAAKgsE,gBAAgBvtD,QAAQwO,YAAY,EAAE,EAAEjtB,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,OAAO7vB,EAAE,KAAKmjD,EAAEkuB,GAAGxhD,IAAI,MAAM,MAAM,QAAQtvB,KAAK4mE,YAAYmB,MAAM,oBAAoBp+B,GAAG3pC,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,OAAOszB,EAAEkuB,GAAGxhD,IAAI,MAAM,OAAM,GAAItc,EAAlsC,GAAusCme,EAAE,SAASne,GAAG,SAAS22B,EAAEA,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,EAAEkvC,EAAEj+C,EAAE8W,EAAEvY,QAAG,IAASA,IAAIA,EAAE,IAAIgY,EAAEo1E,sBAAsB,IAAIxsF,EAAEwP,EAAEwU,KAAKxnB,OAAOA,KAAKwD,EAAEmjE,eAAeh9B,EAAEnmC,EAAEypF,gBAAgB1pF,EAAEC,EAAEy1D,aAAax5D,EAAE+D,EAAEqpF,iBAAiB/tE,EAAEtb,EAAEojE,YAAYxzD,EAAE5P,EAAEwoE,gBAAgB1pB,EAAE9+C,EAAEkxE,kBAAkBrwE,EAAEb,EAAEqjE,gBAAgB1rD,EAAE3X,EAAEg4E,QAAQ54E,EAAEY,EAAEysF,aAAa,IAAI1jC,YAAY,MAAM/oD,EAAE0sF,eAAe,IAAInsC,EAAE6b,cAAcp8D,EAAE2sF,aAAa,IAAIpsC,EAAE4b,YAAYn8D,EAAEoqD,UAAU,IAAItlC,EAAEulC,SAASrqD,EAAE4sF,aAAa,GAAG5sF,EAAE6sF,UAAU,GAAG7sF,EAAE8sF,kBAAkB,GAAG9sF,EAAE+sF,eAAe,GAAG/sF,EAAEgtF,aAAarvF,EAAE22E,kBAAkBz4D,QAAQ7b,EAAEitF,uBAAuBtvF,EAAE22E,kBAAkBz4D,QAAQ7b,EAAEktF,eAAe,IAAIjsC,EAAEsJ,aAAavqD,EAAEmtF,sBAAsB,IAAIlsC,EAAEsJ,aAAavqD,EAAEotF,gBAAgB,IAAInsC,EAAEsJ,aAAavqD,EAAEqtF,wBAAwB,IAAIpsC,EAAEsJ,aAAavqD,EAAEstF,+BAA+B,IAAIrsC,EAAEsJ,aAAavqD,EAAEutF,YAAY,IAAItsC,EAAEsJ,aAAavqD,EAAEwtF,WAAW,IAAIvsC,EAAEsJ,aAAavqD,EAAE+qE,cAAc,IAAI9pB,EAAEsJ,aAAavqD,EAAE6oF,YAAY,IAAI5nC,EAAEsJ,aAAavqD,EAAEgxE,UAAU,IAAI/vB,EAAEsJ,aAAavqD,EAAEkrE,eAAe,IAAIjqB,EAAEsJ,aAAavqD,EAAEytF,mBAAmB,IAAIxsC,EAAEsJ,aAAavqD,EAAE0tF,YAAY,CAACC,QAAO,EAAGC,aAAa,EAAEC,aAAa,EAAEC,cAAc,EAAEh0D,SAAS,GAAG95B,EAAEq5D,SAASr5D,EAAEg4E,SAASh4E,EAAEg4E,QAAQ+V,uBAAsB,SAAUv+E,EAAE22B,GAAGnmC,EAAEojE,YAAYmB,MAAM,qBAAqB,CAACn+B,WAAWpmC,EAAEg4E,QAAQgW,cAAcx+E,GAAGsL,OAAOqrB,EAAE+yC,eAAel5E,EAAEg4E,QAAQiW,uBAAsB,SAAUz+E,GAAGxP,EAAEojE,YAAYmB,MAAM,qBAAqB,CAACn+B,WAAWpmC,EAAEg4E,QAAQgW,cAAcx+E,QAAQxP,EAAEg4E,QAAQkW,2BAA0B,SAAU1+E,GAAGxP,EAAEojE,YAAYmB,MAAM,yBAAyB,CAACpgD,KAAK3U,OAAOxP,EAAEg4E,QAAQmW,uBAAsB,SAAU3+E,EAAE22B,EAAEpmC,GAAGC,EAAEojE,YAAYmB,MAAM,qBAAqB,CAACn+B,WAAW52B,EAAE0T,OAAOijB,EAAEh4B,KAAKpO,OAAOC,EAAEg4E,QAAQoW,uBAAsB,SAAU5+E,EAAE22B,EAAEpmC,GAAG,SAASomC,IAAIpmC,EAAEA,EAAEm5E,WAAWl5E,EAAEojE,YAAYmB,MAAM,qBAAqB,CAACn+B,WAAWpmC,EAAEg4E,QAAQgW,cAAcx+E,GAAG0T,OAAOijB,EAAEkoD,QAAQtuF,OAAOC,EAAEg4E,QAAQsW,iBAAgB,SAAU9+E,EAAE22B,EAAEpmC,GAAG,OAAOC,EAAEkwC,MAAM1gC,EAAE22B,EAAEpmC,MAAMC,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEuuF,YAAY/+E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAACuV,cAAc,IAAI7D,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEyuF,WAAWj/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEuyC,SAAS/iC,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAACuV,cAAc,IAAI7D,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE0uF,YAAYl/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEwyC,WAAWhjC,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE2uF,cAAcn/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE4uF,eAAep/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE6uF,eAAer/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE8uF,oBAAoBt/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE+uF,mBAAmBv/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEy0B,eAAejlB,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEgvF,iBAAiBx/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEivF,eAAez/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC7vE,OAAO,IAAIuhF,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEivF,eAAez/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEkvF,YAAY1/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC7vE,OAAO,IAAIuhF,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEkvF,YAAY1/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEgxC,YAAYxhC,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE6xC,YAAYriC,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE+4B,YAAYvpB,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEmvF,SAAS3/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEsyC,WAAW9iC,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEovF,WAAW5/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEqvF,kBAAkB7/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEsvF,gBAAgB9/E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEuvF,kBAAkB//E,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEwvF,yBAAyBhgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEyvF,4BAA4BjgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC7vE,OAAO,IAAIuhF,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE0vF,8BAA8BlgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE2vF,gBAAgBngF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE4vF,kBAAkBpgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE6vF,WAAWrgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE8vF,SAAStgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE+vF,QAAQvgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC7vE,OAAO,IAAIuhF,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEgwF,eAAexgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEiwF,UAAUzgF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC7vE,OAAO,IAAIuhF,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEkwF,iBAAiB1gF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEmwF,eAAe3gF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEowF,aAAa5gF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC7vE,OAAO,IAAIuhF,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEqwF,oBAAoB7gF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAACuV,cAAc,IAAI7D,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEsuC,UAAU9+B,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAACuV,cAAc,IAAI7D,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEswF,eAAe9gF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEuwF,gBAAgB/gF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEusC,WAAW/8B,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEwwF,cAAchhF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAAC0R,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE2sC,cAAcn9B,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAACuV,cAAc,IAAI7D,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAEywF,cAAcjhF,MAAMxP,EAAEg4E,QAAQiB,mBAAmB,CAACuV,cAAc,IAAI7D,MAAM,MAAK,SAAUn7E,GAAG,OAAOxP,EAAE0wF,cAAclhF,MAAMxP,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAGsjB,KAAI,WAAY,OAAO5wF,EAAE6rE,UAAU7rE,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAGujB,IAAG,WAAY,OAAO7wF,EAAE4wC,cAAc5wC,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAGxkC,IAAG,WAAY,OAAO9oC,EAAE4wC,cAAc5wC,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAGwjB,IAAG,WAAY,OAAO9wF,EAAE4wC,cAAc5wC,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAGyG,IAAG,WAAY,OAAO/zE,EAAE+wF,oBAAoB/wF,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAG//C,IAAG,WAAY,OAAOvtB,EAAEgxF,eAAehxF,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAG2jB,IAAG,WAAY,OAAOjxF,EAAEga,SAASha,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAG4jB,IAAG,WAAY,OAAOlxF,EAAEmxF,cAAcnxF,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkuB,GAAG8jB,IAAG,WAAY,OAAOpxF,EAAEqxF,aAAarxF,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkyC,GAAGC,KAAI,WAAY,OAAOvxF,EAAEyH,WAAWzH,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkyC,GAAGE,KAAI,WAAY,OAAOxxF,EAAEyxF,cAAczxF,EAAEg4E,QAAQ2Y,kBAAkBvxC,EAAEkyC,GAAGI,KAAI,WAAY,OAAO1xF,EAAE2xF,YAAY3xF,EAAEg4E,QAAQwB,mBAAmB,EAAE,IAAInzC,EAAEurD,YAAW,SAAUpiF,GAAG,OAAOxP,EAAE6xF,SAASriF,GAAGxP,EAAE8xF,YAAYtiF,IAAG,MAAOxP,EAAEg4E,QAAQwB,mBAAmB,EAAE,IAAInzC,EAAEurD,YAAW,SAAUpiF,GAAG,OAAOxP,EAAE8xF,YAAYtiF,OAAOxP,EAAEg4E,QAAQwB,mBAAmB,EAAE,IAAInzC,EAAEurD,YAAW,SAAUpiF,GAAG,OAAOxP,EAAE6xF,SAASriF,OAAOxP,EAAEg4E,QAAQwB,mBAAmB,EAAE,IAAInzC,EAAEurD,YAAW,SAAUpiF,GAAG,OAAOxP,EAAE+xF,aAAaviF,OAAOxP,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEusC,gBAAgBvsC,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAE2sC,mBAAmB3sC,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEyH,WAAWzH,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEyxF,cAAczxF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAE2xF,YAAY3xF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEgyF,kBAAkBhyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEiyF,2BAA2BjyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEkyF,uBAAuBlyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEmyF,eAAenyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEoyF,UAAU,MAAMpyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEoyF,UAAU,MAAMpyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEoyF,UAAU,MAAMpyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEoyF,UAAU,MAAMpyF,EAAEg4E,QAAQsB,mBAAmB,CAACqR,MAAM,MAAK,WAAY,OAAO3qF,EAAEoyF,UAAU,MAAMpyF,EAAEg4E,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAM,MAAK,WAAY,OAAO3qF,EAAEqyF,0BAA0BryF,EAAEg4E,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAM,MAAK,WAAY,OAAO3qF,EAAEqyF,0BAA0B,IAAIpyF,EAAE,SAASuP,GAAG+e,EAAEypD,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAMn7E,IAAG,WAAY,OAAOxP,EAAEsyF,cAAc,IAAI9iF,MAAM+e,EAAEypD,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAMn7E,IAAG,WAAY,OAAOxP,EAAEsyF,cAAc,IAAI9iF,MAAM+e,EAAEypD,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAMn7E,IAAG,WAAY,OAAOxP,EAAEsyF,cAAc,IAAI9iF,MAAM+e,EAAEypD,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAMn7E,IAAG,WAAY,OAAOxP,EAAEsyF,cAAc,IAAI9iF,MAAM+e,EAAEypD,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAMn7E,IAAG,WAAY,OAAOxP,EAAEsyF,cAAc,IAAI9iF,MAAM+e,EAAEypD,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAMn7E,IAAG,WAAY,OAAOxP,EAAEsyF,cAAc,IAAI9iF,MAAM+e,EAAEypD,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAMn7E,IAAG,WAAY,OAAOxP,EAAEsyF,cAAc,IAAI9iF,OAAO+e,EAAE/xB,KAAK,IAAI,IAAIqG,KAAK2J,EAAE+lF,SAAStyF,EAAE4C,GAAG,OAAO7C,EAAEg4E,QAAQsB,mBAAmB,CAACkV,cAAc,IAAI7D,MAAM,MAAK,WAAY,OAAO3qF,EAAEwyF,4BAA4BxyF,EAAEg4E,QAAQya,iBAAgB,SAAUjjF,GAAG,OAAOxP,EAAEojE,YAAYvhE,MAAM,kBAAkB2N,GAAGA,KAAKxP,EAAEg4E,QAAQoB,mBAAmB,CAACoV,cAAc,IAAI7D,MAAM,KAAK,IAAI77C,EAAE9uC,EAAEmjE,eAAenjE,EAAEy1D,aAAaz1D,EAAEojE,YAAYpjE,EAAEwoE,kBAAkBxoE,EAAE,OAAOsb,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK0wF,eAAe39C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,uBAAuB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK2wF,sBAAsB59C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,iBAAiB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK4wF,gBAAgB79C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,yBAAyB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK6wF,wBAAwB99C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,gCAAgC,CAAC0J,IAAI,WAAW,OAAOlL,KAAK8wF,+BAA+B/9C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,aAAa,CAAC0J,IAAI,WAAW,OAAOlL,KAAK+wF,YAAYh+C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAKgxF,WAAWj+C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,eAAe,CAAC0J,IAAI,WAAW,OAAOlL,KAAKuuE,cAAcx7B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,aAAa,CAAC0J,IAAI,WAAW,OAAOlL,KAAKqsF,YAAYt5C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,WAAW,CAAC0J,IAAI,WAAW,OAAOlL,KAAKw0E,UAAUzhC,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK0uE,eAAe37B,OAAOwP,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,oBAAoB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKixF,mBAAmBl+C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUigD,QAAQ,WAAWzuC,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,OAAO2pC,EAAEnoC,UAAU00F,eAAe,SAASljF,EAAE22B,EAAEpmC,EAAE9D,GAAGO,KAAKkxF,YAAYC,QAAO,EAAGnxF,KAAKkxF,YAAYE,aAAap+E,EAAEhT,KAAKkxF,YAAYG,aAAa1nD,EAAE3pC,KAAKkxF,YAAYI,cAAc/tF,EAAEvD,KAAKkxF,YAAY5zD,SAAS79B,GAAGkqC,EAAEnoC,UAAU20F,uBAAuB,SAASnjF,GAAGhT,KAAK4mE,YAAY8O,UAAUlyE,EAAEmqF,aAAaC,MAAMwI,QAAQC,KAAK,CAACrjF,EAAE,IAAIojF,SAAQ,SAAUpjF,EAAE22B,GAAG,OAAOroC,YAAW,WAAY,OAAOqoC,EAAE,mBAAmB,UAAU2sD,OAAM,SAAUtjF,GAAG,GAAG,kBAAkBA,EAAE,MAAMA,EAAEvS,QAAQC,KAAK,uDAAuDipC,EAAEnoC,UAAUmJ,MAAM,SAASqI,EAAE22B,GAAG,IAAIpmC,EAAE9D,EAAEO,KAAK2mE,eAAe3iB,OAAOllC,EAAErf,EAAEsqC,EAAE32B,EAAE3T,EAAEoqC,EAAE+Y,EAAE,EAAE5yC,EAAEhQ,KAAKkxF,YAAYC,OAAO,GAAGnhF,EAAE,CAAC,GAAGzM,EAAEvD,KAAKw7E,QAAQ7wE,MAAM3K,KAAKiwF,aAAajwF,KAAKkxF,YAAYI,cAAc3nD,GAAG,OAAO3pC,KAAKm2F,uBAAuB5yF,GAAGA,EAAEub,EAAE9e,KAAKkxF,YAAYE,aAAah+E,EAAEpT,KAAKkxF,YAAYG,aAAarxF,KAAKkxF,YAAYC,QAAO,EAAGn+E,EAAEzT,OAAO8G,IAAIu8C,EAAE5iD,KAAKkxF,YAAY5zD,SAASj3B,GAAG,GAAGrG,KAAK4mE,YAAYmB,MAAM,eAAe/0D,GAAGhT,KAAKiwF,aAAa1wF,OAAOyT,EAAEzT,QAAQS,KAAKiwF,aAAa1wF,OAAO8G,IAAIrG,KAAKiwF,aAAa,IAAI1jC,YAAY1pD,KAAKC,IAAIkQ,EAAEzT,OAAO8G,KAAK2J,GAAGhQ,KAAK6sF,iBAAiB0J,aAAavjF,EAAEzT,OAAO8G,EAAE,IAAI,IAAIuU,EAAEgoC,EAAEhoC,EAAE5H,EAAEzT,OAAOqb,GAAGvU,EAAE,CAAC,IAAIi8C,EAAE1nC,EAAEvU,EAAE2M,EAAEzT,OAAOqb,EAAEvU,EAAE2M,EAAEzT,OAAO8E,EAAE,iBAAiB2O,EAAEhT,KAAKkwF,eAAex1E,OAAO1H,EAAEyJ,UAAU7B,EAAE0nC,GAAGtiD,KAAKiwF,cAAcjwF,KAAKmwF,aAAaz1E,OAAO1H,EAAEs3C,SAAS1vC,EAAE0nC,GAAGtiD,KAAKiwF,cAAc,GAAG1sF,EAAEvD,KAAKw7E,QAAQ7wE,MAAM3K,KAAKiwF,aAAa5rF,GAAG,OAAOrE,KAAKk2F,eAAep3E,EAAE1L,EAAE/O,EAAEuW,GAAG5a,KAAKm2F,uBAAuB5yF,GAAGA,OAAO,IAAIyM,IAAI3L,EAAE,iBAAiB2O,EAAEhT,KAAKkwF,eAAex1E,OAAO1H,EAAEhT,KAAKiwF,cAAcjwF,KAAKmwF,aAAaz1E,OAAO1H,EAAEhT,KAAKiwF,cAAc1sF,EAAEvD,KAAKw7E,QAAQ7wE,MAAM3K,KAAKiwF,aAAa5rF,IAAI,OAAOrE,KAAKk2F,eAAep3E,EAAE1L,EAAE/O,EAAE,GAAGrE,KAAKm2F,uBAAuB5yF,GAAGA,GAAG9D,EAAEO,KAAK2mE,eAAe3iB,QAAQja,IAAIjrB,GAAGrf,EAAEoqC,IAAIz2B,GAAGpT,KAAKuuE,cAAc3e,OAAO5vD,KAAK2wF,sBAAsB/gC,KAAK5vD,KAAK6sF,iBAAiBxwE,MAAMrc,KAAK6sF,iBAAiBnwE,MAAMitB,EAAEnoC,UAAUkyC,MAAM,SAAS1gC,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE1L,EAAEpT,KAAK2mE,eAAe3iB,OAAOpB,EAAE5iD,KAAKitF,gBAAgBuJ,QAAQxmF,EAAEhQ,KAAKgsE,gBAAgBvtD,QAAQ8xD,iBAAiB31D,EAAE5a,KAAK2mE,eAAe9kB,KAAKS,EAAEtiD,KAAKi5D,aAAaiK,gBAAgBt2C,WAAWvoB,EAAErE,KAAKi5D,aAAaw9B,MAAMvpE,WAAW/rB,EAAEnB,KAAKwwF,aAAa/rC,EAAErxC,EAAE4lC,MAAM9tC,IAAIkI,EAAEm+D,MAAMn+D,EAAEy2B,GAAG7pC,KAAK6sF,iBAAiB6J,UAAUtjF,EAAEy2B,GAAGz2B,EAAE22B,GAAGxmC,EAAEomC,EAAE,GAAG,IAAI8a,EAAE/rB,SAAStlB,EAAE22B,EAAE,IAAI0a,EAAEkyC,qBAAqBvjF,EAAE22B,EAAE,EAAE,EAAE,EAAE5oC,EAAEmoD,GAAGnoD,EAAEooD,GAAGpoD,EAAEg8D,UAAU,IAAI,IAAI70C,EAAEqhB,EAAErhB,EAAE/kB,IAAI+kB,EAAE,CAAC,GAAG7oB,EAAEuT,EAAEsV,GAAGxJ,EAAE9e,KAAK6mE,gBAAgB+vB,QAAQn3F,GAAGA,EAAE,KAAKmjD,EAAE,CAAC,IAAIhgD,EAAEggD,EAAErhD,OAAOwZ,aAAatb,IAAImD,IAAInD,EAAEmD,EAAEiY,WAAW,IAAI,GAAG7K,GAAGhQ,KAAK+wF,YAAYnhC,KAAK7L,EAAE+a,oBAAoBr/D,IAAIqf,IAAI1L,EAAE22B,EAAE,CAAC,GAAG32B,EAAE22B,EAAEjrB,EAAE,GAAGlE,EAAE,GAAG0nC,EAAE,CAAC,KAAKlvC,EAAE22B,EAAEnvB,GAAG6pC,EAAEkyC,qBAAqBvjF,EAAE22B,IAAI,EAAE,EAAE5oC,EAAEmoD,GAAGnoD,EAAEooD,GAAGpoD,EAAEg8D,UAAU/pD,EAAE22B,EAAE,EAAE32B,EAAEy2B,IAAIz2B,EAAEy2B,IAAIz2B,EAAE2gC,aAAa,GAAG3gC,EAAEy2B,IAAI7pC,KAAK2mE,eAAeonB,OAAO/tF,KAAK62F,kBAAiB,KAAMzjF,EAAEy2B,GAAG7pC,KAAK2mE,eAAe1tC,OAAO7lB,EAAEy2B,EAAE7pC,KAAK2mE,eAAe1tC,KAAK,GAAG7lB,EAAE4lC,MAAM9tC,IAAIkI,EAAEm+D,MAAMn+D,EAAEy2B,GAAGsa,WAAU,GAAIM,EAAErxC,EAAE4lC,MAAM9tC,IAAIkI,EAAEm+D,MAAMn+D,EAAEy2B,QAAQ,GAAGz2B,EAAE22B,EAAEnvB,EAAE,EAAE,IAAIkE,EAAE,SAAS,GAAGza,IAAIogD,EAAEqyC,YAAY1jF,EAAE22B,EAAEjrB,EAAE1L,EAAE8oE,YAAY/6E,GAAGA,GAAG,IAAIsjD,EAAE/rB,SAAS9d,EAAE,IAAI6pC,EAAEkyC,qBAAqB/7E,EAAE,EAAEO,EAAE0sC,eAAe1sC,EAAEmkD,gBAAgBn+D,EAAEmoD,GAAGnoD,EAAEooD,GAAGpoD,EAAEg8D,WAAW1Y,EAAEkyC,qBAAqBvjF,EAAE22B,IAAItqC,EAAEqf,EAAE3d,EAAEmoD,GAAGnoD,EAAEooD,GAAGpoD,EAAEg8D,UAAUr+C,EAAE,EAAE,OAAOA,GAAG2lC,EAAEkyC,qBAAqBvjF,EAAE22B,IAAI,EAAE,EAAE5oC,EAAEmoD,GAAGnoD,EAAEooD,GAAGpoD,EAAEg8D,eAAe1Y,EAAE/rB,SAAStlB,EAAE22B,EAAE,GAAG0a,EAAEsyC,mBAAmB3jF,EAAE22B,EAAE,EAAEtqC,GAAGglD,EAAEsyC,mBAAmB3jF,EAAE22B,EAAE,EAAEtqC,GAAG8D,EAAEomC,EAAE,IAAI8a,EAAEgM,SAASr9C,EAAE22B,EAAE,EAAE/pC,KAAK4tD,WAAW,IAAI5tD,KAAK4tD,UAAUl1B,YAAY14B,KAAK4tD,UAAU8C,UAAU,MAAM1wD,KAAKw7E,QAAQwb,mBAAmB,EAAEh3F,KAAK4tD,UAAUiR,aAAa7+D,KAAKw7E,QAAQwb,mBAAmBh3F,KAAK4tD,UAAU7D,WAAWlvC,WAAW,GAAG7a,KAAKw7E,QAAQwb,mBAAmBh3F,KAAK4tD,UAAUtkD,SAAS8J,EAAE22B,EAAEnvB,GAAGrX,EAAEomC,EAAE,GAAG,IAAI8a,EAAE/rB,SAAStlB,EAAE22B,KAAK0a,EAAEwyC,WAAW7jF,EAAE22B,IAAI0a,EAAEkyC,qBAAqBvjF,EAAE22B,EAAE,EAAE,EAAE5oC,EAAEmoD,GAAGnoD,EAAEooD,GAAGpoD,EAAEg8D,UAAUn9D,KAAK6sF,iBAAiB6J,UAAUtjF,EAAEy2B,IAAIF,EAAEnoC,UAAUi7E,mBAAmB,SAASzpE,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAK,MAAM,MAAMgT,EAAEm7E,OAAOn7E,EAAEpG,QAAQoG,EAAEg/E,cAAchyF,KAAKw7E,QAAQiB,mBAAmBzpE,EAAE22B,GAAG3pC,KAAKw7E,QAAQiB,mBAAmBzpE,GAAE,SAAUA,GAAG,OAAO6f,EAAE7f,EAAEsL,OAAO,GAAG/a,EAAEyoE,gBAAgBvtD,QAAQu1E,gBAAgBrqD,EAAE32B,OAAO22B,EAAEnoC,UAAUo7E,mBAAmB,SAAS5pE,EAAE22B,GAAG,OAAO3pC,KAAKw7E,QAAQoB,mBAAmB5pE,EAAE,IAAIvP,EAAEyzF,WAAWvtD,KAAKA,EAAEnoC,UAAUs7E,mBAAmB,SAAS9pE,EAAE22B,GAAG,OAAO3pC,KAAKw7E,QAAQsB,mBAAmB9pE,EAAE22B,IAAIA,EAAEnoC,UAAUw7E,mBAAmB,SAAShqE,EAAE22B,GAAG,OAAO3pC,KAAKw7E,QAAQwB,mBAAmBhqE,EAAE,IAAI62B,EAAEurD,WAAWzrD,KAAKA,EAAEnoC,UAAU6tE,KAAK,WAAW,OAAOrvE,KAAK0wF,eAAe9gC,QAAO,GAAIjmB,EAAEnoC,UAAU4yC,SAAS,WAAW,IAAIphC,EAAEhT,KAAK2mE,eAAe3iB,OAAO,OAAOhkD,KAAK6sF,iBAAiB6J,UAAU1jF,EAAE62B,GAAG7pC,KAAKgsE,gBAAgBvtD,QAAQ04E,aAAankF,EAAE+2B,EAAE,GAAG/2B,EAAE62B,IAAI72B,EAAE62B,IAAI72B,EAAE+gC,aAAa,GAAG/gC,EAAE62B,IAAI7pC,KAAK2mE,eAAeonB,OAAO/tF,KAAK62F,mBAAmB7jF,EAAE62B,GAAG7pC,KAAK2mE,eAAe1tC,OAAOjmB,EAAE62B,EAAE7pC,KAAK2mE,eAAe1tC,KAAK,GAAGjmB,EAAE+2B,GAAG/pC,KAAK2mE,eAAe9kB,MAAM7uC,EAAE+2B,IAAI/pC,KAAK6sF,iBAAiB6J,UAAU1jF,EAAE62B,GAAG7pC,KAAKqsF,YAAYz8B,QAAO,GAAIjmB,EAAEnoC,UAAU+yF,eAAe,WAAW,OAAOv0F,KAAK2mE,eAAe3iB,OAAOja,EAAE,GAAE,GAAIJ,EAAEnoC,UAAUgzF,UAAU,WAAW,IAAIxhF,EAAE22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAO,IAAIhkD,KAAKi5D,aAAaiK,gBAAgBr2C,kBAAkB,OAAO7sB,KAAKo3F,kBAAkBztD,EAAEI,EAAE,GAAGJ,EAAEI,KAAI,EAAG,GAAG/pC,KAAKo3F,gBAAgBp3F,KAAK2mE,eAAe9kB,MAAMlY,EAAEI,EAAE,EAAEJ,EAAEI,SAAS,GAAG,IAAIJ,EAAEI,GAAGJ,EAAEE,EAAEF,EAAEf,WAAWe,EAAEE,GAAGF,EAAEoK,eAAe,QAAQ/gC,EAAE22B,EAAEqP,MAAM9tC,IAAIy+B,EAAE4nC,MAAM5nC,EAAEE,UAAK,IAAS72B,OAAE,EAAOA,EAAEmxC,WAAW,CAACxa,EAAEqP,MAAM9tC,IAAIy+B,EAAE4nC,MAAM5nC,EAAEE,GAAGsa,WAAU,EAAGxa,EAAEE,IAAIF,EAAEI,EAAE/pC,KAAK2mE,eAAe9kB,KAAK,EAAE,IAAIt+C,EAAEomC,EAAEqP,MAAM9tC,IAAIy+B,EAAE4nC,MAAM5nC,EAAEE,GAAGtmC,EAAEimF,SAAS7/C,EAAEI,KAAKxmC,EAAE0zF,WAAWttD,EAAEI,IAAIJ,EAAEI,IAAI,OAAO/pC,KAAKo3F,mBAAkB,GAAIztD,EAAEnoC,UAAUgc,IAAI,WAAW,GAAGxd,KAAK2mE,eAAe3iB,OAAOja,GAAG/pC,KAAK2mE,eAAe9kB,KAAK,OAAM,EAAG,IAAI7uC,EAAEhT,KAAK2mE,eAAe3iB,OAAOja,EAAE,OAAO/pC,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe3iB,OAAOqzC,WAAWr3F,KAAKgsE,gBAAgBvtD,QAAQ8xD,kBAAkBvwE,KAAKgxF,WAAWphC,KAAK5vD,KAAK2mE,eAAe3iB,OAAOja,EAAE/2B,IAAG,GAAI22B,EAAEnoC,UAAUmzF,SAAS,WAAW,OAAO30F,KAAKitF,gBAAgB2I,UAAU,IAAG,GAAIjsD,EAAEnoC,UAAUqzF,QAAQ,WAAW,OAAO70F,KAAKitF,gBAAgB2I,UAAU,IAAG,GAAIjsD,EAAEnoC,UAAU41F,gBAAgB,SAASpkF,QAAG,IAASA,IAAIA,EAAEhT,KAAK2mE,eAAe9kB,KAAK,GAAG7hD,KAAK2mE,eAAe3iB,OAAOja,EAAElnC,KAAKC,IAAIkQ,EAAEnQ,KAAKuE,IAAI,EAAEpH,KAAK2mE,eAAe3iB,OAAOja,IAAI/pC,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAKi5D,aAAaiK,gBAAgBo0B,OAAOz0F,KAAKC,IAAI9C,KAAK2mE,eAAe3iB,OAAOjQ,aAAalxC,KAAKuE,IAAIpH,KAAK2mE,eAAe3iB,OAAOpb,UAAU5oC,KAAK2mE,eAAe3iB,OAAOna,IAAIhnC,KAAKC,IAAI9C,KAAK2mE,eAAe1tC,KAAK,EAAEp2B,KAAKuE,IAAI,EAAEpH,KAAK2mE,eAAe3iB,OAAOna,IAAI7pC,KAAK6sF,iBAAiB6J,UAAU12F,KAAK2mE,eAAe3iB,OAAOna,IAAIF,EAAEnoC,UAAU+1F,WAAW,SAASvkF,EAAE22B,GAAG3pC,KAAK6sF,iBAAiB6J,UAAU12F,KAAK2mE,eAAe3iB,OAAOna,GAAG7pC,KAAKi5D,aAAaiK,gBAAgBo0B,QAAQt3F,KAAK2mE,eAAe3iB,OAAOja,EAAE/2B,EAAEhT,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAK2mE,eAAe3iB,OAAOpb,UAAUe,IAAI3pC,KAAK2mE,eAAe3iB,OAAOja,EAAE/2B,EAAEhT,KAAK2mE,eAAe3iB,OAAOna,EAAEF,GAAG3pC,KAAKo3F,kBAAkBp3F,KAAK6sF,iBAAiB6J,UAAU12F,KAAK2mE,eAAe3iB,OAAOna,IAAIF,EAAEnoC,UAAUg2F,YAAY,SAASxkF,EAAE22B,GAAG3pC,KAAKo3F,kBAAkBp3F,KAAKu3F,WAAWv3F,KAAK2mE,eAAe3iB,OAAOja,EAAE/2B,EAAEhT,KAAK2mE,eAAe3iB,OAAOna,EAAEF,IAAIA,EAAEnoC,UAAUu0C,SAAS,SAAS/iC,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAK2mE,eAAe3iB,OAAOpb,UAAU,OAAOe,GAAG,EAAE3pC,KAAKw3F,YAAY,GAAG30F,KAAKC,IAAI6mC,EAAE32B,EAAEsL,OAAO,IAAI,IAAIte,KAAKw3F,YAAY,IAAIxkF,EAAEsL,OAAO,IAAI,KAAI,GAAIqrB,EAAEnoC,UAAUw0C,WAAW,SAAShjC,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAOjQ,aAAa/zC,KAAK2mE,eAAe3iB,OAAOna,EAAE,OAAOF,GAAG,EAAE3pC,KAAKw3F,YAAY,EAAE30F,KAAKC,IAAI6mC,EAAE32B,EAAEsL,OAAO,IAAI,IAAIte,KAAKw3F,YAAY,EAAExkF,EAAEsL,OAAO,IAAI,IAAG,GAAIqrB,EAAEnoC,UAAU2wF,cAAc,SAASn/E,GAAG,OAAOhT,KAAKw3F,YAAYxkF,EAAEsL,OAAO,IAAI,EAAE,IAAG,GAAIqrB,EAAEnoC,UAAU4wF,eAAe,SAASp/E,GAAG,OAAOhT,KAAKw3F,cAAcxkF,EAAEsL,OAAO,IAAI,GAAG,IAAG,GAAIqrB,EAAEnoC,UAAU6wF,eAAe,SAASr/E,GAAG,OAAOhT,KAAKg2C,WAAWhjC,GAAGhT,KAAK2mE,eAAe3iB,OAAOja,EAAE,GAAE,GAAIJ,EAAEnoC,UAAU8wF,oBAAoB,SAASt/E,GAAG,OAAOhT,KAAK+1C,SAAS/iC,GAAGhT,KAAK2mE,eAAe3iB,OAAOja,EAAE,GAAE,GAAIJ,EAAEnoC,UAAU+wF,mBAAmB,SAASv/E,GAAG,OAAOhT,KAAKu3F,YAAYvkF,EAAEsL,OAAO,IAAI,GAAG,EAAEte,KAAK2mE,eAAe3iB,OAAOna,IAAG,GAAIF,EAAEnoC,UAAUy2B,eAAe,SAASjlB,GAAG,OAAOhT,KAAKu3F,WAAWvkF,EAAEzT,QAAQ,GAAGyT,EAAEsL,OAAO,IAAI,GAAG,EAAE,GAAGtL,EAAEsL,OAAO,IAAI,GAAG,IAAG,GAAIqrB,EAAEnoC,UAAUsxF,gBAAgB,SAAS9/E,GAAG,OAAOhT,KAAKu3F,YAAYvkF,EAAEsL,OAAO,IAAI,GAAG,EAAEte,KAAK2mE,eAAe3iB,OAAOna,IAAG,GAAIF,EAAEnoC,UAAUuxF,kBAAkB,SAAS//E,GAAG,OAAOhT,KAAKw3F,YAAYxkF,EAAEsL,OAAO,IAAI,EAAE,IAAG,GAAIqrB,EAAEnoC,UAAU2xF,gBAAgB,SAASngF,GAAG,OAAOhT,KAAKu3F,WAAWv3F,KAAK2mE,eAAe3iB,OAAOja,GAAG/2B,EAAEsL,OAAO,IAAI,GAAG,IAAG,GAAIqrB,EAAEnoC,UAAU4xF,kBAAkB,SAASpgF,GAAG,OAAOhT,KAAKw3F,YAAY,EAAExkF,EAAEsL,OAAO,IAAI,IAAG,GAAIqrB,EAAEnoC,UAAU6xF,WAAW,SAASrgF,GAAG,OAAOhT,KAAKi4B,eAAejlB,IAAG,GAAI22B,EAAEnoC,UAAU8xF,SAAS,SAAStgF,GAAG,IAAI22B,EAAE32B,EAAEsL,OAAO,GAAG,OAAO,IAAIqrB,SAAS3pC,KAAK2mE,eAAe3iB,OAAO1mC,KAAKtd,KAAK2mE,eAAe3iB,OAAOja,GAAG,IAAIJ,IAAI3pC,KAAK2mE,eAAe3iB,OAAO1mC,KAAK,KAAI,GAAIqsB,EAAEnoC,UAAUgxF,iBAAiB,SAASx/E,GAAG,GAAGhT,KAAK2mE,eAAe3iB,OAAOja,GAAG/pC,KAAK2mE,eAAe9kB,KAAK,OAAM,EAAG,IAAI,IAAIlY,EAAE32B,EAAEsL,OAAO,IAAI,EAAEqrB,KAAK3pC,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe3iB,OAAOqzC,WAAW,OAAM,GAAI1tD,EAAEnoC,UAAUqxF,kBAAkB,SAAS7/E,GAAG,GAAGhT,KAAK2mE,eAAe3iB,OAAOja,GAAG/pC,KAAK2mE,eAAe9kB,KAAK,OAAM,EAAG,IAAI,IAAIlY,EAAE32B,EAAEsL,OAAO,IAAI,EAAE/a,EAAEvD,KAAK2mE,eAAe3iB,OAAOra,KAAKpmC,EAAEwmC,EAAExmC,EAAEk0F,WAAW,OAAM,GAAI9tD,EAAEnoC,UAAUk2F,mBAAmB,SAAS1kF,EAAE22B,EAAEpmC,EAAE9D,QAAG,IAASA,IAAIA,GAAE,GAAI,IAAIqf,EAAE9e,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIlL,KAAK2mE,eAAe3iB,OAAOutB,MAAMv+D,GAAG8L,EAAE64E,aAAahuD,EAAEpmC,EAAEvD,KAAK2mE,eAAe3iB,OAAOk4B,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkBp3F,IAAIqf,EAAEqlC,WAAU,IAAKxa,EAAEnoC,UAAUo2F,iBAAiB,SAAS5kF,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIlL,KAAK2mE,eAAe3iB,OAAOutB,MAAMv+D,GAAG22B,EAAEuL,KAAKl1C,KAAK2mE,eAAe3iB,OAAOk4B,YAAYl8E,KAAK62F,mBAAmBltD,EAAEwa,WAAU,GAAIxa,EAAEnoC,UAAUixF,eAAe,SAASz/E,GAAG,IAAI22B,EAAE,OAAO3pC,KAAKo3F,kBAAkBpkF,EAAEsL,OAAO,IAAI,KAAK,EAAE,IAAIqrB,EAAE3pC,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAK6sF,iBAAiB6J,UAAU/sD,GAAG3pC,KAAK03F,mBAAmB/tD,IAAI3pC,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe9kB,KAAK,IAAI7hD,KAAK2mE,eAAe3iB,OAAOja,GAAGJ,EAAE3pC,KAAK2mE,eAAe1tC,KAAK0Q,IAAI3pC,KAAK43F,iBAAiBjuD,GAAG3pC,KAAK6sF,iBAAiB6J,UAAU/sD,GAAG,MAAM,KAAK,EAAE,IAAIA,EAAE3pC,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAK6sF,iBAAiB6J,UAAU/sD,GAAG3pC,KAAK03F,mBAAmB/tD,EAAE,EAAE3pC,KAAK2mE,eAAe3iB,OAAOja,EAAE,GAAE,GAAI/pC,KAAK2mE,eAAe3iB,OAAOja,EAAE,GAAG/pC,KAAK2mE,eAAe9kB,OAAO7hD,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIy+B,EAAE,GAAGwa,WAAU,GAAIxa,KAAK3pC,KAAK43F,iBAAiBjuD,GAAG3pC,KAAK6sF,iBAAiB6J,UAAU,GAAG,MAAM,KAAK,EAAE,IAAI/sD,EAAE3pC,KAAK2mE,eAAe1tC,KAAKj5B,KAAK6sF,iBAAiB6J,UAAU/sD,EAAE,GAAGA,KAAK3pC,KAAK43F,iBAAiBjuD,GAAG3pC,KAAK6sF,iBAAiB6J,UAAU,GAAG,MAAM,KAAK,EAAE,IAAInzF,EAAEvD,KAAK2mE,eAAe3iB,OAAOhL,MAAMz5C,OAAOS,KAAK2mE,eAAe1tC,KAAK11B,EAAE,IAAIvD,KAAK2mE,eAAe3iB,OAAOhL,MAAM8yC,UAAUvoF,GAAGvD,KAAK2mE,eAAe3iB,OAAOutB,MAAM1uE,KAAKuE,IAAIpH,KAAK2mE,eAAe3iB,OAAOutB,MAAMhuE,EAAE,GAAGvD,KAAK2mE,eAAe3iB,OAAOwM,MAAM3tD,KAAKuE,IAAIpH,KAAK2mE,eAAe3iB,OAAOwM,MAAMjtD,EAAE,GAAGvD,KAAKw0E,UAAU5kB,KAAK,IAAI,OAAM,GAAIjmB,EAAEnoC,UAAUkxF,YAAY,SAAS1/E,GAAG,OAAOhT,KAAKo3F,kBAAkBpkF,EAAEsL,OAAO,IAAI,KAAK,EAAEte,KAAK03F,mBAAmB13F,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe9kB,MAAM,MAAM,KAAK,EAAE7hD,KAAK03F,mBAAmB13F,KAAK2mE,eAAe3iB,OAAOna,EAAE,EAAE7pC,KAAK2mE,eAAe3iB,OAAOja,EAAE,GAAG,MAAM,KAAK,EAAE/pC,KAAK03F,mBAAmB13F,KAAK2mE,eAAe3iB,OAAOna,EAAE,EAAE7pC,KAAK2mE,eAAe9kB,MAAM,OAAO7hD,KAAK6sF,iBAAiB6J,UAAU12F,KAAK2mE,eAAe3iB,OAAOna,IAAG,GAAIF,EAAEnoC,UAAUgzC,YAAY,SAASxhC,GAAGhT,KAAKo3F,kBAAkB,IAAIztD,EAAE32B,EAAEsL,OAAO,IAAI,EAAE/a,EAAEvD,KAAK2mE,eAAe3iB,OAAO,GAAGzgD,EAAEsmC,EAAEtmC,EAAEwwC,cAAcxwC,EAAEsmC,EAAEtmC,EAAEqlC,UAAU,OAAM,EAAG,IAAI,IAAInpC,EAAE8D,EAAEguE,MAAMhuE,EAAEsmC,EAAE/qB,EAAE9e,KAAK2mE,eAAe1tC,KAAK,EAAE11B,EAAEwwC,aAAa3gC,EAAEpT,KAAK2mE,eAAe1tC,KAAK,EAAE11B,EAAEguE,MAAMzyD,EAAE,EAAE6qB,KAAKpmC,EAAEy1C,MAAMl1C,OAAOsP,EAAE,EAAE,GAAG7P,EAAEy1C,MAAMl1C,OAAOrE,EAAE,EAAE8D,EAAEs0E,aAAa73E,KAAK62F,mBAAmB,OAAO72F,KAAK6sF,iBAAiBQ,eAAe9pF,EAAEsmC,EAAEtmC,EAAEwwC,cAAcxwC,EAAEwmC,EAAE,GAAE,GAAIJ,EAAEnoC,UAAU6zC,YAAY,SAASriC,GAAGhT,KAAKo3F,kBAAkB,IAAIztD,EAAE32B,EAAEsL,OAAO,IAAI,EAAE/a,EAAEvD,KAAK2mE,eAAe3iB,OAAO,GAAGzgD,EAAEsmC,EAAEtmC,EAAEwwC,cAAcxwC,EAAEsmC,EAAEtmC,EAAEqlC,UAAU,OAAM,EAAG,IAAInpC,EAAEqf,EAAEvb,EAAEguE,MAAMhuE,EAAEsmC,EAAE,IAAIpqC,EAAEO,KAAK2mE,eAAe1tC,KAAK,EAAE11B,EAAEwwC,aAAat0C,EAAEO,KAAK2mE,eAAe1tC,KAAK,EAAE11B,EAAEguE,MAAM9xE,EAAEkqC,KAAKpmC,EAAEy1C,MAAMl1C,OAAOgb,EAAE,GAAGvb,EAAEy1C,MAAMl1C,OAAOrE,EAAE,EAAE8D,EAAEs0E,aAAa73E,KAAK62F,mBAAmB,OAAO72F,KAAK6sF,iBAAiBQ,eAAe9pF,EAAEsmC,EAAEtmC,EAAEwwC,cAAcxwC,EAAEwmC,EAAE,GAAE,GAAIJ,EAAEnoC,UAAUuwF,YAAY,SAAS/+E,GAAGhT,KAAKo3F,kBAAkB,IAAIztD,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIlL,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe3iB,OAAOna,GAAG,OAAOF,IAAIA,EAAEmtD,YAAY92F,KAAK2mE,eAAe3iB,OAAOja,EAAE/2B,EAAEsL,OAAO,IAAI,EAAEte,KAAK2mE,eAAe3iB,OAAOk4B,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkB72F,KAAK6sF,iBAAiB6J,UAAU12F,KAAK2mE,eAAe3iB,OAAOna,KAAI,GAAIF,EAAEnoC,UAAU+6B,YAAY,SAASvpB,GAAGhT,KAAKo3F,kBAAkB,IAAIztD,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIlL,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe3iB,OAAOna,GAAG,OAAOF,IAAIA,EAAEkuD,YAAY73F,KAAK2mE,eAAe3iB,OAAOja,EAAE/2B,EAAEsL,OAAO,IAAI,EAAEte,KAAK2mE,eAAe3iB,OAAOk4B,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkB72F,KAAK6sF,iBAAiB6J,UAAU12F,KAAK2mE,eAAe3iB,OAAOna,KAAI,GAAIF,EAAEnoC,UAAUmxF,SAAS,SAAS3/E,GAAG,IAAI,IAAI22B,EAAE32B,EAAEsL,OAAO,IAAI,EAAE/a,EAAEvD,KAAK2mE,eAAe3iB,OAAOra,KAAKpmC,EAAEy1C,MAAMl1C,OAAOP,EAAEguE,MAAMhuE,EAAEqlC,UAAU,GAAGrlC,EAAEy1C,MAAMl1C,OAAOP,EAAEguE,MAAMhuE,EAAEwwC,aAAa,EAAExwC,EAAEs0E,aAAa73E,KAAK62F,mBAAmB,OAAO72F,KAAK6sF,iBAAiBQ,eAAe9pF,EAAEqlC,UAAUrlC,EAAEwwC,eAAc,GAAIpK,EAAEnoC,UAAUs0C,WAAW,SAAS9iC,GAAG,IAAI,IAAI22B,EAAE32B,EAAEsL,OAAO,IAAI,EAAE/a,EAAEvD,KAAK2mE,eAAe3iB,OAAOra,KAAKpmC,EAAEy1C,MAAMl1C,OAAOP,EAAEguE,MAAMhuE,EAAEwwC,aAAa,GAAGxwC,EAAEy1C,MAAMl1C,OAAOP,EAAEguE,MAAMhuE,EAAEqlC,UAAU,EAAErlC,EAAEs0E,aAAa12E,EAAE22E,oBAAoB,OAAO93E,KAAK6sF,iBAAiBQ,eAAe9pF,EAAEqlC,UAAUrlC,EAAEwwC,eAAc,GAAIpK,EAAEnoC,UAAUywF,WAAW,SAASj/E,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAO,GAAGra,EAAEE,EAAEF,EAAEoK,cAAcpK,EAAEE,EAAEF,EAAEf,UAAU,OAAM,EAAG,IAAI,IAAIrlC,EAAEyP,EAAEsL,OAAO,IAAI,EAAE7e,EAAEkqC,EAAEf,UAAUnpC,GAAGkqC,EAAEoK,eAAet0C,EAAE,CAAC,IAAIqf,EAAE6qB,EAAEqP,MAAM9tC,IAAIy+B,EAAE4nC,MAAM9xE,GAAGqf,EAAE+4E,YAAY,EAAEt0F,EAAEomC,EAAEuyC,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkB/3E,EAAEqlC,WAAU,EAAG,OAAOnkD,KAAK6sF,iBAAiBQ,eAAe1jD,EAAEf,UAAUe,EAAEoK,eAAc,GAAIpK,EAAEnoC,UAAU0wF,YAAY,SAASl/E,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAO,GAAGra,EAAEE,EAAEF,EAAEoK,cAAcpK,EAAEE,EAAEF,EAAEf,UAAU,OAAM,EAAG,IAAI,IAAIrlC,EAAEyP,EAAEsL,OAAO,IAAI,EAAE7e,EAAEkqC,EAAEf,UAAUnpC,GAAGkqC,EAAEoK,eAAet0C,EAAE,CAAC,IAAIqf,EAAE6qB,EAAEqP,MAAM9tC,IAAIy+B,EAAE4nC,MAAM9xE,GAAGqf,EAAEg4E,YAAY,EAAEvzF,EAAEomC,EAAEuyC,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkB/3E,EAAEqlC,WAAU,EAAG,OAAOnkD,KAAK6sF,iBAAiBQ,eAAe1jD,EAAEf,UAAUe,EAAEoK,eAAc,GAAIpK,EAAEnoC,UAAUyyF,cAAc,SAASjhF,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAO,GAAGra,EAAEE,EAAEF,EAAEoK,cAAcpK,EAAEE,EAAEF,EAAEf,UAAU,OAAM,EAAG,IAAI,IAAIrlC,EAAEyP,EAAEsL,OAAO,IAAI,EAAE7e,EAAEkqC,EAAEf,UAAUnpC,GAAGkqC,EAAEoK,eAAet0C,EAAE,CAAC,IAAIqf,EAAE9e,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIy+B,EAAE4nC,MAAM9xE,GAAGqf,EAAEg4E,YAAYntD,EAAEI,EAAExmC,EAAEomC,EAAEuyC,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkB/3E,EAAEqlC,WAAU,EAAG,OAAOnkD,KAAK6sF,iBAAiBQ,eAAe1jD,EAAEf,UAAUe,EAAEoK,eAAc,GAAIpK,EAAEnoC,UAAU0yF,cAAc,SAASlhF,GAAG,IAAI22B,EAAE3pC,KAAK2mE,eAAe3iB,OAAO,GAAGra,EAAEE,EAAEF,EAAEoK,cAAcpK,EAAEE,EAAEF,EAAEf,UAAU,OAAM,EAAG,IAAI,IAAIrlC,EAAEyP,EAAEsL,OAAO,IAAI,EAAE7e,EAAEkqC,EAAEf,UAAUnpC,GAAGkqC,EAAEoK,eAAet0C,EAAE,CAAC,IAAIqf,EAAE6qB,EAAEqP,MAAM9tC,IAAIy+B,EAAE4nC,MAAM9xE,GAAGqf,EAAE+4E,YAAYluD,EAAEI,EAAExmC,EAAEomC,EAAEuyC,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkB/3E,EAAEqlC,WAAU,EAAG,OAAOnkD,KAAK6sF,iBAAiBQ,eAAe1jD,EAAEf,UAAUe,EAAEoK,eAAc,GAAIpK,EAAEnoC,UAAUoxF,WAAW,SAAS5/E,GAAGhT,KAAKo3F,kBAAkB,IAAIztD,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhL,MAAM9tC,IAAIlL,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe3iB,OAAOna,GAAG,OAAOF,IAAIA,EAAEguD,aAAa33F,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe3iB,OAAOja,GAAG/2B,EAAEsL,OAAO,IAAI,GAAGte,KAAK2mE,eAAe3iB,OAAOk4B,YAAYl8E,KAAK62F,kBAAkB72F,KAAK62F,kBAAkB72F,KAAK6sF,iBAAiB6J,UAAU12F,KAAK2mE,eAAe3iB,OAAOna,KAAI,GAAIF,EAAEnoC,UAAUwxF,yBAAyB,SAAShgF,GAAG,IAAIhT,KAAKw7E,QAAQwb,mBAAmB,OAAM,EAAG,IAAI,IAAIrtD,EAAE32B,EAAEsL,OAAO,IAAI,EAAE/a,EAAE,IAAIgpD,YAAY5iB,GAAGlqC,EAAE,EAAEA,EAAEkqC,IAAIlqC,EAAE8D,EAAE9D,GAAGO,KAAKw7E,QAAQwb,mBAAmB,OAAOh3F,KAAK0zC,MAAMnwC,EAAE,EAAEA,EAAEhE,SAAQ,GAAIoqC,EAAEnoC,UAAUyxF,4BAA4B,SAASjgF,GAAG,OAAOA,EAAEsL,OAAO,GAAG,IAAIte,KAAK83F,IAAI,UAAU93F,KAAK83F,IAAI,iBAAiB93F,KAAK83F,IAAI,UAAU93F,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,UAAUtvB,KAAK83F,IAAI,UAAU93F,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,UAAS,GAAIqa,EAAEnoC,UAAU0xF,8BAA8B,SAASlgF,GAAG,OAAOA,EAAEsL,OAAO,GAAG,IAAIte,KAAK83F,IAAI,SAAS93F,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,cAActvB,KAAK83F,IAAI,gBAAgB93F,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,cAActvB,KAAK83F,IAAI,SAAS93F,KAAKi5D,aAAamK,iBAAiBpwD,EAAEsL,OAAO,GAAG,KAAKte,KAAK83F,IAAI,WAAW93F,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,mBAAkB,GAAIqa,EAAEnoC,UAAUs2F,IAAI,SAAS9kF,GAAG,OAAO,KAAKhT,KAAKgsE,gBAAgBvtD,QAAQs5E,SAAS,IAAI10F,QAAQ2P,IAAI22B,EAAEnoC,UAAU+xF,QAAQ,SAASvgF,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAE32B,EAAEzT,OAAOoqC,IAAI,OAAO32B,EAAEsL,OAAOqrB,IAAI,KAAK,EAAE3pC,KAAKi5D,aAAaw9B,MAAMvpE,YAAW,EAAG,OAAM,GAAIyc,EAAEnoC,UAAUgyF,eAAe,SAASxgF,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAE32B,EAAEzT,OAAOoqC,IAAI,OAAO32B,EAAEsL,OAAOqrB,IAAI,KAAK,EAAE3pC,KAAKi5D,aAAaiK,gBAAgB+S,uBAAsB,EAAG,MAAM,KAAK,EAAEj2E,KAAKitF,gBAAgB+K,YAAY,EAAEhoF,EAAEioF,iBAAiBj4F,KAAKitF,gBAAgB+K,YAAY,EAAEhoF,EAAEioF,iBAAiBj4F,KAAKitF,gBAAgB+K,YAAY,EAAEhoF,EAAEioF,iBAAiBj4F,KAAKitF,gBAAgB+K,YAAY,EAAEhoF,EAAEioF,iBAAiB,MAAM,KAAK,EAAEj4F,KAAKgsE,gBAAgBvtD,QAAQu1E,cAAc1F,cAActuF,KAAK2mE,eAAevnD,OAAO,IAAIpf,KAAK2mE,eAAe1tC,MAAMj5B,KAAK4wF,gBAAgBhhC,QAAQ,MAAM,KAAK,EAAE5vD,KAAKi5D,aAAaiK,gBAAgBo0B,QAAO,EAAGt3F,KAAKu3F,WAAW,EAAE,GAAG,MAAM,KAAK,EAAEv3F,KAAKi5D,aAAaiK,gBAAgBt2C,YAAW,EAAG,MAAM,KAAK,GAAG,MAAM,KAAK,GAAG5sB,KAAKi5D,aAAaiK,gBAAgBr2C,mBAAkB,EAAG,MAAM,KAAK,GAAG7sB,KAAK4mE,YAAYmB,MAAM,6CAA6C/nE,KAAKi5D,aAAaiK,gBAAgBh/C,mBAAkB,EAAGlkB,KAAK6wF,wBAAwBjhC,OAAO,MAAM,KAAK,EAAE5vD,KAAK00E,kBAAkBmB,eAAe,MAAM,MAAM,KAAK,IAAI71E,KAAK00E,kBAAkBmB,eAAe,QAAQ,MAAM,KAAK,KAAK71E,KAAK00E,kBAAkBmB,eAAe,OAAO,MAAM,KAAK,KAAK71E,KAAK00E,kBAAkBmB,eAAe,MAAM,MAAM,KAAK,KAAK71E,KAAKi5D,aAAaiK,gBAAgB2N,WAAU,EAAG,MAAM,KAAK,KAAK7wE,KAAK4mE,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,KAAK/nE,KAAK00E,kBAAkBwjB,eAAe,MAAM,MAAM,KAAK,KAAKl4F,KAAK4mE,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,GAAG/nE,KAAKi5D,aAAaE,gBAAe,EAAG,MAAM,KAAK,KAAKn5D,KAAK+vC,aAAa,MAAM,KAAK,KAAK/vC,KAAK+vC,aAAa,KAAK,GAAG,KAAK,KAAK/vC,KAAK2mE,eAAeuJ,QAAQioB,kBAAkBn4F,KAAK62F,kBAAkB72F,KAAKi5D,aAAaC,qBAAoB,EAAGl5D,KAAK2wF,sBAAsB/gC,KAAK,EAAE5vD,KAAK2mE,eAAe1tC,KAAK,GAAGj5B,KAAK6wF,wBAAwBjhC,OAAO,MAAM,KAAK,KAAK5vD,KAAKi5D,aAAaiK,gBAAgBC,oBAAmB,EAAG,OAAM,GAAIx5B,EAAEnoC,UAAUiyF,UAAU,SAASzgF,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAE32B,EAAEzT,OAAOoqC,IAAI,OAAO32B,EAAEsL,OAAOqrB,IAAI,KAAK,EAAE3pC,KAAKi5D,aAAaw9B,MAAMvpE,YAAW,EAAG,OAAM,GAAIyc,EAAEnoC,UAAUkyF,iBAAiB,SAAS1gF,GAAG,IAAI,IAAI22B,EAAE,EAAEA,EAAE32B,EAAEzT,OAAOoqC,IAAI,OAAO32B,EAAEsL,OAAOqrB,IAAI,KAAK,EAAE3pC,KAAKi5D,aAAaiK,gBAAgB+S,uBAAsB,EAAG,MAAM,KAAK,EAAEj2E,KAAKgsE,gBAAgBvtD,QAAQu1E,cAAc1F,cAActuF,KAAK2mE,eAAevnD,OAAO,GAAGpf,KAAK2mE,eAAe1tC,MAAMj5B,KAAK4wF,gBAAgBhhC,QAAQ,MAAM,KAAK,EAAE5vD,KAAKi5D,aAAaiK,gBAAgBo0B,QAAO,EAAGt3F,KAAKu3F,WAAW,EAAE,GAAG,MAAM,KAAK,EAAEv3F,KAAKi5D,aAAaiK,gBAAgBt2C,YAAW,EAAG,MAAM,KAAK,GAAG,MAAM,KAAK,GAAG5sB,KAAKi5D,aAAaiK,gBAAgBr2C,mBAAkB,EAAG,MAAM,KAAK,GAAG7sB,KAAK4mE,YAAYmB,MAAM,oCAAoC/nE,KAAKi5D,aAAaiK,gBAAgBh/C,mBAAkB,EAAGlkB,KAAK6wF,wBAAwBjhC,OAAO,MAAM,KAAK,EAAE,KAAK,IAAI,KAAK,KAAK,KAAK,KAAK5vD,KAAK00E,kBAAkBmB,eAAe,OAAO,MAAM,KAAK,KAAK71E,KAAKi5D,aAAaiK,gBAAgB2N,WAAU,EAAG,MAAM,KAAK,KAAK7wE,KAAK4mE,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,KAAK/nE,KAAK00E,kBAAkBwjB,eAAe,UAAU,MAAM,KAAK,KAAKl4F,KAAK4mE,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,GAAG/nE,KAAKi5D,aAAaE,gBAAe,EAAG,MAAM,KAAK,KAAKn5D,KAAKmwC,gBAAgB,MAAM,KAAK,KAAK,KAAK,GAAG,KAAK,KAAKnwC,KAAK2mE,eAAeuJ,QAAQkoB,uBAAuB,OAAOplF,EAAEsL,OAAOqrB,IAAI3pC,KAAKmwC,gBAAgBnwC,KAAKi5D,aAAaC,qBAAoB,EAAGl5D,KAAK2wF,sBAAsB/gC,KAAK,EAAE5vD,KAAK2mE,eAAe1tC,KAAK,GAAGj5B,KAAK6wF,wBAAwBjhC,OAAO,MAAM,KAAK,KAAK5vD,KAAKi5D,aAAaiK,gBAAgBC,oBAAmB,EAAG,OAAM,GAAIx5B,EAAEnoC,UAAU62F,iBAAiB,SAASrlF,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG,OAAO,IAAI6qB,GAAG32B,GAAG,SAASA,IAAI,SAASA,GAAGpQ,EAAEymD,cAAc+T,aAAa,CAAC75D,EAAE9D,EAAEqf,KAAK,IAAI6qB,IAAI32B,IAAI,SAASA,GAAG,SAAS,IAAIzP,GAAGyP,GAAG22B,EAAEnoC,UAAU82F,cAAc,SAAStlF,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAGqf,EAAE,EAAE1L,EAAE,EAAE,EAAE,CAAC,GAAG3T,EAAE2T,EAAE0L,GAAG9L,EAAEsL,OAAOqrB,EAAEv2B,GAAGJ,EAAEulF,aAAa5uD,EAAEv2B,GAAG,CAAC,IAAIwvC,EAAE5vC,EAAEwlF,aAAa7uD,EAAEv2B,GAAGpD,EAAE,EAAE,GAAG,IAAIvQ,EAAE,KAAKqf,EAAE,GAAGrf,EAAE2T,EAAEpD,EAAE,EAAE8O,GAAG8jC,EAAE5yC,WAAWA,EAAE4yC,EAAErjD,QAAQyQ,EAAEoD,EAAE,EAAE0L,EAAErf,EAAEF,QAAQ,MAAM,GAAG,IAAIE,EAAE,IAAI2T,EAAE0L,GAAG,GAAG,IAAIrf,EAAE,IAAI2T,EAAE0L,GAAG,EAAE,MAAMrf,EAAE,KAAKqf,EAAE,WAAW1L,EAAEu2B,EAAE32B,EAAEzT,QAAQ6T,EAAE0L,EAAErf,EAAEF,QAAQ,IAAIyQ,EAAE,EAAEA,EAAEvQ,EAAEF,SAASyQ,GAAG,IAAIvQ,EAAEuQ,KAAKvQ,EAAEuQ,GAAG,GAAG,OAAOvQ,EAAE,IAAI,KAAK,GAAG8D,EAAE+lD,GAAGtpD,KAAKq4F,iBAAiB90F,EAAE+lD,GAAG7pD,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,MAAM,KAAK,GAAG8D,EAAEgmD,GAAGvpD,KAAKq4F,iBAAiB90F,EAAEgmD,GAAG9pD,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,MAAM,KAAK,GAAG8D,EAAE45D,SAAS55D,EAAE45D,SAAS99C,QAAQ9b,EAAE45D,SAASe,eAAel+D,KAAKq4F,iBAAiB90F,EAAE45D,SAASe,eAAez+D,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,OAAO2T,GAAGu2B,EAAEnoC,UAAUi3F,kBAAkB,SAASzlF,EAAE22B,GAAGA,EAAEwzB,SAASxzB,EAAEwzB,SAAS99C,WAAWrM,GAAGA,EAAE,KAAKA,EAAE,GAAG22B,EAAEwzB,SAASqB,eAAexrD,EAAE22B,EAAE2f,IAAI,UAAU,IAAIt2C,IAAI22B,EAAE2f,KAAK,WAAW3f,EAAEo0B,kBAAkBp0B,EAAEnoC,UAAUmyF,eAAe,SAAS3gF,GAAG,GAAG,IAAIA,EAAEzT,QAAQ,IAAIyT,EAAEsL,OAAO,GAAG,OAAOte,KAAKwwF,aAAalnC,GAAGnoD,EAAE22E,kBAAkBxuB,GAAGtpD,KAAKwwF,aAAajnC,GAAGpoD,EAAE22E,kBAAkBvuB,IAAG,EAAG,IAAI,IAAI5f,EAAEpmC,EAAEyP,EAAEzT,OAAOE,EAAEO,KAAKwwF,aAAa1xE,EAAE,EAAEA,EAAEvb,EAAEub,KAAK6qB,EAAE32B,EAAEsL,OAAOQ,KAAK,IAAI6qB,GAAG,IAAIlqC,EAAE6pD,KAAK,SAAS7pD,EAAE6pD,IAAI,SAAS3f,EAAE,IAAIA,GAAG,IAAIA,GAAG,IAAIlqC,EAAE8pD,KAAK,SAAS9pD,EAAE8pD,IAAI,SAAS5f,EAAE,IAAIA,GAAG,IAAIA,GAAG,IAAIlqC,EAAE6pD,KAAK,SAAS7pD,EAAE6pD,IAAI,SAAS3f,EAAE,IAAIA,GAAG,KAAKA,GAAG,KAAKlqC,EAAE8pD,KAAK,SAAS9pD,EAAE8pD,IAAI,SAAS5f,EAAE,KAAK,IAAIA,GAAGlqC,EAAE6pD,GAAGnoD,EAAE22E,kBAAkBxuB,GAAG7pD,EAAE8pD,GAAGpoD,EAAE22E,kBAAkBvuB,IAAI,IAAI5f,EAAElqC,EAAE6pD,IAAI,UAAU,IAAI3f,EAAElqC,EAAE8pD,IAAI,SAAS,IAAI5f,GAAGlqC,EAAE6pD,IAAI,UAAUtpD,KAAKy4F,kBAAkBzlF,EAAEulF,aAAaz5E,GAAG9L,EAAEwlF,aAAa15E,GAAG,GAAG,EAAErf,IAAI,IAAIkqC,EAAElqC,EAAE6pD,IAAI,UAAU,IAAI3f,EAAElqC,EAAE6pD,IAAI,SAAS,IAAI3f,EAAElqC,EAAE6pD,IAAI,WAAW,IAAI3f,EAAElqC,EAAE8pD,IAAI,UAAU,KAAK5f,EAAE3pC,KAAKy4F,kBAAkB,EAAEh5F,GAAG,KAAKkqC,GAAGlqC,EAAE6pD,KAAK,UAAU7pD,EAAE8pD,KAAK,WAAW,KAAK5f,EAAElqC,EAAE8pD,KAAK,SAAS,KAAK5f,EAAElqC,EAAE6pD,KAAK,UAAU,KAAK3f,EAAElqC,EAAE6pD,KAAK,UAAU,KAAK3f,EAAElqC,EAAE6pD,KAAK,SAAS,KAAK3f,EAAElqC,EAAE6pD,KAAK,WAAW,KAAK3f,GAAGlqC,EAAE6pD,KAAK,SAAS7pD,EAAE6pD,IAAI,SAASnoD,EAAE22E,kBAAkBxuB,IAAI,KAAK3f,GAAGlqC,EAAE8pD,KAAK,SAAS9pD,EAAE8pD,IAAI,SAASpoD,EAAE22E,kBAAkBvuB,IAAI,KAAK5f,GAAG,KAAKA,GAAG,KAAKA,EAAE7qB,GAAG9e,KAAKs4F,cAActlF,EAAE8L,EAAErf,GAAG,KAAKkqC,GAAGlqC,EAAE09D,SAAS19D,EAAE09D,SAAS99C,QAAQ5f,EAAE09D,SAASe,gBAAgB,EAAEz+D,EAAEs+D,kBAAkB,MAAMp0B,GAAGlqC,EAAE6pD,KAAK,SAAS7pD,EAAE6pD,IAAI,SAASnoD,EAAE22E,kBAAkBxuB,GAAG7pD,EAAE8pD,KAAK,SAAS9pD,EAAE8pD,IAAI,SAASpoD,EAAE22E,kBAAkBvuB,IAAIvpD,KAAK4mE,YAAYmB,MAAM,6BAA6Bp+B,GAAG,OAAM,GAAIA,EAAEnoC,UAAUoyF,aAAa,SAAS5gF,GAAG,OAAOA,EAAEsL,OAAO,IAAI,KAAK,EAAEte,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,OAAO,MAAM,KAAK,EAAE,IAAIqa,EAAE3pC,KAAK2mE,eAAe3iB,OAAOna,EAAE,EAAEtmC,EAAEvD,KAAK2mE,eAAe3iB,OAAOja,EAAE,EAAE/pC,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,IAAIqa,EAAE,IAAIpmC,EAAE,KAAK,OAAM,GAAIomC,EAAEnoC,UAAUqyF,oBAAoB,SAAS7gF,GAAG,OAAOA,EAAEsL,OAAO,IAAI,KAAK,EAAE,IAAIqrB,EAAE3pC,KAAK2mE,eAAe3iB,OAAOna,EAAE,EAAEtmC,EAAEvD,KAAK2mE,eAAe3iB,OAAOja,EAAE,EAAE/pC,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,KAAKqa,EAAE,IAAIpmC,EAAE,KAAK,OAAM,GAAIomC,EAAEnoC,UAAUswC,UAAU,SAAS9+B,GAAG,OAAOhT,KAAKi5D,aAAaE,gBAAe,EAAGn5D,KAAK6wF,wBAAwBjhC,OAAO5vD,KAAK2mE,eAAe3iB,OAAOpb,UAAU,EAAE5oC,KAAK2mE,eAAe3iB,OAAOjQ,aAAa/zC,KAAK2mE,eAAe1tC,KAAK,EAAEj5B,KAAKwwF,aAAarvF,EAAE22E,kBAAkBz4D,QAAQrf,KAAKi5D,aAAazoD,QAAQxQ,KAAKitF,gBAAgBz8E,QAAQxQ,KAAK2mE,eAAe3iB,OAAO00C,OAAO,EAAE14F,KAAK2mE,eAAe3iB,OAAO20C,OAAO34F,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe3iB,OAAO40C,iBAAiBtvC,GAAGtpD,KAAKwwF,aAAalnC,GAAGtpD,KAAK2mE,eAAe3iB,OAAO40C,iBAAiBrvC,GAAGvpD,KAAKwwF,aAAajnC,GAAGvpD,KAAK2mE,eAAe3iB,OAAO60C,aAAa74F,KAAKitF,gBAAgBuJ,QAAQx2F,KAAKi5D,aAAaiK,gBAAgBo0B,QAAO,GAAG,GAAI3tD,EAAEnoC,UAAUsyF,eAAe,SAAS9gF,GAAG,IAAI22B,EAAE32B,EAAEsL,OAAO,IAAI,EAAE,OAAOqrB,GAAG,KAAK,EAAE,KAAK,EAAE3pC,KAAKgsE,gBAAgBvtD,QAAQu/D,YAAY,QAAQ,MAAM,KAAK,EAAE,KAAK,EAAEh+E,KAAKgsE,gBAAgBvtD,QAAQu/D,YAAY,YAAY,MAAM,KAAK,EAAE,KAAK,EAAEh+E,KAAKgsE,gBAAgBvtD,QAAQu/D,YAAY,MAAM,IAAIz6E,EAAEomC,EAAE,GAAG,EAAE,OAAO3pC,KAAKgsE,gBAAgBvtD,QAAQwO,YAAY1pB,GAAE,GAAIomC,EAAEnoC,UAAUuyF,gBAAgB,SAAS/gF,GAAG,IAAI22B,EAAEpmC,EAAEyP,EAAEsL,OAAO,IAAI,EAAE,OAAOtL,EAAEzT,OAAO,IAAIoqC,EAAE32B,EAAEsL,OAAO,IAAIte,KAAK2mE,eAAe1tC,MAAM,IAAI0Q,KAAKA,EAAE3pC,KAAK2mE,eAAe1tC,MAAM0Q,EAAEpmC,IAAIvD,KAAK2mE,eAAe3iB,OAAOpb,UAAUrlC,EAAE,EAAEvD,KAAK2mE,eAAe3iB,OAAOjQ,aAAapK,EAAE,EAAE3pC,KAAKu3F,WAAW,EAAE,KAAI,GAAI5tD,EAAEnoC,UAAUwyF,cAAc,SAAShhF,GAAG,IAAI6f,EAAE7f,EAAEsL,OAAO,GAAGte,KAAKgsE,gBAAgBvtD,QAAQu1E,eAAe,OAAM,EAAG,IAAIrqD,EAAE32B,EAAEzT,OAAO,EAAEyT,EAAEsL,OAAO,GAAG,EAAE,OAAOtL,EAAEsL,OAAO,IAAI,KAAK,GAAG,IAAIqrB,GAAG3pC,KAAK8wF,+BAA+BlhC,KAAKx8C,EAAE4kE,qBAAqB,MAAM,KAAK,GAAGh4E,KAAK8wF,+BAA+BlhC,KAAKx8C,EAAE6kE,sBAAsB,MAAM,KAAK,GAAGj4E,KAAK2mE,gBAAgB3mE,KAAKi5D,aAAamK,iBAAiBxgB,EAAEkuB,GAAGxhD,IAAI,MAAMtvB,KAAK2mE,eAAe1tC,KAAK,IAAIj5B,KAAK2mE,eAAe9kB,KAAK,KAAK,MAAM,KAAK,GAAG,IAAIlY,GAAG,IAAIA,IAAI3pC,KAAKswF,kBAAkBpwF,KAAKF,KAAKowF,cAAcpwF,KAAKswF,kBAAkB/wF,OAAO,IAAIS,KAAKswF,kBAAkBpvF,SAAS,IAAIyoC,GAAG,IAAIA,IAAI3pC,KAAKuwF,eAAerwF,KAAKF,KAAKqwF,WAAWrwF,KAAKuwF,eAAehxF,OAAO,IAAIS,KAAKuwF,eAAervF,SAAS,MAAM,KAAK,GAAG,IAAIyoC,GAAG,IAAIA,GAAG3pC,KAAKswF,kBAAkB/wF,QAAQS,KAAKq1F,SAASr1F,KAAKswF,kBAAkBphD,OAAO,IAAIvF,GAAG,IAAIA,GAAG3pC,KAAKuwF,eAAehxF,QAAQS,KAAKs1F,YAAYt1F,KAAKuwF,eAAerhD,OAAO,OAAM,GAAIvF,EAAEnoC,UAAUuuC,WAAW,SAAS/8B,GAAG,OAAOhT,KAAK2mE,eAAe3iB,OAAO00C,OAAO14F,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe3iB,OAAO20C,OAAO34F,KAAK2mE,eAAe3iB,OAAOutB,MAAMvxE,KAAK2mE,eAAe3iB,OAAOna,EAAE7pC,KAAK2mE,eAAe3iB,OAAO40C,iBAAiBtvC,GAAGtpD,KAAKwwF,aAAalnC,GAAGtpD,KAAK2mE,eAAe3iB,OAAO40C,iBAAiBrvC,GAAGvpD,KAAKwwF,aAAajnC,GAAGvpD,KAAK2mE,eAAe3iB,OAAO60C,aAAa74F,KAAKitF,gBAAgBuJ,SAAQ,GAAI7sD,EAAEnoC,UAAU2uC,cAAc,SAASn9B,GAAG,OAAOhT,KAAK2mE,eAAe3iB,OAAOja,EAAE/pC,KAAK2mE,eAAe3iB,OAAO00C,QAAQ,EAAE14F,KAAK2mE,eAAe3iB,OAAOna,EAAEhnC,KAAKuE,IAAIpH,KAAK2mE,eAAe3iB,OAAO20C,OAAO34F,KAAK2mE,eAAe3iB,OAAOutB,MAAM,GAAGvxE,KAAKwwF,aAAalnC,GAAGtpD,KAAK2mE,eAAe3iB,OAAO40C,iBAAiBtvC,GAAGtpD,KAAKwwF,aAAajnC,GAAGvpD,KAAK2mE,eAAe3iB,OAAO40C,iBAAiBrvC,GAAGvpD,KAAKitF,gBAAgBuJ,QAAQx2F,KAAK84F,cAAc94F,KAAK2mE,eAAe3iB,OAAO60C,eAAe74F,KAAKitF,gBAAgBuJ,QAAQx2F,KAAK2mE,eAAe3iB,OAAO60C,cAAc74F,KAAKo3F,mBAAkB,GAAIztD,EAAEnoC,UAAU6zF,SAAS,SAASriF,GAAG,OAAOhT,KAAKowF,aAAap9E,EAAEhT,KAAK0uE,eAAe9e,KAAK58C,IAAG,GAAI22B,EAAEnoC,UAAU8zF,YAAY,SAAStiF,GAAG,OAAOhT,KAAKqwF,UAAUr9E,GAAE,GAAI22B,EAAEnoC,UAAUu3F,sBAAsB,SAAS/lF,GAAG,IAAI,IAAI22B,EAAEpmC,EAAE,CAACvB,OAAO,IAAIvC,EAAE,uDAAuD,QAAQkqC,EAAElqC,EAAEkvB,KAAK3b,KAAKzP,EAAEvB,OAAO9B,KAAK,CAAC0/C,WAAWh8C,SAAS+lC,EAAE,IAAIu7B,IAAIthE,SAAS+lC,EAAE,GAAG,IAAIw7B,MAAMvhE,SAAS+lC,EAAE,GAAG,IAAI07B,KAAKzhE,SAAS+lC,EAAE,GAAG,MAAM,OAAO,IAAIpmC,EAAEvB,OAAOzC,OAAO,KAAKgE,GAAGomC,EAAEnoC,UAAU+zF,aAAa,SAASviF,GAAG,IAAI22B,EAAE3pC,KAAK+4F,sBAAsB/lF,GAAG,OAAO22B,EAAE3pC,KAAKixF,mBAAmBrhC,KAAKjmB,GAAG3pC,KAAK4mE,YAAYlmE,KAAK,0DAA0DsS,IAAG,GAAI22B,EAAEnoC,UAAUyzF,SAAS,WAAW,OAAOj1F,KAAK2mE,eAAe3iB,OAAOja,EAAE,EAAE/pC,KAAKiL,SAAQ,GAAI0+B,EAAEnoC,UAAUi0F,sBAAsB,WAAW,OAAOz1F,KAAK4mE,YAAYmB,MAAM,6CAA6C/nE,KAAKi5D,aAAaiK,gBAAgBh/C,mBAAkB,EAAGlkB,KAAK6wF,wBAAwBjhC,QAAO,GAAIjmB,EAAEnoC,UAAUk0F,kBAAkB,WAAW,OAAO11F,KAAK4mE,YAAYmB,MAAM,oCAAoC/nE,KAAKi5D,aAAaiK,gBAAgBh/C,mBAAkB,EAAGlkB,KAAK6wF,wBAAwBjhC,QAAO,GAAIjmB,EAAEnoC,UAAUq0F,qBAAqB,WAAW,OAAO71F,KAAKitF,gBAAgB2I,UAAU,GAAG51F,KAAKitF,gBAAgB+K,YAAY,EAAEhoF,EAAEioF,kBAAiB,GAAItuD,EAAEnoC,UAAUs0F,cAAc,SAAS9iF,GAAG,OAAO,IAAIA,EAAEzT,QAAQS,KAAK61F,wBAAuB,IAAK,MAAM7iF,EAAE,IAAIhT,KAAKitF,gBAAgB+K,YAAYjmE,EAAE/e,EAAE,IAAIhD,EAAE+lF,SAAS/iF,EAAE,KAAKhD,EAAEioF,kBAAiB,IAAKtuD,EAAEnoC,UAAUyJ,MAAM,WAAWjL,KAAKo3F,kBAAkB,IAAIpkF,EAAEhT,KAAK2mE,eAAe3iB,OAAO,OAAOhkD,KAAK2mE,eAAe3iB,OAAOna,IAAI72B,EAAE62B,IAAI72B,EAAE+gC,aAAa,GAAG/gC,EAAE62B,IAAI7pC,KAAK2mE,eAAeonB,OAAO/tF,KAAK62F,mBAAmB7jF,EAAE62B,GAAG7pC,KAAK2mE,eAAe1tC,OAAOjmB,EAAE62B,EAAE7pC,KAAK2mE,eAAe1tC,KAAK,GAAGj5B,KAAKo3F,mBAAkB,GAAIztD,EAAEnoC,UAAU2zF,OAAO,WAAW,OAAOn1F,KAAK2mE,eAAe3iB,OAAO1mC,KAAKtd,KAAK2mE,eAAe3iB,OAAOja,IAAG,GAAG,GAAIJ,EAAEnoC,UAAUg0F,aAAa,WAAWx1F,KAAKo3F,kBAAkB,IAAIpkF,EAAEhT,KAAK2mE,eAAe3iB,OAAO,GAAGhxC,EAAE62B,IAAI72B,EAAE41B,UAAU,CAAC,IAAIe,EAAE32B,EAAE+gC,aAAa/gC,EAAE41B,UAAU51B,EAAEgmC,MAAM+yC,cAAc/4E,EAAEu+D,MAAMv+D,EAAE62B,EAAEF,EAAE,GAAG32B,EAAEgmC,MAAMrpC,IAAIqD,EAAEu+D,MAAMv+D,EAAE62B,EAAE72B,EAAE6kE,aAAa73E,KAAK62F,mBAAmB72F,KAAK6sF,iBAAiBQ,eAAer6E,EAAE41B,UAAU51B,EAAE+gC,mBAAmB/gC,EAAE62B,IAAI7pC,KAAKo3F,kBAAkB,OAAM,GAAIztD,EAAEnoC,UAAUm0F,UAAU,WAAW,OAAO31F,KAAKw7E,QAAQhrE,QAAQxQ,KAAK4wF,gBAAgBhhC,QAAO,GAAIjmB,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAKwwF,aAAarvF,EAAE22E,kBAAkBz4D,QAAQrf,KAAKywF,uBAAuBtvF,EAAE22E,kBAAkBz4D,SAASsqB,EAAEnoC,UAAUq1F,eAAe,WAAW,OAAO72F,KAAKywF,uBAAuBlnC,KAAK,SAASvpD,KAAKywF,uBAAuBlnC,IAAI,SAASvpD,KAAKwwF,aAAajnC,GAAGvpD,KAAKywF,wBAAwB9mD,EAAEnoC,UAAUo0F,UAAU,SAAS5iF,GAAG,OAAOhT,KAAKitF,gBAAgB2I,UAAU5iF,IAAG,GAAI22B,EAAEnoC,UAAUw0F,uBAAuB,WAAW,IAAIhjF,EAAE,IAAIsV,EAAEulC,SAAS76C,EAAE1J,QAAQ,GAAG,GAAG,IAAIuR,WAAW,GAAG7H,EAAEs2C,GAAGtpD,KAAKwwF,aAAalnC,GAAGt2C,EAAEu2C,GAAGvpD,KAAKwwF,aAAajnC,GAAG,IAAI5f,EAAE3pC,KAAK2mE,eAAe3iB,OAAOhkD,KAAKu3F,WAAW,EAAE,GAAG,IAAI,IAAIh0F,EAAE,EAAEA,EAAEvD,KAAK2mE,eAAe1tC,OAAO11B,EAAE,CAAC,IAAI9D,EAAEkqC,EAAE4nC,MAAM5nC,EAAEE,EAAEtmC,EAAEub,EAAE6qB,EAAEqP,MAAM9tC,IAAIzL,GAAGqf,IAAIA,EAAEo2B,KAAKliC,GAAG8L,EAAEqlC,WAAU,GAAI,OAAOnkD,KAAK6sF,iBAAiBmM,eAAeh5F,KAAKu3F,WAAW,EAAE,IAAG,GAAI5tD,EAAxyuC,CAA2yuC2Y,EAAEsO,YAAYjnB,EAAEyjD,aAAaj8D,GAAG8nE,IAAI,CAACjmF,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE8yB,0BAA0B9yB,EAAE+yB,aAAa/yB,EAAEinB,gBAAW,EAAO,IAAIrtD,EAAE,WAAW,SAASyP,IAAIhT,KAAK28D,aAAa,GAAG38D,KAAK48D,aAAY,EAAG,OAAO5pD,EAAExR,UAAUigD,QAAQ,WAAWzhD,KAAK48D,aAAY,EAAG,IAAI,IAAI5pD,EAAE,EAAE22B,EAAE3pC,KAAK28D,aAAa3pD,EAAE22B,EAAEpqC,OAAOyT,IAAI22B,EAAE32B,GAAGyuC,UAAUzhD,KAAK28D,aAAap9D,OAAO,GAAGyT,EAAExR,UAAUq7D,SAAS,SAAS7pD,GAAG,OAAOhT,KAAK28D,aAAaz8D,KAAK8S,GAAGA,GAAGA,EAAExR,UAAUs7D,WAAW,SAAS9pD,GAAG,IAAI22B,EAAE3pC,KAAK28D,aAAat5D,QAAQ2P,IAAI,IAAI22B,GAAG3pC,KAAK28D,aAAa74D,OAAO6lC,EAAE,IAAI32B,EAAvY,GAA4Y,SAASvT,EAAEuT,GAAG,IAAI,IAAI22B,EAAE,EAAEpmC,EAAEyP,EAAE22B,EAAEpmC,EAAEhE,OAAOoqC,IAAIpmC,EAAEomC,GAAG8X,UAAUzuC,EAAEzT,OAAO,EAAEoqC,EAAEinB,WAAWrtD,EAAEomC,EAAE+yB,aAAaj9D,EAAEkqC,EAAE8yB,0BAA0B,SAASzpD,GAAG,MAAM,CAACyuC,QAAQ,WAAW,OAAOhiD,EAAEuT,OAAOkmF,KAAK,CAAClmF,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEkoC,QAAQloC,EAAE8tC,UAAU9tC,EAAEwvD,SAASxvD,EAAEyvD,OAAOzvD,EAAEi5B,MAAMj5B,EAAE+3C,SAAS/3C,EAAEgoC,eAAU,EAAO,IAAIpuE,EAAE,oBAAoBmD,UAAUjH,EAAE8D,EAAE,OAAOmD,UAAU4nC,UAAUxvB,EAAEvb,EAAE,OAAOmD,UAAU2yF,SAAS1vD,EAAEgoC,UAAUlyE,EAAE65F,SAAS,WAAW3vD,EAAE+3C,SAAS,iCAAiCh9E,KAAKjF,GAAGkqC,EAAEi5B,MAAM,CAAC,YAAY,WAAW,SAAS,UAAU02B,SAASx6E,GAAG6qB,EAAEyvD,OAAO,SAASt6E,EAAE6qB,EAAEwvD,SAAS,WAAWr6E,EAAE6qB,EAAE8tC,UAAU,CAAC,UAAU,QAAQ,QAAQ,SAAS6hB,SAASx6E,GAAG6qB,EAAEkoC,QAAQ/yD,EAAEzb,QAAQ,UAAU,GAAGk2F,KAAK,CAACvmF,EAAE22B,KAAK,SAASpmC,EAAEyP,EAAE22B,EAAEpmC,EAAE9D,GAAG,QAAG,IAAS8D,IAAIA,EAAE,QAAG,IAAS9D,IAAIA,EAAEuT,EAAEzT,QAAQgE,GAAGyP,EAAEzT,OAAO,OAAOyT,EAAEzP,GAAGyP,EAAEzT,OAAOgE,GAAGyP,EAAEzT,OAAOE,EAAEA,GAAGuT,EAAEzT,OAAOyT,EAAEzT,QAAQyT,EAAEzT,OAAOE,GAAGuT,EAAEzT,OAAO,IAAI,IAAIuf,EAAEvb,EAAEub,EAAErf,IAAIqf,EAAE9L,EAAE8L,GAAG6qB,EAAE,OAAO32B,EAAE/E,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEjgC,OAAOigC,EAAEqzB,aAAarzB,EAAEuL,UAAK,EAAOvL,EAAEuL,KAAK,SAASliC,EAAE22B,EAAElqC,EAAEqf,GAAG,OAAO9L,EAAEkiC,KAAKliC,EAAEkiC,KAAKvL,EAAElqC,EAAEqf,GAAGvb,EAAEyP,EAAE22B,EAAElqC,EAAEqf,IAAI6qB,EAAEqzB,aAAaz5D,EAAEomC,EAAEjgC,OAAO,SAASsJ,EAAE22B,GAAG,IAAIpmC,EAAE,IAAIyP,EAAE6C,YAAY7C,EAAEzT,OAAOoqC,EAAEpqC,QAAQ,OAAOgE,EAAEoM,IAAIqD,GAAGzP,EAAEoM,IAAIg6B,EAAE32B,EAAEzT,QAAQgE,IAAIi2F,KAAK,CAACxmF,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEukD,mCAA8B,EAAO,IAAIzuF,EAAE8D,EAAE,KAAKomC,EAAEukD,8BAA8B,SAASl7E,GAAG,IAAI22B,EAAE32B,EAAEgxC,OAAOhL,MAAM9tC,IAAI8H,EAAEgxC,OAAOutB,MAAMv+D,EAAEgxC,OAAOna,EAAE,GAAGtmC,EAAE,MAAMomC,OAAE,EAAOA,EAAEz+B,IAAI8H,EAAE6uC,KAAK,GAAG/iC,EAAE9L,EAAEgxC,OAAOhL,MAAM9tC,IAAI8H,EAAEgxC,OAAOutB,MAAMv+D,EAAEgxC,OAAOna,GAAG/qB,GAAGvb,IAAIub,EAAEqlC,UAAU5gD,EAAE9D,EAAE+/D,wBAAwB//D,EAAEooD,gBAAgBtkD,EAAE9D,EAAE+/D,wBAAwB//D,EAAEqoD,wBAAwB2xC,KAAK,CAACzmF,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEuzB,cAAcvzB,EAAE0f,mBAAc,EAAO,IAAI9lD,EAAE,WAAW,SAASyP,IAAIhT,KAAKspD,GAAG,EAAEtpD,KAAKupD,GAAG,EAAEvpD,KAAKm9D,SAAS,IAAI19D,EAAE,OAAOuT,EAAE42C,WAAW,SAAS52C,GAAG,MAAM,CAACA,IAAI,GAAG,IAAIA,IAAI,EAAE,IAAI,IAAIA,IAAIA,EAAEoqD,aAAa,SAASpqD,GAAG,OAAO,IAAIA,EAAE,KAAK,IAAI,IAAIA,EAAE,KAAK,EAAE,IAAIA,EAAE,IAAIA,EAAExR,UAAU6d,MAAM,WAAW,IAAIsqB,EAAE,IAAI32B,EAAE,OAAO22B,EAAE2f,GAAGtpD,KAAKspD,GAAG3f,EAAE4f,GAAGvpD,KAAKupD,GAAG5f,EAAEwzB,SAASn9D,KAAKm9D,SAAS99C,QAAQsqB,GAAG32B,EAAExR,UAAUqzD,UAAU,WAAW,OAAO,SAAS70D,KAAKspD,IAAIt2C,EAAExR,UAAUozD,OAAO,WAAW,OAAO,UAAU50D,KAAKspD,IAAIt2C,EAAExR,UAAU67D,YAAY,WAAW,OAAO,UAAUr9D,KAAKspD,IAAIt2C,EAAExR,UAAU87D,QAAQ,WAAW,OAAO,UAAUt9D,KAAKspD,IAAIt2C,EAAExR,UAAUmzD,YAAY,WAAW,OAAO,WAAW30D,KAAKspD,IAAIt2C,EAAExR,UAAUuzD,SAAS,WAAW,OAAO,SAAS/0D,KAAKupD,IAAIv2C,EAAExR,UAAUszD,MAAM,WAAW,OAAO,UAAU90D,KAAKupD,IAAIv2C,EAAExR,UAAUyzD,eAAe,WAAW,OAAO,SAASj1D,KAAKspD,IAAIt2C,EAAExR,UAAUioD,eAAe,WAAW,OAAO,SAASzpD,KAAKupD,IAAIv2C,EAAExR,UAAU+7D,QAAQ,WAAW,OAAO,WAAW,SAASv9D,KAAKspD,KAAKt2C,EAAExR,UAAUg8D,QAAQ,WAAW,OAAO,WAAW,SAASx9D,KAAKupD,KAAKv2C,EAAExR,UAAUi8D,YAAY,WAAW,OAAO,WAAW,SAASz9D,KAAKspD,KAAK,WAAW,SAAStpD,KAAKspD,KAAKt2C,EAAExR,UAAUk8D,YAAY,WAAW,OAAO,WAAW,SAAS19D,KAAKupD,KAAK,WAAW,SAASvpD,KAAKupD,KAAKv2C,EAAExR,UAAUm8D,YAAY,WAAW,OAAO,IAAI,SAAS39D,KAAKspD,KAAKt2C,EAAExR,UAAUo8D,YAAY,WAAW,OAAO,IAAI,SAAS59D,KAAKupD,KAAKv2C,EAAExR,UAAUq8D,mBAAmB,WAAW,OAAO,IAAI79D,KAAKspD,IAAI,IAAItpD,KAAKupD,IAAIv2C,EAAExR,UAAUwzD,WAAW,WAAW,OAAO,SAASh1D,KAAKspD,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAItpD,KAAKspD,GAAG,KAAK,SAAS,OAAO,SAAStpD,KAAKspD,GAAG,QAAQ,OAAO,IAAIt2C,EAAExR,UAAUmoD,WAAW,WAAW,OAAO,SAAS3pD,KAAKupD,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIvpD,KAAKupD,GAAG,KAAK,SAAS,OAAO,SAASvpD,KAAKupD,GAAG,QAAQ,OAAO,IAAIv2C,EAAExR,UAAUs8D,iBAAiB,WAAW,OAAO,UAAU99D,KAAKupD,IAAIv2C,EAAExR,UAAUu8D,eAAe,WAAW/9D,KAAKm9D,SAASa,UAAUh+D,KAAKupD,KAAK,UAAUvpD,KAAKupD,IAAI,WAAWv2C,EAAExR,UAAUy8D,kBAAkB,WAAW,GAAG,UAAUj+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,OAAO,SAASl+D,KAAKm9D,SAASe,gBAAgB,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIl+D,KAAKm9D,SAASe,eAAe,KAAK,SAAS,OAAO,SAASl+D,KAAKm9D,SAASe,eAAe,QAAQ,OAAOl+D,KAAKg1D,aAAa,OAAOh1D,KAAKg1D,cAAchiD,EAAExR,UAAU28D,sBAAsB,WAAW,OAAO,UAAUn+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,SAASl+D,KAAKm9D,SAASe,eAAel+D,KAAKi1D,kBAAkBjiD,EAAExR,UAAU48D,oBAAoB,WAAW,OAAO,UAAUp+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,WAAW,SAASl+D,KAAKm9D,SAASe,gBAAgBl+D,KAAKu9D,WAAWvqD,EAAExR,UAAU68D,wBAAwB,WAAW,OAAO,UAAUr+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,WAAW,SAASl+D,KAAKm9D,SAASe,iBAAiB,WAAW,SAASl+D,KAAKm9D,SAASe,gBAAgBl+D,KAAKy9D,eAAezqD,EAAExR,UAAU88D,wBAAwB,WAAW,OAAO,UAAUt+D,KAAKupD,KAAKvpD,KAAKm9D,SAASe,eAAe,IAAI,SAASl+D,KAAKm9D,SAASe,gBAAgBl+D,KAAK29D,eAAe3qD,EAAExR,UAAU+8D,kBAAkB,WAAW,OAAO,UAAUv+D,KAAKspD,GAAG,UAAUtpD,KAAKupD,GAAGvpD,KAAKm9D,SAASqB,eAAe,EAAE,GAAGxrD,EAAr+F,GAA0+F22B,EAAE0f,cAAc9lD,EAAE,IAAI9D,EAAE,WAAW,SAASuT,EAAEA,EAAE22B,QAAG,IAAS32B,IAAIA,EAAE,QAAG,IAAS22B,IAAIA,GAAG,GAAG3pC,KAAKw+D,eAAexrD,EAAEhT,KAAKk+D,eAAev0B,EAAE,OAAO32B,EAAExR,UAAU6d,MAAM,WAAW,OAAO,IAAIrM,EAAEhT,KAAKw+D,eAAex+D,KAAKk+D,iBAAiBlrD,EAAExR,UAAUw8D,QAAQ,WAAW,OAAO,IAAIh+D,KAAKw+D,gBAAgBxrD,EAAtQ,GAA2Q22B,EAAEuzB,cAAcz9D,GAAGi6F,KAAK,CAAC1mF,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEgwD,qBAAqBhwD,EAAEiwD,OAAOjwD,EAAEkwD,qBAAgB,EAAO,IAAIp6F,EAAE8D,EAAE,MAAMub,EAAEvb,EAAE,MAAM6P,EAAE7P,EAAE,KAAKq/C,EAAEr/C,EAAE,KAAKyM,EAAEzM,EAAE,MAAMqX,EAAErX,EAAE,MAAM++C,EAAE/+C,EAAE,MAAMc,EAAEd,EAAE,MAAMomC,EAAEkwD,gBAAgB,WAAW,IAAI91C,EAAE,WAAW,SAAS/wC,EAAEA,EAAE22B,EAAEpmC,GAAGvD,KAAK85F,eAAe9mF,EAAEhT,KAAKgsE,gBAAgBriC,EAAE3pC,KAAK2mE,eAAepjE,EAAEvD,KAAKwwD,MAAM,EAAExwD,KAAKuxE,MAAM,EAAEvxE,KAAK6pC,EAAE,EAAE7pC,KAAK+pC,EAAE,EAAE/pC,KAAK24F,OAAO,EAAE34F,KAAK04F,OAAO,EAAE14F,KAAK44F,iBAAiB95E,EAAEg5D,kBAAkBz4D,QAAQrf,KAAK64F,aAAav2C,EAAE21C,gBAAgBj4F,KAAKy2E,QAAQ,GAAGz2E,KAAK+5F,UAAU3mF,EAAEy6C,SAAS8Q,aAAa,CAAC,EAAE/b,EAAE2c,eAAe3c,EAAE0c,gBAAgB1c,EAAEiF,iBAAiB7nD,KAAKg6F,gBAAgB5mF,EAAEy6C,SAAS8Q,aAAa,CAAC,EAAE/b,EAAEyc,qBAAqBzc,EAAEwc,sBAAsBxc,EAAEkF,uBAAuB9nD,KAAKi6F,MAAMj6F,KAAK2mE,eAAe9kB,KAAK7hD,KAAKk6F,MAAMl6F,KAAK2mE,eAAe1tC,KAAKj5B,KAAKg5C,MAAM,IAAIv5C,EAAE2rF,aAAaprF,KAAKm6F,wBAAwBn6F,KAAKk6F,QAAQl6F,KAAK4oC,UAAU,EAAE5oC,KAAK+zC,aAAa/zC,KAAKk6F,MAAM,EAAEl6F,KAAKywE,gBAAgB,OAAOz9D,EAAExR,UAAU06E,YAAY,SAASlpE,GAAG,OAAOA,GAAGhT,KAAK+5F,UAAUzwC,GAAGt2C,EAAEs2C,GAAGtpD,KAAK+5F,UAAUxwC,GAAGv2C,EAAEu2C,GAAGvpD,KAAK+5F,UAAU58B,SAASnqD,EAAEmqD,WAAWn9D,KAAK+5F,UAAUzwC,GAAG,EAAEtpD,KAAK+5F,UAAUxwC,GAAG,EAAEvpD,KAAK+5F,UAAU58B,SAAS,IAAI94D,EAAE64D,eAAel9D,KAAK+5F,WAAW/mF,EAAExR,UAAU44F,kBAAkB,SAASpnF,GAAG,OAAOA,GAAGhT,KAAKg6F,gBAAgB1wC,GAAGt2C,EAAEs2C,GAAGtpD,KAAKg6F,gBAAgBzwC,GAAGv2C,EAAEu2C,GAAGvpD,KAAKg6F,gBAAgB78B,SAASnqD,EAAEmqD,WAAWn9D,KAAKg6F,gBAAgB1wC,GAAG,EAAEtpD,KAAKg6F,gBAAgBzwC,GAAG,EAAEvpD,KAAKg6F,gBAAgB78B,SAAS,IAAI94D,EAAE64D,eAAel9D,KAAKg6F,iBAAiBhnF,EAAExR,UAAUq2E,aAAa,SAAS7kE,EAAE22B,GAAG,OAAO,IAAI7qB,EAAEu7E,WAAWr6F,KAAK2mE,eAAe9kB,KAAK7hD,KAAKk8E,YAAYlpE,GAAG22B,IAAI17B,OAAOqzC,eAAetuC,EAAExR,UAAU,gBAAgB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK85F,gBAAgB95F,KAAKg5C,MAAM1c,UAAUt8B,KAAKk6F,OAAO33C,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAetuC,EAAExR,UAAU,qBAAqB,CAAC0J,IAAI,WAAW,IAAI8H,EAAEhT,KAAKuxE,MAAMvxE,KAAK6pC,EAAE7pC,KAAKwwD,MAAM,OAAOx9C,GAAG,GAAGA,EAAEhT,KAAKk6F,OAAO33C,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAU24F,wBAAwB,SAASnnF,GAAG,IAAIhT,KAAK85F,eAAe,OAAO9mF,EAAE,IAAIzP,EAAEyP,EAAEhT,KAAKgsE,gBAAgBvtD,QAAQ67E,WAAW,OAAO/2F,EAAEomC,EAAEkwD,gBAAgBlwD,EAAEkwD,gBAAgBt2F,GAAGyP,EAAExR,UAAU+4F,iBAAiB,SAASvnF,GAAG,GAAG,IAAIhT,KAAKg5C,MAAMz5C,OAAO,MAAC,IAASyT,IAAIA,EAAE8L,EAAEg5D,mBAAmB,IAAI,IAAInuC,EAAE3pC,KAAKk6F,MAAMvwD,KAAK3pC,KAAKg5C,MAAM94C,KAAKF,KAAK63E,aAAa7kE,MAAMA,EAAExR,UAAUgR,MAAM,WAAWxS,KAAKwwD,MAAM,EAAExwD,KAAKuxE,MAAM,EAAEvxE,KAAK6pC,EAAE,EAAE7pC,KAAK+pC,EAAE,EAAE/pC,KAAKg5C,MAAM,IAAIv5C,EAAE2rF,aAAaprF,KAAKm6F,wBAAwBn6F,KAAKk6F,QAAQl6F,KAAK4oC,UAAU,EAAE5oC,KAAK+zC,aAAa/zC,KAAKk6F,MAAM,EAAEl6F,KAAKywE,iBAAiBz9D,EAAExR,UAAU4d,OAAO,SAASpM,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAKk8E,YAAYp9D,EAAEg5D,mBAAmBr4E,EAAEO,KAAKm6F,wBAAwBxwD,GAAG,GAAGlqC,EAAEO,KAAKg5C,MAAM1c,YAAYt8B,KAAKg5C,MAAM1c,UAAU78B,GAAGO,KAAKg5C,MAAMz5C,OAAO,EAAE,CAAC,GAAGS,KAAKi6F,MAAMjnF,EAAE,IAAI,IAAII,EAAE,EAAEA,EAAEpT,KAAKg5C,MAAMz5C,OAAO6T,IAAIpT,KAAKg5C,MAAM9tC,IAAIkI,GAAGgM,OAAOpM,EAAEzP,GAAG,IAAIq/C,EAAE,EAAE,GAAG5iD,KAAKk6F,MAAMvwD,EAAE,IAAI,IAAI35B,EAAEhQ,KAAKk6F,MAAMlqF,EAAE25B,EAAE35B,IAAIhQ,KAAKg5C,MAAMz5C,OAAOoqC,EAAE3pC,KAAKuxE,QAAQvxE,KAAKgsE,gBAAgBvtD,QAAQuvE,YAAYhuF,KAAKg5C,MAAM94C,KAAK,IAAI4e,EAAEu7E,WAAWrnF,EAAEzP,IAAIvD,KAAKuxE,MAAM,GAAGvxE,KAAKg5C,MAAMz5C,QAAQS,KAAKuxE,MAAMvxE,KAAK6pC,EAAE+Y,EAAE,GAAG5iD,KAAKuxE,QAAQ3uB,IAAI5iD,KAAKwwD,MAAM,GAAGxwD,KAAKwwD,SAASxwD,KAAKg5C,MAAM94C,KAAK,IAAI4e,EAAEu7E,WAAWrnF,EAAEzP,UAAU,IAAIyM,EAAEhQ,KAAKk6F,MAAMlqF,EAAE25B,EAAE35B,IAAIhQ,KAAKg5C,MAAMz5C,OAAOoqC,EAAE3pC,KAAKuxE,QAAQvxE,KAAKg5C,MAAMz5C,OAAOS,KAAKuxE,MAAMvxE,KAAK6pC,EAAE,EAAE7pC,KAAKg5C,MAAM9J,OAAOlvC,KAAKuxE,QAAQvxE,KAAKwwD,UAAU,GAAG/wD,EAAEO,KAAKg5C,MAAM1c,UAAU,CAAC,IAAI1hB,EAAE5a,KAAKg5C,MAAMz5C,OAAOE,EAAEmb,EAAE,IAAI5a,KAAKg5C,MAAM8yC,UAAUlxE,GAAG5a,KAAKuxE,MAAM1uE,KAAKuE,IAAIpH,KAAKuxE,MAAM32D,EAAE,GAAG5a,KAAKwwD,MAAM3tD,KAAKuE,IAAIpH,KAAKwwD,MAAM51C,EAAE,GAAG5a,KAAK24F,OAAO91F,KAAKuE,IAAIpH,KAAK24F,OAAO/9E,EAAE,IAAI5a,KAAKg5C,MAAM1c,UAAU78B,EAAEO,KAAK+pC,EAAElnC,KAAKC,IAAI9C,KAAK+pC,EAAE/2B,EAAE,GAAGhT,KAAK6pC,EAAEhnC,KAAKC,IAAI9C,KAAK6pC,EAAEF,EAAE,GAAGiZ,IAAI5iD,KAAK6pC,GAAG+Y,GAAG5iD,KAAK04F,OAAO71F,KAAKC,IAAI9C,KAAK04F,OAAO1lF,EAAE,GAAGhT,KAAK4oC,UAAU,EAAE,GAAG5oC,KAAK+zC,aAAapK,EAAE,EAAE3pC,KAAKw6F,mBAAmBx6F,KAAKy6F,QAAQznF,EAAE22B,GAAG3pC,KAAKi6F,MAAMjnF,GAAG,IAAII,EAAE,EAAEA,EAAEpT,KAAKg5C,MAAMz5C,OAAO6T,IAAIpT,KAAKg5C,MAAM9tC,IAAIkI,GAAGgM,OAAOpM,EAAEzP,GAAGvD,KAAKi6F,MAAMjnF,EAAEhT,KAAKk6F,MAAMvwD,GAAG17B,OAAOqzC,eAAetuC,EAAExR,UAAU,mBAAmB,CAAC0J,IAAI,WAAW,OAAOlL,KAAK85F,iBAAiB95F,KAAKgsE,gBAAgBvtD,QAAQuvE,aAAazrC,YAAW,EAAG6K,cAAa,IAAKp6C,EAAExR,UAAUi5F,QAAQ,SAASznF,EAAE22B,GAAG3pC,KAAKi6F,QAAQjnF,IAAIA,EAAEhT,KAAKi6F,MAAMj6F,KAAK06F,cAAc1nF,EAAE22B,GAAG3pC,KAAK26F,eAAe3nF,EAAE22B,KAAK32B,EAAExR,UAAUk5F,cAAc,SAAS1nF,EAAE22B,GAAG,IAAIpmC,EAAEyM,EAAE4qF,6BAA6B56F,KAAKg5C,MAAMh5C,KAAKi6F,MAAMjnF,EAAEhT,KAAKuxE,MAAMvxE,KAAK6pC,EAAE7pC,KAAKk8E,YAAYp9D,EAAEg5D,oBAAoB,GAAGv0E,EAAEhE,OAAO,EAAE,CAAC,IAAIE,EAAEuQ,EAAE6qF,4BAA4B76F,KAAKg5C,MAAMz1C,GAAGyM,EAAE8qF,2BAA2B96F,KAAKg5C,MAAMv5C,EAAEs7F,QAAQ/6F,KAAKg7F,4BAA4BhoF,EAAE22B,EAAElqC,EAAEw7F,gBAAgBjoF,EAAExR,UAAUw5F,4BAA4B,SAAShoF,EAAE22B,EAAEpmC,GAAG,IAAI,IAAI9D,EAAEO,KAAKk8E,YAAYp9D,EAAEg5D,mBAAmB1kE,EAAE7P,EAAE6P,KAAK,GAAG,IAAIpT,KAAKuxE,OAAOvxE,KAAK6pC,EAAE,GAAG7pC,KAAK6pC,IAAI7pC,KAAKg5C,MAAMz5C,OAAOoqC,GAAG3pC,KAAKg5C,MAAM94C,KAAK,IAAI4e,EAAEu7E,WAAWrnF,EAAEvT,MAAMO,KAAKwwD,QAAQxwD,KAAKuxE,OAAOvxE,KAAKwwD,QAAQxwD,KAAKuxE,SAASvxE,KAAK24F,OAAO91F,KAAKuE,IAAIpH,KAAK24F,OAAOp1F,EAAE,IAAIyP,EAAExR,UAAUm5F,eAAe,SAAS3nF,EAAE22B,GAAG,IAAI,IAAIpmC,EAAEvD,KAAKk8E,YAAYp9D,EAAEg5D,mBAAmBr4E,EAAE,GAAG2T,EAAE,EAAEwvC,EAAE5iD,KAAKg5C,MAAMz5C,OAAO,EAAEqjD,GAAG,EAAEA,IAAI,CAAC,IAAIhoC,EAAE5a,KAAKg5C,MAAM9tC,IAAI03C,GAAG,MAAMhoC,IAAIA,EAAEupC,WAAWvpC,EAAEwqE,oBAAoBpyE,GAAG,CAAC,IAAI,IAAIsvC,EAAE,CAAC1nC,GAAGA,EAAEupC,WAAWvB,EAAE,GAAGhoC,EAAE5a,KAAKg5C,MAAM9tC,MAAM03C,GAAGN,EAAEv5C,QAAQ6R,GAAG,IAAIvW,EAAErE,KAAKuxE,MAAMvxE,KAAK6pC,EAAE,KAAKxlC,GAAGu+C,GAAGv+C,EAAEu+C,EAAEN,EAAE/iD,QAAQ,CAAC,IAAIwkD,EAAE5iD,EAAEmhD,EAAEA,EAAE/iD,OAAO,GAAG6lF,mBAAmB3gC,EAAEz0C,EAAEkrF,+BAA+B54C,EAAEtiD,KAAKi6F,MAAMjnF,GAAGmI,EAAEspC,EAAEllD,OAAO+iD,EAAE/iD,OAAOwkD,EAAE,IAAI/jD,KAAKuxE,OAAOvxE,KAAK6pC,IAAI7pC,KAAKg5C,MAAMz5C,OAAO,EAAEsD,KAAKuE,IAAI,EAAEpH,KAAK6pC,EAAE7pC,KAAKg5C,MAAM1c,UAAUnhB,GAAGtY,KAAKuE,IAAI,EAAEpH,KAAKg5C,MAAMz5C,OAAOS,KAAKg5C,MAAM1c,UAAUnhB,GAAG,IAAI,IAAImN,EAAE,GAAG1lB,EAAE,EAAEA,EAAEuY,EAAEvY,IAAI,CAAC,IAAIY,EAAExD,KAAK63E,aAAa/4D,EAAEg5D,mBAAkB,GAAIxvD,EAAEpoB,KAAKsD,GAAG8kB,EAAE/oB,OAAO,IAAIE,EAAES,KAAK,CAACmc,MAAMumC,EAAEN,EAAE/iD,OAAO6T,EAAE+nF,SAAS7yE,IAAIlV,GAAGkV,EAAE/oB,QAAQ+iD,EAAEpiD,KAAKJ,MAAMwiD,EAAEh6B,GAAG,IAAIuhB,EAAE4a,EAAEllD,OAAO,EAAEkE,EAAEghD,EAAE5a,GAAG,IAAIpmC,IAAIA,EAAEghD,IAAI5a,IAAI,IAAI,IAAI9X,EAAEuwB,EAAE/iD,OAAO4b,EAAE,EAAE9U,EAAElF,EAAE4wB,GAAG,GAAG,CAAC,IAAIc,EAAEhwB,KAAKC,IAAIuD,EAAE5C,GAAG,GAAG6+C,EAAEzY,GAAGuxD,cAAc94C,EAAEvwB,GAAG1rB,EAAEwsB,EAAEpvB,EAAEovB,EAAEA,GAAE,GAAI,IAAIpvB,GAAGovB,KAAKpvB,EAAEghD,IAAI5a,IAAI,IAAIxjC,GAAGwsB,GAAG,CAACd,IAAI,IAAIugB,EAAEzvC,KAAKuE,IAAI2qB,EAAE,GAAG1rB,EAAE2J,EAAEqrF,4BAA4B/4C,EAAEhQ,EAAEtyC,KAAKi6F,QAAQ,IAAIr3F,EAAE,EAAEA,EAAE0/C,EAAE/iD,OAAOqD,IAAI6hD,EAAE7hD,GAAGoQ,GAAGsvC,EAAE1/C,GAAG04F,QAAQ72C,EAAE7hD,GAAGW,GAAG,IAAI,IAAI4tB,EAAEhW,EAAE4oC,EAAE5yB,KAAK,GAAG,IAAInxB,KAAKuxE,MAAMvxE,KAAK6pC,EAAEF,EAAE,GAAG3pC,KAAK6pC,IAAI7pC,KAAKg5C,MAAM9J,QAAQlvC,KAAKuxE,QAAQvxE,KAAKwwD,SAASxwD,KAAKuxE,MAAM1uE,KAAKC,IAAI9C,KAAKg5C,MAAM1c,UAAUt8B,KAAKg5C,MAAMz5C,OAAO6T,GAAGu2B,IAAI3pC,KAAKuxE,QAAQvxE,KAAKwwD,OAAOxwD,KAAKwwD,QAAQxwD,KAAKuxE,SAASvxE,KAAK24F,OAAO91F,KAAKC,IAAI9C,KAAK24F,OAAOx9E,EAAEnb,KAAKuxE,MAAM5nC,EAAE,KAAK,GAAGlqC,EAAEF,OAAO,EAAE,CAAC,IAAI+yB,EAAE,GAAGlc,EAAE,GAAG,IAAIxT,EAAE,EAAEA,EAAE5C,KAAKg5C,MAAMz5C,OAAOqD,IAAIwT,EAAElW,KAAKF,KAAKg5C,MAAM9tC,IAAItI,IAAI,IAAIkvB,EAAE9xB,KAAKg5C,MAAMz5C,OAAO6xB,EAAEU,EAAE,EAAEiY,EAAE,EAAE1Y,EAAE5xB,EAAEsqC,GAAG/pC,KAAKg5C,MAAMz5C,OAAOsD,KAAKC,IAAI9C,KAAKg5C,MAAM1c,UAAUt8B,KAAKg5C,MAAMz5C,OAAO6T,GAAG,IAAIqe,EAAE,EAAE,IAAI7uB,EAAEC,KAAKC,IAAI9C,KAAKg5C,MAAM1c,UAAU,EAAExK,EAAE1e,EAAE,GAAGxQ,GAAG,EAAEA,IAAI,GAAGyuB,GAAGA,EAAEhV,MAAM+U,EAAEK,EAAE,CAAC,IAAI,IAAIO,EAAEX,EAAE8pE,SAAS57F,OAAO,EAAEyyB,GAAG,EAAEA,IAAIhyB,KAAKg5C,MAAMrpC,IAAI/M,IAAIyuB,EAAE8pE,SAASnpE,IAAIpvB,IAAI0vB,EAAEpyB,KAAK,CAAC+K,MAAMmmB,EAAE,EAAE+iD,OAAO9iD,EAAE8pE,SAAS57F,SAASkyB,GAAGJ,EAAE8pE,SAAS57F,OAAO8xB,EAAE5xB,IAAIsqC,QAAQ/pC,KAAKg5C,MAAMrpC,IAAI/M,EAAEwT,EAAEgb,MAAM,IAAIM,EAAE,EAAE,IAAI9uB,EAAE0vB,EAAE/yB,OAAO,EAAEqD,GAAG,EAAEA,IAAI0vB,EAAE1vB,GAAGqI,OAAOymB,EAAE1xB,KAAKg5C,MAAMuyC,gBAAgB37B,KAAKt9B,EAAE1vB,IAAI8uB,GAAGY,EAAE1vB,GAAGuxE,OAAO,IAAIlhD,EAAEpwB,KAAKuE,IAAI,EAAE0qB,EAAE1e,EAAEpT,KAAKg5C,MAAM1c,WAAWrJ,EAAE,GAAGjzB,KAAKg5C,MAAMwyC,cAAc57B,KAAK38B,KAAKjgB,EAAExR,UAAUinE,yBAAyB,SAASz1D,EAAE22B,EAAEpmC,GAAG,SAAI,IAASA,IAAIA,GAAE,GAAIomC,GAAG,CAAC,IAAIlqC,EAAEO,KAAKg5C,MAAM9tC,IAAI8H,GAAG,IAAIvT,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI,IAAIqf,EAAEvb,EAAE9D,EAAE2lF,mBAAmB3lF,EAAEF,OAAO6T,EAAE,EAAEA,EAAE0L,IAAI1L,EAAE,GAAG3T,EAAEyL,IAAIkI,GAAGwvC,EAAEqc,yBAAyBt1B,GAAGlqC,EAAEyL,IAAIkI,GAAGwvC,EAAEoc,sBAAsBz/D,QAAQ,GAAGoqC,EAAE,EAAE,MAAM,CAAC32B,EAAEI,GAAGJ,IAAI,MAAM,CAACA,EAAE,IAAIA,EAAExR,UAAUshE,4BAA4B,SAAS9vD,EAAE22B,EAAEpmC,EAAE9D,QAAG,IAAS8D,IAAIA,EAAE,GAAG,IAAIub,EAAE9e,KAAKg5C,MAAM9tC,IAAI8H,GAAG,OAAO8L,EAAEA,EAAEslC,kBAAkBza,EAAEpmC,EAAE9D,GAAG,IAAIuT,EAAExR,UAAU2oF,uBAAuB,SAASn3E,GAAG,IAAI,IAAI22B,EAAE32B,EAAEzP,EAAEyP,EAAE22B,EAAE,GAAG3pC,KAAKg5C,MAAM9tC,IAAIy+B,GAAGwa,WAAWxa,IAAI,KAAKpmC,EAAE,EAAEvD,KAAKg5C,MAAMz5C,QAAQS,KAAKg5C,MAAM9tC,IAAI3H,EAAE,GAAG4gD,WAAW5gD,IAAI,MAAM,CAACukE,MAAMn+B,EAAEygD,KAAK7mF,IAAIyP,EAAExR,UAAUivE,cAAc,SAASz9D,GAAG,IAAI,MAAMA,EAAEhT,KAAKsd,KAAKtK,KAAKA,EAAEhT,KAAKy3F,SAASzkF,KAAKhT,KAAKsd,KAAK,GAAGtK,EAAE,GAAGA,EAAEhT,KAAKi6F,MAAMjnF,GAAGhT,KAAKgsE,gBAAgBvtD,QAAQ88E,aAAav7F,KAAKsd,KAAKtK,IAAG,GAAIA,EAAExR,UAAUi2F,SAAS,SAASzkF,GAAG,IAAI,MAAMA,IAAIA,EAAEhT,KAAK+pC,IAAI/pC,KAAKsd,OAAOtK,IAAIA,EAAE,IAAI,OAAOA,GAAGhT,KAAKi6F,MAAMj6F,KAAKi6F,MAAM,EAAEjnF,EAAE,EAAE,EAAEA,GAAGA,EAAExR,UAAU61F,SAAS,SAASrkF,GAAG,IAAI,MAAMA,IAAIA,EAAEhT,KAAK+pC,IAAI/pC,KAAKsd,OAAOtK,IAAIA,EAAEhT,KAAKi6F,QAAQ,OAAOjnF,GAAGhT,KAAKi6F,MAAMj6F,KAAKi6F,MAAM,EAAEjnF,EAAE,EAAE,EAAEA,GAAGA,EAAExR,UAAUk1E,UAAU,SAAS1jE,GAAG,IAAI22B,EAAE3pC,KAAKuD,EAAE,IAAIqX,EAAE4gF,OAAOxoF,GAAG,OAAOhT,KAAKy2E,QAAQv2E,KAAKqD,GAAGA,EAAEs5D,SAAS78D,KAAKg5C,MAAMyrC,QAAO,SAAUzxE,GAAGzP,EAAE2U,MAAMlF,EAAEzP,EAAE2U,KAAK,GAAG3U,EAAEk+C,cAAcl+C,EAAEs5D,SAAS78D,KAAKg5C,MAAMyiD,UAAS,SAAUzoF,GAAGzP,EAAE2U,MAAMlF,EAAE/H,QAAQ1H,EAAE2U,MAAMlF,EAAEmhE,YAAY5wE,EAAEs5D,SAAS78D,KAAKg5C,MAAM0iD,UAAS,SAAU1oF,GAAGzP,EAAE2U,MAAMlF,EAAE/H,OAAO1H,EAAE2U,KAAKlF,EAAE/H,MAAM+H,EAAEmhE,QAAQ5wE,EAAEk+C,UAAUl+C,EAAE2U,KAAKlF,EAAE/H,QAAQ1H,EAAE2U,MAAMlF,EAAEmhE,YAAY5wE,EAAEs5D,SAASt5D,EAAEo4F,WAAU,WAAY,OAAOhyD,EAAEiyD,cAAcr4F,OAAOA,GAAGyP,EAAExR,UAAUo6F,cAAc,SAAS5oF,GAAGhT,KAAKy2E,QAAQ3yE,OAAO9D,KAAKy2E,QAAQpzE,QAAQ2P,GAAG,IAAIA,EAAExR,UAAUkmE,SAAS,SAAS10D,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG,OAAO,IAAI3d,EAAEnB,KAAKgT,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,IAAI9L,EAAzzP,GAA8zP22B,EAAEiwD,OAAO71C,EAAE,IAAI5iD,EAAE,WAAW,SAAS6R,EAAEA,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,QAAG,IAAS7P,IAAIA,EAAE,QAAG,IAAS9D,IAAIA,EAAEuT,EAAEgmC,MAAMz5C,aAAQ,IAASuf,IAAIA,EAAE,QAAG,IAAS1L,IAAIA,EAAE,GAAGpT,KAAKy7E,QAAQzoE,EAAEhT,KAAK67F,WAAWlyD,EAAE3pC,KAAK0rF,YAAYnoF,EAAEvD,KAAK87F,UAAUr8F,EAAEO,KAAK+7F,eAAej9E,EAAE9e,KAAKg8F,aAAa5oF,EAAEpT,KAAK0rF,YAAY,IAAI1rF,KAAK0rF,YAAY,GAAG1rF,KAAK87F,UAAU97F,KAAKy7E,QAAQziC,MAAMz5C,SAASS,KAAK87F,UAAU97F,KAAKy7E,QAAQziC,MAAMz5C,QAAQS,KAAKi8F,SAASj8F,KAAK0rF,YAAY,OAAO14E,EAAExR,UAAUmmE,QAAQ,WAAW,OAAO3nE,KAAKi8F,SAASj8F,KAAK87F,WAAW9oF,EAAExR,UAAUomE,KAAK,WAAW,IAAI50D,EAAEhT,KAAKy7E,QAAQ0O,uBAAuBnqF,KAAKi8F,UAAUjpF,EAAE80D,MAAM9nE,KAAK0rF,YAAY1rF,KAAK+7F,iBAAiB/oF,EAAE80D,MAAM9nE,KAAK0rF,YAAY1rF,KAAK+7F,gBAAgB/oF,EAAEo3E,KAAKpqF,KAAK87F,UAAU97F,KAAKg8F,eAAehpF,EAAEo3E,KAAKpqF,KAAK87F,UAAU97F,KAAKg8F,cAAchpF,EAAE80D,MAAMjlE,KAAKuE,IAAI4L,EAAE80D,MAAM,GAAG90D,EAAEo3E,KAAKvnF,KAAKC,IAAIkQ,EAAEo3E,KAAKpqF,KAAKy7E,QAAQziC,MAAMz5C,QAAQ,IAAI,IAAIoqC,EAAE,GAAGpmC,EAAEyP,EAAE80D,MAAMvkE,GAAGyP,EAAEo3E,OAAO7mF,EAAEomC,GAAG3pC,KAAKy7E,QAAQ3Y,4BAA4Bv/D,EAAEvD,KAAK67F,YAAY,OAAO77F,KAAKi8F,SAASjpF,EAAEo3E,KAAK,EAAE,CAACtsD,MAAM9qB,EAAE1J,QAAQqgC,IAAI32B,EAAz7B,GAA87B22B,EAAEgwD,qBAAqBx4F,GAAG+6F,KAAK,CAAClpF,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE0wD,WAAW1wD,EAAEmuC,uBAAkB,EAAO,IAAIr4E,EAAE8D,EAAE,KAAKub,EAAEvb,EAAE,KAAK6P,EAAE7P,EAAE,KAAKq/C,EAAEr/C,EAAE,MAAMomC,EAAEmuC,kBAAkB7pE,OAAOy2D,OAAO,IAAI9hB,EAAEyG,eAAe,IAAIr5C,EAAE,WAAW,SAASgD,EAAEA,EAAE22B,EAAEpmC,QAAG,IAASA,IAAIA,GAAE,GAAIvD,KAAKmkD,UAAU5gD,EAAEvD,KAAKm8F,UAAU,GAAGn8F,KAAKo8F,eAAe,GAAGp8F,KAAK4vF,MAAM,IAAIrjC,YAAY,EAAEv5C,GAAG,IAAI,IAAIvT,EAAEkqC,GAAGv2B,EAAEy6C,SAAS8Q,aAAa,CAAC,EAAE7/C,EAAEygD,eAAezgD,EAAEwgD,gBAAgBxgD,EAAE+oC,iBAAiBjF,EAAE,EAAEA,EAAE5vC,IAAI4vC,EAAE5iD,KAAKs7F,QAAQ14C,EAAEnjD,GAAGO,KAAKT,OAAOyT,EAAE,OAAOA,EAAExR,UAAU0J,IAAI,SAAS8H,GAAG,IAAI22B,EAAE3pC,KAAK4vF,MAAM,EAAE58E,EAAE,GAAGzP,EAAE,QAAQomC,EAAE,MAAM,CAAC3pC,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG,QAAQ22B,EAAE3pC,KAAKm8F,UAAUnpF,GAAGzP,EAAE9D,EAAEq/D,oBAAoBv7D,GAAG,GAAGomC,GAAG,GAAG,QAAQA,EAAE3pC,KAAKm8F,UAAUnpF,GAAG6H,WAAW7a,KAAKm8F,UAAUnpF,GAAGzT,OAAO,GAAGgE,IAAIyP,EAAExR,UAAUmO,IAAI,SAASqD,EAAE22B,GAAG3pC,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG22B,EAAE7qB,EAAEigD,sBAAsBp1B,EAAE7qB,EAAEkgD,sBAAsBz/D,OAAO,GAAGS,KAAKm8F,UAAUnpF,GAAG22B,EAAE,GAAG3pC,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG,QAAQA,EAAE22B,EAAE7qB,EAAEmgD,wBAAwB,IAAIj/D,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG22B,EAAE7qB,EAAEkgD,sBAAsBnkD,WAAW,GAAG8uB,EAAE7qB,EAAEmgD,wBAAwB,IAAIjsD,EAAExR,UAAUk3B,SAAS,SAAS1lB,GAAG,OAAOhT,KAAK4vF,MAAM,EAAE58E,EAAE,IAAI,IAAIA,EAAExR,UAAUgoF,SAAS,SAASx2E,GAAG,OAAO,SAAShT,KAAK4vF,MAAM,EAAE58E,EAAE,IAAIA,EAAExR,UAAUknE,MAAM,SAAS11D,GAAG,OAAOhT,KAAK4vF,MAAM,EAAE58E,EAAE,IAAIA,EAAExR,UAAU2jF,MAAM,SAASnyE,GAAG,OAAOhT,KAAK4vF,MAAM,EAAE58E,EAAE,IAAIA,EAAExR,UAAUy1F,WAAW,SAASjkF,GAAG,OAAO,QAAQhT,KAAK4vF,MAAM,EAAE58E,EAAE,IAAIA,EAAExR,UAAUk+E,aAAa,SAAS1sE,GAAG,IAAI22B,EAAE3pC,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG,OAAO,QAAQ22B,EAAE3pC,KAAKm8F,UAAUnpF,GAAG6H,WAAW7a,KAAKm8F,UAAUnpF,GAAGzT,OAAO,GAAG,QAAQoqC,GAAG32B,EAAExR,UAAUq9D,WAAW,SAAS7rD,GAAG,OAAO,QAAQhT,KAAK4vF,MAAM,EAAE58E,EAAE,IAAIA,EAAExR,UAAUgkF,UAAU,SAASxyE,GAAG,IAAI22B,EAAE3pC,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG,OAAO,QAAQ22B,EAAE3pC,KAAKm8F,UAAUnpF,GAAG,QAAQ22B,EAAElqC,EAAEq/D,oBAAoB,QAAQn1B,GAAG,IAAI32B,EAAExR,UAAUivD,SAAS,SAASz9C,EAAE22B,GAAG,IAAIpmC,EAAE,EAAEyP,EAAE,OAAO22B,EAAErgC,QAAQtJ,KAAK4vF,MAAMrsF,EAAE,GAAGomC,EAAE2f,GAAGtpD,KAAK4vF,MAAMrsF,EAAE,GAAGomC,EAAE4f,GAAGvpD,KAAK4vF,MAAMrsF,EAAE,GAAG,QAAQomC,EAAErgC,UAAUqgC,EAAE+0B,aAAa1+D,KAAKm8F,UAAUnpF,IAAI,UAAU22B,EAAE4f,KAAK5f,EAAEwzB,SAASn9D,KAAKo8F,eAAeppF,IAAI22B,GAAG32B,EAAExR,UAAU85F,QAAQ,SAAStoF,EAAE22B,GAAG,QAAQA,EAAErgC,UAAUtJ,KAAKm8F,UAAUnpF,GAAG22B,EAAE+0B,cAAc,UAAU/0B,EAAE4f,KAAKvpD,KAAKo8F,eAAeppF,GAAG22B,EAAEwzB,UAAUn9D,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG22B,EAAErgC,QAAQtJ,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG22B,EAAE2f,GAAGtpD,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG22B,EAAE4f,IAAIv2C,EAAExR,UAAUm1F,qBAAqB,SAAS3jF,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,EAAE1L,GAAG,UAAU0L,IAAI9e,KAAKo8F,eAAeppF,GAAGI,GAAGpT,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG22B,EAAEpmC,GAAG,GAAGvD,KAAK4vF,MAAM,EAAE58E,EAAE,GAAGvT,EAAEO,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG8L,GAAG9L,EAAExR,UAAUu1F,mBAAmB,SAAS/jF,EAAE22B,GAAG,IAAIpmC,EAAEvD,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG,QAAQzP,EAAEvD,KAAKm8F,UAAUnpF,IAAIvT,EAAEq/D,oBAAoBn1B,IAAI,QAAQpmC,GAAGvD,KAAKm8F,UAAUnpF,GAAGvT,EAAEq/D,oBAAoB,QAAQv7D,GAAG9D,EAAEq/D,oBAAoBn1B,GAAGpmC,IAAI,QAAQA,GAAG,SAASA,EAAEomC,EAAE,GAAG,GAAG3pC,KAAK4vF,MAAM,EAAE58E,EAAE,GAAGzP,IAAIyP,EAAExR,UAAUs1F,YAAY,SAAS9jF,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIuT,GAAGhT,KAAKT,SAAS,IAAIS,KAAK04B,SAAS1lB,EAAE,IAAIhT,KAAK22F,qBAAqB3jF,EAAE,EAAE,EAAE,GAAG,MAAMvT,OAAE,EAAOA,EAAE6pD,KAAK,GAAG,MAAM7pD,OAAE,EAAOA,EAAE8pD,KAAK,GAAG,MAAM9pD,OAAE,EAAOA,EAAE09D,WAAW,IAAIva,EAAEsa,eAAevzB,EAAE3pC,KAAKT,OAAOyT,EAAE,CAAC,IAAI,IAAI8L,EAAE,IAAI1L,EAAEy6C,SAAS79C,EAAEhQ,KAAKT,OAAOyT,EAAE22B,EAAE,EAAE35B,GAAG,IAAIA,EAAEhQ,KAAKs7F,QAAQtoF,EAAE22B,EAAE35B,EAAEhQ,KAAKywD,SAASz9C,EAAEhD,EAAE8O,IAAI,IAAI9O,EAAE,EAAEA,EAAE25B,IAAI35B,EAAEhQ,KAAKs7F,QAAQtoF,EAAEhD,EAAEzM,QAAQ,IAAIyM,EAAEgD,EAAEhD,EAAEhQ,KAAKT,SAASyQ,EAAEhQ,KAAKs7F,QAAQtrF,EAAEzM,GAAG,IAAIvD,KAAK04B,SAAS14B,KAAKT,OAAO,IAAIS,KAAK22F,qBAAqB32F,KAAKT,OAAO,EAAE,EAAE,GAAG,MAAME,OAAE,EAAOA,EAAE6pD,KAAK,GAAG,MAAM7pD,OAAE,EAAOA,EAAE8pD,KAAK,GAAG,MAAM9pD,OAAE,EAAOA,EAAE09D,WAAW,IAAIva,EAAEsa,gBAAgBlqD,EAAExR,UAAUq2F,YAAY,SAAS7kF,EAAE22B,EAAEpmC,EAAE9D,GAAG,GAAGuT,GAAGhT,KAAKT,OAAOoqC,EAAE3pC,KAAKT,OAAOyT,EAAE,CAAC,IAAI,IAAI8L,EAAE,IAAI1L,EAAEy6C,SAAS79C,EAAE,EAAEA,EAAEhQ,KAAKT,OAAOyT,EAAE22B,IAAI35B,EAAEhQ,KAAKs7F,QAAQtoF,EAAEhD,EAAEhQ,KAAKywD,SAASz9C,EAAE22B,EAAE35B,EAAE8O,IAAI,IAAI9O,EAAEhQ,KAAKT,OAAOoqC,EAAE35B,EAAEhQ,KAAKT,SAASyQ,EAAEhQ,KAAKs7F,QAAQtrF,EAAEzM,QAAQ,IAAIyM,EAAEgD,EAAEhD,EAAEhQ,KAAKT,SAASyQ,EAAEhQ,KAAKs7F,QAAQtrF,EAAEzM,GAAGyP,GAAG,IAAIhT,KAAK04B,SAAS1lB,EAAE,IAAIhT,KAAK22F,qBAAqB3jF,EAAE,EAAE,EAAE,GAAG,MAAMvT,OAAE,EAAOA,EAAE6pD,KAAK,GAAG,MAAM7pD,OAAE,EAAOA,EAAE8pD,KAAK,GAAG,MAAM9pD,OAAE,EAAOA,EAAE09D,WAAW,IAAIva,EAAEsa,eAAe,IAAIl9D,KAAK04B,SAAS1lB,IAAIhT,KAAKi3F,WAAWjkF,IAAIhT,KAAK22F,qBAAqB3jF,EAAE,EAAE,GAAG,MAAMvT,OAAE,EAAOA,EAAE6pD,KAAK,GAAG,MAAM7pD,OAAE,EAAOA,EAAE8pD,KAAK,GAAG,MAAM9pD,OAAE,EAAOA,EAAE09D,WAAW,IAAIva,EAAEsa,gBAAgBlqD,EAAExR,UAAUm2F,aAAa,SAAS3kF,EAAE22B,EAAEpmC,EAAE9D,GAAG,IAAIuT,GAAG,IAAIhT,KAAK04B,SAAS1lB,EAAE,IAAIhT,KAAK22F,qBAAqB3jF,EAAE,EAAE,EAAE,GAAG,MAAMvT,OAAE,EAAOA,EAAE6pD,KAAK,GAAG,MAAM7pD,OAAE,EAAOA,EAAE8pD,KAAK,GAAG,MAAM9pD,OAAE,EAAOA,EAAE09D,WAAW,IAAIva,EAAEsa,eAAevzB,EAAE3pC,KAAKT,QAAQ,IAAIS,KAAK04B,SAASiR,EAAE,IAAI3pC,KAAK22F,qBAAqBhtD,EAAE,EAAE,GAAG,MAAMlqC,OAAE,EAAOA,EAAE6pD,KAAK,GAAG,MAAM7pD,OAAE,EAAOA,EAAE8pD,KAAK,GAAG,MAAM9pD,OAAE,EAAOA,EAAE09D,WAAW,IAAIva,EAAEsa,eAAelqD,EAAE22B,GAAG32B,EAAEhT,KAAKT,QAAQS,KAAKs7F,QAAQtoF,IAAIzP,IAAIyP,EAAExR,UAAU4d,OAAO,SAASpM,EAAE22B,GAAG,GAAG32B,IAAIhT,KAAKT,OAAO,CAAC,GAAGyT,EAAEhT,KAAKT,OAAO,CAAC,IAAIgE,EAAE,IAAIgpD,YAAY,EAAEv5C,GAAGhT,KAAKT,SAAS,EAAEyT,EAAEhT,KAAK4vF,MAAMrwF,OAAOgE,EAAEoM,IAAI3P,KAAK4vF,MAAMtlC,SAAS,EAAE,EAAEt3C,IAAIzP,EAAEoM,IAAI3P,KAAK4vF,QAAQ5vF,KAAK4vF,MAAMrsF,EAAE,IAAI,IAAI9D,EAAEO,KAAKT,OAAOE,EAAEuT,IAAIvT,EAAEO,KAAKs7F,QAAQ77F,EAAEkqC,QAAQ,GAAG32B,EAAE,EAAEzP,EAAE,IAAIgpD,YAAY,EAAEv5C,IAAIrD,IAAI3P,KAAK4vF,MAAMtlC,SAAS,EAAE,EAAEt3C,IAAIhT,KAAK4vF,MAAMrsF,EAAE,IAAIub,EAAE7Q,OAAOD,KAAKhO,KAAKm8F,WAAW,IAAI18F,EAAE,EAAEA,EAAEqf,EAAEvf,OAAOE,IAAI,CAAC,IAAI2T,EAAExP,SAASkb,EAAErf,GAAG,IAAI2T,GAAGJ,UAAUhT,KAAKm8F,UAAU/oF,SAASpT,KAAK4vF,MAAM,IAAIrjC,YAAY,GAAGvsD,KAAKm8F,UAAU,GAAGn8F,KAAKT,OAAOyT,IAAIA,EAAExR,UAAU0zC,KAAK,SAASliC,GAAGhT,KAAKm8F,UAAU,GAAGn8F,KAAKo8F,eAAe,GAAG,IAAI,IAAIzyD,EAAE,EAAEA,EAAE3pC,KAAKT,SAASoqC,EAAE3pC,KAAKs7F,QAAQ3xD,EAAE32B,IAAIA,EAAExR,UAAU66F,SAAS,SAASrpF,GAAG,IAAI,IAAI22B,KAAK3pC,KAAKT,SAASyT,EAAEzT,OAAOS,KAAK4vF,MAAM,IAAIrjC,YAAYv5C,EAAE48E,OAAO5vF,KAAK4vF,MAAMjgF,IAAIqD,EAAE48E,OAAO5vF,KAAKT,OAAOyT,EAAEzT,OAAOS,KAAKm8F,UAAU,GAAGnpF,EAAEmpF,UAAUn8F,KAAKm8F,UAAUxyD,GAAG32B,EAAEmpF,UAAUxyD,GAAG,IAAI,IAAIA,KAAK3pC,KAAKo8F,eAAe,GAAGppF,EAAEopF,eAAep8F,KAAKo8F,eAAezyD,GAAG32B,EAAEopF,eAAezyD,GAAG3pC,KAAKmkD,UAAUnxC,EAAEmxC,WAAWnxC,EAAExR,UAAU6d,MAAM,WAAW,IAAIsqB,EAAE,IAAI32B,EAAE,GAAG,IAAI,IAAIzP,KAAKomC,EAAEimD,MAAM,IAAIrjC,YAAYvsD,KAAK4vF,OAAOjmD,EAAEpqC,OAAOS,KAAKT,OAAOS,KAAKm8F,UAAUxyD,EAAEwyD,UAAU54F,GAAGvD,KAAKm8F,UAAU54F,GAAG,IAAI,IAAIA,KAAKvD,KAAKo8F,eAAezyD,EAAEyyD,eAAe74F,GAAGvD,KAAKo8F,eAAe74F,GAAG,OAAOomC,EAAEwa,UAAUnkD,KAAKmkD,UAAUxa,GAAG32B,EAAExR,UAAU4jF,iBAAiB,WAAW,IAAI,IAAIpyE,EAAEhT,KAAKT,OAAO,EAAEyT,GAAG,IAAIA,EAAE,GAAG,QAAQhT,KAAK4vF,MAAM,EAAE58E,EAAE,GAAG,OAAOA,GAAGhT,KAAK4vF,MAAM,EAAE58E,EAAE,IAAI,IAAI,OAAO,GAAGA,EAAExR,UAAU45F,cAAc,SAASpoF,EAAE22B,EAAEpmC,EAAE9D,EAAEqf,GAAG,IAAI1L,EAAEJ,EAAE48E,MAAM,GAAG9wE,EAAE,IAAI,IAAI8jC,EAAEnjD,EAAE,EAAEmjD,GAAG,EAAEA,IAAI,IAAI,IAAI5yC,EAAE,EAAEA,EAAE,EAAEA,IAAIhQ,KAAK4vF,MAAM,GAAGrsF,EAAEq/C,GAAG5yC,GAAGoD,EAAE,GAAGu2B,EAAEiZ,GAAG5yC,QAAQ,IAAI4yC,EAAE,EAAEA,EAAEnjD,EAAEmjD,IAAI,IAAI5yC,EAAE,EAAEA,EAAE,EAAEA,IAAIhQ,KAAK4vF,MAAM,GAAGrsF,EAAEq/C,GAAG5yC,GAAGoD,EAAE,GAAGu2B,EAAEiZ,GAAG5yC,GAAG,IAAI4K,EAAE3M,OAAOD,KAAKgF,EAAEmpF,WAAW,IAAInsF,EAAE,EAAEA,EAAE4K,EAAErb,OAAOyQ,IAAI,CAAC,IAAIsyC,EAAE1+C,SAASgX,EAAE5K,GAAG,IAAIsyC,GAAG3Y,IAAI3pC,KAAKm8F,UAAU75C,EAAE3Y,EAAEpmC,GAAGyP,EAAEmpF,UAAU75C,MAAMtvC,EAAExR,UAAU4iD,kBAAkB,SAASpxC,EAAE22B,EAAEpmC,QAAG,IAASyP,IAAIA,GAAE,QAAI,IAAS22B,IAAIA,EAAE,QAAG,IAASpmC,IAAIA,EAAEvD,KAAKT,QAAQyT,IAAIzP,EAAEV,KAAKC,IAAIS,EAAEvD,KAAKolF,qBAAqB,IAAI,IAAIhyE,EAAE,GAAGu2B,EAAEpmC,GAAG,CAAC,IAAIq/C,EAAE5iD,KAAK4vF,MAAM,EAAEjmD,EAAE,GAAG35B,EAAE,QAAQ4yC,EAAExvC,GAAG,QAAQwvC,EAAE5iD,KAAKm8F,UAAUxyD,GAAG35B,EAAEvQ,EAAEq/D,oBAAoB9uD,GAAG8O,EAAEugD,qBAAqB11B,GAAGiZ,GAAG,IAAI,EAAE,OAAOxvC,GAAGJ,EAA92L,GAAm3L22B,EAAE0wD,WAAWrqF,GAAGssF,KAAK,CAACtpF,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEg/C,oBAAe,EAAOh/C,EAAEg/C,eAAe,SAAS31E,EAAE22B,GAAG,GAAG32B,EAAEqJ,MAAMwtB,IAAI72B,EAAE0J,IAAImtB,EAAE,OAAO72B,EAAE0J,IAAIqtB,EAAE/2B,EAAEqJ,MAAM0tB,EAAE,EAAE,GAAG/2B,EAAEqJ,MAAMwtB,EAAE72B,EAAE0J,IAAImtB,EAAE,MAAM,IAAI7qC,MAAM,qBAAqBgU,EAAE0J,IAAIqtB,EAAE,KAAK/2B,EAAE0J,IAAImtB,EAAE,6BAA6B72B,EAAEqJ,MAAM0tB,EAAE,KAAK/2B,EAAEqJ,MAAMwtB,EAAE,KAAK,OAAOF,GAAG32B,EAAE0J,IAAImtB,EAAE72B,EAAEqJ,MAAMwtB,EAAE,GAAGF,EAAE32B,EAAEqJ,MAAM0tB,EAAE/2B,EAAE0J,IAAIqtB,IAAIwyD,KAAK,CAACvpF,EAAE22B,KAAK,SAASpmC,EAAEyP,EAAE22B,EAAEpmC,GAAG,GAAGomC,IAAI32B,EAAEzT,OAAO,EAAE,OAAOyT,EAAE22B,GAAGy7C,mBAAmB,IAAI3lF,GAAGuT,EAAE22B,GAAGstD,WAAW1zF,EAAE,IAAI,IAAIyP,EAAE22B,GAAGjR,SAASn1B,EAAE,GAAGub,EAAE,IAAI9L,EAAE22B,EAAE,GAAGjR,SAAS,GAAG,OAAOj5B,GAAGqf,EAAEvb,EAAE,EAAEA,EAAE0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE0xD,4BAA4B1xD,EAAEuxD,+BAA+BvxD,EAAEmxD,2BAA2BnxD,EAAEkxD,4BAA4BlxD,EAAEixD,kCAA6B,EAAOjxD,EAAEixD,6BAA6B,SAAS5nF,EAAE22B,EAAElqC,EAAEqf,EAAE1L,GAAG,IAAI,IAAIwvC,EAAE,GAAG5yC,EAAE,EAAEA,EAAEgD,EAAEzT,OAAO,EAAEyQ,IAAI,CAAC,IAAI4K,EAAE5K,EAAEsyC,EAAEtvC,EAAE9H,MAAM0P,GAAG,GAAG0nC,EAAE6B,UAAU,CAAC,IAAI,IAAI9/C,EAAE,CAAC2O,EAAE9H,IAAI8E,IAAI4K,EAAE5H,EAAEzT,QAAQ+iD,EAAE6B,WAAW9/C,EAAEnE,KAAKoiD,GAAGA,EAAEtvC,EAAE9H,MAAM0P,GAAG,GAAGkE,GAAG9O,GAAG8O,EAAElE,EAAE5K,GAAG3L,EAAE9E,OAAO,MAAM,CAAC,IAAI,IAAIwkD,EAAE,EAAE5iD,EAAEoC,EAAEc,EAAE0/C,EAAEpa,GAAG8a,EAAE,EAAEtpC,EAAE,EAAEspC,EAAEpgD,EAAE9E,QAAQ,CAAC,IAAI+oB,EAAE/kB,EAAEc,EAAEogD,EAAE9a,GAAG/mC,EAAE0lB,EAAEnN,EAAE3X,EAAE/D,EAAE0B,EAAE0oC,EAAEhnC,KAAKC,IAAIF,EAAEY,GAAGa,EAAE0/C,GAAGq3C,cAAc/2F,EAAEogD,GAAGtpC,EAAEha,EAAE0oC,GAAE,IAAK1oC,GAAG0oC,KAAKpqC,IAAIskD,IAAI5iD,EAAE,IAAIga,GAAG0uB,KAAKvhB,IAAIm8B,IAAItpC,EAAE,GAAG,IAAIha,GAAG,IAAI4iD,GAAG,IAAI1/C,EAAE0/C,EAAE,GAAGrrB,SAASj5B,EAAE,KAAK4E,EAAE0/C,GAAGq3C,cAAc/2F,EAAE0/C,EAAE,GAAGtkD,EAAE,EAAE0B,IAAI,GAAE,GAAIkD,EAAE0/C,EAAE,GAAGu3C,QAAQ77F,EAAE,EAAE2T,IAAI/O,EAAE0/C,GAAG4zC,aAAax2F,EAAE1B,EAAE2T,GAAG,IAAI,IAAI3P,EAAE,EAAEsuB,EAAE1tB,EAAE9E,OAAO,EAAEwyB,EAAE,IAAIA,EAAEgyB,GAAG,IAAI1/C,EAAE0tB,GAAGqzD,oBAAoBrzD,IAAItuB,IAAIA,EAAE,IAAIm/C,EAAE1iD,KAAK8P,EAAE3L,EAAE9E,OAAOkE,GAAGm/C,EAAE1iD,KAAKuD,IAAIuM,GAAG3L,EAAE9E,OAAO,IAAI,OAAOqjD,GAAGjZ,EAAEkxD,4BAA4B,SAAS7nF,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,GAAG9D,EAAE,EAAEqf,EAAE6qB,EAAElqC,GAAG2T,EAAE,EAAEwvC,EAAE,EAAEA,EAAE5vC,EAAEzT,OAAOqjD,IAAI,GAAG9jC,IAAI8jC,EAAE,CAAC,IAAI5yC,EAAE25B,IAAIlqC,GAAGuT,EAAEs4E,gBAAgB17B,KAAK,CAAC3kD,MAAM23C,EAAExvC,EAAE+gE,OAAOnkE,IAAI4yC,GAAG5yC,EAAE,EAAEoD,GAAGpD,EAAE8O,EAAE6qB,IAAIlqC,QAAQ8D,EAAErD,KAAK0iD,GAAG,MAAM,CAACm4C,OAAOx3F,EAAE03F,aAAa7nF,IAAIu2B,EAAEmxD,2BAA2B,SAAS9nF,EAAE22B,GAAG,IAAI,IAAIpmC,EAAE,GAAG9D,EAAE,EAAEA,EAAEkqC,EAAEpqC,OAAOE,IAAI8D,EAAErD,KAAK8S,EAAE9H,IAAIy+B,EAAElqC,KAAK,IAAIA,EAAE,EAAEA,EAAE8D,EAAEhE,OAAOE,IAAIuT,EAAErD,IAAIlQ,EAAE8D,EAAE9D,IAAIuT,EAAEzT,OAAOoqC,EAAEpqC,QAAQoqC,EAAEuxD,+BAA+B,SAASloF,EAAE22B,EAAElqC,GAAG,IAAI,IAAIqf,EAAE,GAAG1L,EAAEJ,EAAErP,KAAI,SAAUlE,EAAEqf,GAAG,OAAOvb,EAAEyP,EAAE8L,EAAE6qB,MAAM6yD,QAAO,SAAUxpF,EAAE22B,GAAG,OAAO32B,EAAE22B,KAAKiZ,EAAE,EAAE5yC,EAAE,EAAE4K,EAAE,EAAEA,EAAExH,GAAG,CAAC,GAAGA,EAAEwH,EAAEnb,EAAE,CAACqf,EAAE5e,KAAKkT,EAAEwH,GAAG,MAAMgoC,GAAGnjD,EAAE,IAAI6iD,EAAE/+C,EAAEyP,EAAEhD,EAAE25B,GAAGiZ,EAAEN,IAAIM,GAAGN,EAAEtyC,KAAK,IAAI3L,EAAE,IAAI2O,EAAEhD,GAAG0oB,SAASkqB,EAAE,GAAGv+C,GAAGu+C,IAAI,IAAImB,EAAE1/C,EAAE5E,EAAE,EAAEA,EAAEqf,EAAE5e,KAAK6jD,GAAGnpC,GAAGmpC,EAAE,OAAOjlC,GAAG6qB,EAAE0xD,4BAA4B93F,GAAGk5F,KAAK,SAASzpF,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE+yD,eAAU,EAAO,IAAItpF,EAAE7P,EAAE,MAAMq/C,EAAEr/C,EAAE,MAAMyM,EAAE,SAASgD,GAAG,SAAS22B,EAAEA,EAAEpmC,GAAG,IAAI9D,EAAEuT,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOP,EAAEusE,gBAAgBriC,EAAElqC,EAAEknE,eAAepjE,EAAE9D,EAAEwoF,kBAAkBxoF,EAAEo9D,SAAS,IAAIja,EAAEmL,cAActuD,EAAE+Q,QAAQ/Q,EAAE,OAAOqf,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,mBAAmB,CAAC0J,IAAI,WAAW,OAAOlL,KAAKioF,kBAAkBl1C,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUgP,MAAM,WAAWxQ,KAAKo8E,QAAQ,IAAIhpE,EAAEwmF,QAAO,EAAG55F,KAAKgsE,gBAAgBhsE,KAAK2mE,gBAAgB3mE,KAAKo8E,QAAQme,mBAAmBv6F,KAAK28F,KAAK,IAAIvpF,EAAEwmF,QAAO,EAAG55F,KAAKgsE,gBAAgBhsE,KAAK2mE,gBAAgB3mE,KAAK6kD,cAAc7kD,KAAKo8E,QAAQp8E,KAAKywE,iBAAiBxiE,OAAOqzC,eAAe3X,EAAEnoC,UAAU,MAAM,CAAC0J,IAAI,WAAW,OAAOlL,KAAK28F,MAAMp6C,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAK6kD,eAAetC,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,SAAS,CAAC0J,IAAI,WAAW,OAAOlL,KAAKo8E,SAAS75B,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAU42F,qBAAqB,WAAWp4F,KAAK6kD,gBAAgB7kD,KAAKo8E,UAAUp8E,KAAKo8E,QAAQryC,EAAE/pC,KAAK28F,KAAK5yD,EAAE/pC,KAAKo8E,QAAQvyC,EAAE7pC,KAAK28F,KAAK9yD,EAAE7pC,KAAK28F,KAAKnqF,QAAQxS,KAAK6kD,cAAc7kD,KAAKo8E,QAAQp8E,KAAKioF,kBAAkBr4B,KAAK,CAACi6B,aAAa7pF,KAAKo8E,QAAQwgB,eAAe58F,KAAK28F,SAAShzD,EAAEnoC,UAAU22F,kBAAkB,SAASnlF,GAAGhT,KAAK6kD,gBAAgB7kD,KAAK28F,OAAO38F,KAAK28F,KAAKpC,iBAAiBvnF,GAAGhT,KAAK28F,KAAK5yD,EAAE/pC,KAAKo8E,QAAQryC,EAAE/pC,KAAK28F,KAAK9yD,EAAE7pC,KAAKo8E,QAAQvyC,EAAE7pC,KAAK6kD,cAAc7kD,KAAK28F,KAAK38F,KAAKioF,kBAAkBr4B,KAAK,CAACi6B,aAAa7pF,KAAK28F,KAAKC,eAAe58F,KAAKo8E,YAAYzyC,EAAEnoC,UAAU4d,OAAO,SAASpM,EAAE22B,GAAG3pC,KAAKo8E,QAAQh9D,OAAOpM,EAAE22B,GAAG3pC,KAAK28F,KAAKv9E,OAAOpM,EAAE22B,IAAIA,EAAEnoC,UAAUivE,cAAc,SAASz9D,GAAGhT,KAAKo8E,QAAQ3L,cAAcz9D,GAAGhT,KAAK28F,KAAKlsB,cAAcz9D,IAAI22B,EAArlD,CAAwlDpmC,EAAE,KAAKqtD,YAAYjnB,EAAE+yD,UAAU1sF,GAAG6sF,IAAI,SAAS7pF,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEkkB,cAAS,EAAO,IAAIz6C,EAAE7P,EAAE,KAAKq/C,EAAEr/C,EAAE,KAAKyM,EAAEzM,EAAE,MAAMqX,EAAE,SAAS5H,GAAG,SAAS22B,IAAI,IAAIA,EAAE,OAAO32B,GAAGA,EAAElT,MAAME,KAAKN,YAAYM,KAAK,OAAO2pC,EAAErgC,QAAQ,EAAEqgC,EAAE2f,GAAG,EAAE3f,EAAE4f,GAAG,EAAE5f,EAAEwzB,SAAS,IAAIntD,EAAEktD,cAAcvzB,EAAE+0B,aAAa,GAAG/0B,EAAE,OAAO7qB,EAAE6qB,EAAE32B,GAAG22B,EAAEg1B,aAAa,SAAS3rD,GAAG,IAAIzP,EAAE,IAAIomC,EAAE,OAAOpmC,EAAEq7D,gBAAgB5rD,GAAGzP,GAAGomC,EAAEnoC,UAAUq9D,WAAW,WAAW,OAAO,QAAQ7+D,KAAKsJ,SAASqgC,EAAEnoC,UAAUk3B,SAAS,WAAW,OAAO14B,KAAKsJ,SAAS,IAAIqgC,EAAEnoC,UAAUuoD,SAAS,WAAW,OAAO,QAAQ/pD,KAAKsJ,QAAQtJ,KAAK0+D,aAAa,QAAQ1+D,KAAKsJ,QAAQ8J,EAAE0rD,oBAAoB,QAAQ9+D,KAAKsJ,SAAS,IAAIqgC,EAAEnoC,UAAUkvD,QAAQ,WAAW,OAAO1wD,KAAK6+D,aAAa7+D,KAAK0+D,aAAa7jD,WAAW7a,KAAK0+D,aAAan/D,OAAO,GAAG,QAAQS,KAAKsJ,SAASqgC,EAAEnoC,UAAUo9D,gBAAgB,SAAS5rD,GAAGhT,KAAKspD,GAAGt2C,EAAE4vC,EAAEmc,sBAAsB/+D,KAAKupD,GAAG,EAAE,IAAI5f,GAAE,EAAG,GAAG32B,EAAE4vC,EAAEoc,sBAAsBz/D,OAAO,EAAEoqC,GAAE,OAAQ,GAAG,IAAI32B,EAAE4vC,EAAEoc,sBAAsBz/D,OAAO,CAAC,IAAIgE,EAAEyP,EAAE4vC,EAAEoc,sBAAsBnkD,WAAW,GAAG,GAAG,OAAOtX,GAAGA,GAAG,MAAM,CAAC,IAAI9D,EAAEuT,EAAE4vC,EAAEoc,sBAAsBnkD,WAAW,GAAG,OAAOpb,GAAGA,GAAG,MAAMO,KAAKsJ,QAAQ,MAAM/F,EAAE,OAAO9D,EAAE,MAAM,MAAMuT,EAAE4vC,EAAEqc,wBAAwB,GAAGt1B,GAAE,OAAQA,GAAE,OAAQ3pC,KAAKsJ,QAAQ0J,EAAE4vC,EAAEoc,sBAAsBnkD,WAAW,GAAG7H,EAAE4vC,EAAEqc,wBAAwB,GAAGt1B,IAAI3pC,KAAK0+D,aAAa1rD,EAAE4vC,EAAEoc,sBAAsBh/D,KAAKsJ,QAAQ,QAAQ0J,EAAE4vC,EAAEqc,wBAAwB,KAAKt1B,EAAEnoC,UAAU09D,cAAc,WAAW,MAAM,CAACl/D,KAAKspD,GAAGtpD,KAAK+pD,WAAW/pD,KAAK04B,WAAW14B,KAAK0wD,YAAY/mB,EAAzzC,CAA4zC35B,EAAEq5C,eAAe1f,EAAEkkB,SAASjzC,GAAGkiF,IAAI,CAAC9pF,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEme,qBAAqBne,EAAEy1B,sBAAsBz1B,EAAE01B,qBAAqB11B,EAAEke,eAAele,EAAE21B,gBAAgB31B,EAAE41B,eAAe51B,EAAE61B,qBAAqB71B,EAAEs1B,sBAAsBt1B,EAAEq1B,qBAAqBr1B,EAAEo1B,qBAAqBp1B,EAAE81B,aAAa91B,EAAEmL,mBAAc,EAAOnL,EAAEmL,cAAc,IAAInL,EAAE81B,aAAa,IAAI91B,EAAEmL,eAAe,EAAEnL,EAAEo1B,qBAAqB,EAAEp1B,EAAEq1B,qBAAqB,EAAEr1B,EAAEs1B,sBAAsB,EAAEt1B,EAAE61B,qBAAqB,EAAE71B,EAAE41B,eAAe,GAAG51B,EAAE21B,gBAAgB,EAAE31B,EAAEke,eAAe,EAAEle,EAAE01B,qBAAqB,IAAI11B,EAAEy1B,sBAAsB,EAAEz1B,EAAEme,qBAAqB,IAAIi1C,KAAK,SAAS/pF,EAAE22B,EAAEpmC,GAAG,IAAI9D,EAAEqf,EAAE9e,MAAMA,KAAKwtD,YAAY/tD,EAAE,SAASuT,EAAE22B,GAAG,OAAOlqC,EAAEwO,OAAOw/C,gBAAgB,CAACC,UAAU,cAAc9tD,OAAO,SAASoT,EAAE22B,GAAG32B,EAAE06C,UAAU/jB,IAAI,SAAS32B,EAAE22B,GAAG,IAAI,IAAIpmC,KAAKomC,EAAE17B,OAAOzM,UAAUqsB,eAAerG,KAAKmiB,EAAEpmC,KAAKyP,EAAEzP,GAAGomC,EAAEpmC,MAAMyP,EAAE22B,IAAI,SAAS32B,EAAE22B,GAAG,SAASpmC,IAAIvD,KAAK6V,YAAY7C,EAAEvT,EAAEuT,EAAE22B,GAAG32B,EAAExR,UAAU,OAAOmoC,EAAE17B,OAAO2H,OAAO+zB,IAAIpmC,EAAE/B,UAAUmoC,EAAEnoC,UAAU,IAAI+B,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAE6xD,YAAO,EAAO,IAAIpoF,EAAE7P,EAAE,MAAMq/C,EAAE,SAAS5vC,GAAG,SAAS22B,EAAEpmC,GAAG,IAAI9D,EAAEuT,EAAEwU,KAAKxnB,OAAOA,KAAK,OAAOP,EAAEyY,KAAK3U,EAAE9D,EAAE8+E,IAAI50C,EAAEqzD,UAAUv9F,EAAEs7E,YAAW,EAAGt7E,EAAEw9F,WAAW,IAAI7pF,EAAE26C,aAAatuD,EAAE,OAAOqf,EAAE6qB,EAAE32B,GAAG/E,OAAOqzC,eAAe3X,EAAEnoC,UAAU,KAAK,CAAC0J,IAAI,WAAW,OAAOlL,KAAKu+E,KAAKh8B,YAAW,EAAG6K,cAAa,IAAKn/C,OAAOqzC,eAAe3X,EAAEnoC,UAAU,YAAY,CAAC0J,IAAI,WAAW,OAAOlL,KAAKi9F,WAAWlqD,OAAOwP,YAAW,EAAG6K,cAAa,IAAKzjB,EAAEnoC,UAAUigD,QAAQ,WAAWzhD,KAAK+6E,aAAa/6E,KAAK+6E,YAAW,EAAG/6E,KAAKkY,MAAM,EAAElY,KAAKi9F,WAAWrtC,OAAO58C,EAAExR,UAAUigD,QAAQj6B,KAAKxnB,QAAQ2pC,EAAEqzD,QAAQ,EAAErzD,EAA9gB,CAAihBpmC,EAAE,KAAKqtD,YAAYjnB,EAAE6xD,OAAO54C,GAAGs6C,KAAK,CAAClqF,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEsuD,gBAAgBtuD,EAAEosD,cAAS,EAAOpsD,EAAEosD,SAAS,GAAGpsD,EAAEsuD,gBAAgBtuD,EAAEosD,SAAShjE,EAAE4W,EAAEosD,SAAS,GAAG,CAAC,IAAI,IAAI/lF,EAAE,IAAIvM,EAAE,IAAImX,EAAE,IAAIO,EAAE,IAAInI,EAAE,IAAI7R,EAAE,IAAIqC,EAAE,IAAIa,EAAE,IAAI5E,EAAE,IAAIqY,EAAE,IAAI1B,EAAE,IAAIksC,EAAE,IAAIj8C,EAAE,IAAIyY,EAAE,IAAI1L,EAAE,IAAIkV,EAAE,IAAI60E,EAAE,IAAI55F,EAAE,IAAIq/C,EAAE,IAAIjZ,EAAE,IAAIoa,EAAE,IAAInhD,EAAE,IAAI0vC,EAAE,IAAIvI,EAAE,IAAIF,EAAE,IAAIuzD,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKzzD,EAAEosD,SAASjkE,EAAE,CAAC,IAAI,KAAK6X,EAAEosD,SAAShjE,OAAE,EAAO4W,EAAEosD,SAAS,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKpsD,EAAEosD,SAASljE,EAAE8W,EAAEosD,SAAS,GAAG,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKpsD,EAAEosD,SAAS3kE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKuY,EAAEosD,SAAS9kE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK0Y,EAAEosD,SAAS1jE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKsX,EAAEosD,SAASzkE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKqY,EAAEosD,SAAS5kE,EAAEwY,EAAEosD,SAAS,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKpsD,EAAEosD,SAASpjE,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKgX,EAAEosD,SAAS5jE,EAAEwX,EAAEosD,SAAS,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKpsD,EAAEosD,SAAS,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAItxC,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAM44C,KAAK,CAACrqF,EAAE22B,KAAK,IAAIpmC,EAAE9D,EAAEwO,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEmrD,GAAGnrD,EAAEmnC,QAAG,GAAQrxE,EAAEkqC,EAAEmnC,KAAKnnC,EAAEmnC,GAAG,KAAKwsB,IAAI,KAAK79F,EAAE89F,IAAI,IAAI99F,EAAE+9F,IAAI,IAAI/9F,EAAE63E,IAAI,IAAI73E,EAAEg+F,IAAI,IAAIh+F,EAAEi+F,IAAI,IAAIj+F,EAAEk+F,IAAI,IAAIl+F,EAAE20F,IAAI,IAAI30F,EAAEsxB,GAAG,KAAKtxB,EAAEg1F,GAAG,KAAKh1F,EAAE40F,GAAG,KAAK50F,EAAE6sC,GAAG,KAAK7sC,EAAE60F,GAAG,KAAK70F,EAAE83E,GAAG,KAAK93E,EAAEi1F,GAAG,IAAIj1F,EAAEm1F,GAAG,IAAIn1F,EAAEm+F,IAAI,IAAIn+F,EAAEo+F,IAAI,IAAIp+F,EAAEq+F,IAAI,IAAIr+F,EAAEs+F,IAAI,IAAIt+F,EAAEu+F,IAAI,IAAIv+F,EAAEw+F,IAAI,IAAIx+F,EAAEy+F,IAAI,IAAIz+F,EAAE0+F,IAAI,IAAI1+F,EAAE2+F,IAAI,IAAI3+F,EAAE4+F,GAAG,IAAI5+F,EAAE6+F,IAAI,IAAI7+F,EAAE6vB,IAAI,IAAI7vB,EAAE8+F,GAAG,IAAI9+F,EAAE++F,GAAG,IAAI/+F,EAAEg/F,GAAG,IAAIh/F,EAAEi/F,GAAG,IAAIj/F,EAAE0zB,GAAG,IAAI1zB,EAAEu0B,IAAI,KAAKzwB,EAAEomC,EAAEmrD,KAAKnrD,EAAEmrD,GAAG,KAAK6J,IAAI,IAAIp7F,EAAEq7F,IAAI,IAAIr7F,EAAEs7F,IAAI,IAAIt7F,EAAEu7F,IAAI,IAAIv7F,EAAEwxF,IAAI,IAAIxxF,EAAEyxF,IAAI,IAAIzxF,EAAEw7F,IAAI,IAAIx7F,EAAEy7F,IAAI,IAAIz7F,EAAE2xF,IAAI,IAAI3xF,EAAE07F,IAAI,IAAI17F,EAAE27F,IAAI,IAAI37F,EAAE47F,IAAI,IAAI57F,EAAE67F,IAAI,IAAI77F,EAAE87F,GAAG,IAAI97F,EAAE+7F,IAAI,IAAI/7F,EAAE8lB,IAAI,IAAI9lB,EAAEg8F,IAAI,IAAIh8F,EAAEi8F,IAAI,IAAIj8F,EAAEk8F,IAAI,IAAIl8F,EAAEm8F,IAAI,IAAIn8F,EAAEo8F,IAAI,IAAIp8F,EAAEq8F,GAAG,IAAIr8F,EAAEs8F,IAAI,IAAIt8F,EAAEu8F,IAAI,IAAIv8F,EAAEw8F,IAAI,IAAIx8F,EAAEy8F,KAAK,IAAIz8F,EAAE08F,IAAI,IAAI18F,EAAE+lB,IAAI,IAAI/lB,EAAE28F,GAAG,IAAI38F,EAAE87C,IAAI,IAAI97C,EAAE48F,GAAG,IAAI58F,EAAE68F,IAAI,KAAKC,KAAK,CAACrtF,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEwtC,2BAAsB,EAAO,IAAI13E,EAAE8D,EAAE,MAAMub,EAAE,CAACwhF,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,KAAK,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,MAAM/3D,EAAEwtC,sBAAsB,SAASnkE,EAAE22B,EAAEpmC,EAAE6P,GAAG,IAAIwvC,EAAE,CAAClxC,KAAK,EAAE8jE,QAAO,EAAGrsE,SAAI,GAAQ6G,GAAGgD,EAAEmT,SAAS,EAAE,IAAInT,EAAE+S,OAAO,EAAE,IAAI/S,EAAE6S,QAAQ,EAAE,IAAI7S,EAAE8S,QAAQ,EAAE,GAAG,OAAO9S,EAAEkT,SAAS,KAAK,EAAE,sBAAsBlT,EAAE7J,IAAIy5C,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,wBAAwBtc,EAAE7J,IAAIy5C,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,yBAAyBtc,EAAE7J,IAAIy5C,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,wBAAwBtc,EAAE7J,MAAMy5C,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,MAAM,MAAM,KAAK,EAAE,GAAGtc,EAAEmT,SAAS,CAACy8B,EAAEz5C,IAAI1J,EAAEqxE,GAAG//C,GAAG,MAAM,GAAG/d,EAAE+S,OAAO,CAAC68B,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI7vB,EAAEqxE,GAAG98C,IAAI,MAAM4uB,EAAEz5C,IAAI1J,EAAEqxE,GAAG98C,IAAI,MAAM,KAAK,EAAE,GAAGhhB,EAAEmT,SAAS,CAACy8B,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAMszB,EAAEz5C,IAAI1J,EAAEqxE,GAAG2jB,GAAG7xC,EAAE4yB,QAAO,EAAG,MAAM,KAAK,GAAG5yB,EAAEz5C,IAAI6J,EAAE+S,OAAOtmB,EAAEqxE,GAAGxhD,IAAI7vB,EAAEqxE,GAAGyG,GAAG93E,EAAEqxE,GAAGyG,GAAG30B,EAAE4yB,QAAO,EAAG,MAAM,KAAK,GAAG5yB,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAItc,EAAE+S,SAAS68B,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI7vB,EAAEqxE,GAAGxhD,KAAKszB,EAAE4yB,QAAO,EAAG,MAAM,KAAK,GAAG,GAAGxiE,EAAE8S,QAAQ,MAAM9V,GAAG4yC,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAI4yC,EAAEz5C,MAAM1J,EAAEqxE,GAAGxhD,IAAI,UAAUszB,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,KAAK/rB,EAAE,IAAI,WAAWq/C,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,GAAG,GAAGtc,EAAE8S,QAAQ,MAAM9V,GAAG4yC,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAI4yC,EAAEz5C,MAAM1J,EAAEqxE,GAAGxhD,IAAI,UAAUszB,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,KAAK/rB,EAAE,IAAI,WAAWq/C,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,GAAG,GAAGtc,EAAE8S,QAAQ,MAAM9V,GAAG4yC,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAIzM,GAAGq/C,EAAEz5C,MAAM1J,EAAEqxE,GAAGxhD,IAAI,UAAUszB,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,UAAUszB,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,GAAG,GAAGtc,EAAE8S,QAAQ,MAAM9V,GAAG4yC,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAIzM,GAAGq/C,EAAEz5C,MAAM1J,EAAEqxE,GAAGxhD,IAAI,UAAUszB,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,UAAUszB,EAAEz5C,IAAIwgC,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,GAAGtc,EAAEmT,UAAUnT,EAAE6S,UAAU+8B,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,GAAGszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,MAAM,MAAM,KAAK,GAAGszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAI25B,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,GAAGszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAI25B,EAAElqC,EAAEqxE,GAAGxhD,IAAI,KAAK7vB,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,GAAGtc,EAAEmT,SAASy8B,EAAElxC,KAAK,EAAEkxC,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,MAAM,MAAM,KAAK,GAAGtc,EAAEmT,SAASy8B,EAAElxC,KAAK,EAAEkxC,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,MAAM,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,OAAOtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,KAAK,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,KAAK,IAAIszB,EAAEz5C,IAAI6G,EAAEvQ,EAAEqxE,GAAGxhD,IAAI,QAAQtf,EAAE,GAAG,IAAIvQ,EAAEqxE,GAAGxhD,IAAI,OAAO,MAAM,QAAQ,IAAItc,EAAE6S,SAAS7S,EAAEmT,UAAUnT,EAAE+S,QAAQ/S,EAAE8S,QAAQ,GAAGviB,IAAI6P,IAAIJ,EAAE+S,QAAQ/S,EAAE8S,SAASviB,GAAGyP,EAAE+S,QAAQ/S,EAAE6S,SAAS7S,EAAEmT,WAAWnT,EAAE8S,QAAQ9S,EAAE7J,MAAM6J,EAAE6S,UAAU7S,EAAE+S,SAAS/S,EAAE8S,SAAS9S,EAAEkT,SAAS,IAAI,IAAIlT,EAAE7J,IAAI5J,OAAOqjD,EAAEz5C,IAAI6J,EAAE7J,IAAI6J,EAAE7J,KAAK6J,EAAE6S,SAAS,MAAM7S,EAAE7J,MAAMy5C,EAAEz5C,IAAI1J,EAAEqxE,GAAG4tB,IAAI,KAAK1rF,EAAEkT,UAAU08B,EAAElxC,KAAK,OAAO,CAAC,IAAIkJ,EAAEkE,EAAE9L,EAAEkT,SAASo8B,EAAE1nC,GAAGA,EAAE5H,EAAEmT,SAAS,EAAE,GAAG,GAAGm8B,EAAEM,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAIgzB,OAAO,GAAGtvC,EAAEkT,SAAS,IAAIlT,EAAEkT,SAAS,GAAG,CAAC,IAAI7hB,EAAE2O,EAAE6S,QAAQ7S,EAAEkT,QAAQ,GAAGlT,EAAEkT,QAAQ,GAAG08B,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI/tB,OAAOwZ,aAAa1W,SAAS2O,EAAEkT,SAAS,IAAIlT,EAAEkT,SAAS,GAAG08B,EAAEz5C,IAAI5H,OAAOwZ,aAAa/H,EAAEkT,QAAQ,IAAI,KAAKlT,EAAEkT,QAAQ08B,EAAEz5C,IAAI1J,EAAEqxE,GAAGwsB,IAAItqF,EAAEkT,SAAS,IAAIlT,EAAEkT,SAAS,GAAG08B,EAAEz5C,IAAI5H,OAAOwZ,aAAa/H,EAAEkT,QAAQ,GAAG,IAAI,KAAKlT,EAAEkT,QAAQ08B,EAAEz5C,IAAI1J,EAAEqxE,GAAG98C,IAAI,MAAMhhB,EAAEkT,QAAQ08B,EAAEz5C,IAAI1J,EAAEqxE,GAAGxhD,IAAI,MAAMtc,EAAEkT,QAAQ08B,EAAEz5C,IAAI1J,EAAEqxE,GAAGytB,GAAG,MAAMvrF,EAAEkT,UAAU08B,EAAEz5C,IAAI1J,EAAEqxE,GAAG0tB,IAAI,OAAO57C,IAAI++C,IAAI,CAAC3uF,EAAE22B,KAAK17B,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEg2B,YAAYh2B,EAAEi2B,cAAcj2B,EAAEk2B,cAAcl2B,EAAEm1B,yBAAoB,EAAOn1B,EAAEm1B,oBAAoB,SAAS9rD,GAAG,OAAOA,EAAE,OAAOA,GAAG,MAAMzR,OAAOwZ,aAAa,OAAO/H,GAAG,KAAKzR,OAAOwZ,aAAa/H,EAAE,KAAK,QAAQzR,OAAOwZ,aAAa/H,IAAI22B,EAAEk2B,cAAc,SAAS7sD,EAAE22B,EAAEpmC,QAAG,IAASomC,IAAIA,EAAE,QAAG,IAASpmC,IAAIA,EAAEyP,EAAEzT,QAAQ,IAAI,IAAIE,EAAE,GAAGqf,EAAE6qB,EAAE7qB,EAAEvb,IAAIub,EAAE,CAAC,IAAI1L,EAAEJ,EAAE8L,GAAG1L,EAAE,OAAOA,GAAG,MAAM3T,GAAG8B,OAAOwZ,aAAa,OAAO3H,GAAG,KAAK7R,OAAOwZ,aAAa3H,EAAE,KAAK,QAAQ3T,GAAG8B,OAAOwZ,aAAa3H,GAAG,OAAO3T,GAAG,IAAI8D,EAAE,WAAW,SAASyP,IAAIhT,KAAK8/D,SAAS,EAAE,OAAO9sD,EAAExR,UAAUgR,MAAM,WAAWxS,KAAK8/D,SAAS,GAAG9sD,EAAExR,UAAUkZ,OAAO,SAAS1H,EAAE22B,GAAG,IAAIpmC,EAAEyP,EAAEzT,OAAO,IAAIgE,EAAE,OAAO,EAAE,IAAI9D,EAAE,EAAEqf,EAAE,EAAE9e,KAAK8/D,WAAW,QAAQ9vD,EAAEgD,EAAE6H,WAAWiE,OAAO9O,GAAG,MAAM25B,EAAElqC,KAAK,MAAMO,KAAK8/D,SAAS,OAAO9vD,EAAE,MAAM,OAAO25B,EAAElqC,KAAKO,KAAK8/D,SAASn2B,EAAElqC,KAAKuQ,GAAGhQ,KAAK8/D,SAAS,GAAG,IAAI,IAAI1sD,EAAE0L,EAAE1L,EAAE7P,IAAI6P,EAAE,CAAC,IAAIwvC,EAAE5vC,EAAE6H,WAAWzH,GAAG,GAAG,OAAOwvC,GAAGA,GAAG,MAAM,CAAC,KAAKxvC,GAAG7P,EAAE,OAAOvD,KAAK8/D,SAASld,EAAEnjD,EAAE,IAAIuQ,EAAE,QAAQA,EAAEgD,EAAE6H,WAAWzH,KAAKpD,GAAG,MAAM25B,EAAElqC,KAAK,MAAMmjD,EAAE,OAAO5yC,EAAE,MAAM,OAAO25B,EAAElqC,KAAKmjD,EAAEjZ,EAAElqC,KAAKuQ,QAAQ,QAAQ4yC,IAAIjZ,EAAElqC,KAAKmjD,GAAG,OAAOnjD,GAAGuT,EAA7iB,GAAkjB22B,EAAEi2B,cAAcr8D,EAAE,IAAI9D,EAAE,WAAW,SAASuT,IAAIhT,KAAK+/D,QAAQ,IAAI3Z,WAAW,GAAG,OAAOpzC,EAAExR,UAAUgR,MAAM,WAAWxS,KAAK+/D,QAAQ7qB,KAAK,IAAIliC,EAAExR,UAAUkZ,OAAO,SAAS1H,EAAE22B,GAAG,IAAIpmC,EAAEyP,EAAEzT,OAAO,IAAIgE,EAAE,OAAO,EAAE,IAAI9D,EAAEqf,EAAE1L,EAAEwvC,EAAE5yC,EAAE,EAAE4K,EAAE,EAAE0nC,EAAE,EAAE,GAAGtiD,KAAK+/D,QAAQ,GAAG,CAAC,IAAI17D,GAAE,EAAG0/C,EAAE/jD,KAAK+/D,QAAQ,GAAGhc,GAAG,MAAM,IAAIA,GAAG,GAAG,MAAM,IAAIA,GAAG,GAAG,EAAE,IAAI,IAAI5iD,EAAE,EAAEsjD,OAAE,GAAQA,EAAE,GAAGzkD,KAAK+/D,UAAU5+D,KAAKA,EAAE,GAAG4iD,IAAI,EAAEA,GAAGU,EAAE,IAAI,IAAItpC,EAAE,MAAM,IAAInb,KAAK+/D,QAAQ,IAAI,EAAE,MAAM,IAAI//D,KAAK+/D,QAAQ,IAAI,EAAE,EAAEz3C,EAAEnN,EAAEha,EAAEmhD,EAAEh6B,GAAG,CAAC,GAAGg6B,GAAG/+C,EAAE,OAAO,EAAE,GAAG,MAAM,KAAKkhD,EAAEzxC,EAAEsvC,OAAO,CAACA,IAAIj+C,GAAE,EAAG,MAAMrE,KAAK+/D,QAAQ5+D,KAAKsjD,EAAEV,IAAI,EAAEA,GAAG,GAAGU,EAAEpgD,IAAI,IAAI8W,EAAE4oC,EAAE,IAAIzB,IAAI3Y,EAAE35B,KAAK+zC,EAAE,IAAI5oC,EAAE4oC,EAAE,MAAMA,GAAG,OAAOA,GAAG,OAAO,QAAQA,IAAIpa,EAAE35B,KAAK+zC,GAAGA,EAAE,OAAOA,EAAE,UAAUpa,EAAE35B,KAAK+zC,IAAI/jD,KAAK+/D,QAAQ7qB,KAAK,GAAG,IAAI,IAAItyC,EAAEW,EAAE,EAAEC,EAAE8+C,EAAE9+C,EAAED,GAAG,CAAC,SAASC,EAAEZ,IAAI,KAAKnD,EAAEuT,EAAExP,KAAK,KAAKsb,EAAE9L,EAAExP,EAAE,KAAK,KAAK4P,EAAEJ,EAAExP,EAAE,KAAK,KAAKo/C,EAAE5vC,EAAExP,EAAE,MAAMmmC,EAAE35B,KAAKvQ,EAAEkqC,EAAE35B,KAAK8O,EAAE6qB,EAAE35B,KAAKoD,EAAEu2B,EAAE35B,KAAK4yC,EAAEp/C,GAAG,EAAE,IAAI/D,EAAEuT,EAAExP,MAAM,IAAImmC,EAAE35B,KAAKvQ,OAAO,GAAG,MAAM,IAAIA,GAAG,CAAC,GAAG+D,GAAGD,EAAE,OAAOvD,KAAK+/D,QAAQ,GAAGtgE,EAAEuQ,EAAE,GAAG,MAAM,KAAK8O,EAAE9L,EAAExP,OAAO,CAACA,IAAI,SAAS,IAAIoX,GAAG,GAAGnb,IAAI,EAAE,GAAGqf,GAAG,IAAI,CAACtb,IAAI,SAASmmC,EAAE35B,KAAK4K,OAAO,GAAG,MAAM,IAAInb,GAAG,CAAC,GAAG+D,GAAGD,EAAE,OAAOvD,KAAK+/D,QAAQ,GAAGtgE,EAAEuQ,EAAE,GAAG,MAAM,KAAK8O,EAAE9L,EAAExP,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAGD,EAAE,OAAOvD,KAAK+/D,QAAQ,GAAGtgE,EAAEO,KAAK+/D,QAAQ,GAAGjhD,EAAE9O,EAAE,GAAG,MAAM,KAAKoD,EAAEJ,EAAExP,OAAO,CAACA,IAAI,SAAS,IAAIoX,GAAG,GAAGnb,IAAI,IAAI,GAAGqf,IAAI,EAAE,GAAG1L,GAAG,MAAMwH,GAAG,OAAOA,GAAG,OAAO,QAAQA,EAAE,SAAS+uB,EAAE35B,KAAK4K,OAAO,GAAG,MAAM,IAAInb,GAAG,CAAC,GAAG+D,GAAGD,EAAE,OAAOvD,KAAK+/D,QAAQ,GAAGtgE,EAAEuQ,EAAE,GAAG,MAAM,KAAK8O,EAAE9L,EAAExP,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAGD,EAAE,OAAOvD,KAAK+/D,QAAQ,GAAGtgE,EAAEO,KAAK+/D,QAAQ,GAAGjhD,EAAE9O,EAAE,GAAG,MAAM,KAAKoD,EAAEJ,EAAExP,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAGD,EAAE,OAAOvD,KAAK+/D,QAAQ,GAAGtgE,EAAEO,KAAK+/D,QAAQ,GAAGjhD,EAAE9e,KAAK+/D,QAAQ,GAAG3sD,EAAEpD,EAAE,GAAG,MAAM,KAAK4yC,EAAE5vC,EAAExP,OAAO,CAACA,IAAI,SAAS,IAAIoX,GAAG,EAAEnb,IAAI,IAAI,GAAGqf,IAAI,IAAI,GAAG1L,IAAI,EAAE,GAAGwvC,GAAG,OAAOhoC,EAAE,QAAQ,SAAS+uB,EAAE35B,KAAK4K,GAAG,OAAO5K,GAAGgD,EAApmD,GAAymD22B,EAAEg2B,YAAYlgE,GAAGmiG,IAAI,CAAC5uF,EAAE22B,EAAEpmC,KAAK0K,OAAOqzC,eAAe3X,EAAE,aAAa,CAACjnC,OAAM,IAAKinC,EAAEk4D,eAAU,EAAO,IAAIpiG,EAAEqf,EAAEvb,EAAE,MAAM6P,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,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","file":"gotty.js","sourcesContent":["/*!\n * libapps (https://npmjs.com/package/libapps)\n * @license BSD-3-Clause\n * @version 1.70.0\n * ==libapps/LICENSE==\n * // Copyright (c) 2006-2009 The Chromium OS Authors. All rights reserved.\n * //\n * // Redistribution and use in source and binary forms, with or without\n * // modification, are permitted provided that the following conditions are\n * // met:\n * //\n * // * Redistributions of source code must retain the above copyright\n * // notice, this list of conditions and the following disclaimer.\n * // * Redistributions in binary form must reproduce the above\n * // copyright notice, this list of conditions and the following disclaimer\n * // in the documentation and/or other materials provided with the\n * // distribution.\n * // * Neither the name of Google Inc. nor the names of its\n * // contributors may be used to endorse or promote products derived from\n * // this software without specific prior written permission.\n * //\n * // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * // \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n// This file was generated by libdot/bin/concat.sh.\n// It has been marked read-only for your safety. Rather\n// than edit it directly, please modify one of these source\n// files...\n//\n// libdot/js/lib.js\n// libdot/js/lib_polyfill.js\n// libdot/js/lib_colors.js\n// libdot/js/lib_f.js\n// libdot/js/lib_message_manager.js\n// libdot/js/lib_preference_manager.js\n// libdot/js/lib_resource.js\n// libdot/js/lib_storage.js\n// libdot/js/lib_storage_chrome.js\n// libdot/js/lib_storage_local.js\n// libdot/js/lib_storage_memory.js\n// libdot/js/lib_test_manager.js\n// libdot/js/lib_utf8.js\n// libdot/third_party/wcwidth/lib_wc.js\n// hterm/js/hterm.js\n// hterm/js/hterm_frame.js\n// hterm/js/hterm_keyboard.js\n// hterm/js/hterm_keyboard_bindings.js\n// hterm/js/hterm_keyboard_keymap.js\n// hterm/js/hterm_keyboard_keypattern.js\n// hterm/js/hterm_options.js\n// hterm/js/hterm_parser.js\n// hterm/js/hterm_parser_identifiers.js\n// hterm/js/hterm_preference_manager.js\n// hterm/js/hterm_pubsub.js\n// hterm/js/hterm_screen.js\n// hterm/js/hterm_scrollport.js\n// hterm/js/hterm_terminal.js\n// hterm/js/hterm_terminal_io.js\n// hterm/js/hterm_text_attributes.js\n// hterm/js/hterm_vt.js\n// hterm/js/hterm_vt_character_map.js\n// hterm/js/hterm_export.js\n//\n\n// SOURCE FILE: libdot/js/lib.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nif (typeof lib != 'undefined')\n throw new Error('Global \"lib\" object already exists.');\n\nvar lib = {};\n\n/**\n * Map of \"dependency\" to [\"source\", ...].\n *\n * Each dependency is a object name, like \"lib.fs\", \"source\" is the url that\n * depends on the object.\n */\nlib.runtimeDependencies_ = {};\n\n/**\n * List of functions that need to be invoked during library initialization.\n *\n * Each element in the initCallbacks_ array is itself a two-element array.\n * Element 0 is a short string describing the owner of the init routine, useful\n * for debugging. Element 1 is the callback function.\n */\nlib.initCallbacks_ = [];\n\n/**\n * Records a runtime dependency.\n *\n * This can be useful when you want to express a run-time dependency at\n * compile time. It is not intended to be a full-fledged library system or\n * dependency tracker. It's just there to make it possible to debug the\n * deps without running all the code.\n *\n * Object names are specified as strings. For example...\n *\n * lib.rtdep('lib.colors', 'lib.PreferenceManager');\n *\n * Object names need not be rooted by 'lib'. You may use this to declare a\n * dependency on any object.\n *\n * The client program may call lib.ensureRuntimeDependencies() at startup in\n * order to ensure that all runtime dependencies have been met.\n *\n * @param {string} var_args One or more objects specified as strings.\n */\nlib.rtdep = function(var_args) {\n var source;\n\n try {\n throw new Error();\n } catch (ex) {\n var stackArray = ex.stack.split('\\n');\n // In Safari, the resulting stackArray will only have 2 elements and the\n // individual strings are formatted differently.\n if (stackArray.length >= 3) {\n source = stackArray[2].replace(/^\\s*at\\s+/, '');\n } else {\n source = stackArray[1].replace(/^\\s*global code@/, '');\n }\n }\n\n for (var i = 0; i < arguments.length; i++) {\n var path = arguments[i];\n if (path instanceof Array) {\n lib.rtdep.apply(lib, path);\n } else {\n var ary = this.runtimeDependencies_[path];\n if (!ary)\n ary = this.runtimeDependencies_[path] = [];\n ary.push(source);\n }\n }\n};\n\n/**\n * Ensures that all runtime dependencies are met, or an exception is thrown.\n *\n * Every unmet runtime dependency will be logged to the JS console. If at\n * least one dependency is unmet this will raise an exception.\n */\nlib.ensureRuntimeDependencies_ = function() {\n var passed = true;\n\n for (var path in lib.runtimeDependencies_) {\n var sourceList = lib.runtimeDependencies_[path];\n var names = path.split('.');\n\n // In a document context 'window' is the global object. In a worker it's\n // called 'self'.\n var obj = (window || self);\n for (var i = 0; i < names.length; i++) {\n if (!(names[i] in obj)) {\n console.warn('Missing \"' + path + '\" is needed by', sourceList);\n passed = false;\n break;\n }\n\n obj = obj[names[i]];\n }\n }\n\n if (!passed)\n throw new Error('Failed runtime dependency check');\n};\n\n/**\n * Register an initialization function.\n *\n * The initialization functions are invoked in registration order when\n * lib.init() is invoked. Each function will receive a single parameter, which\n * is a function to be invoked when it completes its part of the initialization.\n *\n * @param {string} name A short descriptive name of the init routine useful for\n * debugging.\n * @param {function(function)} callback The initialization function to register.\n * @return {function} The callback parameter.\n */\nlib.registerInit = function(name, callback) {\n lib.initCallbacks_.push([name, callback]);\n return callback;\n};\n\n/**\n * Initialize the library.\n *\n * This will ensure that all registered runtime dependencies are met, and\n * invoke any registered initialization functions.\n *\n * Initialization is asynchronous. The library is not ready for use until\n * the onInit function is invoked.\n *\n * @param {function()} onInit The function to invoke when initialization is\n * complete.\n * @param {function(*)} opt_logFunction An optional function to send\n * initialization related log messages to.\n */\nlib.init = function(onInit, opt_logFunction) {\n var ary = lib.initCallbacks_;\n\n var initNext = function() {\n if (ary.length) {\n var rec = ary.shift();\n if (opt_logFunction)\n opt_logFunction('init: ' + rec[0]);\n rec[1](lib.f.alarm(initNext));\n } else {\n onInit();\n }\n };\n\n if (typeof onInit != 'function')\n throw new Error('Missing or invalid argument: onInit');\n\n lib.ensureRuntimeDependencies_();\n\n setTimeout(initNext, 0);\n};\n// SOURCE FILE: libdot/js/lib_polyfill.js\n// Copyright 2017 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * @fileoverview Polyfills for ES2016+ features we want to use.\n */\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart\nif (!String.prototype.padStart) {\n String.prototype.padStart = function(targetLength, padString) {\n // If the string is already long enough, nothing to do!\n targetLength -= this.length;\n if (targetLength <= 0)\n return String(this);\n\n if (padString === undefined)\n padString = ' ';\n\n // In case the pad is multiple chars long.\n if (targetLength > padString.length)\n padString = padString.repeat((targetLength / padString.length) + 1);\n\n return padString.slice(0, targetLength) + String(this);\n };\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padEnd\nif (!String.prototype.padEnd) {\n String.prototype.padEnd = function(targetLength, padString) {\n // If the string is already long enough, nothing to do!\n targetLength -= this.length;\n if (targetLength <= 0)\n return String(this);\n\n if (padString === undefined)\n padString = ' ';\n\n // In case the pad is multiple chars long.\n if (targetLength > padString.length)\n padString = padString.repeat((targetLength / padString.length) + 1);\n\n return String(this) + padString.slice(0, targetLength);\n };\n}\n// SOURCE FILE: libdot/js/lib_colors.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Namespace for color utilities.\n */\nlib.colors = {};\n\n/**\n * First, some canned regular expressions we're going to use in this file.\n *\n *\n * BRACE YOURSELF\n *\n * ,~~~~.\n * |>_< ~~\n * 3`---'-/.\n * 3:::::\\v\\\n * =o=:::::\\,\\\n * | :::::\\,,\\\n *\n * THE REGULAR EXPRESSIONS\n * ARE COMING.\n *\n * There's no way to break long RE literals in JavaScript. Fix that why don't\n * you? Oh, and also there's no way to write a string that doesn't interpret\n * escapes.\n *\n * Instead, we stoop to this .replace() trick.\n */\nlib.colors.re_ = {\n // CSS hex color, #RGB.\n hex16: /#([a-f0-9])([a-f0-9])([a-f0-9])/i,\n\n // CSS hex color, #RRGGBB.\n hex24: /#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/i,\n\n // CSS rgb color, rgb(rrr,ggg,bbb).\n rgb: new RegExp(\n ('^/s*rgb/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,' +\n '/s*(/d{1,3})/s*/)/s*$'\n ).replace(/\\//g, '\\\\'), 'i'),\n\n // CSS rgb color, rgb(rrr,ggg,bbb,aaa).\n rgba: new RegExp(\n ('^/s*rgba/s*' +\n '/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*' +\n '(?:,/s*(/d+(?:/./d+)?)/s*)/)/s*$'\n ).replace(/\\//g, '\\\\'), 'i'),\n\n // Either RGB or RGBA.\n rgbx: new RegExp(\n ('^/s*rgba?/s*' +\n '/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*' +\n '(?:,/s*(/d+(?:/./d+)?)/s*)?/)/s*$'\n ).replace(/\\//g, '\\\\'), 'i'),\n\n // An X11 \"rgb:dddd/dddd/dddd\" value.\n x11rgb: /^\\s*rgb:([a-f0-9]{1,4})\\/([a-f0-9]{1,4})\\/([a-f0-9]{1,4})\\s*$/i,\n\n // English color name.\n name: /[a-z][a-z0-9\\s]+/,\n};\n\n/**\n * Convert a CSS rgb(ddd,ddd,ddd) color value into an X11 color value.\n *\n * Other CSS color values are ignored to ensure sanitary data handling.\n *\n * Each 'ddd' component is a one byte value specified in decimal.\n *\n * @param {string} value The CSS color value to convert.\n * @return {string} The X11 color value or null if the value could not be\n * converted.\n */\nlib.colors.rgbToX11 = function(value) {\n function scale(v) {\n v = (Math.min(v, 255) * 257).toString(16);\n return lib.f.zpad(v, 4);\n }\n\n var ary = value.match(lib.colors.re_.rgbx);\n if (!ary)\n return null;\n\n return 'rgb:' + scale(ary[1]) + '/' + scale(ary[2]) + '/' + scale(ary[3]);\n};\n\n/**\n * Convert a legacy X11 colover value into an CSS rgb(...) color value.\n *\n * They take the form:\n * 12 bit: #RGB -> #R000G000B000\n * 24 bit: #RRGGBB -> #RR00GG00BB00\n * 36 bit: #RRRGGGBBB -> #RRR0GGG0BBB0\n * 48 bit: #RRRRGGGGBBBB\n * These are the most significant bits.\n *\n * Truncate values back down to 24 bit since that's all CSS supports.\n */\nlib.colors.x11HexToCSS = function(v) {\n if (!v.startsWith('#'))\n return null;\n // Strip the leading # off.\n v = v.substr(1);\n\n // Reject unknown sizes.\n if ([3, 6, 9, 12].indexOf(v.length) == -1)\n return null;\n\n // Reject non-hex values.\n if (v.match(/[^a-f0-9]/i))\n return null;\n\n // Split the colors out.\n var size = v.length / 3;\n var r = v.substr(0, size);\n var g = v.substr(size, size);\n var b = v.substr(size + size, size);\n\n // Normalize to 16 bits.\n function norm16(v) {\n v = parseInt(v, 16);\n return size == 2 ? v : // 16 bit\n size == 1 ? v << 4 : // 8 bit\n v >> (4 * (size - 2)); // 24 or 32 bit\n }\n return lib.colors.arrayToRGBA([r, g, b].map(norm16));\n};\n\n/**\n * Convert an X11 color value into an CSS rgb(...) color value.\n *\n * The X11 value may be an X11 color name, or an RGB value of the form\n * rgb:hhhh/hhhh/hhhh. If a component value is less than 4 digits it is\n * padded out to 4, then scaled down to fit in a single byte.\n *\n * @param {string} value The X11 color value to convert.\n * @return {string} The CSS color value or null if the value could not be\n * converted.\n */\nlib.colors.x11ToCSS = function(v) {\n function scale(v) {\n // Pad out values with less than four digits. This padding (probably)\n // matches xterm. It's difficult to say for sure since xterm seems to\n // arrive at a padded value and then perform some combination of\n // gamma correction, color space transformation, and quantization.\n\n if (v.length == 1) {\n // Single digits pad out to four by repeating the character. \"f\" becomes\n // \"ffff\". Scaling down a hex value of this pattern by 257 is the same\n // as cutting off one byte. We skip the middle step and just double\n // the character.\n return parseInt(v + v, 16);\n }\n\n if (v.length == 2) {\n // Similar deal here. X11 pads two digit values by repeating the\n // byte (or scale up by 257). Since we're going to scale it back\n // down anyway, we can just return the original value.\n return parseInt(v, 16);\n }\n\n if (v.length == 3) {\n // Three digit values seem to be padded by repeating the final digit.\n // e.g. 10f becomes 10ff.\n v = v + v.substr(2);\n }\n\n // Scale down the 2 byte value.\n return Math.round(parseInt(v, 16) / 257);\n }\n\n var ary = v.match(lib.colors.re_.x11rgb);\n if (!ary) {\n // Handle the legacy format.\n if (v.startsWith('#'))\n return lib.colors.x11HexToCSS(v);\n else\n return lib.colors.nameToRGB(v);\n }\n\n ary.splice(0, 1);\n return lib.colors.arrayToRGBA(ary.map(scale));\n};\n\n/**\n * Converts one or more CSS '#RRGGBB' color values into their rgb(...)\n * form.\n *\n * Arrays are converted in place. If a value cannot be converted, it is\n * replaced with null.\n *\n * @param {string|Array.} A single RGB value or array of RGB values to\n * convert.\n * @return {string|Array.} The converted value or values.\n */\nlib.colors.hexToRGB = function(arg) {\n var hex16 = lib.colors.re_.hex16;\n var hex24 = lib.colors.re_.hex24;\n\n function convert(hex) {\n if (hex.length == 4) {\n hex = hex.replace(hex16, function(h, r, g, b) {\n return \"#\" + r + r + g + g + b + b;\n });\n }\n var ary = hex.match(hex24);\n if (!ary)\n return null;\n\n return 'rgb(' + parseInt(ary[1], 16) + ', ' +\n parseInt(ary[2], 16) + ', ' +\n parseInt(ary[3], 16) + ')';\n }\n\n if (arg instanceof Array) {\n for (var i = 0; i < arg.length; i++) {\n arg[i] = convert(arg[i]);\n }\n } else {\n arg = convert(arg);\n }\n\n return arg;\n};\n\n/**\n * Converts one or more CSS rgb(...) forms into their '#RRGGBB' color values.\n *\n * If given an rgba(...) form, the alpha field is thrown away.\n *\n * Arrays are converted in place. If a value cannot be converted, it is\n * replaced with null.\n *\n * @param {string|Array.} A single rgb(...) value or array of rgb(...)\n * values to convert.\n * @return {string|Array.} The converted value or values.\n */\nlib.colors.rgbToHex = function(arg) {\n function convert(rgb) {\n var ary = lib.colors.crackRGB(rgb);\n if (!ary)\n return null;\n return '#' + lib.f.zpad(((parseInt(ary[0]) << 16) |\n (parseInt(ary[1]) << 8) |\n (parseInt(ary[2]) << 0)).toString(16), 6);\n }\n\n if (arg instanceof Array) {\n for (var i = 0; i < arg.length; i++) {\n arg[i] = convert(arg[i]);\n }\n } else {\n arg = convert(arg);\n }\n\n return arg;\n};\n\n/**\n * Take any valid css color definition and turn it into an rgb or rgba value.\n *\n * Returns null if the value could not be normalized.\n */\nlib.colors.normalizeCSS = function(def) {\n if (def.startsWith('#'))\n return lib.colors.hexToRGB(def);\n\n if (lib.colors.re_.rgbx.test(def))\n return def;\n\n return lib.colors.nameToRGB(def);\n};\n\n/**\n * Convert a 3 or 4 element array into an rgba(...) string.\n */\nlib.colors.arrayToRGBA = function(ary) {\n var alpha = (ary.length > 3) ? ary[3] : 1;\n return 'rgba(' + ary[0] + ', ' + ary[1] + ', ' + ary[2] + ', ' + alpha + ')';\n};\n\n/**\n * Overwrite the alpha channel of an rgb/rgba color.\n */\nlib.colors.setAlpha = function(rgb, alpha) {\n var ary = lib.colors.crackRGB(rgb);\n ary[3] = alpha;\n return lib.colors.arrayToRGBA(ary);\n};\n\n/**\n * Mix a percentage of a tint color into a base color.\n */\nlib.colors.mix = function(base, tint, percent) {\n var ary1 = lib.colors.crackRGB(base);\n var ary2 = lib.colors.crackRGB(tint);\n\n for (var i = 0; i < 4; ++i) {\n var diff = ary2[i] - ary1[i];\n ary1[i] = Math.round(parseInt(ary1[i]) + diff * percent);\n }\n\n return lib.colors.arrayToRGBA(ary1);\n};\n\n/**\n * Split an rgb/rgba color into an array of its components.\n *\n * On success, a 4 element array will be returned. For rgb values, the alpha\n * will be set to 1.\n */\nlib.colors.crackRGB = function(color) {\n if (color.startsWith('rgba')) {\n var ary = color.match(lib.colors.re_.rgba);\n if (ary) {\n ary.shift();\n return ary;\n }\n } else {\n var ary = color.match(lib.colors.re_.rgb);\n if (ary) {\n ary.shift();\n ary.push(1);\n return ary;\n }\n }\n\n console.error('Couldn\\'t crack: ' + color);\n return null;\n};\n\n/**\n * Convert an X11 color name into a CSS rgb(...) value.\n *\n * Names are stripped of spaces and converted to lowercase. If the name is\n * unknown, null is returned.\n *\n * This list of color name to RGB mapping is derived from the stock X11\n * rgb.txt file.\n *\n * @param {string} name The color name to convert.\n * @return {string} The corresponding CSS rgb(...) value.\n */\nlib.colors.nameToRGB = function(name) {\n if (name in lib.colors.colorNames)\n return lib.colors.colorNames[name];\n\n name = name.toLowerCase();\n if (name in lib.colors.colorNames)\n return lib.colors.colorNames[name];\n\n name = name.replace(/\\s+/g, '');\n if (name in lib.colors.colorNames)\n return lib.colors.colorNames[name];\n\n return null;\n};\n\n/**\n * The stock color palette.\n */\nlib.colors.stockColorPalette = lib.colors.hexToRGB\n ([// The \"ANSI 16\"...\n '#000000', '#CC0000', '#4E9A06', '#C4A000',\n '#3465A4', '#75507B', '#06989A', '#D3D7CF',\n '#555753', '#EF2929', '#00BA13', '#FCE94F',\n '#729FCF', '#F200CB', '#00B5BD', '#EEEEEC',\n\n // The 6x6 color cubes...\n '#000000', '#00005F', '#000087', '#0000AF', '#0000D7', '#0000FF',\n '#005F00', '#005F5F', '#005F87', '#005FAF', '#005FD7', '#005FFF',\n '#008700', '#00875F', '#008787', '#0087AF', '#0087D7', '#0087FF',\n '#00AF00', '#00AF5F', '#00AF87', '#00AFAF', '#00AFD7', '#00AFFF',\n '#00D700', '#00D75F', '#00D787', '#00D7AF', '#00D7D7', '#00D7FF',\n '#00FF00', '#00FF5F', '#00FF87', '#00FFAF', '#00FFD7', '#00FFFF',\n\n '#5F0000', '#5F005F', '#5F0087', '#5F00AF', '#5F00D7', '#5F00FF',\n '#5F5F00', '#5F5F5F', '#5F5F87', '#5F5FAF', '#5F5FD7', '#5F5FFF',\n '#5F8700', '#5F875F', '#5F8787', '#5F87AF', '#5F87D7', '#5F87FF',\n '#5FAF00', '#5FAF5F', '#5FAF87', '#5FAFAF', '#5FAFD7', '#5FAFFF',\n '#5FD700', '#5FD75F', '#5FD787', '#5FD7AF', '#5FD7D7', '#5FD7FF',\n '#5FFF00', '#5FFF5F', '#5FFF87', '#5FFFAF', '#5FFFD7', '#5FFFFF',\n\n '#870000', '#87005F', '#870087', '#8700AF', '#8700D7', '#8700FF',\n '#875F00', '#875F5F', '#875F87', '#875FAF', '#875FD7', '#875FFF',\n '#878700', '#87875F', '#878787', '#8787AF', '#8787D7', '#8787FF',\n '#87AF00', '#87AF5F', '#87AF87', '#87AFAF', '#87AFD7', '#87AFFF',\n '#87D700', '#87D75F', '#87D787', '#87D7AF', '#87D7D7', '#87D7FF',\n '#87FF00', '#87FF5F', '#87FF87', '#87FFAF', '#87FFD7', '#87FFFF',\n\n '#AF0000', '#AF005F', '#AF0087', '#AF00AF', '#AF00D7', '#AF00FF',\n '#AF5F00', '#AF5F5F', '#AF5F87', '#AF5FAF', '#AF5FD7', '#AF5FFF',\n '#AF8700', '#AF875F', '#AF8787', '#AF87AF', '#AF87D7', '#AF87FF',\n '#AFAF00', '#AFAF5F', '#AFAF87', '#AFAFAF', '#AFAFD7', '#AFAFFF',\n '#AFD700', '#AFD75F', '#AFD787', '#AFD7AF', '#AFD7D7', '#AFD7FF',\n '#AFFF00', '#AFFF5F', '#AFFF87', '#AFFFAF', '#AFFFD7', '#AFFFFF',\n\n '#D70000', '#D7005F', '#D70087', '#D700AF', '#D700D7', '#D700FF',\n '#D75F00', '#D75F5F', '#D75F87', '#D75FAF', '#D75FD7', '#D75FFF',\n '#D78700', '#D7875F', '#D78787', '#D787AF', '#D787D7', '#D787FF',\n '#D7AF00', '#D7AF5F', '#D7AF87', '#D7AFAF', '#D7AFD7', '#D7AFFF',\n '#D7D700', '#D7D75F', '#D7D787', '#D7D7AF', '#D7D7D7', '#D7D7FF',\n '#D7FF00', '#D7FF5F', '#D7FF87', '#D7FFAF', '#D7FFD7', '#D7FFFF',\n\n '#FF0000', '#FF005F', '#FF0087', '#FF00AF', '#FF00D7', '#FF00FF',\n '#FF5F00', '#FF5F5F', '#FF5F87', '#FF5FAF', '#FF5FD7', '#FF5FFF',\n '#FF8700', '#FF875F', '#FF8787', '#FF87AF', '#FF87D7', '#FF87FF',\n '#FFAF00', '#FFAF5F', '#FFAF87', '#FFAFAF', '#FFAFD7', '#FFAFFF',\n '#FFD700', '#FFD75F', '#FFD787', '#FFD7AF', '#FFD7D7', '#FFD7FF',\n '#FFFF00', '#FFFF5F', '#FFFF87', '#FFFFAF', '#FFFFD7', '#FFFFFF',\n\n // The greyscale ramp...\n '#080808', '#121212', '#1C1C1C', '#262626', '#303030', '#3A3A3A',\n '#444444', '#4E4E4E', '#585858', '#626262', '#6C6C6C', '#767676',\n '#808080', '#8A8A8A', '#949494', '#9E9E9E', '#A8A8A8', '#B2B2B2',\n '#BCBCBC', '#C6C6C6', '#D0D0D0', '#DADADA', '#E4E4E4', '#EEEEEE'\n ]);\n\n/**\n * The current color palette, possibly with user changes.\n */\nlib.colors.colorPalette = lib.colors.stockColorPalette;\n\n/**\n * Named colors according to the stock X11 rgb.txt file.\n */\nlib.colors.colorNames = {\n \"aliceblue\": \"rgb(240, 248, 255)\",\n \"antiquewhite\": \"rgb(250, 235, 215)\",\n \"antiquewhite1\": \"rgb(255, 239, 219)\",\n \"antiquewhite2\": \"rgb(238, 223, 204)\",\n \"antiquewhite3\": \"rgb(205, 192, 176)\",\n \"antiquewhite4\": \"rgb(139, 131, 120)\",\n \"aquamarine\": \"rgb(127, 255, 212)\",\n \"aquamarine1\": \"rgb(127, 255, 212)\",\n \"aquamarine2\": \"rgb(118, 238, 198)\",\n \"aquamarine3\": \"rgb(102, 205, 170)\",\n \"aquamarine4\": \"rgb(69, 139, 116)\",\n \"azure\": \"rgb(240, 255, 255)\",\n \"azure1\": \"rgb(240, 255, 255)\",\n \"azure2\": \"rgb(224, 238, 238)\",\n \"azure3\": \"rgb(193, 205, 205)\",\n \"azure4\": \"rgb(131, 139, 139)\",\n \"beige\": \"rgb(245, 245, 220)\",\n \"bisque\": \"rgb(255, 228, 196)\",\n \"bisque1\": \"rgb(255, 228, 196)\",\n \"bisque2\": \"rgb(238, 213, 183)\",\n \"bisque3\": \"rgb(205, 183, 158)\",\n \"bisque4\": \"rgb(139, 125, 107)\",\n \"black\": \"rgb(0, 0, 0)\",\n \"blanchedalmond\": \"rgb(255, 235, 205)\",\n \"blue\": \"rgb(0, 0, 255)\",\n \"blue1\": \"rgb(0, 0, 255)\",\n \"blue2\": \"rgb(0, 0, 238)\",\n \"blue3\": \"rgb(0, 0, 205)\",\n \"blue4\": \"rgb(0, 0, 139)\",\n \"blueviolet\": \"rgb(138, 43, 226)\",\n \"brown\": \"rgb(165, 42, 42)\",\n \"brown1\": \"rgb(255, 64, 64)\",\n \"brown2\": \"rgb(238, 59, 59)\",\n \"brown3\": \"rgb(205, 51, 51)\",\n \"brown4\": \"rgb(139, 35, 35)\",\n \"burlywood\": \"rgb(222, 184, 135)\",\n \"burlywood1\": \"rgb(255, 211, 155)\",\n \"burlywood2\": \"rgb(238, 197, 145)\",\n \"burlywood3\": \"rgb(205, 170, 125)\",\n \"burlywood4\": \"rgb(139, 115, 85)\",\n \"cadetblue\": \"rgb(95, 158, 160)\",\n \"cadetblue1\": \"rgb(152, 245, 255)\",\n \"cadetblue2\": \"rgb(142, 229, 238)\",\n \"cadetblue3\": \"rgb(122, 197, 205)\",\n \"cadetblue4\": \"rgb(83, 134, 139)\",\n \"chartreuse\": \"rgb(127, 255, 0)\",\n \"chartreuse1\": \"rgb(127, 255, 0)\",\n \"chartreuse2\": \"rgb(118, 238, 0)\",\n \"chartreuse3\": \"rgb(102, 205, 0)\",\n \"chartreuse4\": \"rgb(69, 139, 0)\",\n \"chocolate\": \"rgb(210, 105, 30)\",\n \"chocolate1\": \"rgb(255, 127, 36)\",\n \"chocolate2\": \"rgb(238, 118, 33)\",\n \"chocolate3\": \"rgb(205, 102, 29)\",\n \"chocolate4\": \"rgb(139, 69, 19)\",\n \"coral\": \"rgb(255, 127, 80)\",\n \"coral1\": \"rgb(255, 114, 86)\",\n \"coral2\": \"rgb(238, 106, 80)\",\n \"coral3\": \"rgb(205, 91, 69)\",\n \"coral4\": \"rgb(139, 62, 47)\",\n \"cornflowerblue\": \"rgb(100, 149, 237)\",\n \"cornsilk\": \"rgb(255, 248, 220)\",\n \"cornsilk1\": \"rgb(255, 248, 220)\",\n \"cornsilk2\": \"rgb(238, 232, 205)\",\n \"cornsilk3\": \"rgb(205, 200, 177)\",\n \"cornsilk4\": \"rgb(139, 136, 120)\",\n \"cyan\": \"rgb(0, 255, 255)\",\n \"cyan1\": \"rgb(0, 255, 255)\",\n \"cyan2\": \"rgb(0, 238, 238)\",\n \"cyan3\": \"rgb(0, 205, 205)\",\n \"cyan4\": \"rgb(0, 139, 139)\",\n \"darkblue\": \"rgb(0, 0, 139)\",\n \"darkcyan\": \"rgb(0, 139, 139)\",\n \"darkgoldenrod\": \"rgb(184, 134, 11)\",\n \"darkgoldenrod1\": \"rgb(255, 185, 15)\",\n \"darkgoldenrod2\": \"rgb(238, 173, 14)\",\n \"darkgoldenrod3\": \"rgb(205, 149, 12)\",\n \"darkgoldenrod4\": \"rgb(139, 101, 8)\",\n \"darkgray\": \"rgb(169, 169, 169)\",\n \"darkgreen\": \"rgb(0, 100, 0)\",\n \"darkgrey\": \"rgb(169, 169, 169)\",\n \"darkkhaki\": \"rgb(189, 183, 107)\",\n \"darkmagenta\": \"rgb(139, 0, 139)\",\n \"darkolivegreen\": \"rgb(85, 107, 47)\",\n \"darkolivegreen1\": \"rgb(202, 255, 112)\",\n \"darkolivegreen2\": \"rgb(188, 238, 104)\",\n \"darkolivegreen3\": \"rgb(162, 205, 90)\",\n \"darkolivegreen4\": \"rgb(110, 139, 61)\",\n \"darkorange\": \"rgb(255, 140, 0)\",\n \"darkorange1\": \"rgb(255, 127, 0)\",\n \"darkorange2\": \"rgb(238, 118, 0)\",\n \"darkorange3\": \"rgb(205, 102, 0)\",\n \"darkorange4\": \"rgb(139, 69, 0)\",\n \"darkorchid\": \"rgb(153, 50, 204)\",\n \"darkorchid1\": \"rgb(191, 62, 255)\",\n \"darkorchid2\": \"rgb(178, 58, 238)\",\n \"darkorchid3\": \"rgb(154, 50, 205)\",\n \"darkorchid4\": \"rgb(104, 34, 139)\",\n \"darkred\": \"rgb(139, 0, 0)\",\n \"darksalmon\": \"rgb(233, 150, 122)\",\n \"darkseagreen\": \"rgb(143, 188, 143)\",\n \"darkseagreen1\": \"rgb(193, 255, 193)\",\n \"darkseagreen2\": \"rgb(180, 238, 180)\",\n \"darkseagreen3\": \"rgb(155, 205, 155)\",\n \"darkseagreen4\": \"rgb(105, 139, 105)\",\n \"darkslateblue\": \"rgb(72, 61, 139)\",\n \"darkslategray\": \"rgb(47, 79, 79)\",\n \"darkslategray1\": \"rgb(151, 255, 255)\",\n \"darkslategray2\": \"rgb(141, 238, 238)\",\n \"darkslategray3\": \"rgb(121, 205, 205)\",\n \"darkslategray4\": \"rgb(82, 139, 139)\",\n \"darkslategrey\": \"rgb(47, 79, 79)\",\n \"darkturquoise\": \"rgb(0, 206, 209)\",\n \"darkviolet\": \"rgb(148, 0, 211)\",\n \"debianred\": \"rgb(215, 7, 81)\",\n \"deeppink\": \"rgb(255, 20, 147)\",\n \"deeppink1\": \"rgb(255, 20, 147)\",\n \"deeppink2\": \"rgb(238, 18, 137)\",\n \"deeppink3\": \"rgb(205, 16, 118)\",\n \"deeppink4\": \"rgb(139, 10, 80)\",\n \"deepskyblue\": \"rgb(0, 191, 255)\",\n \"deepskyblue1\": \"rgb(0, 191, 255)\",\n \"deepskyblue2\": \"rgb(0, 178, 238)\",\n \"deepskyblue3\": \"rgb(0, 154, 205)\",\n \"deepskyblue4\": \"rgb(0, 104, 139)\",\n \"dimgray\": \"rgb(105, 105, 105)\",\n \"dimgrey\": \"rgb(105, 105, 105)\",\n \"dodgerblue\": \"rgb(30, 144, 255)\",\n \"dodgerblue1\": \"rgb(30, 144, 255)\",\n \"dodgerblue2\": \"rgb(28, 134, 238)\",\n \"dodgerblue3\": \"rgb(24, 116, 205)\",\n \"dodgerblue4\": \"rgb(16, 78, 139)\",\n \"firebrick\": \"rgb(178, 34, 34)\",\n \"firebrick1\": \"rgb(255, 48, 48)\",\n \"firebrick2\": \"rgb(238, 44, 44)\",\n \"firebrick3\": \"rgb(205, 38, 38)\",\n \"firebrick4\": \"rgb(139, 26, 26)\",\n \"floralwhite\": \"rgb(255, 250, 240)\",\n \"forestgreen\": \"rgb(34, 139, 34)\",\n \"gainsboro\": \"rgb(220, 220, 220)\",\n \"ghostwhite\": \"rgb(248, 248, 255)\",\n \"gold\": \"rgb(255, 215, 0)\",\n \"gold1\": \"rgb(255, 215, 0)\",\n \"gold2\": \"rgb(238, 201, 0)\",\n \"gold3\": \"rgb(205, 173, 0)\",\n \"gold4\": \"rgb(139, 117, 0)\",\n \"goldenrod\": \"rgb(218, 165, 32)\",\n \"goldenrod1\": \"rgb(255, 193, 37)\",\n \"goldenrod2\": \"rgb(238, 180, 34)\",\n \"goldenrod3\": \"rgb(205, 155, 29)\",\n \"goldenrod4\": \"rgb(139, 105, 20)\",\n \"gray\": \"rgb(190, 190, 190)\",\n \"gray0\": \"rgb(0, 0, 0)\",\n \"gray1\": \"rgb(3, 3, 3)\",\n \"gray10\": \"rgb(26, 26, 26)\",\n \"gray100\": \"rgb(255, 255, 255)\",\n \"gray11\": \"rgb(28, 28, 28)\",\n \"gray12\": \"rgb(31, 31, 31)\",\n \"gray13\": \"rgb(33, 33, 33)\",\n \"gray14\": \"rgb(36, 36, 36)\",\n \"gray15\": \"rgb(38, 38, 38)\",\n \"gray16\": \"rgb(41, 41, 41)\",\n \"gray17\": \"rgb(43, 43, 43)\",\n \"gray18\": \"rgb(46, 46, 46)\",\n \"gray19\": \"rgb(48, 48, 48)\",\n \"gray2\": \"rgb(5, 5, 5)\",\n \"gray20\": \"rgb(51, 51, 51)\",\n \"gray21\": \"rgb(54, 54, 54)\",\n \"gray22\": \"rgb(56, 56, 56)\",\n \"gray23\": \"rgb(59, 59, 59)\",\n \"gray24\": \"rgb(61, 61, 61)\",\n \"gray25\": \"rgb(64, 64, 64)\",\n \"gray26\": \"rgb(66, 66, 66)\",\n \"gray27\": \"rgb(69, 69, 69)\",\n \"gray28\": \"rgb(71, 71, 71)\",\n \"gray29\": \"rgb(74, 74, 74)\",\n \"gray3\": \"rgb(8, 8, 8)\",\n \"gray30\": \"rgb(77, 77, 77)\",\n \"gray31\": \"rgb(79, 79, 79)\",\n \"gray32\": \"rgb(82, 82, 82)\",\n \"gray33\": \"rgb(84, 84, 84)\",\n \"gray34\": \"rgb(87, 87, 87)\",\n \"gray35\": \"rgb(89, 89, 89)\",\n \"gray36\": \"rgb(92, 92, 92)\",\n \"gray37\": \"rgb(94, 94, 94)\",\n \"gray38\": \"rgb(97, 97, 97)\",\n \"gray39\": \"rgb(99, 99, 99)\",\n \"gray4\": \"rgb(10, 10, 10)\",\n \"gray40\": \"rgb(102, 102, 102)\",\n \"gray41\": \"rgb(105, 105, 105)\",\n \"gray42\": \"rgb(107, 107, 107)\",\n \"gray43\": \"rgb(110, 110, 110)\",\n \"gray44\": \"rgb(112, 112, 112)\",\n \"gray45\": \"rgb(115, 115, 115)\",\n \"gray46\": \"rgb(117, 117, 117)\",\n \"gray47\": \"rgb(120, 120, 120)\",\n \"gray48\": \"rgb(122, 122, 122)\",\n \"gray49\": \"rgb(125, 125, 125)\",\n \"gray5\": \"rgb(13, 13, 13)\",\n \"gray50\": \"rgb(127, 127, 127)\",\n \"gray51\": \"rgb(130, 130, 130)\",\n \"gray52\": \"rgb(133, 133, 133)\",\n \"gray53\": \"rgb(135, 135, 135)\",\n \"gray54\": \"rgb(138, 138, 138)\",\n \"gray55\": \"rgb(140, 140, 140)\",\n \"gray56\": \"rgb(143, 143, 143)\",\n \"gray57\": \"rgb(145, 145, 145)\",\n \"gray58\": \"rgb(148, 148, 148)\",\n \"gray59\": \"rgb(150, 150, 150)\",\n \"gray6\": \"rgb(15, 15, 15)\",\n \"gray60\": \"rgb(153, 153, 153)\",\n \"gray61\": \"rgb(156, 156, 156)\",\n \"gray62\": \"rgb(158, 158, 158)\",\n \"gray63\": \"rgb(161, 161, 161)\",\n \"gray64\": \"rgb(163, 163, 163)\",\n \"gray65\": \"rgb(166, 166, 166)\",\n \"gray66\": \"rgb(168, 168, 168)\",\n \"gray67\": \"rgb(171, 171, 171)\",\n \"gray68\": \"rgb(173, 173, 173)\",\n \"gray69\": \"rgb(176, 176, 176)\",\n \"gray7\": \"rgb(18, 18, 18)\",\n \"gray70\": \"rgb(179, 179, 179)\",\n \"gray71\": \"rgb(181, 181, 181)\",\n \"gray72\": \"rgb(184, 184, 184)\",\n \"gray73\": \"rgb(186, 186, 186)\",\n \"gray74\": \"rgb(189, 189, 189)\",\n \"gray75\": \"rgb(191, 191, 191)\",\n \"gray76\": \"rgb(194, 194, 194)\",\n \"gray77\": \"rgb(196, 196, 196)\",\n \"gray78\": \"rgb(199, 199, 199)\",\n \"gray79\": \"rgb(201, 201, 201)\",\n \"gray8\": \"rgb(20, 20, 20)\",\n \"gray80\": \"rgb(204, 204, 204)\",\n \"gray81\": \"rgb(207, 207, 207)\",\n \"gray82\": \"rgb(209, 209, 209)\",\n \"gray83\": \"rgb(212, 212, 212)\",\n \"gray84\": \"rgb(214, 214, 214)\",\n \"gray85\": \"rgb(217, 217, 217)\",\n \"gray86\": \"rgb(219, 219, 219)\",\n \"gray87\": \"rgb(222, 222, 222)\",\n \"gray88\": \"rgb(224, 224, 224)\",\n \"gray89\": \"rgb(227, 227, 227)\",\n \"gray9\": \"rgb(23, 23, 23)\",\n \"gray90\": \"rgb(229, 229, 229)\",\n \"gray91\": \"rgb(232, 232, 232)\",\n \"gray92\": \"rgb(235, 235, 235)\",\n \"gray93\": \"rgb(237, 237, 237)\",\n \"gray94\": \"rgb(240, 240, 240)\",\n \"gray95\": \"rgb(242, 242, 242)\",\n \"gray96\": \"rgb(245, 245, 245)\",\n \"gray97\": \"rgb(247, 247, 247)\",\n \"gray98\": \"rgb(250, 250, 250)\",\n \"gray99\": \"rgb(252, 252, 252)\",\n \"green\": \"rgb(0, 255, 0)\",\n \"green1\": \"rgb(0, 255, 0)\",\n \"green2\": \"rgb(0, 238, 0)\",\n \"green3\": \"rgb(0, 205, 0)\",\n \"green4\": \"rgb(0, 139, 0)\",\n \"greenyellow\": \"rgb(173, 255, 47)\",\n \"grey\": \"rgb(190, 190, 190)\",\n \"grey0\": \"rgb(0, 0, 0)\",\n \"grey1\": \"rgb(3, 3, 3)\",\n \"grey10\": \"rgb(26, 26, 26)\",\n \"grey100\": \"rgb(255, 255, 255)\",\n \"grey11\": \"rgb(28, 28, 28)\",\n \"grey12\": \"rgb(31, 31, 31)\",\n \"grey13\": \"rgb(33, 33, 33)\",\n \"grey14\": \"rgb(36, 36, 36)\",\n \"grey15\": \"rgb(38, 38, 38)\",\n \"grey16\": \"rgb(41, 41, 41)\",\n \"grey17\": \"rgb(43, 43, 43)\",\n \"grey18\": \"rgb(46, 46, 46)\",\n \"grey19\": \"rgb(48, 48, 48)\",\n \"grey2\": \"rgb(5, 5, 5)\",\n \"grey20\": \"rgb(51, 51, 51)\",\n \"grey21\": \"rgb(54, 54, 54)\",\n \"grey22\": \"rgb(56, 56, 56)\",\n \"grey23\": \"rgb(59, 59, 59)\",\n \"grey24\": \"rgb(61, 61, 61)\",\n \"grey25\": \"rgb(64, 64, 64)\",\n \"grey26\": \"rgb(66, 66, 66)\",\n \"grey27\": \"rgb(69, 69, 69)\",\n \"grey28\": \"rgb(71, 71, 71)\",\n \"grey29\": \"rgb(74, 74, 74)\",\n \"grey3\": \"rgb(8, 8, 8)\",\n \"grey30\": \"rgb(77, 77, 77)\",\n \"grey31\": \"rgb(79, 79, 79)\",\n \"grey32\": \"rgb(82, 82, 82)\",\n \"grey33\": \"rgb(84, 84, 84)\",\n \"grey34\": \"rgb(87, 87, 87)\",\n \"grey35\": \"rgb(89, 89, 89)\",\n \"grey36\": \"rgb(92, 92, 92)\",\n \"grey37\": \"rgb(94, 94, 94)\",\n \"grey38\": \"rgb(97, 97, 97)\",\n \"grey39\": \"rgb(99, 99, 99)\",\n \"grey4\": \"rgb(10, 10, 10)\",\n \"grey40\": \"rgb(102, 102, 102)\",\n \"grey41\": \"rgb(105, 105, 105)\",\n \"grey42\": \"rgb(107, 107, 107)\",\n \"grey43\": \"rgb(110, 110, 110)\",\n \"grey44\": \"rgb(112, 112, 112)\",\n \"grey45\": \"rgb(115, 115, 115)\",\n \"grey46\": \"rgb(117, 117, 117)\",\n \"grey47\": \"rgb(120, 120, 120)\",\n \"grey48\": \"rgb(122, 122, 122)\",\n \"grey49\": \"rgb(125, 125, 125)\",\n \"grey5\": \"rgb(13, 13, 13)\",\n \"grey50\": \"rgb(127, 127, 127)\",\n \"grey51\": \"rgb(130, 130, 130)\",\n \"grey52\": \"rgb(133, 133, 133)\",\n \"grey53\": \"rgb(135, 135, 135)\",\n \"grey54\": \"rgb(138, 138, 138)\",\n \"grey55\": \"rgb(140, 140, 140)\",\n \"grey56\": \"rgb(143, 143, 143)\",\n \"grey57\": \"rgb(145, 145, 145)\",\n \"grey58\": \"rgb(148, 148, 148)\",\n \"grey59\": \"rgb(150, 150, 150)\",\n \"grey6\": \"rgb(15, 15, 15)\",\n \"grey60\": \"rgb(153, 153, 153)\",\n \"grey61\": \"rgb(156, 156, 156)\",\n \"grey62\": \"rgb(158, 158, 158)\",\n \"grey63\": \"rgb(161, 161, 161)\",\n \"grey64\": \"rgb(163, 163, 163)\",\n \"grey65\": \"rgb(166, 166, 166)\",\n \"grey66\": \"rgb(168, 168, 168)\",\n \"grey67\": \"rgb(171, 171, 171)\",\n \"grey68\": \"rgb(173, 173, 173)\",\n \"grey69\": \"rgb(176, 176, 176)\",\n \"grey7\": \"rgb(18, 18, 18)\",\n \"grey70\": \"rgb(179, 179, 179)\",\n \"grey71\": \"rgb(181, 181, 181)\",\n \"grey72\": \"rgb(184, 184, 184)\",\n \"grey73\": \"rgb(186, 186, 186)\",\n \"grey74\": \"rgb(189, 189, 189)\",\n \"grey75\": \"rgb(191, 191, 191)\",\n \"grey76\": \"rgb(194, 194, 194)\",\n \"grey77\": \"rgb(196, 196, 196)\",\n \"grey78\": \"rgb(199, 199, 199)\",\n \"grey79\": \"rgb(201, 201, 201)\",\n \"grey8\": \"rgb(20, 20, 20)\",\n \"grey80\": \"rgb(204, 204, 204)\",\n \"grey81\": \"rgb(207, 207, 207)\",\n \"grey82\": \"rgb(209, 209, 209)\",\n \"grey83\": \"rgb(212, 212, 212)\",\n \"grey84\": \"rgb(214, 214, 214)\",\n \"grey85\": \"rgb(217, 217, 217)\",\n \"grey86\": \"rgb(219, 219, 219)\",\n \"grey87\": \"rgb(222, 222, 222)\",\n \"grey88\": \"rgb(224, 224, 224)\",\n \"grey89\": \"rgb(227, 227, 227)\",\n \"grey9\": \"rgb(23, 23, 23)\",\n \"grey90\": \"rgb(229, 229, 229)\",\n \"grey91\": \"rgb(232, 232, 232)\",\n \"grey92\": \"rgb(235, 235, 235)\",\n \"grey93\": \"rgb(237, 237, 237)\",\n \"grey94\": \"rgb(240, 240, 240)\",\n \"grey95\": \"rgb(242, 242, 242)\",\n \"grey96\": \"rgb(245, 245, 245)\",\n \"grey97\": \"rgb(247, 247, 247)\",\n \"grey98\": \"rgb(250, 250, 250)\",\n \"grey99\": \"rgb(252, 252, 252)\",\n \"honeydew\": \"rgb(240, 255, 240)\",\n \"honeydew1\": \"rgb(240, 255, 240)\",\n \"honeydew2\": \"rgb(224, 238, 224)\",\n \"honeydew3\": \"rgb(193, 205, 193)\",\n \"honeydew4\": \"rgb(131, 139, 131)\",\n \"hotpink\": \"rgb(255, 105, 180)\",\n \"hotpink1\": \"rgb(255, 110, 180)\",\n \"hotpink2\": \"rgb(238, 106, 167)\",\n \"hotpink3\": \"rgb(205, 96, 144)\",\n \"hotpink4\": \"rgb(139, 58, 98)\",\n \"indianred\": \"rgb(205, 92, 92)\",\n \"indianred1\": \"rgb(255, 106, 106)\",\n \"indianred2\": \"rgb(238, 99, 99)\",\n \"indianred3\": \"rgb(205, 85, 85)\",\n \"indianred4\": \"rgb(139, 58, 58)\",\n \"ivory\": \"rgb(255, 255, 240)\",\n \"ivory1\": \"rgb(255, 255, 240)\",\n \"ivory2\": \"rgb(238, 238, 224)\",\n \"ivory3\": \"rgb(205, 205, 193)\",\n \"ivory4\": \"rgb(139, 139, 131)\",\n \"khaki\": \"rgb(240, 230, 140)\",\n \"khaki1\": \"rgb(255, 246, 143)\",\n \"khaki2\": \"rgb(238, 230, 133)\",\n \"khaki3\": \"rgb(205, 198, 115)\",\n \"khaki4\": \"rgb(139, 134, 78)\",\n \"lavender\": \"rgb(230, 230, 250)\",\n \"lavenderblush\": \"rgb(255, 240, 245)\",\n \"lavenderblush1\": \"rgb(255, 240, 245)\",\n \"lavenderblush2\": \"rgb(238, 224, 229)\",\n \"lavenderblush3\": \"rgb(205, 193, 197)\",\n \"lavenderblush4\": \"rgb(139, 131, 134)\",\n \"lawngreen\": \"rgb(124, 252, 0)\",\n \"lemonchiffon\": \"rgb(255, 250, 205)\",\n \"lemonchiffon1\": \"rgb(255, 250, 205)\",\n \"lemonchiffon2\": \"rgb(238, 233, 191)\",\n \"lemonchiffon3\": \"rgb(205, 201, 165)\",\n \"lemonchiffon4\": \"rgb(139, 137, 112)\",\n \"lightblue\": \"rgb(173, 216, 230)\",\n \"lightblue1\": \"rgb(191, 239, 255)\",\n \"lightblue2\": \"rgb(178, 223, 238)\",\n \"lightblue3\": \"rgb(154, 192, 205)\",\n \"lightblue4\": \"rgb(104, 131, 139)\",\n \"lightcoral\": \"rgb(240, 128, 128)\",\n \"lightcyan\": \"rgb(224, 255, 255)\",\n \"lightcyan1\": \"rgb(224, 255, 255)\",\n \"lightcyan2\": \"rgb(209, 238, 238)\",\n \"lightcyan3\": \"rgb(180, 205, 205)\",\n \"lightcyan4\": \"rgb(122, 139, 139)\",\n \"lightgoldenrod\": \"rgb(238, 221, 130)\",\n \"lightgoldenrod1\": \"rgb(255, 236, 139)\",\n \"lightgoldenrod2\": \"rgb(238, 220, 130)\",\n \"lightgoldenrod3\": \"rgb(205, 190, 112)\",\n \"lightgoldenrod4\": \"rgb(139, 129, 76)\",\n \"lightgoldenrodyellow\": \"rgb(250, 250, 210)\",\n \"lightgray\": \"rgb(211, 211, 211)\",\n \"lightgreen\": \"rgb(144, 238, 144)\",\n \"lightgrey\": \"rgb(211, 211, 211)\",\n \"lightpink\": \"rgb(255, 182, 193)\",\n \"lightpink1\": \"rgb(255, 174, 185)\",\n \"lightpink2\": \"rgb(238, 162, 173)\",\n \"lightpink3\": \"rgb(205, 140, 149)\",\n \"lightpink4\": \"rgb(139, 95, 101)\",\n \"lightsalmon\": \"rgb(255, 160, 122)\",\n \"lightsalmon1\": \"rgb(255, 160, 122)\",\n \"lightsalmon2\": \"rgb(238, 149, 114)\",\n \"lightsalmon3\": \"rgb(205, 129, 98)\",\n \"lightsalmon4\": \"rgb(139, 87, 66)\",\n \"lightseagreen\": \"rgb(32, 178, 170)\",\n \"lightskyblue\": \"rgb(135, 206, 250)\",\n \"lightskyblue1\": \"rgb(176, 226, 255)\",\n \"lightskyblue2\": \"rgb(164, 211, 238)\",\n \"lightskyblue3\": \"rgb(141, 182, 205)\",\n \"lightskyblue4\": \"rgb(96, 123, 139)\",\n \"lightslateblue\": \"rgb(132, 112, 255)\",\n \"lightslategray\": \"rgb(119, 136, 153)\",\n \"lightslategrey\": \"rgb(119, 136, 153)\",\n \"lightsteelblue\": \"rgb(176, 196, 222)\",\n \"lightsteelblue1\": \"rgb(202, 225, 255)\",\n \"lightsteelblue2\": \"rgb(188, 210, 238)\",\n \"lightsteelblue3\": \"rgb(162, 181, 205)\",\n \"lightsteelblue4\": \"rgb(110, 123, 139)\",\n \"lightyellow\": \"rgb(255, 255, 224)\",\n \"lightyellow1\": \"rgb(255, 255, 224)\",\n \"lightyellow2\": \"rgb(238, 238, 209)\",\n \"lightyellow3\": \"rgb(205, 205, 180)\",\n \"lightyellow4\": \"rgb(139, 139, 122)\",\n \"limegreen\": \"rgb(50, 205, 50)\",\n \"linen\": \"rgb(250, 240, 230)\",\n \"magenta\": \"rgb(255, 0, 255)\",\n \"magenta1\": \"rgb(255, 0, 255)\",\n \"magenta2\": \"rgb(238, 0, 238)\",\n \"magenta3\": \"rgb(205, 0, 205)\",\n \"magenta4\": \"rgb(139, 0, 139)\",\n \"maroon\": \"rgb(176, 48, 96)\",\n \"maroon1\": \"rgb(255, 52, 179)\",\n \"maroon2\": \"rgb(238, 48, 167)\",\n \"maroon3\": \"rgb(205, 41, 144)\",\n \"maroon4\": \"rgb(139, 28, 98)\",\n \"mediumaquamarine\": \"rgb(102, 205, 170)\",\n \"mediumblue\": \"rgb(0, 0, 205)\",\n \"mediumorchid\": \"rgb(186, 85, 211)\",\n \"mediumorchid1\": \"rgb(224, 102, 255)\",\n \"mediumorchid2\": \"rgb(209, 95, 238)\",\n \"mediumorchid3\": \"rgb(180, 82, 205)\",\n \"mediumorchid4\": \"rgb(122, 55, 139)\",\n \"mediumpurple\": \"rgb(147, 112, 219)\",\n \"mediumpurple1\": \"rgb(171, 130, 255)\",\n \"mediumpurple2\": \"rgb(159, 121, 238)\",\n \"mediumpurple3\": \"rgb(137, 104, 205)\",\n \"mediumpurple4\": \"rgb(93, 71, 139)\",\n \"mediumseagreen\": \"rgb(60, 179, 113)\",\n \"mediumslateblue\": \"rgb(123, 104, 238)\",\n \"mediumspringgreen\": \"rgb(0, 250, 154)\",\n \"mediumturquoise\": \"rgb(72, 209, 204)\",\n \"mediumvioletred\": \"rgb(199, 21, 133)\",\n \"midnightblue\": \"rgb(25, 25, 112)\",\n \"mintcream\": \"rgb(245, 255, 250)\",\n \"mistyrose\": \"rgb(255, 228, 225)\",\n \"mistyrose1\": \"rgb(255, 228, 225)\",\n \"mistyrose2\": \"rgb(238, 213, 210)\",\n \"mistyrose3\": \"rgb(205, 183, 181)\",\n \"mistyrose4\": \"rgb(139, 125, 123)\",\n \"moccasin\": \"rgb(255, 228, 181)\",\n \"navajowhite\": \"rgb(255, 222, 173)\",\n \"navajowhite1\": \"rgb(255, 222, 173)\",\n \"navajowhite2\": \"rgb(238, 207, 161)\",\n \"navajowhite3\": \"rgb(205, 179, 139)\",\n \"navajowhite4\": \"rgb(139, 121, 94)\",\n \"navy\": \"rgb(0, 0, 128)\",\n \"navyblue\": \"rgb(0, 0, 128)\",\n \"oldlace\": \"rgb(253, 245, 230)\",\n \"olivedrab\": \"rgb(107, 142, 35)\",\n \"olivedrab1\": \"rgb(192, 255, 62)\",\n \"olivedrab2\": \"rgb(179, 238, 58)\",\n \"olivedrab3\": \"rgb(154, 205, 50)\",\n \"olivedrab4\": \"rgb(105, 139, 34)\",\n \"orange\": \"rgb(255, 165, 0)\",\n \"orange1\": \"rgb(255, 165, 0)\",\n \"orange2\": \"rgb(238, 154, 0)\",\n \"orange3\": \"rgb(205, 133, 0)\",\n \"orange4\": \"rgb(139, 90, 0)\",\n \"orangered\": \"rgb(255, 69, 0)\",\n \"orangered1\": \"rgb(255, 69, 0)\",\n \"orangered2\": \"rgb(238, 64, 0)\",\n \"orangered3\": \"rgb(205, 55, 0)\",\n \"orangered4\": \"rgb(139, 37, 0)\",\n \"orchid\": \"rgb(218, 112, 214)\",\n \"orchid1\": \"rgb(255, 131, 250)\",\n \"orchid2\": \"rgb(238, 122, 233)\",\n \"orchid3\": \"rgb(205, 105, 201)\",\n \"orchid4\": \"rgb(139, 71, 137)\",\n \"palegoldenrod\": \"rgb(238, 232, 170)\",\n \"palegreen\": \"rgb(152, 251, 152)\",\n \"palegreen1\": \"rgb(154, 255, 154)\",\n \"palegreen2\": \"rgb(144, 238, 144)\",\n \"palegreen3\": \"rgb(124, 205, 124)\",\n \"palegreen4\": \"rgb(84, 139, 84)\",\n \"paleturquoise\": \"rgb(175, 238, 238)\",\n \"paleturquoise1\": \"rgb(187, 255, 255)\",\n \"paleturquoise2\": \"rgb(174, 238, 238)\",\n \"paleturquoise3\": \"rgb(150, 205, 205)\",\n \"paleturquoise4\": \"rgb(102, 139, 139)\",\n \"palevioletred\": \"rgb(219, 112, 147)\",\n \"palevioletred1\": \"rgb(255, 130, 171)\",\n \"palevioletred2\": \"rgb(238, 121, 159)\",\n \"palevioletred3\": \"rgb(205, 104, 137)\",\n \"palevioletred4\": \"rgb(139, 71, 93)\",\n \"papayawhip\": \"rgb(255, 239, 213)\",\n \"peachpuff\": \"rgb(255, 218, 185)\",\n \"peachpuff1\": \"rgb(255, 218, 185)\",\n \"peachpuff2\": \"rgb(238, 203, 173)\",\n \"peachpuff3\": \"rgb(205, 175, 149)\",\n \"peachpuff4\": \"rgb(139, 119, 101)\",\n \"peru\": \"rgb(205, 133, 63)\",\n \"pink\": \"rgb(255, 192, 203)\",\n \"pink1\": \"rgb(255, 181, 197)\",\n \"pink2\": \"rgb(238, 169, 184)\",\n \"pink3\": \"rgb(205, 145, 158)\",\n \"pink4\": \"rgb(139, 99, 108)\",\n \"plum\": \"rgb(221, 160, 221)\",\n \"plum1\": \"rgb(255, 187, 255)\",\n \"plum2\": \"rgb(238, 174, 238)\",\n \"plum3\": \"rgb(205, 150, 205)\",\n \"plum4\": \"rgb(139, 102, 139)\",\n \"powderblue\": \"rgb(176, 224, 230)\",\n \"purple\": \"rgb(160, 32, 240)\",\n \"purple1\": \"rgb(155, 48, 255)\",\n \"purple2\": \"rgb(145, 44, 238)\",\n \"purple3\": \"rgb(125, 38, 205)\",\n \"purple4\": \"rgb(85, 26, 139)\",\n \"red\": \"rgb(255, 0, 0)\",\n \"red1\": \"rgb(255, 0, 0)\",\n \"red2\": \"rgb(238, 0, 0)\",\n \"red3\": \"rgb(205, 0, 0)\",\n \"red4\": \"rgb(139, 0, 0)\",\n \"rosybrown\": \"rgb(188, 143, 143)\",\n \"rosybrown1\": \"rgb(255, 193, 193)\",\n \"rosybrown2\": \"rgb(238, 180, 180)\",\n \"rosybrown3\": \"rgb(205, 155, 155)\",\n \"rosybrown4\": \"rgb(139, 105, 105)\",\n \"royalblue\": \"rgb(65, 105, 225)\",\n \"royalblue1\": \"rgb(72, 118, 255)\",\n \"royalblue2\": \"rgb(67, 110, 238)\",\n \"royalblue3\": \"rgb(58, 95, 205)\",\n \"royalblue4\": \"rgb(39, 64, 139)\",\n \"saddlebrown\": \"rgb(139, 69, 19)\",\n \"salmon\": \"rgb(250, 128, 114)\",\n \"salmon1\": \"rgb(255, 140, 105)\",\n \"salmon2\": \"rgb(238, 130, 98)\",\n \"salmon3\": \"rgb(205, 112, 84)\",\n \"salmon4\": \"rgb(139, 76, 57)\",\n \"sandybrown\": \"rgb(244, 164, 96)\",\n \"seagreen\": \"rgb(46, 139, 87)\",\n \"seagreen1\": \"rgb(84, 255, 159)\",\n \"seagreen2\": \"rgb(78, 238, 148)\",\n \"seagreen3\": \"rgb(67, 205, 128)\",\n \"seagreen4\": \"rgb(46, 139, 87)\",\n \"seashell\": \"rgb(255, 245, 238)\",\n \"seashell1\": \"rgb(255, 245, 238)\",\n \"seashell2\": \"rgb(238, 229, 222)\",\n \"seashell3\": \"rgb(205, 197, 191)\",\n \"seashell4\": \"rgb(139, 134, 130)\",\n \"sienna\": \"rgb(160, 82, 45)\",\n \"sienna1\": \"rgb(255, 130, 71)\",\n \"sienna2\": \"rgb(238, 121, 66)\",\n \"sienna3\": \"rgb(205, 104, 57)\",\n \"sienna4\": \"rgb(139, 71, 38)\",\n \"skyblue\": \"rgb(135, 206, 235)\",\n \"skyblue1\": \"rgb(135, 206, 255)\",\n \"skyblue2\": \"rgb(126, 192, 238)\",\n \"skyblue3\": \"rgb(108, 166, 205)\",\n \"skyblue4\": \"rgb(74, 112, 139)\",\n \"slateblue\": \"rgb(106, 90, 205)\",\n \"slateblue1\": \"rgb(131, 111, 255)\",\n \"slateblue2\": \"rgb(122, 103, 238)\",\n \"slateblue3\": \"rgb(105, 89, 205)\",\n \"slateblue4\": \"rgb(71, 60, 139)\",\n \"slategray\": \"rgb(112, 128, 144)\",\n \"slategray1\": \"rgb(198, 226, 255)\",\n \"slategray2\": \"rgb(185, 211, 238)\",\n \"slategray3\": \"rgb(159, 182, 205)\",\n \"slategray4\": \"rgb(108, 123, 139)\",\n \"slategrey\": \"rgb(112, 128, 144)\",\n \"snow\": \"rgb(255, 250, 250)\",\n \"snow1\": \"rgb(255, 250, 250)\",\n \"snow2\": \"rgb(238, 233, 233)\",\n \"snow3\": \"rgb(205, 201, 201)\",\n \"snow4\": \"rgb(139, 137, 137)\",\n \"springgreen\": \"rgb(0, 255, 127)\",\n \"springgreen1\": \"rgb(0, 255, 127)\",\n \"springgreen2\": \"rgb(0, 238, 118)\",\n \"springgreen3\": \"rgb(0, 205, 102)\",\n \"springgreen4\": \"rgb(0, 139, 69)\",\n \"steelblue\": \"rgb(70, 130, 180)\",\n \"steelblue1\": \"rgb(99, 184, 255)\",\n \"steelblue2\": \"rgb(92, 172, 238)\",\n \"steelblue3\": \"rgb(79, 148, 205)\",\n \"steelblue4\": \"rgb(54, 100, 139)\",\n \"tan\": \"rgb(210, 180, 140)\",\n \"tan1\": \"rgb(255, 165, 79)\",\n \"tan2\": \"rgb(238, 154, 73)\",\n \"tan3\": \"rgb(205, 133, 63)\",\n \"tan4\": \"rgb(139, 90, 43)\",\n \"thistle\": \"rgb(216, 191, 216)\",\n \"thistle1\": \"rgb(255, 225, 255)\",\n \"thistle2\": \"rgb(238, 210, 238)\",\n \"thistle3\": \"rgb(205, 181, 205)\",\n \"thistle4\": \"rgb(139, 123, 139)\",\n \"tomato\": \"rgb(255, 99, 71)\",\n \"tomato1\": \"rgb(255, 99, 71)\",\n \"tomato2\": \"rgb(238, 92, 66)\",\n \"tomato3\": \"rgb(205, 79, 57)\",\n \"tomato4\": \"rgb(139, 54, 38)\",\n \"turquoise\": \"rgb(64, 224, 208)\",\n \"turquoise1\": \"rgb(0, 245, 255)\",\n \"turquoise2\": \"rgb(0, 229, 238)\",\n \"turquoise3\": \"rgb(0, 197, 205)\",\n \"turquoise4\": \"rgb(0, 134, 139)\",\n \"violet\": \"rgb(238, 130, 238)\",\n \"violetred\": \"rgb(208, 32, 144)\",\n \"violetred1\": \"rgb(255, 62, 150)\",\n \"violetred2\": \"rgb(238, 58, 140)\",\n \"violetred3\": \"rgb(205, 50, 120)\",\n \"violetred4\": \"rgb(139, 34, 82)\",\n \"wheat\": \"rgb(245, 222, 179)\",\n \"wheat1\": \"rgb(255, 231, 186)\",\n \"wheat2\": \"rgb(238, 216, 174)\",\n \"wheat3\": \"rgb(205, 186, 150)\",\n \"wheat4\": \"rgb(139, 126, 102)\",\n \"white\": \"rgb(255, 255, 255)\",\n \"whitesmoke\": \"rgb(245, 245, 245)\",\n \"yellow\": \"rgb(255, 255, 0)\",\n \"yellow1\": \"rgb(255, 255, 0)\",\n \"yellow2\": \"rgb(238, 238, 0)\",\n \"yellow3\": \"rgb(205, 205, 0)\",\n \"yellow4\": \"rgb(139, 139, 0)\",\n \"yellowgreen\": \"rgb(154, 205, 50)\"\n};\n// SOURCE FILE: libdot/js/lib_f.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Grab bag of utility functions.\n */\nlib.f = {};\n\n/**\n * Create a unique enum value.\n *\n * @suppress {lintChecks}\n * @param {string} name A human friendly name for debugging.\n * @return {Object} A unique enum that won't compare equal to anything else.\n */\nlib.f.createEnum = function(name) {\n // We use a String object as nothing else should be using them -- we want to\n // use string primitives normally. But debuggers will include our name.\n return new String(name);\n};\n\n/**\n * Replace variable references in a string.\n *\n * Variables are of the form %FUNCTION(VARNAME). FUNCTION is an optional\n * escape function to apply to the value.\n *\n * For example\n * lib.f.replaceVars(\"%(greeting), %encodeURIComponent(name)\",\n * { greeting: \"Hello\",\n * name: \"Google+\" });\n *\n * Will result in \"Hello, Google%2B\".\n */\nlib.f.replaceVars = function(str, vars) {\n return str.replace(/%([a-z]*)\\(([^\\)]+)\\)/gi, function(match, fn, varname) {\n if (typeof vars[varname] == 'undefined')\n throw 'Unknown variable: ' + varname;\n\n var rv = vars[varname];\n\n if (fn in lib.f.replaceVars.functions) {\n rv = lib.f.replaceVars.functions[fn](rv);\n } else if (fn) {\n throw 'Unknown escape function: ' + fn;\n }\n\n return rv;\n });\n};\n\n/**\n * Functions that can be used with replaceVars.\n *\n * Clients can add to this list to extend lib.f.replaceVars().\n */\nlib.f.replaceVars.functions = {\n encodeURI: encodeURI,\n encodeURIComponent: encodeURIComponent,\n escapeHTML: function(str) {\n var map = {\n '<': '<',\n '>': '>',\n '&': '&',\n '\"': '"',\n \"'\": '''\n };\n\n return str.replace(/[<>&\\\"\\']/g, function(m) { return map[m] });\n }\n};\n\n/**\n * Get the list of accepted UI languages.\n *\n * @param {function(Array)} callback Function to invoke with the results. The\n * parameter is a list of locale names.\n */\nlib.f.getAcceptLanguages = function(callback) {\n if (lib.f.getAcceptLanguages.chromeSupported()) {\n chrome.i18n.getAcceptLanguages(callback);\n } else {\n setTimeout(function() {\n callback([navigator.language.replace(/-/g, '_')]);\n }, 0);\n }\n};\n\nlib.f.getAcceptLanguages.chromeSupported = function() {\n return window.chrome && chrome.i18n;\n};\n\n/**\n * Parse a query string into a hash.\n *\n * This takes a url query string in the form 'name1=value&name2=value' and\n * converts it into an object of the form { name1: 'value', name2: 'value' }.\n * If a given name appears multiple times in the query string, only the\n * last value will appear in the result.\n *\n * Names and values are passed through decodeURIComponent before being added\n * to the result object.\n *\n * @param {string} queryString The string to parse. If it starts with a\n * leading '?', the '?' will be ignored.\n */\nlib.f.parseQuery = function(queryString) {\n if (queryString.startsWith('?'))\n queryString = queryString.substr(1);\n\n var rv = {};\n\n var pairs = queryString.split('&');\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i].split('=');\n rv[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);\n }\n\n return rv;\n};\n\nlib.f.getURL = function(path) {\n if (lib.f.getURL.chromeSupported())\n return chrome.runtime.getURL(path);\n\n return path;\n};\n\nlib.f.getURL.chromeSupported = function() {\n return window.chrome && chrome.runtime && chrome.runtime.getURL;\n};\n\n/**\n * Clamp a given integer to a specified range.\n *\n * @param {integer} v The value to be clamped.\n * @param {integer} min The minimum acceptable value.\n * @param {integer} max The maximum acceptable value.\n */\nlib.f.clamp = function(v, min, max) {\n if (v < min)\n return min;\n if (v > max)\n return max;\n return v;\n};\n\n/**\n * Left pad a number to a given length with leading zeros.\n *\n * @param {string|integer} number The number to pad.\n * @param {integer} length The desired length.\n * @return {string} The padded number as a string.\n */\nlib.f.zpad = function(number, length) {\n return String(number).padStart(length, '0');\n};\n\n/**\n * Return a string containing a given number of space characters.\n *\n * This method maintains a static cache of the largest amount of whitespace\n * ever requested. It shouldn't be used to generate an insanely huge amount of\n * whitespace.\n *\n * @param {integer} length The desired amount of whitespace.\n * @param {string} A string of spaces of the requested length.\n */\nlib.f.getWhitespace = function(length) {\n if (length <= 0)\n return '';\n\n var f = this.getWhitespace;\n if (!f.whitespace)\n f.whitespace = ' ';\n\n while (length > f.whitespace.length) {\n f.whitespace += f.whitespace;\n }\n\n return f.whitespace.substr(0, length);\n};\n\n /**\n * Ensure that a function is called within a certain time limit.\n *\n * Simple usage looks like this...\n *\n * lib.registerInit(lib.f.alarm(onInit));\n *\n * This will log a warning to the console if onInit() is not invoked within\n * 5 seconds.\n *\n * If you're performing some operation that may take longer than 5 seconds you\n * can pass a duration in milliseconds as the optional second parameter.\n *\n * If you pass a string identifier instead of a callback function, you'll get a\n * wrapper generator rather than a single wrapper. Each call to the\n * generator will return a wrapped version of the callback wired to\n * a shared timeout. This is for cases where you want to ensure that at least\n * one of a set of callbacks is invoked before a timeout expires.\n *\n * var alarm = lib.f.alarm('fetch object');\n * lib.foo.fetchObject(alarm(onSuccess), alarm(onFailure));\n *\n * @param {function(*)} callback The function to wrap in an alarm.\n * @param {int} opt_ms Optional number of milliseconds to wait before raising\n * an alarm. Default is 5000 (5 seconds).\n * @return {function} If callback is a function then the return value will be\n * the wrapped callback. If callback is a string then the return value will\n * be a function that generates new wrapped callbacks.\n */\nlib.f.alarm = function(callback, opt_ms) {\n var ms = opt_ms || 5 * 1000;\n var stack = lib.f.getStack(1);\n\n return (function() {\n // This outer function is called immediately. It's here to capture a new\n // scope for the timeout variable.\n\n // The 'timeout' variable is shared by this timeout function, and the\n // callback wrapper.\n var timeout = setTimeout(function() {\n var name = (typeof callback == 'string') ? name : callback.name;\n name = name ? (': ' + name) : '';\n console.warn('lib.f.alarm: timeout expired: ' + (ms / 1000) + 's' + name);\n console.log(stack);\n timeout = null;\n }, ms);\n\n var wrapperGenerator = function(callback) {\n return function() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n\n return callback.apply(null, arguments);\n }\n };\n\n if (typeof callback == 'string')\n return wrapperGenerator;\n\n return wrapperGenerator(callback);\n })();\n};\n\n/**\n * Return the current call stack after skipping a given number of frames.\n *\n * This method is intended to be used for debugging only. It returns an\n * Object instead of an Array, because the console stringifies arrays by\n * default and that's not what we want.\n *\n * A typical call might look like...\n *\n * console.log('Something wicked this way came', lib.f.getStack());\n * // Notice the comma ^\n *\n * This would print the message to the js console, followed by an object\n * which can be clicked to reveal the stack.\n *\n * @param {number} opt_ignoreFrames The optional number of stack frames to\n * ignore. The actual 'getStack' call is always ignored.\n */\nlib.f.getStack = function(opt_ignoreFrames) {\n var ignoreFrames = opt_ignoreFrames ? opt_ignoreFrames + 2 : 2;\n\n var stackArray;\n\n try {\n throw new Error();\n } catch (ex) {\n stackArray = ex.stack.split('\\n');\n }\n\n var stackObject = {};\n for (var i = ignoreFrames; i < stackArray.length; i++) {\n stackObject[i - ignoreFrames] = stackArray[i].replace(/^\\s*at\\s+/, '');\n }\n\n return stackObject;\n};\n\n/**\n * Divides the two numbers and floors the results, unless the remainder is less\n * than an incredibly small value, in which case it returns the ceiling.\n * This is useful when the number are truncated approximations of longer\n * values, and so doing division with these numbers yields a result incredibly\n * close to a whole number.\n *\n * @param {number} numerator\n * @param {number} denominator\n * @return {number}\n */\nlib.f.smartFloorDivide = function(numerator, denominator) {\n var val = numerator / denominator;\n var ceiling = Math.ceil(val);\n if (ceiling - val < .0001) {\n return ceiling;\n } else {\n return Math.floor(val);\n }\n};\n\n/**\n * Get a random integer in a range (inclusive).\n *\n * @param {number} min The lowest integer in the range.\n * @param {number} max The highest integer in the range.\n * @return {number} A random number between min & max.\n */\nlib.f.randomInt = function(min, max) {\n return Math.floor(Math.random() * (max - min + 1)) + min;\n};\n// SOURCE FILE: libdot/js/lib_message_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * MessageManager class handles internationalized strings.\n *\n * Note: chrome.i18n isn't sufficient because...\n * 1. There's a bug in chrome that makes it unavailable in iframes:\n * https://crbug.com/130200\n * 2. The client code may not be packaged in a Chrome extension.\n * 3. The client code may be part of a library packaged in a third-party\n * Chrome extension.\n *\n * @param {Array} languages List of languages to load, in the order they\n * should be loaded. Newer messages replace older ones. 'en' is\n * automatically added as the first language if it is not already present.\n */\nlib.MessageManager = function(languages) {\n this.languages_ = languages.map(\n function(el) { return el.replace(/-/g, '_') });\n\n if (this.languages_.indexOf('en') == -1)\n this.languages_.unshift('en');\n\n this.messages = {};\n};\n\n/**\n * Add message definitions to the message manager.\n *\n * This takes an object of the same format of a Chrome messages.json file. See\n * .\n */\nlib.MessageManager.prototype.addMessages = function(defs) {\n for (var key in defs) {\n var def = defs[key];\n\n if (!def.placeholders) {\n this.messages[key] = def.message;\n } else {\n // Replace \"$NAME$\" placeholders with \"$1\", etc.\n this.messages[key] = def.message.replace(\n /\\$([a-z][^\\s\\$]+)\\$/ig,\n function(m, name) {\n return defs[key].placeholders[name.toLowerCase()].content;\n });\n }\n }\n};\n\n/**\n * Load the first available language message bundle.\n *\n * @param {string} pattern A url pattern containing a \"$1\" where the locale\n * name should go.\n * @param {function(Array,Array)} onComplete Function to be called when loading\n * is complete. The two arrays are the list of successful and failed\n * locale names. If the first parameter is length 0, no locales were\n * loaded.\n */\nlib.MessageManager.prototype.findAndLoadMessages = function(\n pattern, onComplete) {\n var languages = this.languages_.concat();\n var loaded = [];\n var failed = [];\n\n function onLanguageComplete(state) {\n if (state) {\n loaded = languages.shift();\n } else {\n failed = languages.shift();\n }\n\n if (languages.length) {\n tryNextLanguage();\n } else {\n onComplete(loaded, failed);\n }\n }\n\n var tryNextLanguage = function() {\n this.loadMessages(this.replaceReferences(pattern, languages),\n onLanguageComplete.bind(this, true),\n onLanguageComplete.bind(this, false));\n }.bind(this);\n\n tryNextLanguage();\n};\n\n/**\n * Load messages from a messages.json file.\n */\nlib.MessageManager.prototype.loadMessages = function(\n url, onSuccess, opt_onError) {\n var xhr = new XMLHttpRequest();\n\n xhr.onloadend = function() {\n if (xhr.status != 200) {\n if (opt_onError)\n opt_onError(xhr.status);\n\n return;\n }\n\n this.addMessages(JSON.parse(xhr.responseText));\n onSuccess();\n }.bind(this);\n\n xhr.open('GET', url);\n xhr.send();\n};\n\n/**\n * Replace $1...$n references with the elements of the args array.\n *\n * @param {string} msg String containing the message and argument references.\n * @param {Array} args Array containing the argument values.\n */\nlib.MessageManager.replaceReferences = function(msg, args) {\n return msg.replace(/\\$(\\d+)/g, function (m, index) {\n return args[index - 1];\n });\n};\n\n/**\n * Per-instance copy of replaceReferences.\n */\nlib.MessageManager.prototype.replaceReferences =\n lib.MessageManager.replaceReferences;\n\n/**\n * Get a message by name, optionally replacing arguments too.\n *\n * @param {string} msgname String containing the name of the message to get.\n * @param {Array} opt_args Optional array containing the argument values.\n * @param {string} opt_default Optional value to return if the msgname is not\n * found. Returns the message name by default.\n */\nlib.MessageManager.prototype.get = function(msgname, opt_args, opt_default) {\n var message;\n\n if (msgname in this.messages) {\n message = this.messages[msgname];\n\n } else {\n if (window.chrome.i18n)\n message = chrome.i18n.getMessage(msgname);\n\n if (!message) {\n console.warn('Unknown message: ' + msgname);\n return (typeof opt_default == 'undefined') ? msgname : opt_default;\n }\n }\n\n if (!opt_args)\n return message;\n\n if (!(opt_args instanceof Array))\n opt_args = [opt_args];\n\n return this.replaceReferences(message, opt_args);\n};\n\n/**\n * Process all of the \"i18n\" html attributes found in a given dom fragment.\n *\n * The real work happens in processI18nAttribute.\n */\nlib.MessageManager.prototype.processI18nAttributes = function(dom) {\n var nodes = dom.querySelectorAll('[i18n]');\n\n for (var i = 0; i < nodes.length; i++)\n this.processI18nAttribute(nodes[i]);\n};\n\n/**\n * Process the \"i18n\" attribute in the specified node.\n *\n * The i18n attribute should contain a JSON object. The keys are taken to\n * be attribute names, and the values are message names.\n *\n * If the JSON object has a \"_\" (underscore) key, its value is used as the\n * textContent of the element.\n *\n * Message names can refer to other attributes on the same element with by\n * prefixing with a dollar sign. For example...\n *\n * \n *\n * The aria-label message name will be computed as \"SEND_BUTTON_ARIA_LABEL\".\n * Notice that the \"id\" attribute was appended to the target attribute, and\n * the result converted to UPPER_AND_UNDER style.\n */\nlib.MessageManager.prototype.processI18nAttribute = function(node) {\n // Convert the \"lower-and-dashes\" attribute names into\n // \"UPPER_AND_UNDER\" style.\n function thunk(str) { return str.replace(/-/g, '_').toUpperCase() }\n\n var i18n = node.getAttribute('i18n');\n if (!i18n)\n return;\n\n try {\n i18n = JSON.parse(i18n);\n } catch (ex) {\n console.error('Can\\'t parse ' + node.tagName + '#' + node.id + ': ' + i18n);\n throw ex;\n }\n\n // Load all the messages specified in the i18n attributes.\n for (var key in i18n) {\n // The node attribute we'll be setting.\n var attr = key;\n\n var msgname = i18n[key];\n // For \"=foo\", re-use the referenced message name.\n if (msgname.startsWith('=')) {\n key = msgname.substr(1);\n msgname = i18n[key];\n }\n\n // For \"$foo\", calculate the message name.\n if (msgname.startsWith('$'))\n msgname = thunk(node.getAttribute(msgname.substr(1)) + '_' + key);\n\n // Finally load the message.\n var msg = this.get(msgname);\n if (attr == '_')\n node.textContent = msg;\n else\n node.setAttribute(attr, msg);\n }\n};\n// SOURCE FILE: libdot/js/lib_preference_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Constructor for lib.PreferenceManager objects.\n *\n * These objects deal with persisting changes to stable storage and notifying\n * consumers when preferences change.\n *\n * It is intended that the backing store could be something other than HTML5\n * storage, but there aren't any use cases at the moment. In the future there\n * may be a chrome api to store sync-able name/value pairs, and we'd want\n * that.\n *\n * @param {lib.Storage.*} storage The storage object to use as a backing\n * store.\n * @param {string} opt_prefix The optional prefix to be used for all preference\n * names. The '/' character should be used to separate levels of hierarchy,\n * if you're going to have that kind of thing. If provided, the prefix\n * should start with a '/'. If not provided, it defaults to '/'.\n */\nlib.PreferenceManager = function(storage, opt_prefix) {\n this.storage = storage;\n this.storageObserver_ = this.onStorageChange_.bind(this);\n\n this.isActive_ = false;\n this.activate();\n\n this.trace = false;\n\n var prefix = opt_prefix || '/';\n if (!prefix.endsWith('/'))\n prefix += '/';\n\n this.prefix = prefix;\n\n this.prefRecords_ = {};\n this.globalObservers_ = [];\n\n this.childFactories_ = {};\n\n // Map of list-name to {map of child pref managers}\n // As in...\n //\n // this.childLists_ = {\n // 'profile-ids': {\n // 'one': PreferenceManager,\n // 'two': PreferenceManager,\n // ...\n // },\n //\n // 'frob-ids': {\n // ...\n // }\n // }\n this.childLists_ = {};\n};\n\n/**\n * Used internally to indicate that the current value of the preference should\n * be taken from the default value defined with the preference.\n *\n * Equality tests against this value MUST use '===' or '!==' to be accurate.\n */\nlib.PreferenceManager.prototype.DEFAULT_VALUE = lib.f.createEnum('DEFAULT');\n\n/**\n * An individual preference.\n *\n * These objects are managed by the PreferenceManager, you shouldn't need to\n * handle them directly.\n */\nlib.PreferenceManager.Record = function(name, defaultValue) {\n this.name = name;\n this.defaultValue = defaultValue;\n this.currentValue = this.DEFAULT_VALUE;\n this.observers = [];\n};\n\n/**\n * A local copy of the DEFAULT_VALUE constant to make it less verbose.\n */\nlib.PreferenceManager.Record.prototype.DEFAULT_VALUE =\n lib.PreferenceManager.prototype.DEFAULT_VALUE;\n\n/**\n * Register a callback to be invoked when this preference changes.\n *\n * @param {function(value, string, lib.PreferenceManager} observer The function\n * to invoke. It will receive the new value, the name of the preference,\n * and a reference to the PreferenceManager as parameters.\n */\nlib.PreferenceManager.Record.prototype.addObserver = function(observer) {\n this.observers.push(observer);\n};\n\n/**\n * Unregister an observer callback.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.PreferenceManager.Record.prototype.removeObserver = function(observer) {\n var i = this.observers.indexOf(observer);\n if (i >= 0)\n this.observers.splice(i, 1);\n};\n\n/**\n * Fetch the value of this preference.\n */\nlib.PreferenceManager.Record.prototype.get = function() {\n if (this.currentValue === this.DEFAULT_VALUE) {\n if (/^(string|number)$/.test(typeof this.defaultValue))\n return this.defaultValue;\n\n if (typeof this.defaultValue == 'object') {\n // We want to return a COPY of the default value so that users can\n // modify the array or object without changing the default value.\n return JSON.parse(JSON.stringify(this.defaultValue));\n }\n\n return this.defaultValue;\n }\n\n return this.currentValue;\n};\n\n/**\n * Stop this preference manager from tracking storage changes.\n *\n * Call this if you're going to swap out one preference manager for another so\n * that you don't get notified about irrelevant changes.\n */\nlib.PreferenceManager.prototype.deactivate = function() {\n if (!this.isActive_)\n throw new Error('Not activated');\n\n this.isActive_ = false;\n this.storage.removeObserver(this.storageObserver_);\n};\n\n/**\n * Start tracking storage changes.\n *\n * If you previously deactivated this preference manager, you can reactivate it\n * with this method. You don't need to call this at initialization time, as\n * it's automatically called as part of the constructor.\n */\nlib.PreferenceManager.prototype.activate = function() {\n if (this.isActive_)\n throw new Error('Already activated');\n\n this.isActive_ = true;\n this.storage.addObserver(this.storageObserver_);\n};\n\n/**\n * Read the backing storage for these preferences.\n *\n * You should do this once at initialization time to prime the local cache\n * of preference values. The preference manager will monitor the backing\n * storage for changes, so you should not need to call this more than once.\n *\n * This function recursively reads storage for all child preference managers as\n * well.\n *\n * This function is asynchronous, if you need to read preference values, you\n * *must* wait for the callback.\n *\n * @param {function()} opt_callback Optional function to invoke when the read\n * has completed.\n */\nlib.PreferenceManager.prototype.readStorage = function(opt_callback) {\n var pendingChildren = 0;\n\n function onChildComplete() {\n if (--pendingChildren == 0 && opt_callback)\n opt_callback();\n }\n\n var keys = Object.keys(this.prefRecords_).map(\n function(el) { return this.prefix + el }.bind(this));\n\n if (this.trace)\n console.log('Preferences read: ' + this.prefix);\n\n this.storage.getItems(keys, function(items) {\n var prefixLength = this.prefix.length;\n\n for (var key in items) {\n var value = items[key];\n var name = key.substr(prefixLength);\n var needSync = (name in this.childLists_ &&\n (JSON.stringify(value) !=\n JSON.stringify(this.prefRecords_[name].currentValue)));\n\n this.prefRecords_[name].currentValue = value;\n\n if (needSync) {\n pendingChildren++;\n this.syncChildList(name, onChildComplete);\n }\n }\n\n if (pendingChildren == 0 && opt_callback)\n setTimeout(opt_callback);\n }.bind(this));\n};\n\n/**\n * Define a preference.\n *\n * This registers a name, default value, and onChange handler for a preference.\n *\n * @param {string} name The name of the preference. This will be prefixed by\n * the prefix of this PreferenceManager before written to local storage.\n * @param {string|number|boolean|Object|Array|null} value The default value of\n * this preference. Anything that can be represented in JSON is a valid\n * default value.\n * @param {function(value, string, lib.PreferenceManager} opt_observer A\n * function to invoke when the preference changes. It will receive the new\n * value, the name of the preference, and a reference to the\n * PreferenceManager as parameters.\n */\nlib.PreferenceManager.prototype.definePreference = function(\n name, value, opt_onChange) {\n\n var record = this.prefRecords_[name];\n if (record) {\n this.changeDefault(name, value);\n } else {\n record = this.prefRecords_[name] =\n new lib.PreferenceManager.Record(name, value);\n }\n\n if (opt_onChange)\n record.addObserver(opt_onChange);\n};\n\n/**\n * Define multiple preferences with a single function call.\n *\n * @param {Array} defaults An array of 3-element arrays. Each three element\n * array should contain the [key, value, onChange] parameters for a\n * preference.\n */\nlib.PreferenceManager.prototype.definePreferences = function(defaults) {\n for (var i = 0; i < defaults.length; i++) {\n this.definePreference(defaults[i][0], defaults[i][1], defaults[i][2]);\n }\n};\n\n/**\n * Define an ordered list of child preferences.\n *\n * Child preferences are different from just storing an array of JSON objects\n * in that each child is an instance of a preference manager. This means you\n * can observe changes to individual child preferences, and get some validation\n * that you're not reading or writing to an undefined child preference value.\n *\n * @param {string} listName A name for the list of children. This must be\n * unique in this preference manager. The listName will become a\n * preference on this PreferenceManager used to store the ordered list of\n * child ids. It is also used in get/add/remove operations to identify the\n * list of children to operate on.\n * @param {function} childFactory A function that will be used to generate\n * instances of these children. The factory function will receive the\n * parent lib.PreferenceManager object and a unique id for the new child\n * preferences.\n */\nlib.PreferenceManager.prototype.defineChildren = function(\n listName, childFactory) {\n\n // Define a preference to hold the ordered list of child ids.\n this.definePreference(listName, [],\n this.onChildListChange_.bind(this, listName));\n this.childFactories_[listName] = childFactory;\n this.childLists_[listName] = {};\n};\n\n/**\n * Register to observe preference changes.\n *\n * @param {Function} global A callback that will happen for every preference.\n * Pass null if you don't need one.\n * @param {Object} map A map of preference specific callbacks. Pass null if\n * you don't need any.\n */\nlib.PreferenceManager.prototype.addObservers = function(global, map) {\n if (global && typeof global != 'function')\n throw new Error('Invalid param: globals');\n\n if (global)\n this.globalObservers_.push(global);\n\n if (!map)\n return;\n\n for (var name in map) {\n if (!(name in this.prefRecords_))\n throw new Error('Unknown preference: ' + name);\n\n this.prefRecords_[name].addObserver(map[name]);\n }\n};\n\n/**\n * Dispatch the change observers for all known preferences.\n *\n * It may be useful to call this after readStorage completes, in order to\n * get application state in sync with user preferences.\n *\n * This can be used if you've changed a preference manager out from under\n * a live object, for example when switching to a different prefix.\n */\nlib.PreferenceManager.prototype.notifyAll = function() {\n for (var name in this.prefRecords_) {\n this.notifyChange_(name);\n }\n};\n\n/**\n * Notify the change observers for a given preference.\n *\n * @param {string} name The name of the preference that changed.\n */\nlib.PreferenceManager.prototype.notifyChange_ = function(name) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n var currentValue = record.get();\n\n for (var i = 0; i < this.globalObservers_.length; i++)\n this.globalObservers_[i](name, currentValue);\n\n for (var i = 0; i < record.observers.length; i++) {\n record.observers[i](currentValue, name, this);\n }\n};\n\n/**\n * Create a new child PreferenceManager for the given child list.\n *\n * The optional hint parameter is an opaque prefix added to the auto-generated\n * unique id for this child. Your child factory can parse out the prefix\n * and use it.\n *\n * @param {string} listName The child list to create the new instance from.\n * @param {string} opt_hint Optional hint to include in the child id.\n * @param {string} opt_id Optional id to override the generated id.\n */\nlib.PreferenceManager.prototype.createChild = function(listName, opt_hint,\n opt_id) {\n var ids = this.get(listName);\n var id;\n\n if (opt_id) {\n id = opt_id;\n if (ids.indexOf(id) != -1)\n throw new Error('Duplicate child: ' + listName + ': ' + id);\n\n } else {\n // Pick a random, unique 4-digit hex identifier for the new profile.\n while (!id || ids.indexOf(id) != -1) {\n id = lib.f.randomInt(1, 0xffff).toString(16);\n id = lib.f.zpad(id, 4);\n if (opt_hint)\n id = opt_hint + ':' + id;\n }\n }\n\n var childManager = this.childFactories_[listName](this, id);\n childManager.trace = this.trace;\n childManager.resetAll();\n\n this.childLists_[listName][id] = childManager;\n\n ids.push(id);\n this.set(listName, ids);\n\n return childManager;\n};\n\n/**\n * Remove a child preferences instance.\n *\n * Removes a child preference manager and clears any preferences stored in it.\n *\n * @param {string} listName The name of the child list containing the child to\n * remove.\n * @param {string} id The child ID.\n */\nlib.PreferenceManager.prototype.removeChild = function(listName, id) {\n var prefs = this.getChild(listName, id);\n prefs.resetAll();\n\n var ids = this.get(listName);\n var i = ids.indexOf(id);\n if (i != -1) {\n ids.splice(i, 1);\n this.set(listName, ids);\n }\n\n delete this.childLists_[listName][id];\n};\n\n/**\n * Return a child PreferenceManager instance for a given id.\n *\n * If the child list or child id is not known this will return the specified\n * default value or throw an exception if no default value is provided.\n *\n * @param {string} listName The child list to look in.\n * @param {string} id The child ID.\n * @param {*} opt_default The optional default value to return if the child\n * is not found.\n */\nlib.PreferenceManager.prototype.getChild = function(listName, id, opt_default) {\n if (!(listName in this.childLists_))\n throw new Error('Unknown child list: ' + listName);\n\n var childList = this.childLists_[listName];\n if (!(id in childList)) {\n if (typeof opt_default == 'undefined')\n throw new Error('Unknown \"' + listName + '\" child: ' + id);\n\n return opt_default;\n }\n\n return childList[id];\n};\n\n/**\n * Calculate the difference between two lists of child ids.\n *\n * Given two arrays of child ids, this function will return an object\n * with \"added\", \"removed\", and \"common\" properties. Each property is\n * a map of child-id to `true`. For example, given...\n *\n * a = ['child-x', 'child-y']\n * b = ['child-y']\n *\n * diffChildLists(a, b) =>\n * { added: { 'child-x': true }, removed: {}, common: { 'child-y': true } }\n *\n * The added/removed properties assume that `a` is the current list.\n *\n * @param {Array[string]} a The most recent list of child ids.\n * @param {Array[string]} b An older list of child ids.\n * @return {Object} An object with added/removed/common properties.\n */\nlib.PreferenceManager.diffChildLists = function(a, b) {\n var rv = {\n added: {},\n removed: {},\n common: {},\n };\n\n for (var i = 0; i < a.length; i++) {\n if (b.indexOf(a[i]) != -1) {\n rv.common[a[i]] = true;\n } else {\n rv.added[a[i]] = true;\n }\n }\n\n for (var i = 0; i < b.length; i++) {\n if ((b[i] in rv.added) || (b[i] in rv.common))\n continue;\n\n rv.removed[b[i]] = true;\n }\n\n return rv;\n};\n\n/**\n * Synchronize a list of child PreferenceManagers instances with the current\n * list stored in prefs.\n *\n * This will instantiate any missing managers and read current preference values\n * from storage. Any active managers that no longer appear in preferences will\n * be deleted.\n *\n * @param {string} listName The child list to synchronize.\n * @param {function()} opt_callback Optional function to invoke when the sync\n * is complete.\n */\nlib.PreferenceManager.prototype.syncChildList = function(\n listName, opt_callback) {\n\n var pendingChildren = 0;\n function onChildStorage() {\n if (--pendingChildren == 0 && opt_callback)\n opt_callback();\n }\n\n // The list of child ids that we *should* have a manager for.\n var currentIds = this.get(listName);\n\n // The known managers at the start of the sync. Any manager still in this\n // list at the end should be discarded.\n var oldIds = Object.keys(this.childLists_[listName]);\n\n var rv = lib.PreferenceManager.diffChildLists(currentIds, oldIds);\n\n for (var i = 0; i < currentIds.length; i++) {\n var id = currentIds[i];\n\n var managerIndex = oldIds.indexOf(id);\n if (managerIndex >= 0)\n oldIds.splice(managerIndex, 1);\n\n if (!this.childLists_[listName][id]) {\n var childManager = this.childFactories_[listName](this, id);\n if (!childManager) {\n console.warn('Unable to restore child: ' + listName + ': ' + id);\n continue;\n }\n\n childManager.trace = this.trace;\n this.childLists_[listName][id] = childManager;\n pendingChildren++;\n childManager.readStorage(onChildStorage);\n }\n }\n\n for (var i = 0; i < oldIds.length; i++) {\n delete this.childLists_[listName][oldIds[i]];\n }\n\n if (!pendingChildren && opt_callback)\n setTimeout(opt_callback);\n};\n\n/**\n * Reset a preference to its default state.\n *\n * This will dispatch the onChange handler if the preference value actually\n * changes.\n *\n * @param {string} name The preference to reset.\n */\nlib.PreferenceManager.prototype.reset = function(name) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n this.storage.removeItem(this.prefix + name);\n\n if (record.currentValue !== this.DEFAULT_VALUE) {\n record.currentValue = this.DEFAULT_VALUE;\n this.notifyChange_(name);\n }\n};\n\n/**\n * Reset all preferences back to their default state.\n */\nlib.PreferenceManager.prototype.resetAll = function() {\n var changed = [];\n\n for (var listName in this.childLists_) {\n var childList = this.childLists_[listName];\n for (var id in childList) {\n childList[id].resetAll();\n }\n }\n\n for (var name in this.prefRecords_) {\n if (this.prefRecords_[name].currentValue !== this.DEFAULT_VALUE) {\n this.prefRecords_[name].currentValue = this.DEFAULT_VALUE;\n changed.push(name);\n }\n }\n\n var keys = Object.keys(this.prefRecords_).map(function(el) {\n return this.prefix + el;\n }.bind(this));\n\n this.storage.removeItems(keys);\n\n changed.forEach(this.notifyChange_.bind(this));\n};\n\n/**\n * Return true if two values should be considered not-equal.\n *\n * If both values are the same scalar type and compare equal this function\n * returns false (no difference), otherwise return true.\n *\n * This is used in places where we want to check if a preference has changed.\n * Rather than take the time to compare complex values we just consider them\n * to always be different.\n *\n * @param {*} a A value to compare.\n * @param {*} b A value to compare.\n */\nlib.PreferenceManager.prototype.diff = function(a, b) {\n // If the types are different, or the type is not a simple primitive one.\n if ((typeof a) !== (typeof b) ||\n !(/^(undefined|boolean|number|string)$/.test(typeof a))) {\n return true;\n }\n\n return a !== b;\n};\n\n/**\n * Change the default value of a preference.\n *\n * This is useful when subclassing preference managers.\n *\n * The function does not alter the current value of the preference, unless\n * it has the old default value. When that happens, the change observers\n * will be notified.\n *\n * @param {string} name The name of the parameter to change.\n * @param {*} newValue The new default value for the preference.\n */\nlib.PreferenceManager.prototype.changeDefault = function(name, newValue) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n if (!this.diff(record.defaultValue, newValue)) {\n // Default value hasn't changed.\n return;\n }\n\n if (record.currentValue !== this.DEFAULT_VALUE) {\n // This pref has a specific value, just change the default and we're done.\n record.defaultValue = newValue;\n return;\n }\n\n record.defaultValue = newValue;\n\n this.notifyChange_(name);\n};\n\n/**\n * Change the default value of multiple preferences.\n *\n * @param {Object} map A map of name -> value pairs specifying the new default\n * values.\n */\nlib.PreferenceManager.prototype.changeDefaults = function(map) {\n for (var key in map) {\n this.changeDefault(key, map[key]);\n }\n};\n\n/**\n * Set a preference to a specific value.\n *\n * This will dispatch the onChange handler if the preference value actually\n * changes.\n *\n * @param {string} key The preference to set.\n * @param {*} value The value to set. Anything that can be represented in\n * JSON is a valid value.\n */\nlib.PreferenceManager.prototype.set = function(name, newValue) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n var oldValue = record.get();\n\n if (!this.diff(oldValue, newValue))\n return;\n\n if (this.diff(record.defaultValue, newValue)) {\n record.currentValue = newValue;\n this.storage.setItem(this.prefix + name, newValue);\n } else {\n record.currentValue = this.DEFAULT_VALUE;\n this.storage.removeItem(this.prefix + name);\n }\n\n // We need to manually send out the notification on this instance. If we\n // The storage event won't fire a notification because we've already changed\n // the currentValue, so it won't see a difference. If we delayed changing\n // currentValue until the storage event, a pref read immediately after a write\n // would return the previous value.\n //\n // The notification is in a timeout so clients don't accidentally depend on\n // a synchronous notification.\n setTimeout(this.notifyChange_.bind(this, name), 0);\n};\n\n/**\n * Get the value of a preference.\n *\n * @param {string} key The preference to get.\n */\nlib.PreferenceManager.prototype.get = function(name) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n return record.get();\n};\n\n/**\n * Return all non-default preferences as a JSON object.\n *\n * This includes any nested preference managers as well.\n */\nlib.PreferenceManager.prototype.exportAsJson = function() {\n var rv = {};\n\n for (var name in this.prefRecords_) {\n if (name in this.childLists_) {\n rv[name] = [];\n var childIds = this.get(name);\n for (var i = 0; i < childIds.length; i++) {\n var id = childIds[i];\n rv[name].push({id: id, json: this.getChild(name, id).exportAsJson()});\n }\n\n } else {\n var record = this.prefRecords_[name];\n if (record.currentValue != this.DEFAULT_VALUE)\n rv[name] = record.currentValue;\n }\n }\n\n return rv;\n};\n\n/**\n * Import a JSON blob of preferences previously generated with exportAsJson.\n *\n * This will create nested preference managers as well.\n */\nlib.PreferenceManager.prototype.importFromJson = function(json) {\n for (var name in json) {\n if (name in this.childLists_) {\n var childList = json[name];\n for (var i = 0; i < childList.length; i++) {\n var id = childList[i].id;\n\n var childPrefManager = this.childLists_[name][id];\n if (!childPrefManager)\n childPrefManager = this.createChild(name, null, id);\n\n childPrefManager.importFromJson(childList[i].json);\n }\n\n } else {\n this.set(name, json[name]);\n }\n }\n};\n\n/**\n * Called when one of the child list preferences changes.\n */\nlib.PreferenceManager.prototype.onChildListChange_ = function(listName) {\n this.syncChildList(listName);\n};\n\n/**\n * Called when a key in the storage changes.\n */\nlib.PreferenceManager.prototype.onStorageChange_ = function(map) {\n for (var key in map) {\n if (this.prefix) {\n if (key.lastIndexOf(this.prefix, 0) != 0)\n continue;\n }\n\n var name = key.substr(this.prefix.length);\n\n if (!(name in this.prefRecords_)) {\n // Sometimes we'll get notified about prefs that are no longer defined.\n continue;\n }\n\n var record = this.prefRecords_[name];\n\n var newValue = map[key].newValue;\n var currentValue = record.currentValue;\n if (currentValue === record.DEFAULT_VALUE)\n currentValue = (void 0);\n\n if (this.diff(currentValue, newValue)) {\n if (typeof newValue == 'undefined' || newValue === null) {\n record.currentValue = record.DEFAULT_VALUE;\n } else {\n record.currentValue = newValue;\n }\n\n this.notifyChange_(name);\n }\n }\n};\n// SOURCE FILE: libdot/js/lib_resource.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Storage for canned resources.\n *\n * These are usually non-JavaScript things that are collected during a build\n * step and converted into a series of 'lib.resource.add(...)' calls. See\n * the \"@resource\" directive from libdot/bin/concat.sh for the canonical use\n * case.\n *\n * This is global storage, so you should prefix your resource names to avoid\n * collisions.\n */\nlib.resource = {\n resources_: {}\n};\n\n/**\n * Add a resource.\n *\n * @param {string} name A name for the resource. You should prefix this to\n * avoid collisions with resources from a shared library.\n * @param {string} type A mime type for the resource, or \"raw\" if not\n * applicable.\n * @param {*} data The value of the resource.\n */\nlib.resource.add = function(name, type, data) {\n lib.resource.resources_[name] = {\n type: type,\n name: name,\n data: data\n };\n};\n\n/**\n * Retrieve a resource record.\n *\n * The resource data is stored on the \"data\" property of the returned object.\n *\n * @param {string} name The name of the resource to get.\n * @param {*} opt_defaultValue The optional value to return if the resource is\n * not defined.\n * @return {object} An object with \"type\", \"name\", and \"data\" properties.\n */\nlib.resource.get = function(name, opt_defaultValue) {\n if (!(name in lib.resource.resources_)) {\n if (typeof opt_defaultValue == 'undefined')\n throw 'Unknown resource: ' + name;\n\n return opt_defaultValue;\n }\n\n return lib.resource.resources_[name];\n};\n\n/**\n * Retrieve resource data.\n *\n * @param {string} name The name of the resource to get.\n * @param {*} opt_defaultValue The optional value to return if the resource is\n * not defined.\n * @return {*} The resource data.\n */\nlib.resource.getData = function(name, opt_defaultValue) {\n if (!(name in lib.resource.resources_)) {\n if (typeof opt_defaultValue == 'undefined')\n throw 'Unknown resource: ' + name;\n\n return opt_defaultValue;\n }\n\n return lib.resource.resources_[name].data;\n};\n\n/**\n * Retrieve resource as a data: url.\n *\n * @param {string} name The name of the resource to get.\n * @param {*} opt_defaultValue The optional value to return if the resource is\n * not defined.\n * @return {*} A data: url encoded version of the resource.\n */\nlib.resource.getDataUrl = function(name, opt_defaultValue) {\n var resource = lib.resource.get(name, opt_defaultValue);\n return 'data:' + resource.type + ',' + resource.data;\n};\n// SOURCE FILE: libdot/js/lib_storage.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Namespace for implementations of persistent, possibly cloud-backed\n * storage.\n */\nlib.Storage = new Object();\n// SOURCE FILE: libdot/js/lib_storage_chrome.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * chrome.storage based class with an async interface that is interchangeable\n * with other lib.Storage.* implementations.\n */\nlib.Storage.Chrome = function(storage) {\n this.storage_ = storage;\n this.observers_ = [];\n\n chrome.storage.onChanged.addListener(this.onChanged_.bind(this));\n};\n\n/**\n * Called by the storage implementation when the storage is modified.\n */\nlib.Storage.Chrome.prototype.onChanged_ = function(changes, areaname) {\n if (chrome.storage[areaname] != this.storage_)\n return;\n\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](changes);\n }\n};\n\n/**\n * Register a function to observe storage changes.\n *\n * @param {function(map)} callback The function to invoke when the storage\n * changes.\n */\nlib.Storage.Chrome.prototype.addObserver = function(callback) {\n this.observers_.push(callback);\n};\n\n/**\n * Unregister a change observer.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.Storage.Chrome.prototype.removeObserver = function(callback) {\n var i = this.observers_.indexOf(callback);\n if (i != -1)\n this.observers_.splice(i, 1);\n};\n\n/**\n * Delete everything in this storage.\n *\n * @param {function(map)} callback The function to invoke when the delete\n * has completed.\n */\nlib.Storage.Chrome.prototype.clear = function(opt_callback) {\n this.storage_.clear();\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Return the current value of a storage item.\n *\n * @param {string} key The key to look up.\n * @param {function(value) callback The function to invoke when the value has\n * been retrieved.\n */\nlib.Storage.Chrome.prototype.getItem = function(key, callback) {\n this.storage_.get(key, callback);\n};\n/**\n * Fetch the values of multiple storage items.\n *\n * @param {Array} keys The keys to look up.\n * @param {function(map) callback The function to invoke when the values have\n * been retrieved.\n */\n\nlib.Storage.Chrome.prototype.getItems = function(keys, callback) {\n this.storage_.get(keys, callback);\n};\n\n/**\n * Set a value in storage.\n *\n * @param {string} key The key for the value to be stored.\n * @param {*} value The value to be stored. Anything that can be serialized\n * with JSON is acceptable.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.setItem = function(key, value, opt_callback) {\n var obj = {};\n obj[key] = value;\n this.storage_.set(obj, opt_callback);\n};\n\n/**\n * Set multiple values in storage.\n *\n * @param {Object} map A map of key/values to set in storage.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.setItems = function(obj, opt_callback) {\n this.storage_.set(obj, opt_callback);\n};\n\n/**\n * Remove an item from storage.\n *\n * @param {string} key The key to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.removeItem = function(key, opt_callback) {\n this.storage_.remove(key, opt_callback);\n};\n\n/**\n * Remove multiple items from storage.\n *\n * @param {Array} keys The keys to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.removeItems = function(keys, opt_callback) {\n this.storage_.remove(keys, opt_callback);\n};\n// SOURCE FILE: libdot/js/lib_storage_local.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * window.localStorage based class with an async interface that is\n * interchangeable with other lib.Storage.* implementations.\n */\nlib.Storage.Local = function() {\n this.observers_ = [];\n this.storage_ = window.localStorage;\n window.addEventListener('storage', this.onStorage_.bind(this));\n};\n\n/**\n * Called by the storage implementation when the storage is modified.\n */\nlib.Storage.Local.prototype.onStorage_ = function(e) {\n if (e.storageArea != this.storage_)\n return;\n\n // JS throws an exception if JSON.parse is given an empty string. So here we\n // only parse if the value is truthy. This mean the empty string, undefined\n // and null will not be parsed.\n var prevValue = e.oldValue ? JSON.parse(e.oldValue) : e.oldValue;\n var curValue = e.newValue ? JSON.parse(e.newValue) : e.newValue;\n var o = {};\n o[e.key] = {\n oldValue: prevValue,\n newValue: curValue\n };\n\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](o);\n }\n};\n\n/**\n * Register a function to observe storage changes.\n *\n * @param {function(map)} callback The function to invoke when the storage\n * changes.\n */\nlib.Storage.Local.prototype.addObserver = function(callback) {\n this.observers_.push(callback);\n};\n\n/**\n * Unregister a change observer.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.Storage.Local.prototype.removeObserver = function(callback) {\n var i = this.observers_.indexOf(callback);\n if (i != -1)\n this.observers_.splice(i, 1);\n};\n\n/**\n * Delete everything in this storage.\n *\n * @param {function(map)} callback The function to invoke when the delete\n * has completed.\n */\nlib.Storage.Local.prototype.clear = function(opt_callback) {\n this.storage_.clear();\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Return the current value of a storage item.\n *\n * @param {string} key The key to look up.\n * @param {function(value) callback The function to invoke when the value has\n * been retrieved.\n */\nlib.Storage.Local.prototype.getItem = function(key, callback) {\n var value = this.storage_.getItem(key);\n\n if (typeof value == 'string') {\n try {\n value = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n }\n }\n\n setTimeout(callback.bind(null, value), 0);\n};\n\n/**\n * Fetch the values of multiple storage items.\n *\n * @param {Array} keys The keys to look up.\n * @param {function(map) callback The function to invoke when the values have\n * been retrieved.\n */\nlib.Storage.Local.prototype.getItems = function(keys, callback) {\n var rv = {};\n\n for (var i = keys.length - 1; i >= 0; i--) {\n var key = keys[i];\n var value = this.storage_.getItem(key);\n if (typeof value == 'string') {\n try {\n rv[key] = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n rv[key] = value;\n }\n } else {\n keys.splice(i, 1);\n }\n }\n\n setTimeout(callback.bind(null, rv), 0);\n};\n\n/**\n * Set a value in storage.\n *\n * @param {string} key The key for the value to be stored.\n * @param {*} value The value to be stored. Anything that can be serialized\n * with JSON is acceptable.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.setItem = function(key, value, opt_callback) {\n this.storage_.setItem(key, JSON.stringify(value));\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Set multiple values in storage.\n *\n * @param {Object} map A map of key/values to set in storage.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.setItems = function(obj, opt_callback) {\n for (var key in obj) {\n this.storage_.setItem(key, JSON.stringify(obj[key]));\n }\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove an item from storage.\n *\n * @param {string} key The key to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.removeItem = function(key, opt_callback) {\n this.storage_.removeItem(key);\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove multiple items from storage.\n *\n * @param {Array} keys The keys to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.removeItems = function(ary, opt_callback) {\n for (var i = 0; i < ary.length; i++) {\n this.storage_.removeItem(ary[i]);\n }\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n// SOURCE FILE: libdot/js/lib_storage_memory.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * In-memory storage class with an async interface that is interchangeable with\n * other lib.Storage.* implementations.\n */\nlib.Storage.Memory = function() {\n this.observers_ = [];\n this.storage_ = {};\n};\n\n/**\n * Register a function to observe storage changes.\n *\n * @param {function(map)} callback The function to invoke when the storage\n * changes.\n */\nlib.Storage.Memory.prototype.addObserver = function(callback) {\n this.observers_.push(callback);\n};\n\n/**\n * Unregister a change observer.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.Storage.Memory.prototype.removeObserver = function(callback) {\n var i = this.observers_.indexOf(callback);\n if (i != -1)\n this.observers_.splice(i, 1);\n};\n\n/**\n * Delete everything in this storage.\n *\n * @param {function(map)} callback The function to invoke when the delete\n * has completed.\n */\nlib.Storage.Memory.prototype.clear = function(opt_callback) {\n var e = {};\n for (var key in this.storage_) {\n e[key] = {oldValue: this.storage_[key], newValue: (void 0)};\n }\n\n this.storage_ = {};\n\n setTimeout(function() {\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](e);\n }\n }.bind(this), 0);\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Return the current value of a storage item.\n *\n * @param {string} key The key to look up.\n * @param {function(value) callback The function to invoke when the value has\n * been retrieved.\n */\nlib.Storage.Memory.prototype.getItem = function(key, callback) {\n var value = this.storage_[key];\n\n if (typeof value == 'string') {\n try {\n value = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n }\n }\n\n setTimeout(callback.bind(null, value), 0);\n};\n\n/**\n * Fetch the values of multiple storage items.\n *\n * @param {Array} keys The keys to look up.\n * @param {function(map) callback The function to invoke when the values have\n * been retrieved.\n */\nlib.Storage.Memory.prototype.getItems = function(keys, callback) {\n var rv = {};\n\n for (var i = keys.length - 1; i >= 0; i--) {\n var key = keys[i];\n var value = this.storage_[key];\n if (typeof value == 'string') {\n try {\n rv[key] = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n rv[key] = value;\n }\n } else {\n keys.splice(i, 1);\n }\n }\n\n setTimeout(callback.bind(null, rv), 0);\n};\n\n/**\n * Set a value in storage.\n *\n * @param {string} key The key for the value to be stored.\n * @param {*} value The value to be stored. Anything that can be serialized\n * with JSON is acceptable.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.setItem = function(key, value, opt_callback) {\n var oldValue = this.storage_[key];\n this.storage_[key] = JSON.stringify(value);\n\n var e = {};\n e[key] = {oldValue: oldValue, newValue: value};\n\n setTimeout(function() {\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](e);\n }\n }.bind(this), 0);\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Set multiple values in storage.\n *\n * @param {Object} map A map of key/values to set in storage.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.setItems = function(obj, opt_callback) {\n var e = {};\n\n for (var key in obj) {\n e[key] = {oldValue: this.storage_[key], newValue: obj[key]};\n this.storage_[key] = JSON.stringify(obj[key]);\n }\n\n setTimeout(function() {\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](e);\n }\n }.bind(this));\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove an item from storage.\n *\n * @param {string} key The key to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.removeItem = function(key, opt_callback) {\n delete this.storage_[key];\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove multiple items from storage.\n *\n * @param {Array} keys The keys to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.removeItems = function(ary, opt_callback) {\n for (var i = 0; i < ary.length; i++) {\n delete this.storage_[ary[i]];\n }\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n// SOURCE FILE: libdot/js/lib_test_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * @fileoverview JavaScript unit testing framework for synchronous and\n * asynchronous tests.\n *\n * This file contains the lib.TestManager and related classes. At the moment\n * it's all collected in a single file since it's reasonably small\n * (=~1k lines), and it's a lot easier to include one file into your test\n * harness than it is to include seven.\n *\n * The following classes are defined...\n *\n * lib.TestManager - The root class and entrypoint for creating test runs.\n * lib.TestManager.Log - Logging service.\n * lib.TestManager.Suite - A collection of tests.\n * lib.TestManager.Test - A single test.\n * lib.TestManager.TestRun - Manages the execution of a set of tests.\n * lib.TestManager.Result - A single test result.\n */\n\n/**\n * Root object in the unit test hierarchy, and keeper of the log object.\n *\n * @param {lib.TestManager.Log} opt_log Optional lib.TestManager.Log object.\n * Logs to the JavaScript console if omitted.\n */\nlib.TestManager = function(opt_log) {\n this.log = opt_log || new lib.TestManager.Log();\n}\n\n/**\n * Create a new test run object for this test manager.\n *\n * @param {Object} opt_cx An object to be passed to test suite setup(),\n * preamble(), and test cases during this test run. This object is opaque\n * to lib.TestManager.* code. It's entirely up to the test suite what it's\n * used for.\n */\nlib.TestManager.prototype.createTestRun = function(opt_cx) {\n return new lib.TestManager.TestRun(this, opt_cx);\n};\n\n/**\n * Called when a test run associated with this test manager completes.\n *\n * Clients may override this to call an appropriate function.\n */\nlib.TestManager.prototype.onTestRunComplete = function(testRun) {};\n\n/**\n * Called before a test associated with this test manager is run.\n *\n * @param {lib.TestManager.Result} result The result object for the upcoming\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.prototype.testPreamble = function(result, cx) {};\n\n/**\n * Called after a test associated with this test manager finishes.\n *\n * @param {lib.TestManager.Result} result The result object for the finished\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.prototype.testPostamble = function(result, cx) {};\n\n/**\n * Destination for test case output.\n *\n * Thw API will be the same as the console object. e.g. We support info(),\n * warn(), error(), etc... just like console.info(), etc...\n *\n * @param {Object} opt_console The console object to route all logging through.\n * Should provide saome API as the standard console API.\n */\nlib.TestManager.Log = function(opt_console=console) {\n this.save = false;\n this.data = '';\n this.prefix_ = '';\n this.prefixStack_ = 0;\n\n // Capture all the console entry points in case code at runtime calls these\n // directly. We want to be able to still see things.\n // We also expose the direct API to our callers (e.g. we provide warn()).\n this.console_ = opt_console;\n ['log', 'debug', 'info', 'warn', 'error'].forEach((level) => {\n let msgPrefix = '';\n switch (level) {\n case 'debug':\n case 'warn':\n case 'error':\n msgPrefix = level.toUpperCase() + ': ';\n break;\n }\n\n const oLog = this.console_[level];\n this[level] = this.console_[level] = (...args) => {\n if (this.save)\n this.data += this.prefix_ + msgPrefix + args.join(' ') + '\\n';\n oLog.apply(this.console_, args);\n };\n });\n\n // Wrap/bind the group functions.\n ['group', 'groupCollapsed'].forEach((group) => {\n const oGroup = this.console_[group];\n this[group] = this.console_[group] = (label='') => {\n oGroup(label);\n if (this.save)\n this.data += this.prefix_ + label + '\\n';\n this.prefix_ = ' '.repeat(++this.prefixStack_);\n };\n });\n\n const oGroupEnd = this.console_.groupEnd;\n this.groupEnd = this.console_.groupEnd = () => {\n oGroupEnd();\n this.prefix_ = ' '.repeat(--this.prefixStack_);\n };\n};\n\n/**\n * Returns a new constructor function that will inherit from\n * lib.TestManager.Suite.\n *\n * Use this function to create a new test suite subclass. It will return a\n * properly initialized constructor function for the subclass. You can then\n * override the setup() and preamble() methods if necessary and add test cases\n * to the subclass.\n *\n * var MyTests = new lib.TestManager.Suite('MyTests');\n *\n * MyTests.prototype.setup = function(cx) {\n * // Sets this.size to cx.size if it exists, or the default value of 10\n * // if not.\n * this.setDefault(cx, {size: 10});\n * };\n *\n * MyTests.prototype.preamble = function(result, cx) {\n * // Some tests (even successful ones) may side-effect this list, so\n * // recreate it before every test.\n * this.list = [];\n * for (var i = 0; i < this.size; i++) {\n * this.list[i] = i;\n * }\n * };\n *\n * // Basic synchronous test case.\n * MyTests.addTest('pop-length', function(result, cx) {\n * this.list.pop();\n *\n * // If this assertion fails, the testcase will stop here.\n * result.assertEQ(this.list.length, this.size - 1);\n *\n * // A test must indicate it has passed by calling this method.\n * result.pass();\n * });\n *\n * // Sample asynchronous test case.\n * MyTests.addTest('async-pop-length', function(result, cx) {\n * var self = this;\n *\n * var callback = function() {\n * result.assertEQ(self.list.length, self.size - 1);\n * result.pass();\n * };\n *\n * // Wait 100ms to check the array length for the sake of this example.\n * setTimeout(callback, 100);\n *\n * this.list.pop();\n *\n * // Indicate that this test needs another 200ms to complete.\n * // If the test does not report pass/fail by then, it is considered to\n * // have timed out.\n * result.requestTime(200);\n * });\n *\n * ...\n *\n * @param {string} suiteName The name of the test suite.\n */\nlib.TestManager.Suite = function(suiteName) {\n function ctor(testManager, cx) {\n this.testManager_ = testManager;\n this.suiteName = suiteName;\n\n this.setup(cx);\n }\n\n ctor.suiteName = suiteName;\n ctor.addTest = lib.TestManager.Suite.addTest;\n ctor.disableTest = lib.TestManager.Suite.disableTest;\n ctor.getTest = lib.TestManager.Suite.getTest;\n ctor.getTestList = lib.TestManager.Suite.getTestList;\n ctor.testList_ = [];\n ctor.testMap_ = {};\n ctor.prototype = Object.create(lib.TestManager.Suite.prototype);\n ctor.constructor = lib.TestManager.Suite;\n\n lib.TestManager.Suite.subclasses.push(ctor);\n\n return ctor;\n};\n\n/**\n * List of lib.TestManager.Suite subclasses, in the order they were defined.\n */\nlib.TestManager.Suite.subclasses = [];\n\n/**\n * Add a test to a lib.TestManager.Suite.\n *\n * This method is copied to new subclasses when they are created.\n */\nlib.TestManager.Suite.addTest = function(testName, testFunction) {\n if (testName in this.testMap_)\n throw 'Duplicate test name: ' + testName;\n\n var test = new lib.TestManager.Test(this, testName, testFunction);\n this.testMap_[testName] = test;\n this.testList_.push(test);\n};\n\n/**\n * Defines a disabled test.\n */\nlib.TestManager.Suite.disableTest = function(testName, testFunction) {\n if (testName in this.testMap_)\n throw 'Duplicate test name: ' + testName;\n\n var test = new lib.TestManager.Test(this, testName, testFunction);\n console.log('Disabled test: ' + test.fullName);\n};\n\n/**\n * Get a lib.TestManager.Test instance by name.\n *\n * This method is copied to new subclasses when they are created.\n *\n * @param {string} testName The name of the desired test.\n * @return {lib.TestManager.Test} The requested test, or undefined if it was not\n * found.\n */\nlib.TestManager.Suite.getTest = function(testName) {\n return this.testMap_[testName];\n};\n\n/**\n * Get an array of lib.TestManager.Tests associated with this Suite.\n *\n * This method is copied to new subclasses when they are created.\n */\nlib.TestManager.Suite.getTestList = function() {\n return this.testList_;\n};\n\n/**\n * Set properties on a test suite instance, pulling the property value from\n * the context if it exists and from the defaults dictionary if not.\n *\n * This is intended to be used in your test suite's setup() method to\n * define parameters for the test suite which may be overridden through the\n * context object. For example...\n *\n * MySuite.prototype.setup = function(cx) {\n * this.setDefaults(cx, {size: 10});\n * };\n *\n * If the context object has a 'size' property then this.size will be set to\n * the value of cx.size, otherwise this.size will get a default value of 10.\n *\n * @param {Object} cx The context object for a test run.\n * @param {Object} defaults An object containing name/value pairs to set on\n * this test suite instance. The value listed here will be used if the\n * name is not defined on the context object.\n */\nlib.TestManager.Suite.prototype.setDefaults = function(cx, defaults) {\n for (var k in defaults) {\n this[k] = (k in cx) ? cx[k] : defaults[k];\n }\n};\n\n/**\n * Subclassable method called to set up the test suite.\n *\n * The default implementation of this method is a no-op. If your test suite\n * requires some kind of suite-wide setup, this is the place to do it.\n *\n * It's fine to store state on the test suite instance, that state will be\n * accessible to all tests in the suite. If any test case fails, the entire\n * test suite object will be discarded and a new one will be created for\n * the remaining tests.\n *\n * Any side effects outside of this test suite instance must be idempotent.\n * For example, if you're adding DOM nodes to a document, make sure to first\n * test that they're not already there. If they are, remove them rather than\n * reuse them. You should not count on their state, since they were probably\n * left behind by a failed testcase.\n *\n * Any exception here will abort the remainder of the test run.\n *\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.Suite.prototype.setup = function(cx) {};\n\n/**\n * Subclassable method called to do pre-test set up.\n *\n * The default implementation of this method is a no-op. If your test suite\n * requires some kind of pre-test setup, this is the place to do it.\n *\n * This can be used to avoid a bunch of boilerplate setup/teardown code in\n * this suite's testcases.\n *\n * Any exception here will abort the remainder of the test run.\n *\n * @param {lib.TestManager.Result} result The result object for the upcoming\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.Suite.prototype.preamble = function(result, cx) {};\n\n/**\n * Subclassable method called to do post-test tear-down.\n *\n * The default implementation of this method is a no-op. If your test suite\n * requires some kind of pre-test setup, this is the place to do it.\n *\n * This can be used to avoid a bunch of boilerplate setup/teardown code in\n * this suite's testcases.\n *\n * Any exception here will abort the remainder of the test run.\n *\n * @param {lib.TestManager.Result} result The result object for the finished\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.Suite.prototype.postamble = function(result, cx) {};\n\n/**\n * Object representing a single test in a test suite.\n *\n * These are created as part of the lib.TestManager.Suite.addTest() method.\n * You should never have to construct one by hand.\n *\n * @param {lib.TestManager.Suite} suiteClass The test suite class containing\n * this test.\n * @param {string} testName The local name of this test case, not including the\n * test suite name.\n * @param {function(lib.TestManager.Result, Object)} testFunction The function\n * to invoke for this test case. This is passed a Result instance and the\n * context object associated with the test run.\n *\n */\nlib.TestManager.Test = function(suiteClass, testName, testFunction) {\n /**\n * The test suite class containing this function.\n */\n this.suiteClass = suiteClass;\n\n /**\n * The local name of this test, not including the test suite name.\n */\n this.testName = testName;\n\n /**\n * The global name of this test, including the test suite name.\n */\n this.fullName = suiteClass.suiteName + '[' + testName + ']';\n\n // The function to call for this test.\n this.testFunction_ = testFunction;\n};\n\n/**\n * Execute this test.\n *\n * This is called by a lib.TestManager.Result instance, as part of a\n * lib.TestManager.TestRun. You should not call it by hand.\n *\n * @param {lib.TestManager.Result} result The result object for the test.\n */\nlib.TestManager.Test.prototype.run = function(result) {\n try {\n // Tests are applied to the parent lib.TestManager.Suite subclass.\n this.testFunction_.apply(result.suite,\n [result, result.testRun.cx]);\n } catch (ex) {\n if (ex instanceof lib.TestManager.Result.TestComplete)\n return;\n\n result.println('Test raised an exception: ' + ex);\n\n if (ex.stack) {\n if (ex.stack instanceof Array) {\n result.println(ex.stack.join('\\n'));\n } else {\n result.println(ex.stack);\n }\n }\n\n result.completeTest_(result.FAILED, false);\n }\n};\n\n/**\n * Used to choose a set of tests and run them.\n *\n * It's slightly more convenient to construct one of these from\n * lib.TestManager.prototype.createTestRun().\n *\n * @param {lib.TestManager} testManager The testManager associated with this\n * TestRun.\n * @param {Object} cx A context to be passed into the tests. This can be used\n * to set parameters for the test suite or individual test cases.\n */\nlib.TestManager.TestRun = function(testManager, cx) {\n /**\n * The associated lib.TestManager instance.\n */\n this.testManager = testManager;\n\n /**\n * Shortcut to the lib.TestManager's log.\n */\n this.log = testManager.log;\n\n /**\n * The test run context. It's entirely up to the test suite and test cases\n * how this is used. It is opaque to lib.TestManager.* classes.\n */\n this.cx = cx || {};\n\n /**\n * The list of test cases that encountered failures.\n */\n this.failures = [];\n\n /**\n * The list of test cases that passed.\n */\n this.passes = [];\n\n /**\n * The time the test run started, or null if it hasn't been started yet.\n */\n this.startDate = null;\n\n /**\n * The time in milliseconds that the test run took to complete, or null if\n * it hasn't completed yet.\n */\n this.duration = null;\n\n /**\n * The most recent result object, or null if the test run hasn't started\n * yet. In order to detect late failures, this is not cleared when the test\n * completes.\n */\n this.currentResult = null;\n\n /**\n * Number of maximum failures. The test run will stop when this number is\n * reached. If 0 or omitted, the entire set of selected tests is run, even\n * if some fail.\n */\n this.maxFailures = 0;\n\n /**\n * True if this test run ended early because of an unexpected condition.\n */\n this.panic = false;\n\n // List of pending test cases.\n this.testQueue_ = [];\n\n};\n\n/**\n * This value can be passed to select() to indicate that all tests should\n * be selected.\n */\nlib.TestManager.TestRun.prototype.ALL_TESTS = lib.f.createEnum('');\n\n/**\n * Add a single test to the test run.\n */\nlib.TestManager.TestRun.prototype.selectTest = function(test) {\n this.testQueue_.push(test);\n};\n\nlib.TestManager.TestRun.prototype.selectSuite = function(\n suiteClass, opt_pattern) {\n var pattern = opt_pattern || this.ALL_TESTS;\n var selectCount = 0;\n var testList = suiteClass.getTestList();\n\n for (var j = 0; j < testList.length; j++) {\n var test = testList[j];\n // Note that we're using \"!==\" rather than \"!=\" so that we're matching\n // the ALL_TESTS String object, rather than the contents of the string.\n if (pattern !== this.ALL_TESTS) {\n if (pattern instanceof RegExp) {\n if (!pattern.test(test.testName))\n continue;\n } else if (test.testName != pattern) {\n continue;\n }\n }\n\n this.selectTest(test);\n selectCount++;\n }\n\n return selectCount;\n};\n\n/**\n * Selects one or more tests to gather results for.\n *\n * Selecting the same test more than once is allowed.\n *\n * @param {string|RegExp} pattern Pattern used to select tests.\n * If TestRun.prototype.ALL_TESTS, all tests are selected.\n * If a string, only the test that exactly matches is selected.\n * If a RegExp, only tests matching the RegExp are added.\n *\n * @return {int} The number of additional tests that have been selected into\n * this TestRun.\n */\nlib.TestManager.TestRun.prototype.selectPattern = function(pattern) {\n var selectCount = 0;\n\n for (var i = 0; i < lib.TestManager.Suite.subclasses.length; i++) {\n selectCount += this.selectSuite(lib.TestManager.Suite.subclasses[i],\n pattern);\n }\n\n if (!selectCount) {\n this.log.warn('No tests matched selection criteria: ' + pattern);\n }\n\n return selectCount;\n};\n\n/**\n * Hooked up to window.onerror during a test run in order to catch exceptions\n * that would otherwise go uncaught.\n */\nlib.TestManager.TestRun.prototype.onUncaughtException_ = function(\n message, file, line) {\n\n if (message.indexOf('Uncaught lib.TestManager.Result.TestComplete') == 0 ||\n message.indexOf('status: passed') != -1) {\n // This is a result.pass() or result.fail() call from a callback. We're\n // already going to deal with it as part of the completeTest_() call\n // that raised it. We can safely squelch this error message.\n return true;\n }\n\n if (!this.currentResult)\n return;\n\n if (message == 'Uncaught ' + this.currentResult.expectedErrorMessage_) {\n // Test cases may need to raise an unhandled exception as part of the test.\n return;\n }\n\n var when = 'during';\n\n if (this.currentResult.status != this.currentResult.PENDING)\n when = 'after';\n\n this.log.error('Uncaught exception ' + when + ' test case: ' +\n this.currentResult.test.fullName);\n this.log.error(message + ', ' + file + ':' + line);\n\n this.currentResult.completeTest_(this.currentResult.FAILED, false);\n\n return false;\n};\n\n/**\n * Called to when this test run has completed.\n *\n * This method typically re-runs itself asynchronously, in order to let the\n * DOM stabilize and short-term timeouts to complete before declaring the\n * test run complete.\n *\n * @param {boolean} opt_skipTimeout If true, the timeout is skipped and the\n * test run is completed immediately. This should only be used from within\n * this function.\n */\nlib.TestManager.TestRun.prototype.onTestRunComplete_ = function(\n opt_skipTimeout) {\n if (!opt_skipTimeout) {\n // The final test may have left a lingering setTimeout(..., 0), or maybe\n // poked at the DOM in a way that will trigger a event to fire at the end\n // of this stack, so we give things a chance to settle down before our\n // final cleanup...\n setTimeout(this.onTestRunComplete_.bind(this), 0, true);\n return;\n }\n\n this.duration = (new Date()) - this.startDate;\n\n this.log.groupEnd();\n this.log.info(this.passes.length + ' passed, ' +\n this.failures.length + ' failed, ' +\n this.msToSeconds_(this.duration));\n\n this.summarize();\n\n window.onerror = null;\n\n this.testManager.onTestRunComplete(this);\n};\n\n/**\n * Called by the lib.TestManager.Result object when a test completes.\n *\n * @param {lib.TestManager.Result} result The result object which has just\n * completed.\n */\nlib.TestManager.TestRun.prototype.onResultComplete = function(result) {\n try {\n this.testManager.testPostamble(result, this.cx);\n result.suite.postamble(result, this.ctx);\n } catch (ex) {\n this.log.error('Unexpected exception in postamble: ' +\n (ex.stack ? ex.stack : ex));\n this.panic = true;\n }\n\n if (result.status != result.PASSED)\n this.log.error(result.status);\n else if (result.duration > 500)\n this.log.warn('Slow test took ' + this.msToSeconds_(result.duration));\n this.log.groupEnd();\n\n if (result.status == result.FAILED) {\n this.failures.push(result);\n this.currentSuite = null;\n } else if (result.status == result.PASSED) {\n this.passes.push(result);\n } else {\n this.log.error('Unknown result status: ' + result.test.fullName + ': ' +\n result.status);\n return this.panic = true;\n }\n\n this.runNextTest_();\n};\n\n/**\n * Called by the lib.TestManager.Result object when a test which has already\n * completed reports another completion.\n *\n * This is usually indicative of a buggy testcase. It is probably reporting a\n * result on exit and then again from an asynchronous callback.\n *\n * It may also be the case that the last act of the testcase causes a DOM change\n * which triggers some event to run after the test returns. If the event\n * handler reports a failure or raises an uncaught exception, the test will\n * fail even though it has already completed.\n *\n * In any case, re-completing a test ALWAYS moves it into the failure pile.\n *\n * @param {lib.TestManager.Result} result The result object which has just\n * completed.\n * @param {string} lateStatus The status that the test attempted to record this\n * time around.\n */\nlib.TestManager.TestRun.prototype.onResultReComplete = function(\n result, lateStatus) {\n this.log.error('Late complete for test: ' + result.test.fullName + ': ' +\n lateStatus);\n\n // Consider any late completion a failure, even if it's a double-pass, since\n // it's a misuse of the testing API.\n var index = this.passes.indexOf(result);\n if (index >= 0) {\n this.passes.splice(index, 1);\n this.failures.push(result);\n }\n};\n\n/**\n * Run the next test in the queue.\n */\nlib.TestManager.TestRun.prototype.runNextTest_ = function() {\n if (this.panic || !this.testQueue_.length)\n return this.onTestRunComplete_();\n\n if (this.maxFailures && this.failures.length >= this.maxFailures) {\n this.log.error('Maximum failure count reached, aborting test run.');\n return this.onTestRunComplete_();\n }\n\n // Peek at the top test first. We remove it later just before it's about\n // to run, so that we don't disturb the incomplete test count in the\n // event that we fail before running it.\n var test = this.testQueue_[0];\n var suite = this.currentResult ? this.currentResult.suite : null;\n\n try {\n if (!suite || !(suite instanceof test.suiteClass)) {\n if (suite)\n this.log.groupEnd();\n this.log.group(test.suiteClass.suiteName);\n suite = new test.suiteClass(this.testManager, this.cx);\n }\n } catch (ex) {\n // If test suite setup fails we're not even going to try to run the tests.\n this.log.error('Exception during setup: ' + (ex.stack ? ex.stack : ex));\n this.panic = true;\n this.onTestRunComplete_();\n return;\n }\n\n try {\n this.log.group(test.testName);\n\n this.currentResult = new lib.TestManager.Result(this, suite, test);\n this.testManager.testPreamble(this.currentResult, this.cx);\n suite.preamble(this.currentResult, this.cx);\n\n this.testQueue_.shift();\n } catch (ex) {\n this.log.error('Unexpected exception during test preamble: ' +\n (ex.stack ? ex.stack : ex));\n this.log.groupEnd();\n\n this.panic = true;\n this.onTestRunComplete_();\n return;\n }\n\n try {\n this.currentResult.run();\n } catch (ex) {\n // Result.run() should catch test exceptions and turn them into failures.\n // If we got here, it means there is trouble in the testing framework.\n this.log.error('Unexpected exception during test run: ' +\n (ex.stack ? ex.stack : ex));\n this.panic = true;\n }\n};\n\n/**\n * Run the selected list of tests.\n *\n * Some tests may need to run asynchronously, so you cannot assume the run is\n * complete when this function returns. Instead, pass in a function to be\n * called back when the run has completed.\n *\n * This function will log the results of the test run as they happen into the\n * log defined by the associated lib.TestManager. By default this is\n * console.log, which can be viewed in the JavaScript console of most browsers.\n *\n * The browser state is determined by the last test to run. We intentionally\n * don't do any cleanup so that you can inspect the state of a failed test, or\n * leave the browser ready for manual testing.\n *\n * Any failures in lib.TestManager.* code or test suite setup or test case\n * preamble will cause the test run to abort.\n */\nlib.TestManager.TestRun.prototype.run = function() {\n this.log.info('Running ' + this.testQueue_.length + ' test(s)');\n\n window.onerror = this.onUncaughtException_.bind(this);\n this.startDate = new Date();\n this.runNextTest_();\n};\n\n/**\n * Format milliseconds as fractional seconds.\n */\nlib.TestManager.TestRun.prototype.msToSeconds_ = function(ms) {\n var secs = (ms / 1000).toFixed(2);\n return secs + 's';\n};\n\n/**\n * Log the current result summary.\n */\nlib.TestManager.TestRun.prototype.summarize = function() {\n if (this.failures.length) {\n for (var i = 0; i < this.failures.length; i++) {\n this.log.error('FAILED: ' + this.failures[i].test.fullName);\n }\n }\n\n if (this.testQueue_.length) {\n this.log.warn('Test run incomplete: ' + this.testQueue_.length +\n ' test(s) were not run.');\n }\n};\n\n/**\n * Record of the result of a single test.\n *\n * These are constructed during a test run, you shouldn't have to make one\n * on your own.\n *\n * An instance of this class is passed in to each test function. It can be\n * used to add messages to the test log, to record a test pass/fail state, to\n * test assertions, or to create exception-proof wrappers for callback\n * functions.\n *\n * @param {lib.TestManager.TestRun} testRun The TestRun instance associated with\n * this result.\n * @param {lib.TestManager.Suit} suite The Suite containing the test we're\n * collecting this result for.\n * @param {lib.TestManager.Test} test The test we're collecting this result for.\n */\nlib.TestManager.Result = function(testRun, suite, test) {\n /**\n * The TestRun instance associated with this result.\n */\n this.testRun = testRun;\n\n /**\n * The Suite containing the test we're collecting this result for.\n */\n this.suite = suite;\n\n /**\n * The test we're collecting this result for.\n */\n this.test = test;\n\n /**\n * The time we started to collect this result, or null if we haven't started.\n */\n this.startDate = null;\n\n /**\n * The time in milliseconds that the test took to complete, or null if\n * it hasn't completed yet.\n */\n this.duration = null;\n\n /**\n * The current status of this test result.\n */\n this.status = this.PENDING;\n\n // An error message that the test case is expected to generate.\n this.expectedErrorMessage_ = null;\n};\n\n/**\n * Possible values for this.status.\n */\nlib.TestManager.Result.prototype.PENDING = 'pending';\nlib.TestManager.Result.prototype.FAILED = 'FAILED';\nlib.TestManager.Result.prototype.PASSED = 'passed';\n\n/**\n * Exception thrown when a test completes (pass or fail), to ensure no more of\n * the test is run.\n */\nlib.TestManager.Result.TestComplete = function(result) {\n this.result = result;\n};\n\nlib.TestManager.Result.TestComplete.prototype.toString = function() {\n return 'lib.TestManager.Result.TestComplete: ' + this.result.test.fullName +\n ', status: ' + this.result.status;\n}\n\n/**\n * Start the test associated with this result.\n */\nlib.TestManager.Result.prototype.run = function() {\n var self = this;\n\n this.startDate = new Date();\n this.test.run(this);\n\n if (this.status == this.PENDING && !this.timeout_) {\n this.println('Test did not return a value and did not request more time.');\n this.completeTest_(this.FAILED, false);\n }\n};\n\n/**\n * Unhandled error message this test expects to generate.\n *\n * This must be the exact string that would appear in the JavaScript console,\n * minus the 'Uncaught ' prefix.\n *\n * The test case does *not* automatically fail if the error message is not\n * encountered.\n */\nlib.TestManager.Result.prototype.expectErrorMessage = function(str) {\n this.expectedErrorMessage_ = str;\n};\n\n/**\n * Function called when a test times out.\n */\nlib.TestManager.Result.prototype.onTimeout_ = function() {\n this.timeout_ = null;\n\n if (this.status != this.PENDING)\n return;\n\n this.println('Test timed out.');\n this.completeTest_(this.FAILED, false);\n};\n\n/**\n * Indicate that a test case needs more time to complete.\n *\n * Before a test case returns it must report a pass/fail result, or request more\n * time to do so.\n *\n * If a test does not report pass/fail before the time expires it will\n * be reported as a timeout failure. Any late pass/fails will be noted in the\n * test log, but will not affect the final result of the test.\n *\n * Test cases may call requestTime more than once. If you have a few layers\n * of asynchronous API to go through, you should call this once per layer with\n * an estimate of how long each callback will take to complete.\n *\n * @param {int} ms Number of milliseconds requested.\n */\nlib.TestManager.Result.prototype.requestTime = function(ms) {\n if (this.timeout_)\n clearTimeout(this.timeout_);\n\n this.timeout_ = setTimeout(this.onTimeout_.bind(this), ms);\n};\n\n/**\n * Report the completion of a test.\n *\n * @param {string} status The status of the test case.\n * @param {boolean} opt_throw Optional boolean indicating whether or not\n * to throw the TestComplete exception.\n */\nlib.TestManager.Result.prototype.completeTest_ = function(status, opt_throw) {\n if (this.status == this.PENDING) {\n this.duration = (new Date()) - this.startDate;\n this.status = status;\n\n this.testRun.onResultComplete(this);\n } else {\n this.testRun.onResultReComplete(this, status);\n }\n\n if (arguments.length < 2 || opt_throw)\n throw new lib.TestManager.Result.TestComplete(this);\n};\n\n/**\n * Check that two arrays are equal.\n */\nlib.TestManager.Result.prototype.arrayEQ_ = function(actual, expected) {\n if (!actual || !expected)\n return (!actual && !expected);\n\n if (actual.length != expected.length)\n return false;\n\n for (var i = 0; i < actual.length; ++i)\n if (actual[i] != expected[i])\n return false;\n\n return true;\n};\n\n/**\n * Assert that an actual value is exactly equal to the expected value.\n *\n * This uses the JavaScript '===' operator in order to avoid type coercion.\n *\n * If the assertion fails, the test is marked as a failure and a TestCompleted\n * exception is thrown.\n *\n * @param {*} actual The actual measured value.\n * @param {*} expected The value expected.\n * @param {string} opt_name An optional name used to identify this\n * assertion in the test log. If omitted it will be the file:line\n * of the caller.\n */\nlib.TestManager.Result.prototype.assertEQ = function(\n actual, expected, opt_name) {\n // Utility function to pretty up the log.\n function format(value) {\n if (typeof value == 'number')\n return value;\n\n var str = String(value);\n var ary = str.split('\\n').map(function (e) { return JSON.stringify(e) });\n if (ary.length > 1) {\n // If the string has newlines, start it off on its own line so that\n // it's easier to compare against another string with newlines.\n return '\\n' + ary.join('\\n');\n } else {\n return ary.join('\\n');\n }\n }\n\n if (actual === expected)\n return;\n\n // Deal with common object types since JavaScript can't.\n if (expected instanceof Array)\n if (this.arrayEQ_(actual, expected))\n return;\n\n var name = opt_name ? '[' + opt_name + ']' : '';\n\n this.fail('assertEQ' + name + ': ' + this.getCallerLocation_(1) + ': ' +\n format(actual) + ' !== ' + format(expected));\n};\n\n/**\n * Assert that a value is true.\n *\n * This uses the JavaScript '===' operator in order to avoid type coercion.\n * The must be the boolean value `true`, not just some \"truish\" value.\n *\n * If the assertion fails, the test is marked as a failure and a TestCompleted\n * exception is thrown.\n *\n * @param {boolean} actual The actual measured value.\n * @param {string} opt_name An optional name used to identify this\n * assertion in the test log. If omitted it will be the file:line\n * of the caller.\n */\nlib.TestManager.Result.prototype.assert = function(actual, opt_name) {\n if (actual === true)\n return;\n\n var name = opt_name ? '[' + opt_name + ']' : '';\n\n this.fail('assert' + name + ': ' + this.getCallerLocation_(1) + ': ' +\n String(actual));\n};\n\n/**\n * Return the filename:line of a calling stack frame.\n *\n * This uses a dirty hack. It throws an exception, catches it, and examines\n * the stack property of the caught exception.\n *\n * @param {int} frameIndex The stack frame to return. 0 is the frame that\n * called this method, 1 is its caller, and so on.\n * @return {string} A string of the format \"filename:linenumber\".\n */\nlib.TestManager.Result.prototype.getCallerLocation_ = function(frameIndex) {\n try {\n throw new Error();\n } catch (ex) {\n var frame = ex.stack.split('\\n')[frameIndex + 2];\n var ary = frame.match(/([^/]+:\\d+):\\d+\\)?$/);\n return ary ? ary[1] : '???';\n }\n};\n\n/**\n * Write a message to the result log.\n */\nlib.TestManager.Result.prototype.println = function(message) {\n this.testRun.log.info(message);\n};\n\n/**\n * Mark a failed test and exit out of the rest of the test.\n *\n * This will throw a TestCompleted exception, causing the current test to stop.\n *\n * @param {string} opt_message Optional message to add to the log.\n */\nlib.TestManager.Result.prototype.fail = function(opt_message) {\n if (arguments.length)\n this.println(opt_message);\n\n this.completeTest_(this.FAILED, true);\n};\n\n/**\n * Mark a passed test and exit out of the rest of the test.\n *\n * This will throw a TestCompleted exception, causing the current test to stop.\n */\nlib.TestManager.Result.prototype.pass = function() {\n this.completeTest_(this.PASSED, true);\n};\n// SOURCE FILE: libdot/js/lib_utf8.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n// TODO(davidben): When the string encoding API is implemented,\n// replace this with the native in-browser implementation.\n//\n// https://wiki.whatwg.org/wiki/StringEncoding\n// https://encoding.spec.whatwg.org/\n\n/**\n * A stateful UTF-8 decoder.\n */\nlib.UTF8Decoder = function() {\n // The number of bytes left in the current sequence.\n this.bytesLeft = 0;\n // The in-progress code point being decoded, if bytesLeft > 0.\n this.codePoint = 0;\n // The lower bound on the final code point, if bytesLeft > 0.\n this.lowerBound = 0;\n};\n\n/**\n * Decodes a some UTF-8 data, taking into account state from previous\n * data streamed through the encoder.\n *\n * @param {String} str data to decode, represented as a JavaScript\n * String with each code unit representing a byte between 0x00 to\n * 0xFF.\n * @return {String} The data decoded into a JavaScript UTF-16 string.\n */\nlib.UTF8Decoder.prototype.decode = function(str) {\n var ret = '';\n for (var i = 0; i < str.length; i++) {\n var c = str.charCodeAt(i);\n if (this.bytesLeft == 0) {\n if (c <= 0x7F) {\n ret += str.charAt(i);\n } else if (0xC0 <= c && c <= 0xDF) {\n this.codePoint = c - 0xC0;\n this.bytesLeft = 1;\n this.lowerBound = 0x80;\n } else if (0xE0 <= c && c <= 0xEF) {\n this.codePoint = c - 0xE0;\n this.bytesLeft = 2;\n this.lowerBound = 0x800;\n } else if (0xF0 <= c && c <= 0xF7) {\n this.codePoint = c - 0xF0;\n this.bytesLeft = 3;\n this.lowerBound = 0x10000;\n } else if (0xF8 <= c && c <= 0xFB) {\n this.codePoint = c - 0xF8;\n this.bytesLeft = 4;\n this.lowerBound = 0x200000;\n } else if (0xFC <= c && c <= 0xFD) {\n this.codePoint = c - 0xFC;\n this.bytesLeft = 5;\n this.lowerBound = 0x4000000;\n } else {\n ret += '\\ufffd';\n }\n } else {\n if (0x80 <= c && c <= 0xBF) {\n this.bytesLeft--;\n this.codePoint = (this.codePoint << 6) + (c - 0x80);\n if (this.bytesLeft == 0) {\n // Got a full sequence. Check if it's within bounds and\n // filter out surrogate pairs.\n var codePoint = this.codePoint;\n if (codePoint < this.lowerBound\n || (0xD800 <= codePoint && codePoint <= 0xDFFF)\n || codePoint > 0x10FFFF) {\n ret += '\\ufffd';\n } else {\n // Encode as UTF-16 in the output.\n if (codePoint < 0x10000) {\n ret += String.fromCharCode(codePoint);\n } else {\n // Surrogate pair.\n codePoint -= 0x10000;\n ret += String.fromCharCode(\n 0xD800 + ((codePoint >>> 10) & 0x3FF),\n 0xDC00 + (codePoint & 0x3FF));\n }\n }\n }\n } else {\n // Too few bytes in multi-byte sequence. Rewind stream so we\n // don't lose the next byte.\n ret += '\\ufffd';\n this.bytesLeft = 0;\n i--;\n }\n }\n }\n return ret;\n};\n\n/**\n * Decodes UTF-8 data. This is a convenience function for when all the\n * data is already known.\n *\n * @param {String} str data to decode, represented as a JavaScript\n * String with each code unit representing a byte between 0x00 to\n * 0xFF.\n * @return {String} The data decoded into a JavaScript UTF-16 string.\n */\nlib.decodeUTF8 = function(utf8) {\n return (new lib.UTF8Decoder()).decode(utf8);\n};\n\n/**\n * Encodes a UTF-16 string into UTF-8.\n *\n * TODO(davidben): Do we need a stateful version of this that can\n * handle a surrogate pair split in two calls? What happens if a\n * keypress event would have contained a character outside the BMP?\n *\n * @param {String} str The string to encode.\n * @return {String} The string encoded as UTF-8, as a JavaScript\n * string with bytes represented as code units from 0x00 to 0xFF.\n */\nlib.encodeUTF8 = function(str) {\n var ret = '';\n for (var i = 0; i < str.length; i++) {\n // Get a unicode code point out of str.\n var c = str.charCodeAt(i);\n if (0xDC00 <= c && c <= 0xDFFF) {\n c = 0xFFFD;\n } else if (0xD800 <= c && c <= 0xDBFF) {\n if (i+1 < str.length) {\n var d = str.charCodeAt(i+1);\n if (0xDC00 <= d && d <= 0xDFFF) {\n // Swallow a surrogate pair.\n c = 0x10000 + ((c & 0x3FF) << 10) + (d & 0x3FF);\n i++;\n } else {\n c = 0xFFFD;\n }\n } else {\n c = 0xFFFD;\n }\n }\n\n // Encode c in UTF-8.\n var bytesLeft;\n if (c <= 0x7F) {\n ret += str.charAt(i);\n continue;\n } else if (c <= 0x7FF) {\n ret += String.fromCharCode(0xC0 | (c >>> 6));\n bytesLeft = 1;\n } else if (c <= 0xFFFF) {\n ret += String.fromCharCode(0xE0 | (c >>> 12));\n bytesLeft = 2;\n } else /* if (c <= 0x10FFFF) */ {\n ret += String.fromCharCode(0xF0 | (c >>> 18));\n bytesLeft = 3;\n }\n\n while (bytesLeft > 0) {\n bytesLeft--;\n ret += String.fromCharCode(0x80 | ((c >>> (6 * bytesLeft)) & 0x3F));\n }\n }\n return ret;\n};\n// SOURCE FILE: libdot/third_party/wcwidth/lib_wc.js\n// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.\n// Use of lib.wc source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * This JavaScript library is ported from the wcwidth.js module of node.js.\n * The original implementation can be found at:\n * https://npmjs.org/package/wcwidth.js\n */\n\n/**\n * JavaScript porting of Markus Kuhn's wcwidth() implementation\n *\n * The following explanation comes from the original C implementation:\n *\n * This is an implementation of wcwidth() and wcswidth() (defined in\n * IEEE Std 1002.1-2001) for Unicode.\n *\n * http://www.opengroup.org/onlinepubs/007904975/functions/wcwidth.html\n * http://www.opengroup.org/onlinepubs/007904975/functions/wcswidth.html\n *\n * In fixed-width output devices, Latin characters all occupy a single\n * \"cell\" position of equal width, whereas ideographic CJK characters\n * occupy two such cells. Interoperability between terminal-line\n * applications and (teletype-style) character terminals using the\n * UTF-8 encoding requires agreement on which character should advance\n * the cursor by how many cell positions. No established formal\n * standards exist at present on which Unicode character shall occupy\n * how many cell positions on character terminals. These routines are\n * a first attempt of defining such behavior based on simple rules\n * applied to data provided by the Unicode Consortium.\n *\n * For some graphical characters, the Unicode standard explicitly\n * defines a character-cell width via the definition of the East Asian\n * FullWidth (F), Wide (W), Half-width (H), and Narrow (Na) classes.\n * In all these cases, there is no ambiguity about which width a\n * terminal shall use. For characters in the East Asian Ambiguous (A)\n * class, the width choice depends purely on a preference of backward\n * compatibility with either historic CJK or Western practice.\n * Choosing single-width for these characters is easy to justify as\n * the appropriate long-term solution, as the CJK practice of\n * displaying these characters as double-width comes from historic\n * implementation simplicity (8-bit encoded characters were displayed\n * single-width and 16-bit ones double-width, even for Greek,\n * Cyrillic, etc.) and not any typographic considerations.\n *\n * Much less clear is the choice of width for the Not East Asian\n * (Neutral) class. Existing practice does not dictate a width for any\n * of these characters. It would nevertheless make sense\n * typographically to allocate two character cells to characters such\n * as for instance EM SPACE or VOLUME INTEGRAL, which cannot be\n * represented adequately with a single-width glyph. The following\n * routines at present merely assign a single-cell width to all\n * neutral characters, in the interest of simplicity. This is not\n * entirely satisfactory and should be reconsidered before\n * establishing a formal standard in lib.wc area. At the moment, the\n * decision which Not East Asian (Neutral) characters should be\n * represented by double-width glyphs cannot yet be answered by\n * applying a simple rule from the Unicode database content. Setting\n * up a proper standard for the behavior of UTF-8 character terminals\n * will require a careful analysis not only of each Unicode character,\n * but also of each presentation form, something the author of these\n * routines has avoided to do so far.\n *\n * http://www.unicode.org/unicode/reports/tr11/\n *\n * Markus Kuhn -- 2007-05-26 (Unicode 5.0)\n *\n * Permission to use, copy, modify, and distribute lib.wc software\n * for any purpose and without fee is hereby granted. The author\n * disclaims all warranties with regard to lib.wc software.\n *\n * Latest version: http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c\n */\n\n/**\n * The following function defines the column width of an ISO 10646 character\n * as follows:\n *\n * - The null character (U+0000) has a column width of 0.\n * - Other C0/C1 control characters and DEL will lead to a return value of -1.\n * - Non-spacing and enclosing combining characters (general category code Mn\n * or Me in the Unicode database) have a column width of 0.\n * - SOFT HYPHEN (U+00AD) has a column width of 1.\n * - Other format characters (general category code Cf in the Unicode database)\n * and ZERO WIDTH SPACE (U+200B) have a column width of 0.\n * - Hangul Jamo medial vowels and final consonants (U+1160-U+11FF) have a\n * column width of 0.\n * - Spacing characters in the East Asian Wide (W) or East Asian Full-width (F)\n * category as defined in Unicode Technical Report #11 have a column width of\n * 2.\n * - East Asian Ambiguous characters are taken into account if\n * regardCjkAmbiguous flag is enabled. They have a column width of 2.\n * - All remaining characters (including all printable ISO 8859-1 and WGL4\n * characters, Unicode control characters, etc.) have a column width of 1.\n *\n * This implementation assumes that characters are encoded in ISO 10646.\n */\n\nlib.wc = {};\n\n// Width of a nul character.\nlib.wc.nulWidth = 0;\n\n// Width of a control character.\nlib.wc.controlWidth = 0;\n\n// Flag whether to consider East Asian Ambiguous characters.\nlib.wc.regardCjkAmbiguous = false;\n\n// Width of an East Asian Ambiguous character.\nlib.wc.cjkAmbiguousWidth = 2;\n\n// Sorted list of non-overlapping intervals of non-spacing characters\n// generated by \"uniset +cat=Me +cat=Mn +cat=Cf -00AD +1160-11FF +200B c\"\nlib.wc.combining = [\n [ 0x0300, 0x036F ], [ 0x0483, 0x0486 ], [ 0x0488, 0x0489 ],\n [ 0x0591, 0x05BD ], [ 0x05BF, 0x05BF ], [ 0x05C1, 0x05C2 ],\n [ 0x05C4, 0x05C5 ], [ 0x05C7, 0x05C7 ], [ 0x0600, 0x0603 ],\n [ 0x0610, 0x0615 ], [ 0x064B, 0x065E ], [ 0x0670, 0x0670 ],\n [ 0x06D6, 0x06E4 ], [ 0x06E7, 0x06E8 ], [ 0x06EA, 0x06ED ],\n [ 0x070F, 0x070F ], [ 0x0711, 0x0711 ], [ 0x0730, 0x074A ],\n [ 0x07A6, 0x07B0 ], [ 0x07EB, 0x07F3 ], [ 0x0901, 0x0902 ],\n [ 0x093C, 0x093C ], [ 0x0941, 0x0948 ], [ 0x094D, 0x094D ],\n [ 0x0951, 0x0954 ], [ 0x0962, 0x0963 ], [ 0x0981, 0x0981 ],\n [ 0x09BC, 0x09BC ], [ 0x09C1, 0x09C4 ], [ 0x09CD, 0x09CD ],\n [ 0x09E2, 0x09E3 ], [ 0x0A01, 0x0A02 ], [ 0x0A3C, 0x0A3C ],\n [ 0x0A41, 0x0A42 ], [ 0x0A47, 0x0A48 ], [ 0x0A4B, 0x0A4D ],\n [ 0x0A70, 0x0A71 ], [ 0x0A81, 0x0A82 ], [ 0x0ABC, 0x0ABC ],\n [ 0x0AC1, 0x0AC5 ], [ 0x0AC7, 0x0AC8 ], [ 0x0ACD, 0x0ACD ],\n [ 0x0AE2, 0x0AE3 ], [ 0x0B01, 0x0B01 ], [ 0x0B3C, 0x0B3C ],\n [ 0x0B3F, 0x0B3F ], [ 0x0B41, 0x0B43 ], [ 0x0B4D, 0x0B4D ],\n [ 0x0B56, 0x0B56 ], [ 0x0B82, 0x0B82 ], [ 0x0BC0, 0x0BC0 ],\n [ 0x0BCD, 0x0BCD ], [ 0x0C3E, 0x0C40 ], [ 0x0C46, 0x0C48 ],\n [ 0x0C4A, 0x0C4D ], [ 0x0C55, 0x0C56 ], [ 0x0CBC, 0x0CBC ],\n [ 0x0CBF, 0x0CBF ], [ 0x0CC6, 0x0CC6 ], [ 0x0CCC, 0x0CCD ],\n [ 0x0CE2, 0x0CE3 ], [ 0x0D41, 0x0D43 ], [ 0x0D4D, 0x0D4D ],\n [ 0x0DCA, 0x0DCA ], [ 0x0DD2, 0x0DD4 ], [ 0x0DD6, 0x0DD6 ],\n [ 0x0E31, 0x0E31 ], [ 0x0E34, 0x0E3A ], [ 0x0E47, 0x0E4E ],\n [ 0x0EB1, 0x0EB1 ], [ 0x0EB4, 0x0EB9 ], [ 0x0EBB, 0x0EBC ],\n [ 0x0EC8, 0x0ECD ], [ 0x0F18, 0x0F19 ], [ 0x0F35, 0x0F35 ],\n [ 0x0F37, 0x0F37 ], [ 0x0F39, 0x0F39 ], [ 0x0F71, 0x0F7E ],\n [ 0x0F80, 0x0F84 ], [ 0x0F86, 0x0F87 ], [ 0x0F90, 0x0F97 ],\n [ 0x0F99, 0x0FBC ], [ 0x0FC6, 0x0FC6 ], [ 0x102D, 0x1030 ],\n [ 0x1032, 0x1032 ], [ 0x1036, 0x1037 ], [ 0x1039, 0x1039 ],\n [ 0x1058, 0x1059 ], [ 0x1160, 0x11FF ], [ 0x135F, 0x135F ],\n [ 0x1712, 0x1714 ], [ 0x1732, 0x1734 ], [ 0x1752, 0x1753 ],\n [ 0x1772, 0x1773 ], [ 0x17B4, 0x17B5 ], [ 0x17B7, 0x17BD ],\n [ 0x17C6, 0x17C6 ], [ 0x17C9, 0x17D3 ], [ 0x17DD, 0x17DD ],\n [ 0x180B, 0x180D ], [ 0x18A9, 0x18A9 ], [ 0x1920, 0x1922 ],\n [ 0x1927, 0x1928 ], [ 0x1932, 0x1932 ], [ 0x1939, 0x193B ],\n [ 0x1A17, 0x1A18 ], [ 0x1B00, 0x1B03 ], [ 0x1B34, 0x1B34 ],\n [ 0x1B36, 0x1B3A ], [ 0x1B3C, 0x1B3C ], [ 0x1B42, 0x1B42 ],\n [ 0x1B6B, 0x1B73 ], [ 0x1DC0, 0x1DCA ], [ 0x1DFE, 0x1DFF ],\n [ 0x200B, 0x200F ], [ 0x202A, 0x202E ], [ 0x2060, 0x2063 ],\n [ 0x206A, 0x206F ], [ 0x20D0, 0x20EF ], [ 0x302A, 0x302F ],\n [ 0x3099, 0x309A ], [ 0xA806, 0xA806 ], [ 0xA80B, 0xA80B ],\n [ 0xA825, 0xA826 ], [ 0xFB1E, 0xFB1E ], [ 0xFE00, 0xFE0F ],\n [ 0xFE20, 0xFE23 ], [ 0xFEFF, 0xFEFF ], [ 0xFFF9, 0xFFFB ],\n [ 0x10A01, 0x10A03 ], [ 0x10A05, 0x10A06 ], [ 0x10A0C, 0x10A0F ],\n [ 0x10A38, 0x10A3A ], [ 0x10A3F, 0x10A3F ], [ 0x1D167, 0x1D169 ],\n [ 0x1D173, 0x1D182 ], [ 0x1D185, 0x1D18B ], [ 0x1D1AA, 0x1D1AD ],\n [ 0x1D242, 0x1D244 ], [ 0xE0001, 0xE0001 ], [ 0xE0020, 0xE007F ],\n [ 0xE0100, 0xE01EF ]\n];\n\n// Sorted list of non-overlapping intervals of East Asian Ambiguous characters\n// generated by \"uniset +WIDTH-A -cat=Me -cat=Mn -cat=Cf c\"\nlib.wc.ambiguous = [\n [ 0x00A1, 0x00A1 ], [ 0x00A4, 0x00A4 ], [ 0x00A7, 0x00A8 ],\n [ 0x00AA, 0x00AA ], [ 0x00AE, 0x00AE ], [ 0x00B0, 0x00B4 ],\n [ 0x00B6, 0x00BA ], [ 0x00BC, 0x00BF ], [ 0x00C6, 0x00C6 ],\n [ 0x00D0, 0x00D0 ], [ 0x00D7, 0x00D8 ], [ 0x00DE, 0x00E1 ],\n [ 0x00E6, 0x00E6 ], [ 0x00E8, 0x00EA ], [ 0x00EC, 0x00ED ],\n [ 0x00F0, 0x00F0 ], [ 0x00F2, 0x00F3 ], [ 0x00F7, 0x00FA ],\n [ 0x00FC, 0x00FC ], [ 0x00FE, 0x00FE ], [ 0x0101, 0x0101 ],\n [ 0x0111, 0x0111 ], [ 0x0113, 0x0113 ], [ 0x011B, 0x011B ],\n [ 0x0126, 0x0127 ], [ 0x012B, 0x012B ], [ 0x0131, 0x0133 ],\n [ 0x0138, 0x0138 ], [ 0x013F, 0x0142 ], [ 0x0144, 0x0144 ],\n [ 0x0148, 0x014B ], [ 0x014D, 0x014D ], [ 0x0152, 0x0153 ],\n [ 0x0166, 0x0167 ], [ 0x016B, 0x016B ], [ 0x01CE, 0x01CE ],\n [ 0x01D0, 0x01D0 ], [ 0x01D2, 0x01D2 ], [ 0x01D4, 0x01D4 ],\n [ 0x01D6, 0x01D6 ], [ 0x01D8, 0x01D8 ], [ 0x01DA, 0x01DA ],\n [ 0x01DC, 0x01DC ], [ 0x0251, 0x0251 ], [ 0x0261, 0x0261 ],\n [ 0x02C4, 0x02C4 ], [ 0x02C7, 0x02C7 ], [ 0x02C9, 0x02CB ],\n [ 0x02CD, 0x02CD ], [ 0x02D0, 0x02D0 ], [ 0x02D8, 0x02DB ],\n [ 0x02DD, 0x02DD ], [ 0x02DF, 0x02DF ], [ 0x0391, 0x03A1 ],\n [ 0x03A3, 0x03A9 ], [ 0x03B1, 0x03C1 ], [ 0x03C3, 0x03C9 ],\n [ 0x0401, 0x0401 ], [ 0x0410, 0x044F ], [ 0x0451, 0x0451 ],\n [ 0x2010, 0x2010 ], [ 0x2013, 0x2016 ], [ 0x2018, 0x2019 ],\n [ 0x201C, 0x201D ], [ 0x2020, 0x2022 ], [ 0x2024, 0x2027 ],\n [ 0x2030, 0x2030 ], [ 0x2032, 0x2033 ], [ 0x2035, 0x2035 ],\n [ 0x203B, 0x203B ], [ 0x203E, 0x203E ], [ 0x2074, 0x2074 ],\n [ 0x207F, 0x207F ], [ 0x2081, 0x2084 ], [ 0x20AC, 0x20AC ],\n [ 0x2103, 0x2103 ], [ 0x2105, 0x2105 ], [ 0x2109, 0x2109 ],\n [ 0x2113, 0x2113 ], [ 0x2116, 0x2116 ], [ 0x2121, 0x2122 ],\n [ 0x2126, 0x2126 ], [ 0x212B, 0x212B ], [ 0x2153, 0x2154 ],\n [ 0x215B, 0x215E ], [ 0x2160, 0x216B ], [ 0x2170, 0x2179 ],\n [ 0x2190, 0x2199 ], [ 0x21B8, 0x21B9 ], [ 0x21D2, 0x21D2 ],\n [ 0x21D4, 0x21D4 ], [ 0x21E7, 0x21E7 ], [ 0x2200, 0x2200 ],\n [ 0x2202, 0x2203 ], [ 0x2207, 0x2208 ], [ 0x220B, 0x220B ],\n [ 0x220F, 0x220F ], [ 0x2211, 0x2211 ], [ 0x2215, 0x2215 ],\n [ 0x221A, 0x221A ], [ 0x221D, 0x2220 ], [ 0x2223, 0x2223 ],\n [ 0x2225, 0x2225 ], [ 0x2227, 0x222C ], [ 0x222E, 0x222E ],\n [ 0x2234, 0x2237 ], [ 0x223C, 0x223D ], [ 0x2248, 0x2248 ],\n [ 0x224C, 0x224C ], [ 0x2252, 0x2252 ], [ 0x2260, 0x2261 ],\n [ 0x2264, 0x2267 ], [ 0x226A, 0x226B ], [ 0x226E, 0x226F ],\n [ 0x2282, 0x2283 ], [ 0x2286, 0x2287 ], [ 0x2295, 0x2295 ],\n [ 0x2299, 0x2299 ], [ 0x22A5, 0x22A5 ], [ 0x22BF, 0x22BF ],\n [ 0x2312, 0x2312 ], [ 0x2460, 0x24E9 ], [ 0x24EB, 0x254B ],\n [ 0x2550, 0x2573 ], [ 0x2580, 0x258F ], [ 0x2592, 0x2595 ],\n [ 0x25A0, 0x25A1 ], [ 0x25A3, 0x25A9 ], [ 0x25B2, 0x25B3 ],\n [ 0x25B6, 0x25B7 ], [ 0x25BC, 0x25BD ], [ 0x25C0, 0x25C1 ],\n [ 0x25C6, 0x25C8 ], [ 0x25CB, 0x25CB ], [ 0x25CE, 0x25D1 ],\n [ 0x25E2, 0x25E5 ], [ 0x25EF, 0x25EF ], [ 0x2605, 0x2606 ],\n [ 0x2609, 0x2609 ], [ 0x260E, 0x260F ], [ 0x2614, 0x2615 ],\n [ 0x261C, 0x261C ], [ 0x261E, 0x261E ], [ 0x2640, 0x2640 ],\n [ 0x2642, 0x2642 ], [ 0x2660, 0x2661 ], [ 0x2663, 0x2665 ],\n [ 0x2667, 0x266A ], [ 0x266C, 0x266D ], [ 0x266F, 0x266F ],\n [ 0x273D, 0x273D ], [ 0x2776, 0x277F ], [ 0xE000, 0xF8FF ],\n [ 0xFFFD, 0xFFFD ], [ 0xF0000, 0xFFFFD ], [ 0x100000, 0x10FFFD ]\n];\n\n/**\n * Binary search to check if the given unicode character is a space character.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {boolean} True if the given character is a space character; false\n * otherwise.\n */\nlib.wc.isSpace = function(ucs) {\n // Auxiliary function for binary search in interval table.\n var min = 0, max = lib.wc.combining.length - 1;\n var mid;\n\n if (ucs < lib.wc.combining[0][0] || ucs > lib.wc.combining[max][1])\n return false;\n while (max >= min) {\n mid = Math.floor((min + max) / 2);\n if (ucs > lib.wc.combining[mid][1]) {\n min = mid + 1;\n } else if (ucs < lib.wc.combining[mid][0]) {\n max = mid - 1;\n } else {\n return true;\n }\n }\n\n return false;\n};\n\n/**\n * Auxiliary function for checking if the given unicode character is a East\n * Asian Ambiguous character.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {boolean} True if the given character is a East Asian Ambiguous\n * character.\n */\nlib.wc.isCjkAmbiguous = function(ucs) {\n var min = 0, max = lib.wc.ambiguous.length - 1;\n var mid;\n\n if (ucs < lib.wc.ambiguous[0][0] || ucs > lib.wc.ambiguous[max][1])\n return false;\n while (max >= min) {\n mid = Math.floor((min + max) / 2);\n if (ucs > lib.wc.ambiguous[mid][1]) {\n min = mid + 1;\n } else if (ucs < lib.wc.ambiguous[mid][0]) {\n max = mid - 1;\n } else {\n return true;\n }\n }\n\n return false;\n};\n\n/**\n * Determine the column width of the given character.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {integer} The column width of the given character.\n */\nlib.wc.charWidth = function(ucs) {\n if (lib.wc.regardCjkAmbiguous) {\n return lib.wc.charWidthRegardAmbiguous(ucs);\n } else {\n return lib.wc.charWidthDisregardAmbiguous(ucs);\n }\n};\n\n/**\n * Determine the column width of the given character without considering East\n * Asian Ambiguous characters.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {integer} The column width of the given character.\n */\nlib.wc.charWidthDisregardAmbiguous = function(ucs) {\n // Test for 8-bit control characters.\n if (ucs === 0)\n return lib.wc.nulWidth;\n if (ucs < 32 || (ucs >= 0x7f && ucs < 0xa0))\n return lib.wc.controlWidth;\n\n // Optimize for ASCII characters.\n if (ucs < 0x7f)\n return 1;\n\n // Binary search in table of non-spacing characters.\n if (lib.wc.isSpace(ucs))\n return 0;\n\n // If we arrive here, ucs is not a combining or C0/C1 control character.\n return 1 +\n (ucs >= 0x1100 &&\n (ucs <= 0x115f || // Hangul Jamo init. consonants\n ucs == 0x2329 || ucs == 0x232a ||\n (ucs >= 0x2e80 && ucs <= 0xa4cf &&\n ucs != 0x303f) || // CJK ... Yi\n (ucs >= 0xac00 && ucs <= 0xd7a3) || // Hangul Syllables\n (ucs >= 0xf900 && ucs <= 0xfaff) || // CJK Compatibility Ideographs\n (ucs >= 0xfe10 && ucs <= 0xfe19) || // Vertical forms\n (ucs >= 0xfe30 && ucs <= 0xfe6f) || // CJK Compatibility Forms\n (ucs >= 0xff00 && ucs <= 0xff60) || // Fullwidth Forms\n (ucs >= 0xffe0 && ucs <= 0xffe6) ||\n (ucs >= 0x20000 && ucs <= 0x2fffd) ||\n (ucs >= 0x30000 && ucs <= 0x3fffd)));\n // TODO: emoji characters usually require space for wide characters although\n // East Asian width spec says nothing. Should we add special cases for them?\n};\n\n/**\n * Determine the column width of the given character considering East Asian\n * Ambiguous characters.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {integer} The column width of the given character.\n */\nlib.wc.charWidthRegardAmbiguous = function(ucs) {\n if (lib.wc.isCjkAmbiguous(ucs))\n return lib.wc.cjkAmbiguousWidth;\n\n return lib.wc.charWidthDisregardAmbiguous(ucs);\n};\n\n/**\n * Determine the column width of the given string.\n *\n * @param {string} str A string.\n *\n * @return {integer} The column width of the given string.\n */\nlib.wc.strWidth = function(str) {\n var width, rv = 0;\n\n for (var i = 0; i < str.length;) {\n var codePoint = str.codePointAt(i);\n width = lib.wc.charWidth(codePoint);\n if (width < 0)\n return -1;\n rv += width;\n i += (codePoint <= 0xffff) ? 1 : 2;\n }\n\n return rv;\n};\n\n/**\n * Get the substring at the given column offset of the given column width.\n *\n * @param {string} str The string to get substring from.\n * @param {integer} start The starting column offset to get substring.\n * @param {integer} opt_width The column width of the substring.\n *\n * @return {string} The substring.\n */\nlib.wc.substr = function(str, start, opt_width) {\n var startIndex, endIndex, width;\n\n for (startIndex = 0, width = 0; startIndex < str.length; startIndex++) {\n width += lib.wc.charWidth(str.charCodeAt(startIndex));\n if (width > start)\n break;\n }\n\n if (opt_width != undefined) {\n for (endIndex = startIndex, width = 0;\n endIndex < str.length && width <= opt_width;\n width += lib.wc.charWidth(str.charCodeAt(endIndex)), endIndex++);\n if (width > opt_width)\n endIndex--;\n return str.substring(startIndex, endIndex);\n }\n\n return str.substr(startIndex);\n};\n\n/**\n * Get substring at the given start and end column offset.\n *\n * @param {string} str The string to get substring from.\n * @param {integer} start The starting column offset.\n * @param {integer} end The ending column offset.\n *\n * @return {string} The substring.\n */\nlib.wc.substring = function(str, start, end) {\n return lib.wc.substr(str, start, end - start);\n};\nlib.resource.add('libdot/changelog/version', 'text/plain',\n'1.16' +\n''\n);\n\nlib.resource.add('libdot/changelog/date', 'text/plain',\n'2017-08-16' +\n''\n);\n\n// SOURCE FILE: hterm/js/hterm.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.Storage');\n\n/**\n * @fileoverview Declares the hterm.* namespace and some basic shared utilities\n * that are too small to deserve dedicated files.\n */\nvar hterm = {};\n\n/**\n * The type of window hosting hterm.\n *\n * This is set as part of hterm.init(). The value is invalid until\n * initialization completes.\n */\nhterm.windowType = null;\n\n/**\n * Warning message to display in the terminal when browser zoom is enabled.\n *\n * You can replace it with your own localized message.\n */\nhterm.zoomWarningMessage = 'ZOOM != 100%';\n\n/**\n * Brief overlay message displayed when text is copied to the clipboard.\n *\n * By default it is the unicode BLACK SCISSORS character, but you can\n * replace it with your own localized message.\n *\n * This is only displayed when the 'enable-clipboard-notice' preference\n * is enabled.\n */\nhterm.notifyCopyMessage = '\\u2702';\n\n\n/**\n * Text shown in a desktop notification for the terminal\n * bell. \\u226a is a unicode EIGHTH NOTE, %(title) will\n * be replaced by the terminal title.\n */\nhterm.desktopNotificationTitle = '\\u266A %(title) \\u266A';\n\n/**\n * List of known hterm test suites.\n *\n * A test harness should ensure that they all exist before running.\n */\nhterm.testDeps = ['hterm.ScrollPort.Tests', 'hterm.Screen.Tests',\n 'hterm.Terminal.Tests', 'hterm.VT.Tests',\n 'hterm.VT.CannedTests'];\n\n/**\n * The hterm init function, registered with lib.registerInit().\n *\n * This is called during lib.init().\n *\n * @param {function} onInit The function lib.init() wants us to invoke when\n * initialization is complete.\n */\nlib.registerInit('hterm', function(onInit) {\n function onWindow(window) {\n hterm.windowType = window.type;\n setTimeout(onInit, 0);\n }\n\n function onTab(tab) {\n if (tab && window.chrome) {\n chrome.windows.get(tab.windowId, null, onWindow);\n } else {\n // TODO(rginda): This is where we end up for a v1 app's background page.\n // Maybe windowType = 'none' would be more appropriate, or something.\n hterm.windowType = 'normal';\n setTimeout(onInit, 0);\n }\n }\n\n if (!hterm.defaultStorage) {\n if (window.chrome && chrome.storage && chrome.storage.sync) {\n hterm.defaultStorage = new lib.Storage.Chrome(chrome.storage.sync);\n } else {\n hterm.defaultStorage = new lib.Storage.Local();\n }\n }\n\n // The chrome.tabs API is not supported in packaged apps, and detecting if\n // you're a packaged app is a little awkward.\n var isPackagedApp = false;\n if (window.chrome && chrome.runtime && chrome.runtime.getManifest) {\n var manifest = chrome.runtime.getManifest();\n isPackagedApp = manifest.app && manifest.app.background;\n }\n\n if (isPackagedApp) {\n // Packaged apps are never displayed in browser tabs.\n setTimeout(onWindow.bind(null, {type: 'popup'}), 0);\n } else {\n if (window.chrome && chrome.tabs) {\n // The getCurrent method gets the tab that is \"currently running\", not the\n // topmost or focused tab.\n chrome.tabs.getCurrent(onTab);\n } else {\n setTimeout(onWindow.bind(null, {type: 'normal'}), 0);\n }\n }\n});\n\n/**\n * Return decimal { width, height } for a given dom node.\n */\nhterm.getClientSize = function(dom) {\n return dom.getBoundingClientRect();\n};\n\n/**\n * Return decimal width for a given dom node.\n */\nhterm.getClientWidth = function(dom) {\n return dom.getBoundingClientRect().width;\n};\n\n/**\n * Return decimal height for a given dom node.\n */\nhterm.getClientHeight = function(dom) {\n return dom.getBoundingClientRect().height;\n};\n\n/**\n * Copy the current selection to the system clipboard.\n *\n * @param {HTMLDocument} The document with the selection to copy.\n */\nhterm.copySelectionToClipboard = function(document) {\n try {\n document.execCommand('copy');\n } catch (firefoxException) {\n // Ignore this. FF throws an exception if there was an error, even though\n // the spec says just return false.\n }\n};\n\n/**\n * Paste the system clipboard into the element with focus.\n *\n * Note: In Chrome/Firefox app/extension environments, you'll need the\n * \"clipboardRead\" permission. In other environments, this might always\n * fail as the browser frequently blocks access for security reasons.\n *\n * @param {HTMLDocument} The document to paste into.\n * @return {boolean} True if the paste succeeded.\n */\nhterm.pasteFromClipboard = function(document) {\n try {\n return document.execCommand('paste');\n } catch (firefoxException) {\n // Ignore this. FF 40 and older would incorrectly throw an exception if\n // there was an error instead of returning false.\n return false;\n }\n};\n\n/**\n * Create a new notification.\n *\n * @param {Object} params Various parameters for the notification.\n * @param {string} params.title The title (defaults to the window's title).\n * @param {string} params.body The message body (main text).\n */\nhterm.notify = function(params) {\n var def = (curr, fallback) => curr !== undefined ? curr : fallback;\n if (params === undefined || params === null)\n params = {};\n\n // Merge the user's choices with the default settings. We don't take it\n // directly in case it was stuffed with excess junk.\n var options = {\n 'body': params.body,\n 'icon': def(params.icon, lib.resource.getDataUrl('hterm/images/icon-96')),\n }\n\n var title = def(params.title, window.document.title);\n if (!title)\n title = 'hterm';\n title = lib.f.replaceVars(hterm.desktopNotificationTitle, {'title': title});\n\n var n = new Notification(title, options);\n n.onclick = function() {\n window.focus();\n this.close();\n };\n return n;\n};\n\n/**\n * Constructor for a hterm.Size record.\n *\n * Instances of this class have public read/write members for width and height.\n *\n * @param {integer} width The width of this record.\n * @param {integer} height The height of this record.\n */\nhterm.Size = function(width, height) {\n this.width = width;\n this.height = height;\n};\n\n/**\n * Adjust the width and height of this record.\n *\n * @param {integer} width The new width of this record.\n * @param {integer} height The new height of this record.\n */\nhterm.Size.prototype.resize = function(width, height) {\n this.width = width;\n this.height = height;\n};\n\n/**\n * Return a copy of this record.\n *\n * @return {hterm.Size} A new hterm.Size instance with the same width and\n * height.\n */\nhterm.Size.prototype.clone = function() {\n return new hterm.Size(this.width, this.height);\n};\n\n/**\n * Set the height and width of this instance based on another hterm.Size.\n *\n * @param {hterm.Size} that The object to copy from.\n */\nhterm.Size.prototype.setTo = function(that) {\n this.width = that.width;\n this.height = that.height;\n};\n\n/**\n * Test if another hterm.Size instance is equal to this one.\n *\n * @param {hterm.Size} that The other hterm.Size instance.\n * @return {boolean} True if both instances have the same width/height, false\n * otherwise.\n */\nhterm.Size.prototype.equals = function(that) {\n return this.width == that.width && this.height == that.height;\n};\n\n/**\n * Return a string representation of this instance.\n *\n * @return {string} A string that identifies the width and height of this\n * instance.\n */\nhterm.Size.prototype.toString = function() {\n return '[hterm.Size: ' + this.width + ', ' + this.height + ']';\n};\n\n/**\n * Constructor for a hterm.RowCol record.\n *\n * Instances of this class have public read/write members for row and column.\n *\n * This class includes an 'overflow' bit which is use to indicate that an\n * attempt has been made to move the cursor column passed the end of the\n * screen. When this happens we leave the cursor column set to the last column\n * of the screen but set the overflow bit. In this state cursor movement\n * happens normally, but any attempt to print new characters causes a cr/lf\n * first.\n *\n * @param {integer} row The row of this record.\n * @param {integer} column The column of this record.\n * @param {boolean} opt_overflow Optional boolean indicating that the RowCol\n * has overflowed.\n */\nhterm.RowCol = function(row, column, opt_overflow) {\n this.row = row;\n this.column = column;\n this.overflow = !!opt_overflow;\n};\n\n/**\n * Adjust the row and column of this record.\n *\n * @param {integer} row The new row of this record.\n * @param {integer} column The new column of this record.\n * @param {boolean} opt_overflow Optional boolean indicating that the RowCol\n * has overflowed.\n */\nhterm.RowCol.prototype.move = function(row, column, opt_overflow) {\n this.row = row;\n this.column = column;\n this.overflow = !!opt_overflow;\n};\n\n/**\n * Return a copy of this record.\n *\n * @return {hterm.RowCol} A new hterm.RowCol instance with the same row and\n * column.\n */\nhterm.RowCol.prototype.clone = function() {\n return new hterm.RowCol(this.row, this.column, this.overflow);\n};\n\n/**\n * Set the row and column of this instance based on another hterm.RowCol.\n *\n * @param {hterm.RowCol} that The object to copy from.\n */\nhterm.RowCol.prototype.setTo = function(that) {\n this.row = that.row;\n this.column = that.column;\n this.overflow = that.overflow;\n};\n\n/**\n * Test if another hterm.RowCol instance is equal to this one.\n *\n * @param {hterm.RowCol} that The other hterm.RowCol instance.\n * @return {boolean} True if both instances have the same row/column, false\n * otherwise.\n */\nhterm.RowCol.prototype.equals = function(that) {\n return (this.row == that.row && this.column == that.column &&\n this.overflow == that.overflow);\n};\n\n/**\n * Return a string representation of this instance.\n *\n * @return {string} A string that identifies the row and column of this\n * instance.\n */\nhterm.RowCol.prototype.toString = function() {\n return ('[hterm.RowCol: ' + this.row + ', ' + this.column + ', ' +\n this.overflow + ']');\n};\n// SOURCE FILE: hterm/js/hterm_frame.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f');\n\n/**\n * First draft of the interface between the terminal and a third party dialog.\n *\n * This is rough. It's just the terminal->dialog layer. To complete things\n * we'll also need a command->terminal layer. That will have to facilitate\n * command->terminal->dialog or direct command->dialog communication.\n *\n * I imagine this class will change significantly when that happens.\n */\n\n/**\n * Construct a new frame for the given terminal.\n *\n * @param terminal {hterm.Terminal} The parent terminal object.\n * @param url {String} The url to load in the frame.\n * @param opt_options {Object} Optional options for the frame. Not implemented.\n */\nhterm.Frame = function(terminal, url, opt_options) {\n this.terminal_ = terminal;\n this.div_ = terminal.div_;\n this.url = url;\n this.options = opt_options || {};\n this.iframe_ = null;\n this.container_ = null;\n this.messageChannel_ = null;\n};\n\n/**\n * Handle messages from the iframe.\n */\nhterm.Frame.prototype.onMessage_ = function(e) {\n switch (e.data.name) {\n case 'ipc-init-ok':\n // We get this response after we send them ipc-init and they finish.\n this.sendTerminalInfo_();\n return;\n case 'terminal-info-ok':\n // We get this response after we send them terminal-info and they finish.\n // Show the finished frame, and then rebind our message handler to the\n // callback below.\n this.container_.style.display = 'flex';\n this.messageChannel_.port1.onmessage = this.onMessage.bind(this);\n this.onLoad();\n return;\n default:\n console.log('Unknown message from frame:', e.data);\n return;\n }\n};\n\n/**\n * Clients could override this, I guess.\n *\n * It doesn't support multiple listeners, but I'm not sure that would make sense\n * here. It's probably better to speak directly to our parents.\n */\nhterm.Frame.prototype.onMessage = function() {};\n\n/**\n * Handle iframe onLoad event.\n */\nhterm.Frame.prototype.onLoad_ = function() {\n this.messageChannel_ = new MessageChannel();\n this.messageChannel_.port1.onmessage = this.onMessage_.bind(this);\n this.messageChannel_.port1.start();\n this.iframe_.contentWindow.postMessage(\n {name: 'ipc-init', argv: [{messagePort: this.messageChannel_.port2}]},\n this.url, [this.messageChannel_.port2]);\n};\n\n/**\n * Clients may override this.\n */\nhterm.Frame.prototype.onLoad = function() {};\n\n/**\n * Sends the terminal-info message to the iframe.\n */\nhterm.Frame.prototype.sendTerminalInfo_ = function() {\n lib.f.getAcceptLanguages(function(languages) {\n this.postMessage('terminal-info', [{\n acceptLanguages: languages,\n foregroundColor: this.terminal_.getForegroundColor(),\n backgroundColor: this.terminal_.getBackgroundColor(),\n cursorColor: this.terminal_.getCursorColor(),\n fontSize: this.terminal_.getFontSize(),\n fontFamily: this.terminal_.getFontFamily(),\n baseURL: lib.f.getURL('/')\n }]\n );\n }.bind(this));\n};\n\n/**\n * User clicked the close button on the frame decoration.\n */\nhterm.Frame.prototype.onCloseClicked_ = function() {\n this.close();\n};\n\n/**\n * Close this frame.\n */\nhterm.Frame.prototype.close = function() {\n if (!this.container_ || !this.container_.parentNode)\n return;\n\n this.container_.parentNode.removeChild(this.container_);\n this.onClose();\n};\n\n\n/**\n * Clients may override this.\n */\nhterm.Frame.prototype.onClose = function() {};\n\n/**\n * Send a message to the iframe.\n */\nhterm.Frame.prototype.postMessage = function(name, argv) {\n if (!this.messageChannel_)\n throw new Error('Message channel is not set up.');\n\n this.messageChannel_.port1.postMessage({name: name, argv: argv});\n};\n\n/**\n * Show the UI for this frame.\n *\n * The iframe src is not loaded until this method is called.\n */\nhterm.Frame.prototype.show = function() {\n var self = this;\n\n function opt(name, defaultValue) {\n if (name in self.options)\n return self.options[name];\n\n return defaultValue;\n }\n\n var self = this;\n\n if (this.container_ && this.container_.parentNode) {\n console.error('Frame already visible');\n return;\n }\n\n var headerHeight = '16px';\n\n var divSize = hterm.getClientSize(this.div_);\n\n var width = opt('width', 640);\n var height = opt('height', 480);\n var left = (divSize.width - width) / 2;\n var top = (divSize.height - height) / 2;\n\n var document = this.terminal_.document_;\n\n var container = this.container_ = document.createElement('div');\n container.style.cssText = (\n 'position: absolute;' +\n 'display: none;' +\n 'flex-direction: column;' +\n 'top: 10%;' +\n 'left: 4%;' +\n 'width: 90%;' +\n 'height: 80%;' +\n 'min-height: 20%;' +\n 'max-height: 80%;' +\n 'box-shadow: 0 0 2px ' + this.terminal_.getForegroundColor() + ';' +\n 'border: 2px ' + this.terminal_.getForegroundColor() + ' solid;');\n\n if (false) {\n // No use for the close button, so no use for the window header either.\n var header = document.createElement('div');\n header.style.cssText = (\n 'display: flex;' +\n 'justify-content: flex-end;' +\n 'height: ' + headerHeight + ';' +\n 'background-color: ' + this.terminal_.getForegroundColor() + ';' +\n 'color: ' + this.terminal_.getBackgroundColor() + ';' +\n 'font-size: 16px;' +\n 'font-family: ' + this.terminal_.getFontFamily());\n container.appendChild(header);\n\n var button = document.createElement('div');\n button.setAttribute('role', 'button');\n button.style.cssText = (\n 'margin-top: -3px;' +\n 'margin-right: 3px;' +\n 'cursor: pointer;');\n button.textContent = '\\u2a2f';\n button.addEventListener('click', this.onCloseClicked_.bind(this));\n header.appendChild(button);\n }\n\n var iframe = this.iframe_ = document.createElement('iframe');\n iframe.onload = this.onLoad_.bind(this);\n iframe.style.cssText = (\n 'display: flex;' +\n 'flex: 1;' +\n 'width: 100%');\n iframe.setAttribute('src', this.url);\n iframe.setAttribute('seamless', true);\n container.appendChild(iframe);\n\n this.div_.appendChild(container);\n};\n// SOURCE FILE: hterm/js/hterm_keyboard.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('hterm.Keyboard.KeyMap');\n\n/**\n * Keyboard handler.\n *\n * Consumes onKey* events and invokes onVTKeystroke on the associated\n * hterm.Terminal object.\n *\n * See also: [XTERM] as referenced in vt.js.\n *\n * @param {hterm.Terminal} The Terminal object associated with this keyboard.\n */\nhterm.Keyboard = function(terminal) {\n // The parent vt interpreter.\n this.terminal = terminal;\n\n // The element we're currently capturing keyboard events for.\n this.keyboardElement_ = null;\n\n // The event handlers we are interested in, and their bound callbacks, saved\n // so they can be uninstalled with removeEventListener, when required.\n this.handlers_ = [\n ['focusout', this.onFocusOut_.bind(this)],\n ['keydown', this.onKeyDown_.bind(this)],\n ['keypress', this.onKeyPress_.bind(this)],\n ['keyup', this.onKeyUp_.bind(this)],\n ['textInput', this.onTextInput_.bind(this)]\n ];\n\n /**\n * The current key map.\n */\n this.keyMap = new hterm.Keyboard.KeyMap(this);\n\n this.bindings = new hterm.Keyboard.Bindings(this);\n\n /**\n * none: Disable any AltGr related munging.\n * ctrl-alt: Assume Ctrl+Alt means AltGr.\n * left-alt: Assume left Alt means AltGr.\n * right-alt: Assume right Alt means AltGr.\n */\n this.altGrMode = 'none';\n\n /**\n * If true, Shift-Insert will fall through to the browser as a paste.\n * If false, the keystroke will be sent to the host.\n */\n this.shiftInsertPaste = true;\n\n /**\n * If true, home/end will control the terminal scrollbar and shift home/end\n * will send the VT keycodes. If false then home/end sends VT codes and\n * shift home/end scrolls.\n */\n this.homeKeysScroll = false;\n\n /**\n * Same as above, except for page up/page down.\n */\n this.pageKeysScroll = false;\n\n /**\n * If true, Ctrl-Plus/Minus/Zero controls zoom.\n * If false, Ctrl-Shift-Plus/Minus/Zero controls zoom, Ctrl-Minus sends ^_,\n * Ctrl-Plus/Zero do nothing.\n */\n this.ctrlPlusMinusZeroZoom = true;\n\n /**\n * Ctrl+C copies if true, sends ^C to host if false.\n * Ctrl+Shift+C sends ^C to host if true, copies if false.\n */\n this.ctrlCCopy = false;\n\n /**\n * Ctrl+V pastes if true, sends ^V to host if false.\n * Ctrl+Shift+V sends ^V to host if true, pastes if false.\n */\n this.ctrlVPaste = false;\n\n /**\n * Enable/disable application keypad.\n *\n * This changes the way numeric keys are sent from the keyboard.\n */\n this.applicationKeypad = false;\n\n /**\n * Enable/disable the application cursor mode.\n *\n * This changes the way cursor keys are sent from the keyboard.\n */\n this.applicationCursor = false;\n\n /**\n * If true, the backspace should send BS ('\\x08', aka ^H). Otherwise\n * the backspace key should send '\\x7f'.\n */\n this.backspaceSendsBackspace = false;\n\n /**\n * The encoding method for data sent to the host.\n */\n this.characterEncoding = 'utf-8';\n\n /**\n * Set whether the meta key sends a leading escape or not.\n */\n this.metaSendsEscape = true;\n\n /**\n * Set whether meta-V gets passed to host.\n */\n this.passMetaV = true;\n\n /**\n * Controls how the alt key is handled.\n *\n * escape....... Send an ESC prefix.\n * 8-bit........ Add 128 to the unshifted character as in xterm.\n * browser-key.. Wait for the keypress event and see what the browser says.\n * (This won't work well on platforms where the browser\n * performs a default action for some alt sequences.)\n *\n * This setting only matters when alt is distinct from meta (altIsMeta is\n * false.)\n */\n this.altSendsWhat = 'escape';\n\n /**\n * Set whether the alt key acts as a meta key, instead of producing 8-bit\n * characters.\n *\n * True to enable, false to disable, null to autodetect based on platform.\n */\n this.altIsMeta = false;\n\n /**\n * If true, tries to detect DEL key events that are from alt-backspace on\n * Chrome OS vs from a true DEL key press.\n *\n * Background: At the time of writing, on Chrome OS, alt-backspace is mapped\n * to DEL. Some users may be happy with this, but others may be frustrated\n * that it's impossible to do meta-backspace. If the user enables this pref,\n * we use a trick to tell a true DEL keypress from alt-backspace: on\n * alt-backspace, we will see the alt key go down, then get a DEL keystroke\n * that indicates that alt is not pressed. See https://crbug.com/174410 .\n */\n this.altBackspaceIsMetaBackspace = false;\n\n /**\n * Used to keep track of the current alt-key state, which is necessary for\n * the altBackspaceIsMetaBackspace preference above and for the altGrMode\n * preference. This is a bitmap with where bit positions correspond to the\n * \"location\" property of the key event.\n */\n this.altKeyPressed = 0;\n\n /**\n * If true, Chrome OS media keys will be mapped to their F-key equivalent.\n * E.g. \"Back\" will be mapped to F1. If false, Chrome will handle the keys.\n */\n this.mediaKeysAreFKeys = false;\n\n /**\n * Holds the previous setting of altSendsWhat when DECSET 1039 is used. When\n * DECRST 1039 is used, altSendsWhat is changed back to this and this is\n * nulled out.\n */\n this.previousAltSendsWhat_ = null;\n};\n\n/**\n * Special handling for keyCodes in a keyboard layout.\n */\nhterm.Keyboard.KeyActions = {\n /**\n * Call preventDefault and stopPropagation for this key event and nothing\n * else.\n */\n CANCEL: lib.f.createEnum('CANCEL'),\n\n /**\n * This performs the default terminal action for the key. If used in the\n * 'normal' action and the the keystroke represents a printable key, the\n * character will be sent to the host. If used in one of the modifier\n * actions, the terminal will perform the normal action after (possibly)\n * altering it.\n *\n * - If the normal sequence starts with CSI, the sequence will be adjusted\n * to include the modifier parameter as described in [XTERM] in the final\n * table of the \"PC-Style Function Keys\" section.\n *\n * - If the control key is down and the key represents a printable character,\n * and the uppercase version of the unshifted keycap is between\n * 64 (ASCII '@') and 95 (ASCII '_'), then the uppercase version of the\n * unshifted keycap minus 64 is sent. This makes '^@' send '\\x00' and\n * '^_' send '\\x1f'. (Note that one higher that 0x1f is 0x20, which is\n * the first printable ASCII value.)\n *\n * - If the alt key is down and the key represents a printable character then\n * the value of the character is shifted up by 128.\n *\n * - If meta is down and configured to send an escape, '\\x1b' will be sent\n * before the normal action is performed.\n */\n DEFAULT: lib.f.createEnum('DEFAULT'),\n\n /**\n * Causes the terminal to opt out of handling the key event, instead letting\n * the browser deal with it.\n */\n PASS: lib.f.createEnum('PASS'),\n\n /**\n * Insert the first or second character of the keyCap, based on e.shiftKey.\n * The key will be handled in onKeyDown, and e.preventDefault() will be\n * called.\n *\n * It is useful for a modified key action, where it essentially strips the\n * modifier while preventing the browser from reacting to the key.\n */\n STRIP: lib.f.createEnum('STRIP')\n};\n\n/**\n * Encode a string according to the 'send-encoding' preference.\n */\nhterm.Keyboard.prototype.encode = function(str) {\n if (this.characterEncoding == 'utf-8')\n return this.terminal.vt.encodeUTF8(str);\n\n return str;\n};\n\n/**\n * Capture keyboard events sent to the associated element.\n *\n * This enables the keyboard. Captured events are consumed by this class\n * and will not perform their default action or bubble to other elements.\n *\n * Passing a null element will uninstall the keyboard handlers.\n *\n * @param {HTMLElement} element The element whose events should be captured, or\n * null to disable the keyboard.\n */\nhterm.Keyboard.prototype.installKeyboard = function(element) {\n if (element == this.keyboardElement_)\n return;\n\n if (element && this.keyboardElement_)\n this.installKeyboard(null);\n\n for (var i = 0; i < this.handlers_.length; i++) {\n var handler = this.handlers_[i];\n if (element) {\n element.addEventListener(handler[0], handler[1]);\n } else {\n this.keyboardElement_.removeEventListener(handler[0], handler[1]);\n }\n }\n\n this.keyboardElement_ = element;\n};\n\n/**\n * Disable keyboard event capture.\n *\n * This will allow the browser to process key events normally.\n */\nhterm.Keyboard.prototype.uninstallKeyboard = function() {\n this.installKeyboard(null);\n};\n\n/**\n * Handle onTextInput events.\n *\n * We're not actually supposed to get these, but we do on the Mac in the case\n * where a third party app sends synthetic keystrokes to Chrome.\n */\nhterm.Keyboard.prototype.onTextInput_ = function(e) {\n if (!e.data)\n return;\n\n e.data.split('').forEach(this.terminal.onVTKeystroke.bind(this.terminal));\n};\n\n/**\n * Handle onKeyPress events.\n */\nhterm.Keyboard.prototype.onKeyPress_ = function(e) {\n var code;\n\n var key = String.fromCharCode(e.which);\n var lowerKey = key.toLowerCase();\n if ((e.ctrlKey || e.metaKey) && (lowerKey == 'c' || lowerKey == 'v')) {\n // On FF the key press (not key down) event gets fired for copy/paste.\n // Let it fall through for the default browser behavior.\n return;\n }\n\n if (e.altKey && this.altSendsWhat == 'browser-key' && e.charCode == 0) {\n // If we got here because we were expecting the browser to handle an\n // alt sequence but it didn't do it, then we might be on an OS without\n // an enabled IME system. In that case we fall back to xterm-like\n // behavior.\n //\n // This happens here only as a fallback. Typically these platforms should\n // set altSendsWhat to either 'escape' or '8-bit'.\n var ch = String.fromCharCode(e.keyCode);\n if (!e.shiftKey)\n ch = ch.toLowerCase();\n code = ch.charCodeAt(0) + 128;\n\n } else if (e.charCode >= 32) {\n ch = e.charCode;\n }\n\n if (ch)\n this.terminal.onVTKeystroke(String.fromCharCode(ch));\n\n e.preventDefault();\n e.stopPropagation();\n};\n\n/**\n * Prevent default handling for non-ctrl-shifted event.\n *\n * When combined with Chrome permission 'app.window.fullscreen.overrideEsc',\n * and called for both key down and key up events,\n * the ESC key remains usable within fullscreen Chrome app windows.\n */\nhterm.Keyboard.prototype.preventChromeAppNonCtrlShiftDefault_ = function(e) {\n if (!window.chrome || !window.chrome.app || !window.chrome.app.window)\n return;\n if (!e.ctrlKey || !e.shiftKey)\n e.preventDefault();\n};\n\nhterm.Keyboard.prototype.onFocusOut_ = function(e) {\n this.altKeyPressed = 0;\n};\n\nhterm.Keyboard.prototype.onKeyUp_ = function(e) {\n if (e.keyCode == 18)\n this.altKeyPressed = this.altKeyPressed & ~(1 << (e.location - 1));\n\n if (e.keyCode == 27)\n this.preventChromeAppNonCtrlShiftDefault_(e);\n};\n\n/**\n * Handle onKeyDown events.\n */\nhterm.Keyboard.prototype.onKeyDown_ = function(e) {\n if (e.keyCode == 18)\n this.altKeyPressed = this.altKeyPressed | (1 << (e.location - 1));\n\n if (e.keyCode == 27)\n this.preventChromeAppNonCtrlShiftDefault_(e);\n\n var keyDef = this.keyMap.keyDefs[e.keyCode];\n if (!keyDef) {\n console.warn('No definition for keyCode: ' + e.keyCode);\n return;\n }\n\n // The type of action we're going to use.\n var resolvedActionType = null;\n\n var self = this;\n function getAction(name) {\n // Get the key action for the given action name. If the action is a\n // function, dispatch it. If the action defers to the normal action,\n // resolve that instead.\n\n resolvedActionType = name;\n\n var action = keyDef[name];\n if (typeof action == 'function')\n action = action.apply(self.keyMap, [e, keyDef]);\n\n if (action === DEFAULT && name != 'normal')\n action = getAction('normal');\n\n return action;\n }\n\n // Note that we use the triple-equals ('===') operator to test equality for\n // these constants, in order to distinguish usage of the constant from usage\n // of a literal string that happens to contain the same bytes.\n var CANCEL = hterm.Keyboard.KeyActions.CANCEL;\n var DEFAULT = hterm.Keyboard.KeyActions.DEFAULT;\n var PASS = hterm.Keyboard.KeyActions.PASS;\n var STRIP = hterm.Keyboard.KeyActions.STRIP;\n\n var control = e.ctrlKey;\n var alt = this.altIsMeta ? false : e.altKey;\n var meta = this.altIsMeta ? (e.altKey || e.metaKey) : e.metaKey;\n\n // In the key-map, we surround the keyCap for non-printables in \"[...]\"\n var isPrintable = !(/^\\[\\w+\\]$/.test(keyDef.keyCap));\n\n switch (this.altGrMode) {\n case 'ctrl-alt':\n if (isPrintable && control && alt) {\n // ctrl-alt-printable means altGr. We clear out the control and\n // alt modifiers and wait to see the charCode in the keydown event.\n control = false;\n alt = false;\n }\n break;\n\n case 'right-alt':\n if (isPrintable && (this.terminal.keyboard.altKeyPressed & 2)) {\n control = false;\n alt = false;\n }\n break;\n\n case 'left-alt':\n if (isPrintable && (this.terminal.keyboard.altKeyPressed & 1)) {\n control = false;\n alt = false;\n }\n break;\n }\n\n var action;\n\n if (control) {\n action = getAction('control');\n } else if (alt) {\n action = getAction('alt');\n } else if (meta) {\n action = getAction('meta');\n } else {\n action = getAction('normal');\n }\n\n // If e.maskShiftKey was set (during getAction) it means the shift key is\n // already accounted for in the action, and we should not act on it any\n // further. This is currently only used for Ctrl-Shift-Tab, which should send\n // \"CSI Z\", not \"CSI 1 ; 2 Z\".\n var shift = !e.maskShiftKey && e.shiftKey;\n\n var keyDown = {\n keyCode: e.keyCode,\n shift: e.shiftKey, // not `var shift` from above.\n ctrl: control,\n alt: alt,\n meta: meta\n };\n\n var binding = this.bindings.getBinding(keyDown);\n\n if (binding) {\n // Clear out the modifier bits so we don't try to munge the sequence\n // further.\n shift = control = alt = meta = false;\n resolvedActionType = 'normal';\n action = binding.action;\n\n if (typeof action == 'function')\n action = action.call(this, this.terminal, keyDown);\n }\n\n if (alt && this.altSendsWhat == 'browser-key' && action == DEFAULT) {\n // When altSendsWhat is 'browser-key', we wait for the keypress event.\n // In keypress, the browser should have set the event.charCode to the\n // appropriate character.\n // TODO(rginda): Character compositions will need some black magic.\n action = PASS;\n }\n\n if (action === PASS || (action === DEFAULT && !(control || alt || meta))) {\n // If this key is supposed to be handled by the browser, or it is an\n // unmodified key with the default action, then exit this event handler.\n // If it's an unmodified key, it'll be handled in onKeyPress where we\n // can tell for sure which ASCII code to insert.\n //\n // This block needs to come before the STRIP test, otherwise we'll strip\n // the modifier and think it's ok to let the browser handle the keypress.\n // The browser won't know we're trying to ignore the modifiers and might\n // perform some default action.\n return;\n }\n\n if (action === STRIP) {\n alt = control = false;\n action = keyDef.normal;\n if (typeof action == 'function')\n action = action.apply(this.keyMap, [e, keyDef]);\n\n if (action == DEFAULT && keyDef.keyCap.length == 2)\n action = keyDef.keyCap.substr((shift ? 1 : 0), 1);\n }\n\n e.preventDefault();\n e.stopPropagation();\n\n if (action === CANCEL)\n return;\n\n if (action !== DEFAULT && typeof action != 'string') {\n console.warn('Invalid action: ' + JSON.stringify(action));\n return;\n }\n\n // Strip the modifier that is associated with the action, since we assume that\n // modifier has already been accounted for in the action.\n if (resolvedActionType == 'control') {\n control = false;\n } else if (resolvedActionType == 'alt') {\n alt = false;\n } else if (resolvedActionType == 'meta') {\n meta = false;\n }\n\n if (action.substr(0, 2) == '\\x1b[' && (alt || control || shift)) {\n // The action is an escape sequence that and it was triggered in the\n // presence of a keyboard modifier, we may need to alter the action to\n // include the modifier before sending it.\n\n var mod;\n\n if (shift && !(alt || control)) {\n mod = ';2';\n } else if (alt && !(shift || control)) {\n mod = ';3';\n } else if (shift && alt && !control) {\n mod = ';4';\n } else if (control && !(shift || alt)) {\n mod = ';5';\n } else if (shift && control && !alt) {\n mod = ';6';\n } else if (alt && control && !shift) {\n mod = ';7';\n } else if (shift && alt && control) {\n mod = ';8';\n }\n\n if (action.length == 3) {\n // Some of the CSI sequences have zero parameters unless modified.\n action = '\\x1b[1' + mod + action.substr(2, 1);\n } else {\n // Others always have at least one parameter.\n action = action.substr(0, action.length - 1) + mod +\n action.substr(action.length - 1);\n }\n\n } else {\n if (action === DEFAULT) {\n action = keyDef.keyCap.substr((shift ? 1 : 0), 1);\n\n if (control) {\n var unshifted = keyDef.keyCap.substr(0, 1);\n var code = unshifted.charCodeAt(0);\n if (code >= 64 && code <= 95) {\n action = String.fromCharCode(code - 64);\n }\n }\n }\n\n if (alt && this.altSendsWhat == '8-bit' && action.length == 1) {\n var code = action.charCodeAt(0) + 128;\n action = String.fromCharCode(code);\n }\n\n // We respect alt/metaSendsEscape even if the keymap action was a literal\n // string. Otherwise, every overridden alt/meta action would have to\n // check alt/metaSendsEscape.\n if ((alt && this.altSendsWhat == 'escape') ||\n (meta && this.metaSendsEscape)) {\n action = '\\x1b' + action;\n }\n }\n\n this.terminal.onVTKeystroke(action);\n};\n// SOURCE FILE: hterm/js/hterm_keyboard_bindings.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * A mapping from hterm.Keyboard.KeyPattern to an action.\n *\n * TODO(rginda): For now this bindings code is only used for user overrides.\n * hterm.Keyboard.KeyMap still handles all of the built-in key mappings.\n * It'd be nice if we migrated that over to be hterm.Keyboard.Bindings based.\n */\nhterm.Keyboard.Bindings = function() {\n this.bindings_ = {};\n};\n\n/**\n * Remove all bindings.\n */\nhterm.Keyboard.Bindings.prototype.clear = function () {\n this.bindings_ = {};\n};\n\n/**\n * Add a new binding.\n *\n * Internal API that assumes parsed objects as inputs.\n * See the public addBinding for more details.\n *\n * @param {hterm.Keyboard.KeyPattern} keyPattern\n * @param {string|function|hterm.Keyboard.KeyAction} action\n */\nhterm.Keyboard.Bindings.prototype.addBinding_ = function(keyPattern, action) {\n var binding = null;\n var list = this.bindings_[keyPattern.keyCode];\n if (list) {\n for (var i = 0; i < list.length; i++) {\n if (list[i].keyPattern.matchKeyPattern(keyPattern)) {\n binding = list[i];\n break;\n }\n }\n }\n\n if (binding) {\n binding.action = action;\n } else {\n binding = {keyPattern: keyPattern, action: action};\n\n if (!list) {\n this.bindings_[keyPattern.keyCode] = [binding];\n } else {\n this.bindings_[keyPattern.keyCode].push(binding);\n\n list.sort(function(a, b) {\n return hterm.Keyboard.KeyPattern.sortCompare(\n a.keyPattern, b.keyPattern);\n });\n }\n }\n};\n\n/**\n * Add a new binding.\n *\n * If a binding for the keyPattern already exists it will be overridden.\n *\n * More specific keyPatterns take precedence over those with wildcards. Given\n * bindings for \"Ctrl-A\" and \"Ctrl-*-A\", and a \"Ctrl-A\" keydown, the \"Ctrl-A\"\n * binding will match even if \"Ctrl-*-A\" was created last.\n *\n * If action is a string, it will be passed through hterm.Parser.parseKeyAction.\n *\n * For example:\n * // Will replace Ctrl-P keystrokes with the string \"hiya!\".\n * addBinding('Ctrl-P', \"'hiya!'\");\n * // Will cancel the keystroke entirely (make it do nothing).\n * addBinding('Alt-D', hterm.Keyboard.KeyActions.CANCEL);\n * // Will execute the code and return the action.\n * addBinding('Ctrl-T', function() {\n * console.log('Got a T!');\n * return hterm.Keyboard.KeyActions.PASS;\n * });\n *\n * @param {string|hterm.Keyboard.KeyPattern} keyPattern\n * @param {string|function|hterm.Keyboard.KeyAction} action\n */\nhterm.Keyboard.Bindings.prototype.addBinding = function(key, action) {\n // If we're given a hterm.Keyboard.KeyPattern object, pass it down.\n if (typeof key != 'string') {\n this.addBinding_(key, action);\n return;\n }\n\n // Here we treat key as a string.\n var p = new hterm.Parser();\n\n p.reset(key);\n var sequence;\n\n try {\n sequence = p.parseKeySequence();\n } catch (ex) {\n console.error(ex);\n return;\n }\n\n if (!p.isComplete()) {\n console.error(p.error('Expected end of sequence: ' + sequence));\n return;\n }\n\n // If action is a string, parse it. Otherwise assume it's callable.\n if (typeof action == 'string') {\n p.reset(action);\n try {\n action = p.parseKeyAction();\n } catch (ex) {\n console.error(ex);\n return;\n }\n }\n\n if (!p.isComplete()) {\n console.error(p.error('Expected end of sequence: ' + sequence));\n return;\n }\n\n this.addBinding_(new hterm.Keyboard.KeyPattern(sequence), action);\n};\n\n/**\n * Add multiple bindings at a time using a map of {string: string, ...}\n *\n * This uses hterm.Parser to parse the maps key into KeyPatterns, and the\n * map values into {string|function|KeyAction}.\n *\n * For example:\n * {\n * // Will replace Ctrl-P keystrokes with the string \"hiya!\".\n * 'Ctrl-P': \"'hiya!'\",\n * // Will cancel the keystroke entirely (make it do nothing).\n * 'Alt-D': hterm.Keyboard.KeyActions.CANCEL,\n * }\n *\n * @param {Object} map\n */\nhterm.Keyboard.Bindings.prototype.addBindings = function(map) {\n for (var key in map) {\n this.addBinding(key, map[key]);\n }\n};\n\n/**\n * Return the binding that is the best match for the given keyDown record,\n * or null if there is no match.\n *\n * @param {Object} keyDown An object with a keyCode property and zero or\n * more boolean properties representing key modifiers. These property names\n * must match those defined in hterm.Keyboard.KeyPattern.modifiers.\n */\nhterm.Keyboard.Bindings.prototype.getBinding = function(keyDown) {\n var list = this.bindings_[keyDown.keyCode];\n if (!list)\n return null;\n\n for (var i = 0; i < list.length; i++) {\n var binding = list[i];\n if (binding.keyPattern.matchKeyDown(keyDown))\n return binding;\n }\n\n return null;\n};\n// SOURCE FILE: hterm/js/hterm_keyboard_keymap.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('hterm.Keyboard.KeyActions');\n\n/**\n * The default key map for hterm.\n *\n * Contains a mapping of keyCodes to keyDefs (aka key definitions). The key\n * definition tells the hterm.Keyboard class how to handle keycodes.\n *\n * This should work for most cases, as the printable characters get handled\n * in the keypress event. In that case, even if the keycap is wrong in the\n * key map, the correct character should be sent.\n *\n * Different layouts, such as Dvorak should work with this keymap, as those\n * layouts typically move keycodes around on the keyboard without disturbing\n * the actual keycaps.\n *\n * There may be issues with control keys on non-US keyboards or with keyboards\n * that very significantly from the expectations here, in which case we may\n * have to invent new key maps.\n *\n * The sequences defined in this key map come from [XTERM] as referenced in\n * vt.js, starting with the section titled \"Alt and Meta Keys\".\n */\nhterm.Keyboard.KeyMap = function(keyboard) {\n this.keyboard = keyboard;\n this.keyDefs = {};\n this.reset();\n};\n\n/**\n * Add a single key definition.\n *\n * The definition is a hash containing the following keys: 'keyCap', 'normal',\n * 'control', and 'alt'.\n *\n * - keyCap is a string identifying the key. For printable\n * keys, the key cap should be exactly two characters, starting with the\n * unshifted version. For example, 'aA', 'bB', '1!' and '=+'. For\n * non-printable the key cap should be surrounded in square braces, as in\n * '[INS]', '[LEFT]'. By convention, non-printable keycaps are in uppercase\n * but this is not a strict requirement.\n *\n * - Normal is the action that should be performed when they key is pressed\n * in the absence of any modifier. See below for the supported actions.\n *\n * - Control is the action that should be performed when they key is pressed\n * along with the control modifier. See below for the supported actions.\n *\n * - Alt is the action that should be performed when they key is pressed\n * along with the alt modifier. See below for the supported actions.\n *\n * - Meta is the action that should be performed when they key is pressed\n * along with the meta modifier. See below for the supported actions.\n *\n * Actions can be one of the hterm.Keyboard.KeyActions as documented below,\n * a literal string, or an array. If the action is a literal string then\n * the string is sent directly to the host. If the action is an array it\n * is taken to be an escape sequence that may be altered by modifier keys.\n * The second-to-last element of the array will be overwritten with the\n * state of the modifier keys, as specified in the final table of \"PC-Style\n * Function Keys\" from [XTERM].\n */\nhterm.Keyboard.KeyMap.prototype.addKeyDef = function(keyCode, def) {\n if (keyCode in this.keyDefs)\n console.warn('Duplicate keyCode: ' + keyCode);\n\n this.keyDefs[keyCode] = def;\n};\n\n/**\n * Add multiple key definitions in a single call.\n *\n * This function takes the key definitions as variable argument list. Each\n * argument is the key definition specified as an array.\n *\n * (If the function took everything as one big hash we couldn't detect\n * duplicates, and there would be a lot more typing involved.)\n *\n * Each key definition should have 6 elements: (keyCode, keyCap, normal action,\n * control action, alt action and meta action). See KeyMap.addKeyDef for the\n * meaning of these elements.\n */\nhterm.Keyboard.KeyMap.prototype.addKeyDefs = function(var_args) {\n for (var i = 0; i < arguments.length; i++) {\n this.addKeyDef(arguments[i][0],\n { keyCap: arguments[i][1],\n normal: arguments[i][2],\n control: arguments[i][3],\n alt: arguments[i][4],\n meta: arguments[i][5]\n });\n }\n};\n\n/**\n * Set up the default state for this keymap.\n */\nhterm.Keyboard.KeyMap.prototype.reset = function() {\n this.keyDefs = {};\n\n var self = this;\n\n // This function is used by the \"macro\" functions below. It makes it\n // possible to use the call() macro as an argument to any other macro.\n function resolve(action, e, k) {\n if (typeof action == 'function')\n return action.apply(self, [e, k]);\n\n return action;\n }\n\n // If not application keypad a, else b. The keys that care about\n // application keypad ignore it when the key is modified.\n function ak(a, b) {\n return function(e, k) {\n var action = (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !self.keyboard.applicationKeypad) ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If mod or not application cursor a, else b. The keys that care about\n // application cursor ignore it when the key is modified.\n function ac(a, b) {\n return function(e, k) {\n var action = (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !self.keyboard.applicationCursor) ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If not backspace-sends-backspace keypad a, else b.\n function bs(a, b) {\n return function(e, k) {\n var action = !self.keyboard.backspaceSendsBackspace ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If not e.shiftKey a, else b.\n function sh(a, b) {\n return function(e, k) {\n var action = !e.shiftKey ? a : b;\n e.maskShiftKey = true;\n return resolve(action, e, k);\n };\n }\n\n // If not e.altKey a, else b.\n function alt(a, b) {\n return function(e, k) {\n var action = !e.altKey ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If no modifiers a, else b.\n function mod(a, b) {\n return function(e, k) {\n var action = !(e.shiftKey || e.ctrlKey || e.altKey || e.metaKey) ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // Compute a control character for a given character.\n function ctl(ch) { return String.fromCharCode(ch.charCodeAt(0) - 64) }\n\n // Call a method on the keymap instance.\n function c(m) { return function (e, k) { return this[m](e, k) } }\n\n // Ignore if not trapping media keys.\n function med(fn) {\n return function(e, k) {\n if (!self.keyboard.mediaKeysAreFKeys) {\n // Block Back, Forward, and Reload keys to avoid navigating away from\n // the current page.\n return (e.keyCode == 166 || e.keyCode == 167 || e.keyCode == 168) ?\n hterm.Keyboard.KeyActions.CANCEL :\n hterm.Keyboard.KeyActions.PASS;\n }\n return resolve(fn, e, k);\n };\n }\n\n var ESC = '\\x1b';\n var CSI = '\\x1b[';\n var SS3 = '\\x1bO';\n\n var CANCEL = hterm.Keyboard.KeyActions.CANCEL;\n var DEFAULT = hterm.Keyboard.KeyActions.DEFAULT;\n var PASS = hterm.Keyboard.KeyActions.PASS;\n var STRIP = hterm.Keyboard.KeyActions.STRIP;\n\n this.addKeyDefs(\n // These fields are: [keycode, keycap, normal, control, alt, meta]\n\n // The browser sends the keycode 0 for some keys. We'll just assume it's\n // going to do the right thing by default for those keys.\n [0, '[UNKNOWN]', PASS, PASS, PASS, PASS],\n\n // First row.\n [27, '[ESC]', ESC, DEFAULT, DEFAULT, DEFAULT],\n [112, '[F1]', mod(SS3 + 'P', CSI + 'P'), DEFAULT, CSI + \"23~\", DEFAULT],\n [113, '[F2]', mod(SS3 + 'Q', CSI + 'Q'), DEFAULT, CSI + \"24~\", DEFAULT],\n [114, '[F3]', mod(SS3 + 'R', CSI + 'R'), DEFAULT, CSI + \"25~\", DEFAULT],\n [115, '[F4]', mod(SS3 + 'S', CSI + 'S'), DEFAULT, CSI + \"26~\", DEFAULT],\n [116, '[F5]', CSI + '15~', DEFAULT, CSI + \"28~\", DEFAULT],\n [117, '[F6]', CSI + '17~', DEFAULT, CSI + \"29~\", DEFAULT],\n [118, '[F7]', CSI + '18~', DEFAULT, CSI + \"31~\", DEFAULT],\n [119, '[F8]', CSI + '19~', DEFAULT, CSI + \"32~\", DEFAULT],\n [120, '[F9]', CSI + '20~', DEFAULT, CSI + \"33~\", DEFAULT],\n [121, '[F10]', CSI + '21~', DEFAULT, CSI + \"34~\", DEFAULT],\n [122, '[F11]', CSI + '23~', DEFAULT, CSI + \"42~\", DEFAULT],\n [123, '[F12]', CSI + '24~', DEFAULT, CSI + \"43~\", DEFAULT],\n\n // Second row.\n [192, '`~', DEFAULT, sh(ctl('@'), ctl('^')), DEFAULT, PASS],\n [49, '1!', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [50, '2@', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [51, '3#', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [52, '4$', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [53, '5%', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [54, '6^', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [55, '7&', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [56, '8*', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [57, '9(', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [48, '0)', DEFAULT, c('onPlusMinusZero_'),c('onAltNum_'),c('onPlusMinusZero_')],\n [189, '-_', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [187, '=+', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n // Firefox -_ and =+\n [173, '-_', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [61, '=+', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n // Firefox Italian +*\n [171, '+*', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n\n [8, '[BKSP]', bs('\\x7f', '\\b'), bs('\\b', '\\x7f'), DEFAULT, DEFAULT],\n\n // Third row.\n [9, '[TAB]', sh('\\t', CSI + 'Z'), STRIP, PASS, DEFAULT],\n [81, 'qQ', DEFAULT, ctl('Q'), DEFAULT, DEFAULT],\n [87, 'wW', DEFAULT, ctl('W'), DEFAULT, DEFAULT],\n [69, 'eE', DEFAULT, ctl('E'), DEFAULT, DEFAULT],\n [82, 'rR', DEFAULT, ctl('R'), DEFAULT, DEFAULT],\n [84, 'tT', DEFAULT, ctl('T'), DEFAULT, DEFAULT],\n [89, 'yY', DEFAULT, ctl('Y'), DEFAULT, DEFAULT],\n [85, 'uU', DEFAULT, ctl('U'), DEFAULT, DEFAULT],\n [73, 'iI', DEFAULT, ctl('I'), DEFAULT, DEFAULT],\n [79, 'oO', DEFAULT, ctl('O'), DEFAULT, DEFAULT],\n [80, 'pP', DEFAULT, ctl('P'), DEFAULT, DEFAULT],\n [219, '[{', DEFAULT, ctl('['), DEFAULT, DEFAULT],\n [221, ']}', DEFAULT, ctl(']'), DEFAULT, DEFAULT],\n [220, '\\\\|', DEFAULT, ctl('\\\\'), DEFAULT, DEFAULT],\n\n // Fourth row. (We let Ctrl-Shift-J pass for Chrome DevTools.)\n [20, '[CAPS]', PASS, PASS, PASS, DEFAULT],\n [65, 'aA', DEFAULT, ctl('A'), DEFAULT, DEFAULT],\n [83, 'sS', DEFAULT, ctl('S'), DEFAULT, DEFAULT],\n [68, 'dD', DEFAULT, ctl('D'), DEFAULT, DEFAULT],\n [70, 'fF', DEFAULT, ctl('F'), DEFAULT, DEFAULT],\n [71, 'gG', DEFAULT, ctl('G'), DEFAULT, DEFAULT],\n [72, 'hH', DEFAULT, ctl('H'), DEFAULT, DEFAULT],\n [74, 'jJ', DEFAULT, sh(ctl('J'), PASS), DEFAULT, DEFAULT],\n [75, 'kK', DEFAULT, sh(ctl('K'), c('onClear_')), DEFAULT, DEFAULT],\n [76, 'lL', DEFAULT, sh(ctl('L'), PASS), DEFAULT, DEFAULT],\n [186, ';:', DEFAULT, STRIP, DEFAULT, DEFAULT],\n [222, '\\'\"', DEFAULT, STRIP, DEFAULT, DEFAULT],\n [13, '[ENTER]', '\\r', CANCEL, CANCEL, DEFAULT],\n\n // Fifth row. This includes the copy/paste shortcuts. On some\n // platforms it's Ctrl-C/V, on others it's Meta-C/V. We assume either\n // Ctrl-C/Meta-C should pass to the browser when there is a selection,\n // and Ctrl-Shift-V/Meta-*-V should always pass to the browser (since\n // these seem to be recognized as paste too).\n [16, '[SHIFT]', PASS, PASS, PASS, DEFAULT],\n [90, 'zZ', DEFAULT, ctl('Z'), DEFAULT, DEFAULT],\n [88, 'xX', DEFAULT, ctl('X'), DEFAULT, DEFAULT],\n [67, 'cC', DEFAULT, c('onCtrlC_'), DEFAULT, c('onMetaC_')],\n [86, 'vV', DEFAULT, c('onCtrlV_'), DEFAULT, c('onMetaV_')],\n [66, 'bB', DEFAULT, sh(ctl('B'), PASS), DEFAULT, sh(DEFAULT, PASS)],\n [78, 'nN', DEFAULT, c('onCtrlN_'), DEFAULT, c('onMetaN_')],\n [77, 'mM', DEFAULT, ctl('M'), DEFAULT, DEFAULT],\n [188, ',<', DEFAULT, alt(STRIP, PASS), DEFAULT, DEFAULT],\n [190, '.>', DEFAULT, alt(STRIP, PASS), DEFAULT, DEFAULT],\n [191, '/?', DEFAULT, sh(ctl('_'), ctl('?')), DEFAULT, DEFAULT],\n\n // Sixth and final row.\n [17, '[CTRL]', PASS, PASS, PASS, PASS],\n [18, '[ALT]', PASS, PASS, PASS, PASS],\n [91, '[LAPL]', PASS, PASS, PASS, PASS],\n [32, ' ', DEFAULT, ctl('@'), DEFAULT, DEFAULT],\n [92, '[RAPL]', PASS, PASS, PASS, PASS],\n [93, '[RMENU]', PASS, PASS, PASS, PASS],\n\n // These things.\n [42, '[PRTSCR]', PASS, PASS, PASS, PASS],\n [145, '[SCRLK]', PASS, PASS, PASS, PASS],\n [19, '[BREAK]', PASS, PASS, PASS, PASS],\n\n // The block of six keys above the arrows.\n [45, '[INSERT]', c('onKeyInsert_'), DEFAULT, DEFAULT, DEFAULT],\n [36, '[HOME]', c('onKeyHome_'), DEFAULT, DEFAULT, DEFAULT],\n [33, '[PGUP]', c('onKeyPageUp_'), DEFAULT, DEFAULT, DEFAULT],\n [46, '[DEL]', c('onKeyDel_'), DEFAULT, DEFAULT, DEFAULT],\n [35, '[END]', c('onKeyEnd_'), DEFAULT, DEFAULT, DEFAULT],\n [34, '[PGDOWN]', c('onKeyPageDown_'), DEFAULT, DEFAULT, DEFAULT],\n\n // Arrow keys. When unmodified they respect the application cursor state,\n // otherwise they always send the CSI codes.\n [38, '[UP]', c('onKeyArrowUp_'), DEFAULT, DEFAULT, DEFAULT],\n [40, '[DOWN]', c('onKeyArrowDown_'), DEFAULT, DEFAULT, DEFAULT],\n [39, '[RIGHT]', ac(CSI + 'C', SS3 + 'C'), DEFAULT, DEFAULT, DEFAULT],\n [37, '[LEFT]', ac(CSI + 'D', SS3 + 'D'), DEFAULT, DEFAULT, DEFAULT],\n\n [144, '[NUMLOCK]', PASS, PASS, PASS, PASS],\n\n // With numlock off, the keypad generates the same key codes as the arrows\n // and 'block of six' for some keys, and null key codes for the rest.\n\n // Keypad with numlock on generates unique key codes...\n [96, '[KP0]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [97, '[KP1]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [98, '[KP2]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [99, '[KP3]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [100, '[KP4]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [101, '[KP5]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [102, '[KP6]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [103, '[KP7]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [104, '[KP8]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [105, '[KP9]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [107, '[KP+]', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [109, '[KP-]', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [106, '[KP*]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [111, '[KP/]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [110, '[KP.]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n\n // Chrome OS keyboard top row.\n [166, '[BACK]', med(mod(SS3+'P', CSI+'P')), DEFAULT, CSI+\"23~\", DEFAULT],\n [167, '[FWD]', med(mod(SS3+'Q', CSI+'Q')), DEFAULT, CSI+\"24~\", DEFAULT],\n [168, '[RELOAD]', med(mod(SS3+'R', CSI+'R')), DEFAULT, CSI+\"25~\", DEFAULT],\n [183, '[FSCR]', med(mod(SS3+'S', CSI+'S')), DEFAULT, CSI+\"26~\", DEFAULT],\n [182, '[WINS]', med(CSI + '15~'), DEFAULT, CSI+\"28~\", DEFAULT],\n [216, '[BRIT-]', med(CSI + '17~'), DEFAULT, CSI+\"29~\", DEFAULT],\n [217, '[BRIT+]', med(CSI + '18~'), DEFAULT, CSI+\"31~\", DEFAULT]\n\n // 173 [MUTE], 174 [VOL-] and 175 [VOL+] are trapped by the Chrome OS\n // window manager, so we'll never see them. Note that 173 is also\n // Firefox's -_ keycode.\n );\n};\n\n/**\n * Either allow the paste or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyInsert_ = function(e) {\n if (this.keyboard.shiftInsertPaste && e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return '\\x1b[2~';\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyHome_ = function(e) {\n if (!this.keyboard.homeKeysScroll ^ e.shiftKey) {\n if ((e.altey || e.ctrlKey || e.shiftKey) ||\n !this.keyboard.applicationCursor) {\n return '\\x1b[H';\n }\n\n return '\\x1bOH';\n }\n\n this.keyboard.terminal.scrollHome();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyEnd_ = function(e) {\n if (!this.keyboard.homeKeysScroll ^ e.shiftKey) {\n if ((e.altKey || e.ctrlKey || e.shiftKey) ||\n !this.keyboard.applicationCursor) {\n return '\\x1b[F';\n }\n\n return '\\x1bOF';\n }\n\n this.keyboard.terminal.scrollEnd();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyPageUp_ = function(e) {\n if (!this.keyboard.pageKeysScroll ^ e.shiftKey)\n return '\\x1b[5~';\n\n this.keyboard.terminal.scrollPageUp();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either send a true DEL, or sub in meta-backspace.\n *\n * On Chrome OS, if we know the alt key is down, but we get a DEL event that\n * claims that the alt key is not pressed, we know the DEL was a synthetic\n * one from a user that hit alt-backspace. Based on a user pref, we can sub\n * in meta-backspace in this case.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyDel_ = function(e) {\n if (this.keyboard.altBackspaceIsMetaBackspace &&\n this.keyboard.altKeyPressed && !e.altKey)\n return '\\x1b\\x7f';\n return '\\x1b[3~';\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyPageDown_ = function(e) {\n if (!this.keyboard.pageKeysScroll ^ e.shiftKey)\n return '\\x1b[6~';\n\n this.keyboard.terminal.scrollPageDown();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyArrowUp_ = function(e) {\n if (!this.keyboard.applicationCursor && e.shiftKey) {\n this.keyboard.terminal.scrollLineUp();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !this.keyboard.applicationCursor) ? '\\x1b[A' : '\\x1bOA';\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyArrowDown_ = function(e) {\n if (!this.keyboard.applicationCursor && e.shiftKey) {\n this.keyboard.terminal.scrollLineDown();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !this.keyboard.applicationCursor) ? '\\x1b[B' : '\\x1bOB';\n};\n\n/**\n * Clear the primary/alternate screens and the scrollback buffer.\n */\nhterm.Keyboard.KeyMap.prototype.onClear_ = function(e, keyDef) {\n this.keyboard.terminal.wipeContents();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either pass Ctrl-1..9 to the browser or send them to the host.\n *\n * Note that Ctrl-1 and Ctrl-9 don't actually have special sequences mapped\n * to them in xterm or gnome-terminal. The range is really Ctrl-2..8, but\n * we handle 1..9 since Chrome treats the whole range special.\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlNum_ = function(e, keyDef) {\n // Compute a control character for a given character.\n function ctl(ch) { return String.fromCharCode(ch.charCodeAt(0) - 64) }\n\n if (this.keyboard.terminal.passCtrlNumber && !e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n switch (keyDef.keyCap.substr(0, 1)) {\n case '1': return '1';\n case '2': return ctl('@');\n case '3': return ctl('[');\n case '4': return ctl('\\\\');\n case '5': return ctl(']');\n case '6': return ctl('^');\n case '7': return ctl('_');\n case '8': return '\\x7f';\n case '9': return '9';\n }\n};\n\n/**\n * Either pass Alt-1..9 to the browser or send them to the host.\n */\nhterm.Keyboard.KeyMap.prototype.onAltNum_ = function(e, keyDef) {\n if (this.keyboard.terminal.passAltNumber && !e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Either pass Meta-1..9 to the browser or send them to the host.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaNum_ = function(e, keyDef) {\n if (this.keyboard.terminal.passMetaNumber && !e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Either send a ^C or interpret the keystroke as a copy command.\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlC_ = function(e, keyDef) {\n var selection = this.keyboard.terminal.getDocument().getSelection();\n\n if (!selection.isCollapsed) {\n if (this.keyboard.ctrlCCopy && !e.shiftKey) {\n // Ctrl-C should copy if there is a selection, send ^C otherwise.\n // Perform the copy by letting the browser handle Ctrl-C. On most\n // browsers, this is the *only* way to place text on the clipboard from\n // the 'drive-by' web.\n if (this.keyboard.terminal.clearSelectionAfterCopy) {\n setTimeout(selection.collapseToEnd.bind(selection), 50);\n }\n return hterm.Keyboard.KeyActions.PASS;\n }\n\n if (!this.keyboard.ctrlCCopy && e.shiftKey) {\n // Ctrl-Shift-C should copy if there is a selection, send ^C otherwise.\n // Perform the copy manually. This only works in situations where\n // document.execCommand('copy') is allowed.\n if (this.keyboard.terminal.clearSelectionAfterCopy) {\n setTimeout(selection.collapseToEnd.bind(selection), 50);\n }\n this.keyboard.terminal.copySelectionToClipboard();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n }\n\n return '\\x03';\n};\n\n/**\n * Either send a ^N or open a new window to the same location.\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlN_ = function(e, keyDef) {\n if (e.shiftKey) {\n window.open(document.location.href, '',\n 'chrome=no,close=yes,resize=yes,scrollbars=yes,' +\n 'minimizable=yes,width=' + window.innerWidth +\n ',height=' + window.innerHeight);\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return '\\x0e';\n};\n\n/**\n * Either send a ^V or issue a paste command.\n *\n * The default behavior is to paste if the user presses Ctrl-Shift-V, and send\n * a ^V if the user presses Ctrl-V. This can be flipped with the\n * 'ctrl-v-paste' preference.\n *\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlV_ = function(e, keyDef) {\n if ((!e.shiftKey && this.keyboard.ctrlVPaste) ||\n (e.shiftKey && !this.keyboard.ctrlVPaste)) {\n // We try to do the pasting ourselves as not all browsers/OSs bind Ctrl-V to\n // pasting. Notably, on macOS, Ctrl-V/Ctrl-Shift-V do nothing.\n // However, this might run into web restrictions, so if it fails, we still\n // fallback to the letting the native behavior (hopefully) save us.\n if (this.keyboard.terminal.paste())\n return hterm.Keyboard.KeyActions.CANCEL;\n else\n return hterm.Keyboard.KeyActions.PASS;\n }\n\n return '\\x16';\n};\n\n/**\n * Either the default action or open a new window to the same location.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaN_ = function(e, keyDef) {\n if (e.shiftKey) {\n window.open(document.location.href, '',\n 'chrome=no,close=yes,resize=yes,scrollbars=yes,' +\n 'minimizable=yes,width=' + window.outerWidth +\n ',height=' + window.outerHeight);\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Either send a Meta-C or allow the browser to interpret the keystroke as a\n * copy command.\n *\n * If there is no selection, or if the user presses Meta-Shift-C, then we'll\n * transmit an '\\x1b' (if metaSendsEscape is on) followed by 'c' or 'C'.\n *\n * If there is a selection, we defer to the browser. In this case we clear out\n * the selection so the user knows we heard them, and also to give them a\n * chance to send a Meta-C by just hitting the key again.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaC_ = function(e, keyDef) {\n var document = this.keyboard.terminal.getDocument();\n if (e.shiftKey || document.getSelection().isCollapsed) {\n // If the shift key is being held, or there is no document selection, send\n // a Meta-C. The keyboard code will add the ESC if metaSendsEscape is true,\n // we just have to decide between 'c' and 'C'.\n return keyDef.keyCap.substr(e.shiftKey ? 1 : 0, 1);\n }\n\n // Otherwise let the browser handle it as a copy command.\n if (this.keyboard.terminal.clearSelectionAfterCopy) {\n setTimeout(function() { document.getSelection().collapseToEnd() }, 50);\n }\n return hterm.Keyboard.KeyActions.PASS;\n};\n\n/**\n * Either PASS or DEFAULT Meta-V, depending on preference.\n *\n * Always PASS Meta-Shift-V to allow browser to interpret the keystroke as\n * a paste command.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaV_ = function(e, keyDef) {\n if (e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return this.keyboard.passMetaV ?\n hterm.Keyboard.KeyActions.PASS :\n hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Handle font zooming.\n *\n * The browser's built-in zoom has a bit of an issue at certain zoom levels.\n * At some magnifications, the measured height of a row of text differs from\n * the height that was explicitly set.\n *\n * We override the browser zoom keys to change the ScrollPort's font size to\n * avoid the issue.\n */\nhterm.Keyboard.KeyMap.prototype.onPlusMinusZero_ = function(e, keyDef) {\n if (!(this.keyboard.ctrlPlusMinusZeroZoom ^ e.shiftKey)) {\n // If ctrl-PMZ controls zoom and the shift key is pressed, or\n // ctrl-shift-PMZ controls zoom and this shift key is not pressed,\n // then we want to send the control code instead of affecting zoom.\n if (keyDef.keyCap == '-_')\n return '\\x1f'; // ^_\n\n // Only ^_ is valid, the other sequences have no meaning.\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n if (this.keyboard.terminal.getZoomFactor() != 1) {\n // If we're not at 1:1 zoom factor, let the Ctrl +/-/0 keys control the\n // browser zoom, so it's easier to for the user to get back to 100%.\n return hterm.Keyboard.KeyActions.PASS;\n }\n\n var cap = keyDef.keyCap.substr(0, 1);\n if (cap == '0') {\n this.keyboard.terminal.setFontSize(0);\n } else {\n var size = this.keyboard.terminal.getFontSize();\n\n if (cap == '-' || keyDef.keyCap == '[KP-]') {\n size -= 1;\n } else {\n size += 1;\n }\n\n this.keyboard.terminal.setFontSize(size);\n }\n\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n// SOURCE FILE: hterm/js/hterm_keyboard_keypattern.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * A record of modifier bits and keycode used to define a key binding.\n *\n * The modifier names are enumerated in the static KeyPattern.modifiers\n * property below. Each modifier can be true, false, or \"*\". True means\n * the modifier key must be present, false means it must not, and \"*\" means\n * it doesn't matter.\n */\nhterm.Keyboard.KeyPattern = function(spec) {\n this.wildcardCount = 0;\n this.keyCode = spec.keyCode;\n\n hterm.Keyboard.KeyPattern.modifiers.forEach(function(mod) {\n this[mod] = spec[mod] || false;\n if (this[mod] == '*')\n this.wildcardCount++;\n }.bind(this));\n};\n\n/**\n * Valid modifier names.\n */\nhterm.Keyboard.KeyPattern.modifiers = [\n 'shift', 'ctrl', 'alt', 'meta'\n];\n\n/**\n * A compare callback for Array.prototype.sort().\n *\n * The bindings code wants to be sure to search through the strictest key\n * patterns first, so that loosely defined patterns have a lower priority than\n * exact patterns.\n *\n * @param {hterm.Keyboard.KeyPattern} a\n * @param {hterm.Keyboard.KeyPattern} b\n */\nhterm.Keyboard.KeyPattern.sortCompare = function(a, b) {\n if (a.wildcardCount < b.wildcardCount)\n return -1;\n\n if (a.wildcardCount > b.wildcardCount)\n return 1;\n\n return 0;\n};\n\n/**\n * Private method used to match this key pattern against other key patterns\n * or key down events.\n *\n * @param {Object} The object to match.\n * @param {boolean} True if we should ignore wildcards. Useful when you want\n * to perform and exact match against another key pattern.\n */\nhterm.Keyboard.KeyPattern.prototype.match_ = function(obj, exactMatch) {\n if (this.keyCode != obj.keyCode)\n return false;\n\n var rv = true;\n\n hterm.Keyboard.KeyPattern.modifiers.forEach(function(mod) {\n var modValue = (mod in obj) ? obj[mod] : false;\n if (!rv || (!exactMatch && this[mod] == '*') || this[mod] == modValue)\n return;\n\n rv = false;\n }.bind(this));\n\n return rv;\n};\n\n/**\n * Return true if the given keyDown object is a match for this key pattern.\n *\n * @param {Object} keyDown An object with a keyCode property and zero or\n * more boolean properties representing key modifiers. These property names\n * must match those defined in hterm.Keyboard.KeyPattern.modifiers.\n */\nhterm.Keyboard.KeyPattern.prototype.matchKeyDown = function(keyDown) {\n return this.match_(keyDown, false);\n};\n\n/**\n * Return true if the given hterm.Keyboard.KeyPattern is exactly the same as\n * this one.\n *\n * @param {hterm.Keyboard.KeyPattern}\n */\nhterm.Keyboard.KeyPattern.prototype.matchKeyPattern = function(keyPattern) {\n return this.match_(keyPattern, true);\n};\n// SOURCE FILE: hterm/js/hterm_options.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * @fileoverview This file implements the hterm.Options class,\n * which stores current operating conditions for the terminal. This object is\n * used instead of a series of parameters to allow saving/restoring of cursor\n * conditions easily, and to provide an easy place for common configuration\n * options.\n *\n * Original code by Cory Maccarrone.\n */\n\n/**\n * Constructor for the hterm.Options class, optionally acting as a copy\n * constructor.\n *\n * The defaults are as defined in http://www.vt100.net/docs/vt510-rm/DECSTR\n * except that we enable autowrap (wraparound) by default since that seems to\n * be what xterm does.\n *\n * @param {hterm.Options=} opt_copy Optional instance to copy.\n * @constructor\n */\nhterm.Options = function(opt_copy) {\n // All attributes in this class are public to allow easy access by the\n // terminal.\n\n this.wraparound = opt_copy ? opt_copy.wraparound : true;\n this.reverseWraparound = opt_copy ? opt_copy.reverseWraparound : false;\n this.originMode = opt_copy ? opt_copy.originMode : false;\n this.autoCarriageReturn = opt_copy ? opt_copy.autoCarriageReturn : false;\n this.cursorVisible = opt_copy ? opt_copy.cursorVisible : false;\n this.cursorBlink = opt_copy ? opt_copy.cursorBlink : false;\n this.insertMode = opt_copy ? opt_copy.insertMode : false;\n this.reverseVideo = opt_copy ? opt_copy.reverseVideo : false;\n this.bracketedPaste = opt_copy ? opt_copy.bracketedPaste : false;\n};\n// SOURCE FILE: hterm/js/hterm_parser.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('hterm.Keyboard.KeyActions');\n\n/**\n * @constructor\n * Parses the key definition syntax used for user keyboard customizations.\n */\nhterm.Parser = function() {\n /**\n * @type {string} The source string.\n */\n this.source = '';\n\n /**\n * @type {number} The current position.\n */\n this.pos = 0;\n\n /**\n * @type {string?} The character at the current position.\n */\n this.ch = null;\n};\n\nhterm.Parser.prototype.error = function(message) {\n return new Error('Parse error at ' + this.pos + ': ' + message);\n};\n\nhterm.Parser.prototype.isComplete = function() {\n return this.pos == this.source.length;\n};\n\nhterm.Parser.prototype.reset = function(source, opt_pos) {\n this.source = source;\n this.pos = opt_pos || 0;\n this.ch = source.substr(0, 1);\n};\n\n/**\n * Parse a key sequence.\n *\n * A key sequence is zero or more of the key modifiers defined in\n * hterm.Parser.identifiers.modifierKeys followed by a key code. Key\n * codes can be an integer or an identifier from\n * hterm.Parser.identifiers.keyCodes. Modifiers and keyCodes should be joined\n * by the dash character.\n *\n * An asterisk \"*\" can be used to indicate that the unspecified modifiers\n * are optional.\n *\n * For example:\n * A: Matches only an unmodified \"A\" character.\n * 65: Same as above.\n * 0x41: Same as above.\n * Ctrl-A: Matches only Ctrl-A.\n * Ctrl-65: Same as above.\n * Ctrl-0x41: Same as above.\n * Ctrl-Shift-A: Matches only Ctrl-Shift-A.\n * Ctrl-*-A: Matches Ctrl-A, as well as any other key sequence that includes\n * at least the Ctrl and A keys.\n *\n * @return {Object} An object with shift, ctrl, alt, meta, keyCode\n * properties.\n */\nhterm.Parser.prototype.parseKeySequence = function() {\n var rv = {\n keyCode: null\n };\n\n for (var k in hterm.Parser.identifiers.modifierKeys) {\n rv[hterm.Parser.identifiers.modifierKeys[k]] = false;\n }\n\n while (this.pos < this.source.length) {\n this.skipSpace();\n\n var token = this.parseToken();\n if (token.type == 'integer') {\n rv.keyCode = token.value;\n\n } else if (token.type == 'identifier') {\n var ucValue = token.value.toUpperCase();\n if (ucValue in hterm.Parser.identifiers.modifierKeys &&\n hterm.Parser.identifiers.modifierKeys.hasOwnProperty(ucValue)) {\n var mod = hterm.Parser.identifiers.modifierKeys[ucValue];\n if (rv[mod] && rv[mod] != '*')\n throw this.error('Duplicate modifier: ' + token.value);\n rv[mod] = true;\n\n } else if (ucValue in hterm.Parser.identifiers.keyCodes &&\n hterm.Parser.identifiers.keyCodes.hasOwnProperty(ucValue)) {\n rv.keyCode = hterm.Parser.identifiers.keyCodes[ucValue];\n\n } else {\n throw this.error('Unknown key: ' + token.value);\n }\n\n } else if (token.type == 'symbol') {\n if (token.value == '*') {\n for (var id in hterm.Parser.identifiers.modifierKeys) {\n var p = hterm.Parser.identifiers.modifierKeys[id];\n if (!rv[p])\n rv[p] = '*';\n }\n } else {\n throw this.error('Unexpected symbol: ' + token.value);\n }\n } else {\n throw this.error('Expected integer or identifier');\n }\n\n this.skipSpace();\n\n if (this.ch != '-')\n break;\n\n if (rv.keyCode != null)\n throw this.error('Extra definition after target key');\n\n this.advance(1);\n }\n\n if (rv.keyCode == null)\n throw this.error('Missing target key');\n\n return rv;\n};\n\nhterm.Parser.prototype.parseKeyAction = function() {\n this.skipSpace();\n\n var token = this.parseToken();\n\n if (token.type == 'string')\n return token.value;\n\n if (token.type == 'identifier') {\n if (token.value in hterm.Parser.identifiers.actions &&\n hterm.Parser.identifiers.actions.hasOwnProperty(token.value))\n return hterm.Parser.identifiers.actions[token.value];\n\n throw this.error('Unknown key action: ' + token.value);\n }\n\n throw this.error('Expected string or identifier');\n\n};\n\nhterm.Parser.prototype.peekString = function() {\n return this.ch == '\\'' || this.ch == '\"';\n};\n\nhterm.Parser.prototype.peekIdentifier = function() {\n return this.ch.match(/[a-z_]/i);\n};\n\nhterm.Parser.prototype.peekInteger = function() {\n return this.ch.match(/[0-9]/);\n};\n\nhterm.Parser.prototype.parseToken = function() {\n if (this.ch == '*') {\n var rv = {type: 'symbol', value: this.ch};\n this.advance(1);\n return rv;\n }\n\n if (this.peekIdentifier())\n return {type: 'identifier', value: this.parseIdentifier()};\n\n if (this.peekString())\n return {type: 'string', value: this.parseString()};\n\n if (this.peekInteger())\n return {type: 'integer', value: this.parseInteger()};\n\n\n throw this.error('Unexpected token');\n};\n\nhterm.Parser.prototype.parseIdentifier = function() {\n if (!this.peekIdentifier())\n throw this.error('Expected identifier');\n\n return this.parsePattern(/[a-z0-9_]+/ig);\n};\n\nhterm.Parser.prototype.parseInteger = function() {\n var base = 10;\n\n if (this.ch == '0' && this.pos < this.source.length - 1 &&\n this.source.substr(this.pos + 1, 1) == 'x') {\n return parseInt(this.parsePattern(/0x[0-9a-f]+/gi));\n }\n\n return parseInt(this.parsePattern(/\\d+/g));\n};\n\n/**\n * Parse a single or double quoted string.\n *\n * The current position should point at the initial quote character. Single\n * quoted strings will be treated literally, double quoted will process escapes.\n *\n * TODO(rginda): Variable interpolation.\n *\n * @param {ParseState} parseState\n * @param {string} quote A single or double-quote character.\n * @return {string}\n */\nhterm.Parser.prototype.parseString = function() {\n var result = '';\n\n var quote = this.ch;\n if (quote != '\"' && quote != '\\'')\n throw this.error('String expected');\n\n this.advance(1);\n\n var re = new RegExp('[\\\\\\\\' + quote + ']', 'g');\n\n while (this.pos < this.source.length) {\n re.lastIndex = this.pos;\n if (!re.exec(this.source))\n throw this.error('Unterminated string literal');\n\n result += this.source.substring(this.pos, re.lastIndex - 1);\n\n this.advance(re.lastIndex - this.pos - 1);\n\n if (quote == '\"' && this.ch == '\\\\') {\n this.advance(1);\n result += this.parseEscape();\n continue;\n }\n\n if (quote == '\\'' && this.ch == '\\\\') {\n result += this.ch;\n this.advance(1);\n continue;\n }\n\n if (this.ch == quote) {\n this.advance(1);\n return result;\n }\n }\n\n throw this.error('Unterminated string literal');\n};\n\n\n/**\n * Parse an escape code from the current position (which should point to\n * the first character AFTER the leading backslash.)\n *\n * @return {string}\n */\nhterm.Parser.prototype.parseEscape = function() {\n var map = {\n '\"': '\"',\n '\\'': '\\'',\n '\\\\': '\\\\',\n 'a': '\\x07',\n 'b': '\\x08',\n 'e': '\\x1b',\n 'f': '\\x0c',\n 'n': '\\x0a',\n 'r': '\\x0d',\n 't': '\\x09',\n 'v': '\\x0b',\n 'x': function() {\n var value = this.parsePattern(/[a-z0-9]{2}/ig);\n return String.fromCharCode(parseInt(value, 16));\n },\n 'u': function() {\n var value = this.parsePattern(/[a-z0-9]{4}/ig);\n return String.fromCharCode(parseInt(value, 16));\n }\n };\n\n if (!(this.ch in map && map.hasOwnProperty(this.ch)))\n throw this.error('Unknown escape: ' + this.ch);\n\n var value = map[this.ch];\n this.advance(1);\n\n if (typeof value == 'function')\n value = value.call(this);\n\n return value;\n};\n\n/**\n * Parse the given pattern starting from the current position.\n *\n * @param {RegExp} pattern A pattern representing the characters to span. MUST\n * include the \"global\" RegExp flag.\n * @return {string}\n */\nhterm.Parser.prototype.parsePattern = function(pattern) {\n if (!pattern.global)\n throw this.error('Internal error: Span patterns must be global');\n\n pattern.lastIndex = this.pos;\n var ary = pattern.exec(this.source);\n\n if (!ary || pattern.lastIndex - ary[0].length != this.pos)\n throw this.error('Expected match for: ' + pattern);\n\n this.pos = pattern.lastIndex - 1;\n this.advance(1);\n\n return ary[0];\n};\n\n\n/**\n * Advance the current position.\n *\n * @param {number} count\n */\nhterm.Parser.prototype.advance = function(count) {\n this.pos += count;\n this.ch = this.source.substr(this.pos, 1);\n};\n\n/**\n * @param {string=} opt_expect A list of valid non-whitespace characters to\n * terminate on.\n * @return {void}\n */\nhterm.Parser.prototype.skipSpace = function(opt_expect) {\n if (!/\\s/.test(this.ch))\n return;\n\n var re = /\\s+/gm;\n re.lastIndex = this.pos;\n\n var source = this.source;\n if (re.exec(source))\n this.pos = re.lastIndex;\n\n this.ch = this.source.substr(this.pos, 1);\n\n if (opt_expect) {\n if (this.ch.indexOf(opt_expect) == -1) {\n throw this.error('Expected one of ' + opt_expect + ', found: ' +\n this.ch);\n }\n }\n};\n// SOURCE FILE: hterm/js/hterm_parser_identifiers.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Collections of identifier for hterm.Parser.\n */\nhterm.Parser.identifiers = {};\n\n/**\n * Modifier key names used when defining key sequences.\n *\n * These are upper case so we can normalize the user input and be forgiving.\n * \"CTRL-A\" and \"Ctrl-A\" and \"ctrl-a\" are all accepted.\n *\n * Note: Names here cannot overlap with hterm.Parser.identifiers.keyCodes.\n */\nhterm.Parser.identifiers.modifierKeys = {\n SHIFT: 'shift',\n CTRL: 'ctrl',\n // Common alias.\n CONTROL: 'ctrl',\n ALT: 'alt',\n META: 'meta'\n};\n\n/**\n * Key codes useful when defining key sequences.\n *\n * Punctuation is mostly left out of this list because they can move around\n * based on keyboard locale and browser.\n *\n * In a key sequence like \"Ctrl-ESC\", the ESC comes from this list of\n * identifiers. It is equivalent to \"Ctrl-27\" and \"Ctrl-0x1b\".\n *\n * These are upper case so we can normalize the user input and be forgiving.\n * \"Ctrl-ESC\" and \"Ctrl-Esc\" an \"Ctrl-esc\" are all accepted.\n *\n * We also include common aliases for the same key. \"Esc\" and \"Escape\" are the\n * same key.\n *\n * Note: Names here cannot overlap with hterm.Parser.identifiers.modifierKeys.\n */\nhterm.Parser.identifiers.keyCodes = {\n // Top row.\n ESCAPE: 27,\n ESC: 27,\n F1: 112,\n F2: 113,\n F3: 114,\n F4: 115,\n F5: 116,\n F6: 117,\n F7: 118,\n F8: 119,\n F9: 120,\n F10: 121,\n F11: 122,\n F12: 123,\n\n // Row two.\n ONE: 49,\n TWO: 50,\n THREE: 51,\n FOUR: 52,\n FIVE: 53,\n SIX: 54,\n SEVEN: 55,\n EIGHT: 56,\n NINE: 57,\n ZERO: 48,\n BACKSPACE: 8,\n BKSP: 8,\n BS: 8,\n\n // Row three.\n TAB: 9,\n Q: 81,\n W: 87,\n E: 69,\n R: 82,\n T: 84,\n Y: 89,\n U: 85,\n I: 73,\n O: 79,\n P: 80,\n\n // Row four.\n CAPS_LOCK: 20,\n CAPSLOCK: 20,\n CAPS: 20,\n A: 65,\n S: 83,\n D: 68,\n F: 70,\n G: 71,\n H: 72,\n J: 74,\n K: 75,\n L: 76,\n // We map enter and return together even though enter should really be 10\n // because most people don't know or care about the history here. Plus,\n // most keyboards/programs map them together already. If they really want\n // to bind them differently, they can also use the numeric value.\n ENTER: 13,\n ENT: 13,\n RETURN: 13,\n RET: 13,\n\n // Row five.\n Z: 90,\n X: 88,\n C: 67,\n V: 86,\n B: 66,\n N: 78,\n M: 77,\n\n // Etc.\n SPACE: 32,\n SP: 32,\n PRINT_SCREEN: 42,\n PRTSC: 42,\n SCROLL_LOCK: 145,\n SCRLK: 145,\n BREAK: 19,\n BRK: 19,\n INSERT: 45,\n INS: 45,\n HOME: 36,\n PAGE_UP: 33,\n PGUP: 33,\n DELETE: 46,\n DEL: 46,\n END: 35,\n PAGE_DOWN: 34,\n PGDOWN: 34,\n PGDN: 34,\n UP: 38,\n DOWN: 40,\n RIGHT: 39,\n LEFT: 37,\n NUMLOCK: 144,\n\n // Keypad\n KP0: 96,\n KP1: 97,\n KP2: 98,\n KP3: 99,\n KP4: 100,\n KP5: 101,\n KP6: 102,\n KP7: 103,\n KP8: 104,\n KP9: 105,\n KP_PLUS: 107,\n KP_ADD: 107,\n KP_MINUS: 109,\n KP_SUBTRACT: 109,\n KP_STAR: 106,\n KP_MULTIPLY: 106,\n KP_DIVIDE: 111,\n KP_DECIMAL: 110,\n KP_PERIOD: 110,\n\n // Chrome OS media keys\n NAVIGATE_BACK: 166,\n NAVIGATE_FORWARD: 167,\n RELOAD: 168,\n FULL_SCREEN: 183,\n WINDOW_OVERVIEW: 182,\n BRIGHTNESS_UP: 216,\n BRIGHTNESS_DOWN: 217\n};\n\n/**\n * Identifiers for use in key actions.\n */\nhterm.Parser.identifiers.actions = {\n /**\n * Prevent the browser and operating system from handling the event.\n */\n CANCEL: hterm.Keyboard.KeyActions.CANCEL,\n\n /**\n * Wait for a \"keypress\" event, send the keypress charCode to the host.\n */\n DEFAULT: hterm.Keyboard.KeyActions.DEFAULT,\n\n /**\n * Let the browser or operating system handle the key.\n */\n PASS: hterm.Keyboard.KeyActions.PASS,\n\n /**\n * Scroll the terminal one page up.\n */\n scrollPageUp: function(terminal) {\n terminal.scrollPageUp();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Scroll the terminal one page down.\n */\n scrollPageDown: function(terminal) {\n terminal.scrollPageDown();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Scroll the terminal to the top.\n */\n scrollToTop: function(terminal) {\n terminal.scrollEnd();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Scroll the terminal to the bottom.\n */\n scrollToBottom: function(terminal) {\n terminal.scrollEnd();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Clear the terminal and scrollback buffer.\n */\n clearScrollback: function(terminal) {\n terminal.wipeContents();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n};\n// SOURCE FILE: hterm/js/hterm_preference_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f', 'lib.Storage');\n\n/**\n * PreferenceManager subclass managing global NaSSH preferences.\n *\n * This is currently just an ordered list of known connection profiles.\n */\nhterm.PreferenceManager = function(profileId) {\n lib.PreferenceManager.call(this, hterm.defaultStorage,\n '/hterm/profiles/' + profileId);\n var defs = hterm.PreferenceManager.defaultPreferences;\n Object.keys(defs).forEach(function(key) {\n this.definePreference(key, defs[key][1]);\n }.bind(this));\n};\n\nhterm.PreferenceManager.categories = {};\nhterm.PreferenceManager.categories.Keyboard = 'Keyboard';\nhterm.PreferenceManager.categories.Appearance = 'Appearance';\nhterm.PreferenceManager.categories.CopyPaste = 'CopyPaste';\nhterm.PreferenceManager.categories.Sounds = 'Sounds';\nhterm.PreferenceManager.categories.Scrolling = 'Scrolling';\nhterm.PreferenceManager.categories.Encoding = 'Encoding';\nhterm.PreferenceManager.categories.Miscellaneous = 'Miscellaneous';\n\n/**\n * List of categories, ordered by display order (top to bottom)\n */\nhterm.PreferenceManager.categoryDefinitions = [\n { id: hterm.PreferenceManager.categories.Appearance,\n text: 'Appearance (fonts, colors, images)'},\n { id: hterm.PreferenceManager.categories.CopyPaste,\n text: 'Copy & Paste'},\n { id: hterm.PreferenceManager.categories.Encoding,\n text: 'Encoding'},\n { id: hterm.PreferenceManager.categories.Keyboard,\n text: 'Keyboard'},\n { id: hterm.PreferenceManager.categories.Scrolling,\n text: 'Scrolling'},\n { id: hterm.PreferenceManager.categories.Sounds,\n text: 'Sounds'},\n { id: hterm.PreferenceManager.categories.Miscellaneous,\n text: 'Misc.'}\n];\n\n\nhterm.PreferenceManager.defaultPreferences = {\n 'alt-gr-mode':\n [hterm.PreferenceManager.categories.Keyboard, null,\n [null, 'none', 'ctrl-alt', 'left-alt', 'right-alt'],\n 'Select an AltGr detection hack^Wheuristic.\\n' +\n '\\n' +\n '\\'null\\': Autodetect based on navigator.language:\\n' +\n ' \\'en-us\\' => \\'none\\', else => \\'right-alt\\'\\n' +\n '\\'none\\': Disable any AltGr related munging.\\n' +\n '\\'ctrl-alt\\': Assume Ctrl+Alt means AltGr.\\n' +\n '\\'left-alt\\': Assume left Alt means AltGr.\\n' +\n '\\'right-alt\\': Assume right Alt means AltGr.\\n'],\n\n 'alt-backspace-is-meta-backspace':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If set, undoes the Chrome OS Alt-Backspace->DEL remap, so that ' +\n 'alt-backspace indeed is alt-backspace.'],\n\n 'alt-is-meta':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Set whether the alt key acts as a meta key or as a distinct alt key.'],\n\n 'alt-sends-what':\n [hterm.PreferenceManager.categories.Keyboard, 'escape',\n ['escape', '8-bit', 'browser-key'],\n 'Controls how the alt key is handled.\\n' +\n '\\n' +\n ' escape....... Send an ESC prefix.\\n' +\n ' 8-bit........ Add 128 to the unshifted character as in xterm.\\n' +\n ' browser-key.. Wait for the keypress event and see what the browser \\n' +\n ' says. (This won\\'t work well on platforms where the \\n' +\n ' browser performs a default action for some alt sequences.)'\n ],\n\n 'audible-bell-sound':\n [hterm.PreferenceManager.categories.Sounds, 'lib-resource:hterm/audio/bell',\n 'url',\n 'URL of the terminal bell sound. Empty string for no audible bell.'],\n\n 'desktop-notification-bell':\n [hterm.PreferenceManager.categories.Sounds, false, 'bool',\n 'If true, terminal bells in the background will create a Web ' +\n 'Notification. https://www.w3.org/TR/notifications/\\n' +\n '\\n'+\n 'Displaying notifications requires permission from the user. When this ' +\n 'option is set to true, hterm will attempt to ask the user for permission ' +\n 'if necessary. Note browsers may not show this permission request if it ' +\n 'did not originate from a user action.\\n' +\n '\\n' +\n 'Chrome extensions with the \"notifications\" permission have permission to ' +\n 'display notifications.'],\n\n 'background-color':\n [hterm.PreferenceManager.categories.Appearance, 'rgb(16, 16, 16)', 'color',\n 'The background color for text with no other color attributes.'],\n\n 'background-image':\n [hterm.PreferenceManager.categories.Appearance, '', 'string',\n 'CSS value of the background image. Empty string for no image.\\n' +\n '\\n' +\n 'For example:\\n' +\n ' url(https://goo.gl/anedTK)\\n' +\n ' linear-gradient(top bottom, blue, red)'],\n\n 'background-size':\n [hterm.PreferenceManager.categories.Appearance, '', 'string',\n 'CSS value of the background image size. Defaults to none.'],\n\n 'background-position':\n [hterm.PreferenceManager.categories.Appearance, '', 'string',\n 'CSS value of the background image position.\\n' +\n '\\n' +\n 'For example:\\n' +\n ' 10% 10%\\n' +\n ' center'],\n\n 'backspace-sends-backspace':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, the backspace should send BS (\\'\\\\x08\\', aka ^H). Otherwise ' +\n 'the backspace key should send \\'\\\\x7f\\'.'],\n\n 'character-map-overrides':\n [hterm.PreferenceManager.categories.Appearance, null, 'value',\n 'This is specified as an object. It is a sparse array, where each ' +\n 'property is the character set code and the value is an object that is ' +\n 'a sparse array itself. In that sparse array, each property is the ' +\n 'received character and the value is the displayed character.\\n' +\n '\\n' +\n 'For example:\\n' +\n ' {\"0\":{\"+\":\"\\\\u2192\",\",\":\"\\\\u2190\",\"-\":\"\\\\u2191\",\".\":\"\\\\u2193\", ' +\n '\"0\":\"\\\\u2588\"}}'\n ],\n\n 'close-on-exit':\n [hterm.PreferenceManager.categories.Miscellaneous, true, 'bool',\n 'Whether or not to close the window when the command exits.'],\n\n 'cursor-blink':\n [hterm.PreferenceManager.categories.Appearance, false, 'bool',\n 'Whether or not to blink the cursor by default.'],\n\n 'cursor-blink-cycle':\n [hterm.PreferenceManager.categories.Appearance, [1000, 500], 'value',\n 'The cursor blink rate in milliseconds.\\n' +\n '\\n' +\n 'A two element array, the first of which is how long the cursor should be ' +\n 'on, second is how long it should be off.'],\n\n 'cursor-color':\n [hterm.PreferenceManager.categories.Appearance, 'rgba(255, 0, 0, 0.5)',\n 'color',\n 'The color of the visible cursor.'],\n\n 'color-palette-overrides':\n [hterm.PreferenceManager.categories.Appearance, null, 'value',\n 'Override colors in the default palette.\\n' +\n '\\n' +\n 'This can be specified as an array or an object. If specified as an ' +\n 'object it is assumed to be a sparse array, where each property ' +\n 'is a numeric index into the color palette.\\n' +\n '\\n' +\n 'Values can be specified as almost any css color value. This ' +\n 'includes #RGB, #RRGGBB, rgb(...), rgba(...), and any color names ' +\n 'that are also part of the stock X11 rgb.txt file.\\n' +\n '\\n' +\n 'You can use \\'null\\' to specify that the default value should be not ' +\n 'be changed. This is useful for skipping a small number of indices ' +\n 'when the value is specified as an array.'],\n\n 'copy-on-select':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Automatically copy mouse selection to the clipboard.'],\n\n 'use-default-window-copy':\n [hterm.PreferenceManager.categories.CopyPaste, false, 'bool',\n 'Whether to use the default window copy behavior'],\n\n 'clear-selection-after-copy':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Whether to clear the selection after copying.'],\n\n 'ctrl-plus-minus-zero-zoom':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'If true, Ctrl-Plus/Minus/Zero controls zoom.\\n' +\n 'If false, Ctrl-Shift-Plus/Minus/Zero controls zoom, Ctrl-Minus sends ^_, ' +\n 'Ctrl-Plus/Zero do nothing.'],\n\n 'ctrl-c-copy':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Ctrl+C copies if true, send ^C to host if false.\\n' +\n 'Ctrl+Shift+C sends ^C to host if true, copies if false.'],\n\n 'ctrl-v-paste':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Ctrl+V pastes if true, send ^V to host if false.\\n' +\n 'Ctrl+Shift+V sends ^V to host if true, pastes if false.'],\n\n 'east-asian-ambiguous-as-two-column':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Set whether East Asian Ambiguous characters have two column width.'],\n\n 'enable-8-bit-control':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'True to enable 8-bit control characters, false to ignore them.\\n' +\n '\\n' +\n 'We\\'ll respect the two-byte versions of these control characters ' +\n 'regardless of this setting.'],\n\n 'enable-bold':\n [hterm.PreferenceManager.categories.Appearance, null, 'tristate',\n 'True if we should use bold weight font for text with the bold/bright ' +\n 'attribute. False to use the normal weight font. Null to autodetect.'],\n\n 'enable-bold-as-bright':\n [hterm.PreferenceManager.categories.Appearance, true, 'bool',\n 'True if we should use bright colors (8-15 on a 16 color palette) ' +\n 'for any text with the bold attribute. False otherwise.'],\n\n 'enable-blink':\n [hterm.PreferenceManager.categories.Appearance, true, 'bool',\n 'True if we should respect the blink attribute. False to ignore it. '],\n\n 'enable-clipboard-notice':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Show a message in the terminal when the host writes to the clipboard.'],\n\n 'enable-clipboard-write':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Allow the host to write directly to the system clipboard.'],\n\n 'enable-dec12':\n [hterm.PreferenceManager.categories.Miscellaneous, false, 'bool',\n 'Respect the host\\'s attempt to change the cursor blink status using ' +\n 'DEC Private Mode 12.'],\n\n 'environment':\n [hterm.PreferenceManager.categories.Miscellaneous, {'TERM': 'xterm-256color'},\n 'value',\n 'The default environment variables, as an object.'],\n\n 'font-family':\n [hterm.PreferenceManager.categories.Appearance,\n '\"DejaVu Sans Mono\", \"Everson Mono\", FreeMono, \"Menlo\", \"Terminal\", ' +\n 'monospace', 'string',\n 'Default font family for the terminal text.'],\n\n 'font-size':\n [hterm.PreferenceManager.categories.Appearance, 15, 'int',\n 'The default font size in pixels.'],\n\n 'font-smoothing':\n [hterm.PreferenceManager.categories.Appearance, 'antialiased', 'string',\n 'CSS font-smoothing property.'],\n\n 'foreground-color':\n [hterm.PreferenceManager.categories.Appearance, 'rgb(240, 240, 240)', 'color',\n 'The foreground color for text with no other color attributes.'],\n\n 'home-keys-scroll':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, home/end will control the terminal scrollbar and shift home/end ' +\n 'will send the VT keycodes. If false then home/end sends VT codes and ' +\n 'shift home/end scrolls.'],\n\n 'keybindings':\n [hterm.PreferenceManager.categories.Keyboard, null, 'value',\n 'A map of key sequence to key actions. Key sequences include zero or ' +\n 'more modifier keys followed by a key code. Key codes can be decimal or ' +\n 'hexadecimal numbers, or a key identifier. Key actions can be specified ' +\n 'a string to send to the host, or an action identifier. For a full ' +\n 'explanation of the format, see https://goo.gl/LWRndr.\\n' +\n '\\n' +\n 'Sample keybindings:\\n' +\n '{\\n' +\n ' \"Ctrl-Alt-K\": \"clearScrollback\",\\n' +\n ' \"Ctrl-Shift-L\": \"PASS\",\\n' +\n ' \"Ctrl-H\": \"\\'HELLO\\\\n\\'\"\\n' +\n '}'],\n\n 'max-string-sequence':\n [hterm.PreferenceManager.categories.Encoding, 100000, 'int',\n 'Max length of a DCS, OSC, PM, or APS sequence before we give up and ' +\n 'ignore the code.'],\n\n 'media-keys-are-fkeys':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, convert media keys to their Fkey equivalent. If false, let ' +\n 'the browser handle the keys.'],\n\n 'meta-sends-escape':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'Set whether the meta key sends a leading escape or not.'],\n\n 'mouse-right-click-paste':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Paste on right mouse button clicks.\\n' +\n '\\n' +\n 'This option is activate independent of the \"mouse-paste-button\" ' +\n 'setting.\\n' +\n '\\n' +\n 'Note: This will handle left & right handed mice correctly.'],\n\n 'mouse-paste-button':\n [hterm.PreferenceManager.categories.CopyPaste, null,\n [null, 0, 1, 2, 3, 4, 5, 6],\n 'Mouse paste button, or null to autodetect.\\n' +\n '\\n' +\n 'For autodetect, we\\'ll use the middle mouse button for non-X11 ' +\n 'platforms (including Chrome OS). On X11, we\\'ll use the right mouse ' +\n 'button (since the native window manager should paste via the middle ' +\n 'mouse button).\\n' +\n '\\n' +\n '0 == left (primary) button.\\n' +\n '1 == middle (auxiliary) button.\\n' +\n '2 == right (secondary) button.\\n' +\n '\\n' +\n 'This option is activate independent of the \"mouse-right-click-paste\" ' +\n 'setting.\\n' +\n '\\n' +\n 'Note: This will handle left & right handed mice correctly.'],\n\n 'word-break-match-left':\n [hterm.PreferenceManager.categories.CopyPaste,\n '[^\\\\s\\\\[\\\\](){}<>\"\\'\\\\^!@#$%&*,;:`]', 'string',\n 'Regular expression to halt matching to the left (start) of a selection.\\n' +\n '\\n' +\n 'Normally this is a character class to reject specific characters.\\n' +\n 'We allow \"~\" and \".\" by default as paths frequently start with those.'],\n\n 'word-break-match-right':\n [hterm.PreferenceManager.categories.CopyPaste,\n '[^\\\\s\\\\[\\\\](){}<>\"\\'\\\\^!@#$%&*,;:~.`]', 'string',\n 'Regular expression to halt matching to the right (end) of a selection.\\n' +\n '\\n' +\n 'Normally this is a character class to reject specific characters.'],\n\n 'word-break-match-middle':\n [hterm.PreferenceManager.categories.CopyPaste,\n '[^\\\\s\\\\[\\\\](){}<>\"\\'\\\\^]*', 'string',\n 'Regular expression to match all the characters in the middle.\\n' +\n '\\n' +\n 'Normally this is a character class to reject specific characters.\\n' +\n '\\n' +\n 'Used to expand the selection surrounding the starting point.'],\n\n 'page-keys-scroll':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, page up/down will control the terminal scrollbar and shift ' +\n 'page up/down will send the VT keycodes. If false then page up/down ' +\n 'sends VT codes and shift page up/down scrolls.'],\n\n 'pass-alt-number':\n [hterm.PreferenceManager.categories.Keyboard, null, 'tristate',\n 'Set whether we should pass Alt-1..9 to the browser.\\n' +\n '\\n' +\n 'This is handy when running hterm in a browser tab, so that you don\\'t ' +\n 'lose Chrome\\'s \"switch to tab\" keyboard accelerators. When not running ' +\n 'in a tab it\\'s better to send these keys to the host so they can be ' +\n 'used in vim or emacs.\\n' +\n '\\n' +\n 'If true, Alt-1..9 will be handled by the browser. If false, Alt-1..9 ' +\n 'will be sent to the host. If null, autodetect based on browser platform ' +\n 'and window type.'],\n\n 'pass-ctrl-number':\n [hterm.PreferenceManager.categories.Keyboard, null, 'tristate',\n 'Set whether we should pass Ctrl-1..9 to the browser.\\n' +\n '\\n' +\n 'This is handy when running hterm in a browser tab, so that you don\\'t ' +\n 'lose Chrome\\'s \"switch to tab\" keyboard accelerators. When not running ' +\n 'in a tab it\\'s better to send these keys to the host so they can be ' +\n 'used in vim or emacs.\\n' +\n '\\n' +\n 'If true, Ctrl-1..9 will be handled by the browser. If false, Ctrl-1..9 ' +\n 'will be sent to the host. If null, autodetect based on browser platform ' +\n 'and window type.'],\n\n 'pass-meta-number':\n [hterm.PreferenceManager.categories.Keyboard, null, 'tristate',\n 'Set whether we should pass Meta-1..9 to the browser.\\n' +\n '\\n' +\n 'This is handy when running hterm in a browser tab, so that you don\\'t ' +\n 'lose Chrome\\'s \"switch to tab\" keyboard accelerators. When not running ' +\n 'in a tab it\\'s better to send these keys to the host so they can be ' +\n 'used in vim or emacs.\\n' +\n '\\n' +\n 'If true, Meta-1..9 will be handled by the browser. If false, Meta-1..9 ' +\n 'will be sent to the host. If null, autodetect based on browser platform ' +\n 'and window type.'],\n\n 'pass-meta-v':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'Set whether meta-V gets passed to host.'],\n\n 'receive-encoding':\n [hterm.PreferenceManager.categories.Encoding, 'utf-8', ['utf-8', 'raw'],\n 'Set the expected encoding for data received from the host.\\n' +\n '\\n' +\n 'Valid values are \\'utf-8\\' and \\'raw\\'.'],\n\n 'scroll-on-keystroke':\n [hterm.PreferenceManager.categories.Scrolling, true, 'bool',\n 'If true, scroll to the bottom on any keystroke.'],\n\n 'scroll-on-output':\n [hterm.PreferenceManager.categories.Scrolling, false, 'bool',\n 'If true, scroll to the bottom on terminal output.'],\n\n 'scrollbar-visible':\n [hterm.PreferenceManager.categories.Scrolling, true, 'bool',\n 'The vertical scrollbar mode.'],\n\n 'scroll-wheel-may-send-arrow-keys':\n [hterm.PreferenceManager.categories.Scrolling, false, 'bool',\n 'When using the alternative screen buffer, and DECCKM (Application Cursor ' +\n 'Keys) is active, mouse wheel scroll events will emulate arrow keys.\\n' +\n '\\n' +\n 'It can be temporarily disabled by holding the shift key.\\n' +\n '\\n' +\n 'This frequently comes up when using pagers (less) or reading man pages ' +\n 'or text editors (vi/nano) or using screen/tmux.'],\n\n 'scroll-wheel-move-multiplier':\n [hterm.PreferenceManager.categories.Scrolling, 1, 'int',\n 'The multiplier for the pixel delta in wheel events caused by the ' +\n 'scroll wheel. Alters how fast the page scrolls.'],\n\n 'send-encoding':\n [hterm.PreferenceManager.categories.Encoding, 'utf-8', ['utf-8', 'raw'],\n 'Set the encoding for data sent to host.'],\n\n 'terminal-encoding':\n [hterm.PreferenceManager.categories.Encoding, 'iso-2022',\n ['iso-2022', 'utf-8', 'utf-8-locked'],\n 'The default terminal encoding (DOCS).\\n' +\n '\\n' +\n 'ISO-2022 enables character map translations (like graphics maps).\\n' +\n 'UTF-8 disables support for those.\\n' +\n '\\n' +\n 'The locked variant means the encoding cannot be changed at runtime ' +\n 'via terminal escape sequences.\\n' +\n '\\n' +\n 'You should stick with UTF-8 unless you notice broken rendering with ' +\n 'legacy applications.'],\n\n 'shift-insert-paste':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'Shift + Insert pastes if true, sent to host if false.'],\n\n 'user-css':\n [hterm.PreferenceManager.categories.Appearance, '', 'url',\n 'URL of user stylesheet to include in the terminal document.'],\n\n 'user-css-text':\n [hterm.PreferenceManager.categories.Appearance, '', 'multiline-string',\n 'Custom CSS text for styling the terminal.'],\n};\n\nhterm.PreferenceManager.prototype =\n Object.create(lib.PreferenceManager.prototype);\nhterm.PreferenceManager.constructor = hterm.PreferenceManager;\n// SOURCE FILE: hterm/js/hterm_pubsub.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Utility class used to add publish/subscribe/unsubscribe functionality to\n * an existing object.\n */\nhterm.PubSub = function() {\n this.observers_ = {};\n};\n\n/**\n * Add publish, subscribe, and unsubscribe methods to an existing object.\n *\n * No other properties of the object are touched, so there is no need to\n * worry about clashing private properties.\n *\n * @param {Object} obj The object to add this behavior to.\n */\nhterm.PubSub.addBehavior = function(obj) {\n var pubsub = new hterm.PubSub();\n for (var m in hterm.PubSub.prototype) {\n obj[m] = hterm.PubSub.prototype[m].bind(pubsub);\n }\n};\n\n/**\n * Subscribe to be notified of messages about a subject.\n *\n * @param {string} subject The subject to subscribe to.\n * @param {function(Object)} callback The function to invoke for notifications.\n */\nhterm.PubSub.prototype.subscribe = function(subject, callback) {\n if (!(subject in this.observers_))\n this.observers_[subject] = [];\n\n this.observers_[subject].push(callback);\n};\n\n/**\n * Unsubscribe from a subject.\n *\n * @param {string} subject The subject to unsubscribe from.\n * @param {function(Object)} callback A callback previously registered via\n * subscribe().\n */\nhterm.PubSub.prototype.unsubscribe = function(subject, callback) {\n var list = this.observers_[subject];\n if (!list)\n throw 'Invalid subject: ' + subject;\n\n var i = list.indexOf(callback);\n if (i < 0)\n throw 'Not subscribed: ' + subject;\n\n list.splice(i, 1);\n};\n\n/**\n * Publish a message about a subject.\n *\n * Subscribers (and the optional final callback) are invoked asynchronously.\n * This method will return before anyone is actually notified.\n *\n * @param {string} subject The subject to publish about.\n * @param {Object} e An arbitrary object associated with this notification.\n * @param {function(Object)} opt_lastCallback An optional function to call after\n * all subscribers have been notified.\n */\nhterm.PubSub.prototype.publish = function(subject, e, opt_lastCallback) {\n function notifyList(i) {\n // Set this timeout before invoking the callback, so we don't have to\n // concern ourselves with exceptions.\n if (i < list.length - 1)\n setTimeout(notifyList, 0, i + 1);\n\n list[i](e);\n }\n\n var list = this.observers_[subject];\n if (list) {\n // Copy the list, in case it changes while we're notifying.\n list = [].concat(list);\n }\n\n if (opt_lastCallback) {\n if (list) {\n list.push(opt_lastCallback);\n } else {\n list = [opt_lastCallback];\n }\n }\n\n if (list)\n setTimeout(notifyList, 0, 0);\n};\n// SOURCE FILE: hterm/js/hterm_screen.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f', 'lib.wc',\n 'hterm.RowCol', 'hterm.Size', 'hterm.TextAttributes');\n\n/**\n * @fileoverview This class represents a single terminal screen full of text.\n *\n * It maintains the current cursor position and has basic methods for text\n * insert and overwrite, and adding or removing rows from the screen.\n *\n * This class has no knowledge of the scrollback buffer.\n *\n * The number of rows on the screen is determined only by the number of rows\n * that the caller inserts into the screen. If a caller wants to ensure a\n * constant number of rows on the screen, it's their responsibility to remove a\n * row for each row inserted.\n *\n * The screen width, in contrast, is enforced locally.\n *\n *\n * In practice...\n * - The hterm.Terminal class holds two hterm.Screen instances. One for the\n * primary screen and one for the alternate screen.\n *\n * - The html.Screen class only cares that rows are HTMLElements. In the\n * larger context of hterm, however, the rows happen to be displayed by an\n * hterm.ScrollPort and have to follow a few rules as a result. Each\n * row must be rooted by the custom HTML tag 'x-row', and each must have a\n * rowIndex property that corresponds to the index of the row in the context\n * of the scrollback buffer. These invariants are enforced by hterm.Terminal\n * because that is the class using the hterm.Screen in the context of an\n * hterm.ScrollPort.\n */\n\n/**\n * Create a new screen instance.\n *\n * The screen initially has no rows and a maximum column count of 0.\n *\n * @param {integer} opt_columnCount The maximum number of columns for this\n * screen. See insertString() and overwriteString() for information about\n * what happens when too many characters are added too a row. Defaults to\n * 0 if not provided.\n */\nhterm.Screen = function(opt_columnCount) {\n /**\n * Public, read-only access to the rows in this screen.\n */\n this.rowsArray = [];\n\n // The max column width for this screen.\n this.columnCount_ = opt_columnCount || 80;\n\n // The current color, bold, underline and blink attributes.\n this.textAttributes = new hterm.TextAttributes(window.document);\n\n // Current zero-based cursor coordinates.\n this.cursorPosition = new hterm.RowCol(0, 0);\n\n // The node containing the row that the cursor is positioned on.\n this.cursorRowNode_ = null;\n\n // The node containing the span of text that the cursor is positioned on.\n this.cursorNode_ = null;\n\n // The offset in column width into cursorNode_ where the cursor is positioned.\n this.cursorOffset_ = null;\n\n // Regexes for expanding word selections.\n this.wordBreakMatchLeft = null;\n this.wordBreakMatchRight = null;\n this.wordBreakMatchMiddle = null;\n};\n\n/**\n * Return the screen size as an hterm.Size object.\n *\n * @return {hterm.Size} hterm.Size object representing the current number\n * of rows and columns in this screen.\n */\nhterm.Screen.prototype.getSize = function() {\n return new hterm.Size(this.columnCount_, this.rowsArray.length);\n};\n\n/**\n * Return the current number of rows in this screen.\n *\n * @return {integer} The number of rows in this screen.\n */\nhterm.Screen.prototype.getHeight = function() {\n return this.rowsArray.length;\n};\n\n/**\n * Return the current number of columns in this screen.\n *\n * @return {integer} The number of columns in this screen.\n */\nhterm.Screen.prototype.getWidth = function() {\n return this.columnCount_;\n};\n\n/**\n * Set the maximum number of columns per row.\n *\n * @param {integer} count The maximum number of columns per row.\n */\nhterm.Screen.prototype.setColumnCount = function(count) {\n this.columnCount_ = count;\n\n if (this.cursorPosition.column >= count)\n this.setCursorPosition(this.cursorPosition.row, count - 1);\n};\n\n/**\n * Remove the first row from the screen and return it.\n *\n * @return {HTMLElement} The first row in this screen.\n */\nhterm.Screen.prototype.shiftRow = function() {\n return this.shiftRows(1)[0];\n};\n\n/**\n * Remove rows from the top of the screen and return them as an array.\n *\n * @param {integer} count The number of rows to remove.\n * @return {Array.} The selected rows.\n */\nhterm.Screen.prototype.shiftRows = function(count) {\n return this.rowsArray.splice(0, count);\n};\n\n/**\n * Insert a row at the top of the screen.\n *\n * @param {HTMLElement} row The row to insert.\n */\nhterm.Screen.prototype.unshiftRow = function(row) {\n this.rowsArray.splice(0, 0, row);\n};\n\n/**\n * Insert rows at the top of the screen.\n *\n * @param {Array.} rows The rows to insert.\n */\nhterm.Screen.prototype.unshiftRows = function(rows) {\n this.rowsArray.unshift.apply(this.rowsArray, rows);\n};\n\n/**\n * Remove the last row from the screen and return it.\n *\n * @return {HTMLElement} The last row in this screen.\n */\nhterm.Screen.prototype.popRow = function() {\n return this.popRows(1)[0];\n};\n\n/**\n * Remove rows from the bottom of the screen and return them as an array.\n *\n * @param {integer} count The number of rows to remove.\n * @return {Array.} The selected rows.\n */\nhterm.Screen.prototype.popRows = function(count) {\n return this.rowsArray.splice(this.rowsArray.length - count, count);\n};\n\n/**\n * Insert a row at the bottom of the screen.\n *\n * @param {HTMLElement} row The row to insert.\n */\nhterm.Screen.prototype.pushRow = function(row) {\n this.rowsArray.push(row);\n};\n\n/**\n * Insert rows at the bottom of the screen.\n *\n * @param {Array.} rows The rows to insert.\n */\nhterm.Screen.prototype.pushRows = function(rows) {\n rows.push.apply(this.rowsArray, rows);\n};\n\n/**\n * Insert a row at the specified row of the screen.\n *\n * @param {integer} index The index to insert the row.\n * @param {HTMLElement} row The row to insert.\n */\nhterm.Screen.prototype.insertRow = function(index, row) {\n this.rowsArray.splice(index, 0, row);\n};\n\n/**\n * Insert rows at the specified row of the screen.\n *\n * @param {integer} index The index to insert the rows.\n * @param {Array.} rows The rows to insert.\n */\nhterm.Screen.prototype.insertRows = function(index, rows) {\n for (var i = 0; i < rows.length; i++) {\n this.rowsArray.splice(index + i, 0, rows[i]);\n }\n};\n\n/**\n * Remove a row from the screen and return it.\n *\n * @param {integer} index The index of the row to remove.\n * @return {HTMLElement} The selected row.\n */\nhterm.Screen.prototype.removeRow = function(index) {\n return this.rowsArray.splice(index, 1)[0];\n};\n\n/**\n * Remove rows from the bottom of the screen and return them as an array.\n *\n * @param {integer} index The index to start removing rows.\n * @param {integer} count The number of rows to remove.\n * @return {Array.} The selected rows.\n */\nhterm.Screen.prototype.removeRows = function(index, count) {\n return this.rowsArray.splice(index, count);\n};\n\n/**\n * Invalidate the current cursor position.\n *\n * This sets this.cursorPosition to (0, 0) and clears out some internal\n * data.\n *\n * Attempting to insert or overwrite text while the cursor position is invalid\n * will raise an obscure exception.\n */\nhterm.Screen.prototype.invalidateCursorPosition = function() {\n this.cursorPosition.move(0, 0);\n this.cursorRowNode_ = null;\n this.cursorNode_ = null;\n this.cursorOffset_ = null;\n};\n\n/**\n * Clear the contents of the cursor row.\n */\nhterm.Screen.prototype.clearCursorRow = function() {\n this.cursorRowNode_.innerHTML = '';\n this.cursorRowNode_.removeAttribute('line-overflow');\n this.cursorOffset_ = 0;\n this.cursorPosition.column = 0;\n this.cursorPosition.overflow = false;\n\n var text;\n if (this.textAttributes.isDefault()) {\n text = '';\n } else {\n text = lib.f.getWhitespace(this.columnCount_);\n }\n\n // We shouldn't honor inverse colors when clearing an area, to match\n // xterm's back color erase behavior.\n var inverse = this.textAttributes.inverse;\n this.textAttributes.inverse = false;\n this.textAttributes.syncColors();\n\n var node = this.textAttributes.createContainer(text);\n this.cursorRowNode_.appendChild(node);\n this.cursorNode_ = node;\n\n this.textAttributes.inverse = inverse;\n this.textAttributes.syncColors();\n};\n\n/**\n * Mark the current row as having overflowed to the next line.\n *\n * The line overflow state is used when converting a range of rows into text.\n * It makes it possible to recombine two or more overflow terminal rows into\n * a single line.\n *\n * This is distinct from the cursor being in the overflow state. Cursor\n * overflow indicates that printing at the cursor position will commit a\n * line overflow, unless it is preceded by a repositioning of the cursor\n * to a non-overflow state.\n */\nhterm.Screen.prototype.commitLineOverflow = function() {\n this.cursorRowNode_.setAttribute('line-overflow', true);\n};\n\n/**\n * Relocate the cursor to a give row and column.\n *\n * @param {integer} row The zero based row.\n * @param {integer} column The zero based column.\n */\nhterm.Screen.prototype.setCursorPosition = function(row, column) {\n if (!this.rowsArray.length) {\n console.warn('Attempt to set cursor position on empty screen.');\n return;\n }\n\n if (row >= this.rowsArray.length) {\n console.error('Row out of bounds: ' + row);\n row = this.rowsArray.length - 1;\n } else if (row < 0) {\n console.error('Row out of bounds: ' + row);\n row = 0;\n }\n\n if (column >= this.columnCount_) {\n console.error('Column out of bounds: ' + column);\n column = this.columnCount_ - 1;\n } else if (column < 0) {\n console.error('Column out of bounds: ' + column);\n column = 0;\n }\n\n this.cursorPosition.overflow = false;\n\n var rowNode = this.rowsArray[row];\n var node = rowNode.firstChild;\n\n if (!node) {\n node = rowNode.ownerDocument.createTextNode('');\n rowNode.appendChild(node);\n }\n\n var currentColumn = 0;\n\n if (rowNode == this.cursorRowNode_) {\n if (column >= this.cursorPosition.column - this.cursorOffset_) {\n node = this.cursorNode_;\n currentColumn = this.cursorPosition.column - this.cursorOffset_;\n }\n } else {\n this.cursorRowNode_ = rowNode;\n }\n\n this.cursorPosition.move(row, column);\n\n while (node) {\n var offset = column - currentColumn;\n var width = hterm.TextAttributes.nodeWidth(node);\n if (!node.nextSibling || width > offset) {\n this.cursorNode_ = node;\n this.cursorOffset_ = offset;\n return;\n }\n\n currentColumn += width;\n node = node.nextSibling;\n }\n};\n\n/**\n * Set the provided selection object to be a caret selection at the current\n * cursor position.\n */\nhterm.Screen.prototype.syncSelectionCaret = function(selection) {\n try {\n selection.collapse(this.cursorNode_, this.cursorOffset_);\n } catch (firefoxIgnoredException) {\n // FF can throw an exception if the range is off, rather than just not\n // performing the collapse.\n }\n};\n\n/**\n * Split a single node into two nodes at the given offset.\n *\n * For example:\n * Given the DOM fragment '
Hello World
', call splitNode_\n * passing the span and an offset of 6. This would modify the fragment to\n * become: '
Hello World
'. If the span\n * had any attributes they would have been copied to the new span as well.\n *\n * The to-be-split node must have a container, so that the new node can be\n * placed next to it.\n *\n * @param {HTMLNode} node The node to split.\n * @param {integer} offset The offset into the node where the split should\n * occur.\n */\nhterm.Screen.prototype.splitNode_ = function(node, offset) {\n var afterNode = node.cloneNode(false);\n\n var textContent = node.textContent;\n node.textContent = hterm.TextAttributes.nodeSubstr(node, 0, offset);\n afterNode.textContent = lib.wc.substr(textContent, offset);\n\n if (afterNode.textContent)\n node.parentNode.insertBefore(afterNode, node.nextSibling);\n if (!node.textContent)\n node.parentNode.removeChild(node);\n};\n\n/**\n * Ensure that text is clipped and the cursor is clamped to the column count.\n */\nhterm.Screen.prototype.maybeClipCurrentRow = function() {\n var width = hterm.TextAttributes.nodeWidth(this.cursorRowNode_);\n\n if (width <= this.columnCount_) {\n // Current row does not need clipping, but may need clamping.\n if (this.cursorPosition.column >= this.columnCount_) {\n this.setCursorPosition(this.cursorPosition.row, this.columnCount_ - 1);\n this.cursorPosition.overflow = true;\n }\n\n return;\n }\n\n // Save off the current column so we can maybe restore it later.\n var currentColumn = this.cursorPosition.column;\n\n // Move the cursor to the final column.\n this.setCursorPosition(this.cursorPosition.row, this.columnCount_ - 1);\n\n // Remove any text that partially overflows.\n width = hterm.TextAttributes.nodeWidth(this.cursorNode_);\n\n if (this.cursorOffset_ < width - 1) {\n this.cursorNode_.textContent = hterm.TextAttributes.nodeSubstr(\n this.cursorNode_, 0, this.cursorOffset_ + 1);\n }\n\n // Remove all nodes after the cursor.\n var rowNode = this.cursorRowNode_;\n var node = this.cursorNode_.nextSibling;\n\n while (node) {\n rowNode.removeChild(node);\n node = this.cursorNode_.nextSibling;\n }\n\n if (currentColumn < this.columnCount_) {\n // If the cursor was within the screen before we started then restore its\n // position.\n this.setCursorPosition(this.cursorPosition.row, currentColumn);\n } else {\n // Otherwise leave it at the the last column in the overflow state.\n this.cursorPosition.overflow = true;\n }\n};\n\n/**\n * Insert a string at the current character position using the current\n * text attributes.\n *\n * You must call maybeClipCurrentRow() after in order to clip overflowed\n * text and clamp the cursor.\n *\n * It is also up to the caller to properly maintain the line overflow state\n * using hterm.Screen..commitLineOverflow().\n */\nhterm.Screen.prototype.insertString = function(str) {\n var cursorNode = this.cursorNode_;\n var cursorNodeText = cursorNode.textContent;\n\n this.cursorRowNode_.removeAttribute('line-overflow');\n\n // We may alter the width of the string by prepending some missing\n // whitespaces, so we need to record the string width ahead of time.\n var strWidth = lib.wc.strWidth(str);\n\n // No matter what, before this function exits the cursor column will have\n // moved this much.\n this.cursorPosition.column += strWidth;\n\n // Local cache of the cursor offset.\n var offset = this.cursorOffset_;\n\n // Reverse offset is the offset measured from the end of the string.\n // Zero implies that the cursor is at the end of the cursor node.\n var reverseOffset = hterm.TextAttributes.nodeWidth(cursorNode) - offset;\n\n if (reverseOffset < 0) {\n // A negative reverse offset means the cursor is positioned past the end\n // of the characters on this line. We'll need to insert the missing\n // whitespace.\n var ws = lib.f.getWhitespace(-reverseOffset);\n\n // This whitespace should be completely unstyled. Underline, background\n // color, and strikethrough would be visible on whitespace, so we can't use\n // one of those spans to hold the text.\n if (!(this.textAttributes.underline ||\n this.textAttributes.strikethrough ||\n this.textAttributes.background ||\n this.textAttributes.wcNode ||\n !this.textAttributes.asciiNode ||\n this.textAttributes.tileData != null)) {\n // Best case scenario, we can just pretend the spaces were part of the\n // original string.\n str = ws + str;\n } else if (cursorNode.nodeType == 3 ||\n !(cursorNode.wcNode ||\n !cursorNode.asciiNode ||\n cursorNode.tileNode ||\n cursorNode.style.textDecoration ||\n cursorNode.style.backgroundColor)) {\n // Second best case, the current node is able to hold the whitespace.\n cursorNode.textContent = (cursorNodeText += ws);\n } else {\n // Worst case, we have to create a new node to hold the whitespace.\n var wsNode = cursorNode.ownerDocument.createTextNode(ws);\n this.cursorRowNode_.insertBefore(wsNode, cursorNode.nextSibling);\n this.cursorNode_ = cursorNode = wsNode;\n this.cursorOffset_ = offset = -reverseOffset;\n cursorNodeText = ws;\n }\n\n // We now know for sure that we're at the last character of the cursor node.\n reverseOffset = 0;\n }\n\n if (this.textAttributes.matchesContainer(cursorNode)) {\n // The new text can be placed directly in the cursor node.\n if (reverseOffset == 0) {\n cursorNode.textContent = cursorNodeText + str;\n } else if (offset == 0) {\n cursorNode.textContent = str + cursorNodeText;\n } else {\n cursorNode.textContent =\n hterm.TextAttributes.nodeSubstr(cursorNode, 0, offset) +\n str + hterm.TextAttributes.nodeSubstr(cursorNode, offset);\n }\n\n this.cursorOffset_ += strWidth;\n return;\n }\n\n // The cursor node is the wrong style for the new text. If we're at the\n // beginning or end of the cursor node, then the adjacent node is also a\n // potential candidate.\n\n if (offset == 0) {\n // At the beginning of the cursor node, the check the previous sibling.\n var previousSibling = cursorNode.previousSibling;\n if (previousSibling &&\n this.textAttributes.matchesContainer(previousSibling)) {\n previousSibling.textContent += str;\n this.cursorNode_ = previousSibling;\n this.cursorOffset_ = lib.wc.strWidth(previousSibling.textContent);\n return;\n }\n\n var newNode = this.textAttributes.createContainer(str);\n this.cursorRowNode_.insertBefore(newNode, cursorNode);\n this.cursorNode_ = newNode;\n this.cursorOffset_ = strWidth;\n return;\n }\n\n if (reverseOffset == 0) {\n // At the end of the cursor node, the check the next sibling.\n var nextSibling = cursorNode.nextSibling;\n if (nextSibling &&\n this.textAttributes.matchesContainer(nextSibling)) {\n nextSibling.textContent = str + nextSibling.textContent;\n this.cursorNode_ = nextSibling;\n this.cursorOffset_ = lib.wc.strWidth(str);\n return;\n }\n\n var newNode = this.textAttributes.createContainer(str);\n this.cursorRowNode_.insertBefore(newNode, nextSibling);\n this.cursorNode_ = newNode;\n // We specifically need to include any missing whitespace here, since it's\n // going in a new node.\n this.cursorOffset_ = hterm.TextAttributes.nodeWidth(newNode);\n return;\n }\n\n // Worst case, we're somewhere in the middle of the cursor node. We'll\n // have to split it into two nodes and insert our new container in between.\n this.splitNode_(cursorNode, offset);\n var newNode = this.textAttributes.createContainer(str);\n this.cursorRowNode_.insertBefore(newNode, cursorNode.nextSibling);\n this.cursorNode_ = newNode;\n this.cursorOffset_ = strWidth;\n};\n\n/**\n * Overwrite the text at the current cursor position.\n *\n * You must call maybeClipCurrentRow() after in order to clip overflowed\n * text and clamp the cursor.\n *\n * It is also up to the caller to properly maintain the line overflow state\n * using hterm.Screen..commitLineOverflow().\n */\nhterm.Screen.prototype.overwriteString = function(str) {\n var maxLength = this.columnCount_ - this.cursorPosition.column;\n if (!maxLength)\n return [str];\n\n var width = lib.wc.strWidth(str);\n if (this.textAttributes.matchesContainer(this.cursorNode_) &&\n this.cursorNode_.textContent.substr(this.cursorOffset_) == str) {\n // This overwrite would be a no-op, just move the cursor and return.\n this.cursorOffset_ += width;\n this.cursorPosition.column += width;\n return;\n }\n\n this.deleteChars(Math.min(width, maxLength));\n this.insertString(str);\n};\n\n/**\n * Forward-delete one or more characters at the current cursor position.\n *\n * Text to the right of the deleted characters is shifted left. Only affects\n * characters on the same row as the cursor.\n *\n * @param {integer} count The column width of characters to delete. This is\n * clamped to the column width minus the cursor column.\n * @return {integer} The column width of the characters actually deleted.\n */\nhterm.Screen.prototype.deleteChars = function(count) {\n var node = this.cursorNode_;\n var offset = this.cursorOffset_;\n\n var currentCursorColumn = this.cursorPosition.column;\n count = Math.min(count, this.columnCount_ - currentCursorColumn);\n if (!count)\n return 0;\n\n var rv = count;\n var startLength, endLength;\n\n while (node && count) {\n startLength = hterm.TextAttributes.nodeWidth(node);\n node.textContent = hterm.TextAttributes.nodeSubstr(node, 0, offset) +\n hterm.TextAttributes.nodeSubstr(node, offset + count);\n endLength = hterm.TextAttributes.nodeWidth(node);\n count -= startLength - endLength;\n if (offset < startLength && endLength && startLength == endLength) {\n // No characters were deleted when there should be. We're probably trying\n // to delete one column width from a wide character node. We remove the\n // wide character node here and replace it with a single space.\n var spaceNode = this.textAttributes.createContainer(' ');\n node.parentNode.insertBefore(spaceNode, node.nextSibling);\n node.textContent = '';\n endLength = 0;\n count -= 1;\n }\n\n var nextNode = node.nextSibling;\n if (endLength == 0 && node != this.cursorNode_) {\n node.parentNode.removeChild(node);\n }\n node = nextNode;\n offset = 0;\n }\n\n // Remove this.cursorNode_ if it is an empty non-text node.\n if (this.cursorNode_.nodeType != 3 && !this.cursorNode_.textContent) {\n var cursorNode = this.cursorNode_;\n if (cursorNode.previousSibling) {\n this.cursorNode_ = cursorNode.previousSibling;\n this.cursorOffset_ = hterm.TextAttributes.nodeWidth(\n cursorNode.previousSibling);\n } else if (cursorNode.nextSibling) {\n this.cursorNode_ = cursorNode.nextSibling;\n this.cursorOffset_ = 0;\n } else {\n var emptyNode = this.cursorRowNode_.ownerDocument.createTextNode('');\n this.cursorRowNode_.appendChild(emptyNode);\n this.cursorNode_ = emptyNode;\n this.cursorOffset_ = 0;\n }\n this.cursorRowNode_.removeChild(cursorNode);\n }\n\n return rv;\n};\n\n/**\n * Finds first X-ROW of a line containing specified X-ROW.\n * Used to support line overflow.\n *\n * @param {Node} row X-ROW to begin search for first row of line.\n * @return {Node} The X-ROW that is at the beginning of the line.\n **/\nhterm.Screen.prototype.getLineStartRow_ = function(row) {\n while (row.previousSibling &&\n row.previousSibling.hasAttribute('line-overflow')) {\n row = row.previousSibling;\n }\n return row;\n};\n\n/**\n * Gets text of a line beginning with row.\n * Supports line overflow.\n *\n * @param {Node} row First X-ROW of line.\n * @return {string} Text content of line.\n **/\nhterm.Screen.prototype.getLineText_ = function(row) {\n var rowText = \"\";\n while (row) {\n rowText += row.textContent;\n if (row.hasAttribute('line-overflow')) {\n row = row.nextSibling;\n } else {\n break;\n }\n }\n return rowText;\n};\n\n/**\n * Returns X-ROW that is ancestor of the node.\n *\n * @param {Node} node Node to get X-ROW ancestor for.\n * @return {Node} X-ROW ancestor of node, or null if not found.\n **/\nhterm.Screen.prototype.getXRowAncestor_ = function(node) {\n while (node) {\n if (node.nodeName === 'X-ROW')\n break;\n node = node.parentNode;\n }\n return node;\n};\n\n/**\n * Returns position within line of character at offset within node.\n * Supports line overflow.\n *\n * @param {Node} row X-ROW at beginning of line.\n * @param {Node} node Node to get position of.\n * @param {integer} offset Offset into node.\n *\n * @return {integer} Position within line of character at offset within node.\n **/\nhterm.Screen.prototype.getPositionWithOverflow_ = function(row, node, offset) {\n if (!node)\n return -1;\n var ancestorRow = this.getXRowAncestor_(node);\n if (!ancestorRow)\n return -1;\n var position = 0;\n while (ancestorRow != row) {\n position += hterm.TextAttributes.nodeWidth(row);\n if (row.hasAttribute('line-overflow') && row.nextSibling) {\n row = row.nextSibling;\n } else {\n return -1;\n }\n }\n return position + this.getPositionWithinRow_(row, node, offset);\n};\n\n/**\n * Returns position within row of character at offset within node.\n * Does not support line overflow.\n *\n * @param {Node} row X-ROW to get position within.\n * @param {Node} node Node to get position for.\n * @param {integer} offset Offset within node to get position for.\n * @return {integer} Position within row of character at offset within node.\n **/\nhterm.Screen.prototype.getPositionWithinRow_ = function(row, node, offset) {\n if (node.parentNode != row) {\n // If we traversed to the top node, then there's nothing to find here.\n if (node.parentNode == null)\n return -1;\n\n return this.getPositionWithinRow_(node.parentNode, node, offset) +\n this.getPositionWithinRow_(row, node.parentNode, 0);\n }\n var position = 0;\n for (var i = 0; i < row.childNodes.length; i++) {\n var currentNode = row.childNodes[i];\n if (currentNode == node)\n return position + offset;\n position += hterm.TextAttributes.nodeWidth(currentNode);\n }\n return -1;\n};\n\n/**\n * Returns the node and offset corresponding to position within line.\n * Supports line overflow.\n *\n * @param {Node} row X-ROW at beginning of line.\n * @param {integer} position Position within line to retrieve node and offset.\n * @return {Array} Two element array containing node and offset respectively.\n **/\nhterm.Screen.prototype.getNodeAndOffsetWithOverflow_ = function(row, position) {\n while (row && position > hterm.TextAttributes.nodeWidth(row)) {\n if (row.hasAttribute('line-overflow') && row.nextSibling) {\n position -= hterm.TextAttributes.nodeWidth(row);\n row = row.nextSibling;\n } else {\n return -1;\n }\n }\n return this.getNodeAndOffsetWithinRow_(row, position);\n};\n\n/**\n * Returns the node and offset corresponding to position within row.\n * Does not support line overflow.\n *\n * @param {Node} row X-ROW to get position within.\n * @param {integer} position Position within row to retrieve node and offset.\n * @return {Array} Two element array containing node and offset respectively.\n **/\nhterm.Screen.prototype.getNodeAndOffsetWithinRow_ = function(row, position) {\n for (var i = 0; i < row.childNodes.length; i++) {\n var node = row.childNodes[i];\n var nodeTextWidth = hterm.TextAttributes.nodeWidth(node);\n if (position <= nodeTextWidth) {\n if (node.nodeName === 'SPAN') {\n /** Drill down to node contained by SPAN. **/\n return this.getNodeAndOffsetWithinRow_(node, position);\n } else {\n return [node, position];\n }\n }\n position -= nodeTextWidth;\n }\n return null;\n};\n\n/**\n * Returns the node and offset corresponding to position within line.\n * Supports line overflow.\n *\n * @param {Node} row X-ROW at beginning of line.\n * @param {integer} start Start position of range within line.\n * @param {integer} end End position of range within line.\n * @param {Range} range Range to modify.\n **/\nhterm.Screen.prototype.setRange_ = function(row, start, end, range) {\n var startNodeAndOffset = this.getNodeAndOffsetWithOverflow_(row, start);\n if (startNodeAndOffset == null)\n return;\n var endNodeAndOffset = this.getNodeAndOffsetWithOverflow_(row, end);\n if (endNodeAndOffset == null)\n return;\n range.setStart(startNodeAndOffset[0], startNodeAndOffset[1]);\n range.setEnd(endNodeAndOffset[0], endNodeAndOffset[1]);\n};\n\n/**\n * Expands selection to surround URLs.\n *\n * @param {Selection} selection Selection to expand.\n **/\nhterm.Screen.prototype.expandSelection = function(selection) {\n if (!selection)\n return;\n\n var range = selection.getRangeAt(0);\n if (!range || range.toString().match(/\\s/))\n return;\n\n var row = this.getLineStartRow_(this.getXRowAncestor_(range.startContainer));\n if (!row)\n return;\n\n var startPosition = this.getPositionWithOverflow_(row,\n range.startContainer,\n range.startOffset);\n if (startPosition == -1)\n return;\n var endPosition = this.getPositionWithOverflow_(row,\n range.endContainer,\n range.endOffset);\n if (endPosition == -1)\n return;\n\n // Use the user configurable match settings.\n var leftMatch = this.wordBreakMatchLeft;\n var rightMatch = this.wordBreakMatchRight;\n var insideMatch = this.wordBreakMatchMiddle;\n\n //Move start to the left.\n var rowText = this.getLineText_(row);\n var lineUpToRange = lib.wc.substring(rowText, 0, endPosition);\n var leftRegularExpression = new RegExp(leftMatch + insideMatch + \"$\");\n var expandedStart = lineUpToRange.search(leftRegularExpression);\n if (expandedStart == -1 || expandedStart > startPosition)\n return;\n\n //Move end to the right.\n var lineFromRange = lib.wc.substring(rowText, startPosition,\n lib.wc.strWidth(rowText));\n var rightRegularExpression = new RegExp(\"^\" + insideMatch + rightMatch);\n var found = lineFromRange.match(rightRegularExpression);\n if (!found)\n return;\n var expandedEnd = startPosition + lib.wc.strWidth(found[0]);\n if (expandedEnd == -1 || expandedEnd < endPosition)\n return;\n\n this.setRange_(row, expandedStart, expandedEnd, range);\n selection.addRange(range);\n};\n// SOURCE FILE: hterm/js/hterm_scrollport.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f', 'hterm.PubSub', 'hterm.Size');\n\n/**\n * A 'viewport' view of fixed-height rows with support for selection and\n * copy-to-clipboard.\n *\n * 'Viewport' in this case means that only the visible rows are in the DOM.\n * If the rowProvider has 100,000 rows, but the ScrollPort is only 25 rows\n * tall, then only 25 dom nodes are created. The ScrollPort will ask the\n * RowProvider to create new visible rows on demand as they are scrolled in\n * to the visible area.\n *\n * This viewport is designed so that select and copy-to-clipboard still works,\n * even when all or part of the selection is scrolled off screen.\n *\n * Note that the X11 mouse clipboard does not work properly when all or part\n * of the selection is off screen. It would be difficult to fix this without\n * adding significant overhead to pathologically large selection cases.\n *\n * The RowProvider should return rows rooted by the custom tag name 'x-row'.\n * This ensures that we can quickly assign the correct display height\n * to the rows with css.\n *\n * @param {RowProvider} rowProvider An object capable of providing rows as\n * raw text or row nodes.\n */\nhterm.ScrollPort = function(rowProvider) {\n hterm.PubSub.addBehavior(this);\n\n this.rowProvider_ = rowProvider;\n\n // SWAG the character size until we can measure it.\n this.characterSize = new hterm.Size(10, 10);\n\n // DOM node used for character measurement.\n this.ruler_ = null;\n\n this.selection = new hterm.ScrollPort.Selection(this);\n\n // A map of rowIndex => rowNode for each row that is drawn as part of a\n // pending redraw_() call. Null if there is no pending redraw_ call.\n this.currentRowNodeCache_ = null;\n\n // A map of rowIndex => rowNode for each row that was drawn as part of the\n // previous redraw_() call.\n this.previousRowNodeCache_ = {};\n\n // Used during scroll events to detect when the underlying cause is a resize.\n this.lastScreenWidth_ = null;\n this.lastScreenHeight_ = null;\n\n // True if the user should be allowed to select text in the terminal.\n // This is disabled when the host requests mouse drag events so that we don't\n // end up with two notions of selection.\n this.selectionEnabled_ = true;\n\n // The last row count returned by the row provider, re-populated during\n // syncScrollHeight().\n this.lastRowCount_ = 0;\n\n // The scroll wheel pixel delta multiplier to increase/decrease\n // the scroll speed of mouse wheel events. See: https://goo.gl/sXelnq\n this.scrollWheelMultiplier_ = 1;\n\n // The last touch events we saw to support touch based scrolling. Indexed\n // by touch identifier since we can have more than one touch active.\n this.lastTouch_ = {};\n\n /**\n * True if the last scroll caused the scrollport to show the final row.\n */\n this.isScrolledEnd = true;\n\n /**\n * A guess at the current scrollbar width, fixed in resize().\n */\n this.currentScrollbarWidthPx = 16;\n\n /**\n * Whether the ctrl-v key on the screen should paste.\n */\n this.ctrlVPaste = false;\n\n this.div_ = null;\n this.document_ = null;\n\n // Collection of active timeout handles.\n this.timeouts_ = {};\n\n this.observers_ = {};\n\n this.DEBUG_ = false;\n}\n\n/**\n * Proxy for the native selection object which understands how to walk up the\n * DOM to find the containing row node and sort out which comes first.\n *\n * @param {hterm.ScrollPort} scrollPort The parent hterm.ScrollPort instance.\n */\nhterm.ScrollPort.Selection = function(scrollPort) {\n this.scrollPort_ = scrollPort;\n\n /**\n * The row containing the start of the selection.\n *\n * This may be partially or fully selected. It may be the selection anchor\n * or the focus, but its rowIndex is guaranteed to be less-than-or-equal-to\n * that of the endRow.\n *\n * If only one row is selected then startRow == endRow. If there is no\n * selection or the selection is collapsed then startRow == null.\n */\n this.startRow = null;\n\n /**\n * The row containing the end of the selection.\n *\n * This may be partially or fully selected. It may be the selection anchor\n * or the focus, but its rowIndex is guaranteed to be greater-than-or-equal-to\n * that of the startRow.\n *\n * If only one row is selected then startRow == endRow. If there is no\n * selection or the selection is collapsed then startRow == null.\n */\n this.endRow = null;\n\n /**\n * True if startRow != endRow.\n */\n this.isMultiline = null;\n\n /**\n * True if the selection is just a point rather than a range.\n */\n this.isCollapsed = null;\n};\n\n/**\n * Given a list of DOM nodes and a container, return the DOM node that\n * is first according to a depth-first search.\n *\n * Returns null if none of the children are found.\n */\nhterm.ScrollPort.Selection.prototype.findFirstChild = function(\n parent, childAry) {\n var node = parent.firstChild;\n\n while (node) {\n if (childAry.indexOf(node) != -1)\n return node;\n\n if (node.childNodes.length) {\n var rv = this.findFirstChild(node, childAry);\n if (rv)\n return rv;\n }\n\n node = node.nextSibling;\n }\n\n return null;\n};\n\n/**\n * Synchronize this object with the current DOM selection.\n *\n * This is a one-way synchronization, the DOM selection is copied to this\n * object, not the other way around.\n */\nhterm.ScrollPort.Selection.prototype.sync = function() {\n var self = this;\n\n // The dom selection object has no way to tell which nodes come first in\n // the document, so we have to figure that out.\n //\n // This function is used when we detect that the \"anchor\" node is first.\n function anchorFirst() {\n self.startRow = anchorRow;\n self.startNode = selection.anchorNode;\n self.startOffset = selection.anchorOffset;\n self.endRow = focusRow;\n self.endNode = selection.focusNode;\n self.endOffset = selection.focusOffset;\n }\n\n // This function is used when we detect that the \"focus\" node is first.\n function focusFirst() {\n self.startRow = focusRow;\n self.startNode = selection.focusNode;\n self.startOffset = selection.focusOffset;\n self.endRow = anchorRow;\n self.endNode = selection.anchorNode;\n self.endOffset = selection.anchorOffset;\n }\n\n var selection = this.scrollPort_.getDocument().getSelection();\n\n this.startRow = null;\n this.endRow = null;\n this.isMultiline = null;\n this.isCollapsed = !selection || selection.isCollapsed;\n\n if (this.isCollapsed)\n return;\n\n var anchorRow = selection.anchorNode;\n while (anchorRow && !('rowIndex' in anchorRow)) {\n anchorRow = anchorRow.parentNode;\n }\n\n if (!anchorRow) {\n console.error('Selection anchor is not rooted in a row node: ' +\n selection.anchorNode.nodeName);\n return;\n }\n\n var focusRow = selection.focusNode;\n while (focusRow && !('rowIndex' in focusRow)) {\n focusRow = focusRow.parentNode;\n }\n\n if (!focusRow) {\n console.error('Selection focus is not rooted in a row node: ' +\n selection.focusNode.nodeName);\n return;\n }\n\n if (anchorRow.rowIndex < focusRow.rowIndex) {\n anchorFirst();\n\n } else if (anchorRow.rowIndex > focusRow.rowIndex) {\n focusFirst();\n\n } else if (selection.focusNode == selection.anchorNode) {\n if (selection.anchorOffset < selection.focusOffset) {\n anchorFirst();\n } else {\n focusFirst();\n }\n\n } else {\n // The selection starts and ends in the same row, but isn't contained all\n // in a single node.\n var firstNode = this.findFirstChild(\n anchorRow, [selection.anchorNode, selection.focusNode]);\n\n if (!firstNode)\n throw new Error('Unexpected error syncing selection.');\n\n if (firstNode == selection.anchorNode) {\n anchorFirst();\n } else {\n focusFirst();\n }\n }\n\n this.isMultiline = anchorRow.rowIndex != focusRow.rowIndex;\n};\n\n\n/**\n * Turn a div into this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.decorate = function(div) {\n this.div_ = div;\n\n this.iframe_ = div.ownerDocument.createElement('iframe');\n this.iframe_.style.cssText = (\n 'border: 0;' +\n 'height: 100%;' +\n 'position: absolute;' +\n 'width: 100%');\n\n // Set the iframe src to # in FF. Otherwise when the frame's\n // load event fires in FF it clears out the content of the iframe.\n if ('mozInnerScreenX' in window) // detect a FF only property\n this.iframe_.src = '#';\n\n div.appendChild(this.iframe_);\n\n this.iframe_.contentWindow.addEventListener('resize',\n this.onResize_.bind(this));\n\n var doc = this.document_ = this.iframe_.contentDocument;\n doc.body.style.cssText = (\n 'margin: 0px;' +\n 'padding: 0px;' +\n 'height: 100%;' +\n 'width: 100%;' +\n 'overflow: hidden;' +\n 'cursor: var(--hterm-mouse-cursor-style);' +\n '-webkit-user-select: none;' +\n '-moz-user-select: none;');\n\n if (this.DEBUG_) {\n // When we're debugging we add padding to the body so that the offscreen\n // elements are visible.\n this.document_.body.style.paddingTop =\n this.document_.body.style.paddingBottom =\n 'calc(var(--hterm-charsize-height) * 3)';\n }\n\n var style = doc.createElement('style');\n style.textContent = (\n 'x-row {' +\n ' display: block;' +\n ' height: var(--hterm-charsize-height);' +\n ' line-height: var(--hterm-charsize-height);' +\n '}');\n doc.head.appendChild(style);\n\n this.userCssLink_ = doc.createElement('link');\n this.userCssLink_.setAttribute('rel', 'stylesheet');\n\n this.userCssText_ = doc.createElement('style');\n doc.head.appendChild(this.userCssText_);\n\n // TODO(rginda): Sorry, this 'screen_' isn't the same thing as hterm.Screen\n // from screen.js. I need to pick a better name for one of them to avoid\n // the collision.\n // We make this field editable even though we don't actually allow anything\n // to be edited here so that Chrome will do the right thing with virtual\n // keyboards and IMEs. But make sure we turn off all the input helper logic\n // that doesn't make sense here, and might inadvertently mung or save input.\n // Some of these attributes are standard while others are browser specific,\n // but should be safely ignored by other browsers.\n this.screen_ = doc.createElement('x-screen');\n this.screen_.setAttribute('contenteditable', 'true');\n this.screen_.setAttribute('spellcheck', 'false');\n this.screen_.setAttribute('autocomplete', 'off');\n this.screen_.setAttribute('autocorrect', 'off');\n this.screen_.setAttribute('autocaptalize', 'none');\n this.screen_.setAttribute('role', 'textbox');\n this.screen_.setAttribute('tabindex', '-1');\n this.screen_.style.cssText = (\n 'caret-color: transparent;' +\n 'display: block;' +\n 'font-family: monospace;' +\n 'font-size: 15px;' +\n 'font-variant-ligatures: none;' +\n 'height: 100%;' +\n 'overflow-y: scroll; overflow-x: hidden;' +\n 'white-space: pre;' +\n 'width: 100%;' +\n 'outline: none !important');\n\n doc.body.appendChild(this.screen_);\n\n this.screen_.addEventListener('scroll', this.onScroll_.bind(this));\n this.screen_.addEventListener('wheel', this.onScrollWheel_.bind(this));\n this.screen_.addEventListener('touchstart', this.onTouch_.bind(this));\n this.screen_.addEventListener('touchmove', this.onTouch_.bind(this));\n this.screen_.addEventListener('touchend', this.onTouch_.bind(this));\n this.screen_.addEventListener('touchcancel', this.onTouch_.bind(this));\n this.screen_.addEventListener('copy', this.onCopy_.bind(this));\n this.screen_.addEventListener('paste', this.onPaste_.bind(this));\n // Disable drag & drop of text/content. We don't handle it at all (yet?),\n // and the default behavior just confuses hterm.\n this.screen_.addEventListener('drop', function(e) {\n e.preventDefault();\n return false;\n });\n\n doc.body.addEventListener('keydown', this.onBodyKeyDown_.bind(this));\n\n // This is the main container for the fixed rows.\n this.rowNodes_ = doc.createElement('div');\n this.rowNodes_.id = 'hterm:row-nodes';\n this.rowNodes_.style.cssText = (\n 'display: block;' +\n 'position: fixed;' +\n 'overflow: hidden;' +\n '-webkit-user-select: text;' +\n '-moz-user-select: text;');\n this.screen_.appendChild(this.rowNodes_);\n\n // Two nodes to hold offscreen text during the copy event.\n this.topSelectBag_ = doc.createElement('x-select-bag');\n this.topSelectBag_.style.cssText = (\n 'display: block;' +\n 'overflow: hidden;' +\n 'height: var(--hterm-charsize-height);' +\n 'white-space: pre;');\n\n this.bottomSelectBag_ = this.topSelectBag_.cloneNode();\n\n // Nodes above the top fold and below the bottom fold are hidden. They are\n // only used to hold rows that are part of the selection but are currently\n // scrolled off the top or bottom of the visible range.\n this.topFold_ = doc.createElement('x-fold');\n this.topFold_.id = 'hterm:top-fold-for-row-selection';\n this.topFold_.style.cssText = 'display: block;';\n this.rowNodes_.appendChild(this.topFold_);\n\n this.bottomFold_ = this.topFold_.cloneNode();\n this.bottomFold_.id = 'hterm:bottom-fold-for-row-selection';\n this.rowNodes_.appendChild(this.bottomFold_);\n\n // This hidden div accounts for the vertical space that would be consumed by\n // all the rows in the buffer if they were visible. It's what causes the\n // scrollbar to appear on the 'x-screen', and it moves within the screen when\n // the scrollbar is moved.\n //\n // It is set 'visibility: hidden' to keep the browser from trying to include\n // it in the selection when a user 'drag selects' upwards (drag the mouse to\n // select and scroll at the same time). Without this, the selection gets\n // out of whack.\n this.scrollArea_ = doc.createElement('div');\n this.scrollArea_.id = 'hterm:scrollarea';\n this.scrollArea_.style.cssText = 'visibility: hidden';\n this.screen_.appendChild(this.scrollArea_);\n\n // This svg element is used to detect when the browser is zoomed. It must be\n // placed in the outermost document for currentScale to be correct.\n // TODO(rginda): This means that hterm nested in an iframe will not correctly\n // detect browser zoom level. We should come up with a better solution.\n // Note: This must be http:// else Chrome cannot create the element correctly.\n var xmlns = 'http://www.w3.org/2000/svg';\n this.svg_ = this.div_.ownerDocument.createElementNS(xmlns, 'svg');\n this.svg_.id = 'hterm:zoom-detector';\n this.svg_.setAttribute('xmlns', xmlns);\n this.svg_.setAttribute('version', '1.1');\n this.svg_.style.cssText = (\n 'position: absolute;' +\n 'top: 0;' +\n 'left: 0;' +\n 'visibility: hidden');\n\n\n // We send focus to this element just before a paste happens, so we can\n // capture the pasted text and forward it on to someone who cares.\n this.pasteTarget_ = doc.createElement('textarea');\n this.pasteTarget_.id = 'hterm:ctrl-v-paste-target';\n this.pasteTarget_.setAttribute('tabindex', '-1');\n this.pasteTarget_.style.cssText = (\n 'position: absolute;' +\n 'height: 1px;' +\n 'width: 1px;' +\n 'left: 0px; ' +\n 'bottom: 0px;' +\n 'opacity: 0');\n this.pasteTarget_.contentEditable = true;\n\n this.screen_.appendChild(this.pasteTarget_);\n this.pasteTarget_.addEventListener(\n 'textInput', this.handlePasteTargetTextInput_.bind(this));\n\n this.resize();\n};\n\n/**\n * Select the font-family and font-smoothing for this scrollport.\n *\n * @param {string} fontFamily Value of the CSS 'font-family' to use for this\n * scrollport. Should be a monospace font.\n * @param {string} opt_smoothing Optional value for '-webkit-font-smoothing'.\n * Defaults to an empty string if not specified.\n */\nhterm.ScrollPort.prototype.setFontFamily = function(fontFamily, opt_smoothing) {\n this.screen_.style.fontFamily = fontFamily;\n if (opt_smoothing) {\n this.screen_.style.webkitFontSmoothing = opt_smoothing;\n } else {\n this.screen_.style.webkitFontSmoothing = '';\n }\n\n this.syncCharacterSize();\n};\n\nhterm.ScrollPort.prototype.getFontFamily = function() {\n return this.screen_.style.fontFamily;\n};\n\n/**\n * Set a custom stylesheet to include in the scrollport.\n *\n * Defaults to null, meaning no custom css is loaded. Set it back to null or\n * the empty string to remove a previously applied custom css.\n */\nhterm.ScrollPort.prototype.setUserCssUrl = function(url) {\n if (url) {\n this.userCssLink_.setAttribute('href', url);\n\n if (!this.userCssLink_.parentNode)\n this.document_.head.appendChild(this.userCssLink_);\n } else if (this.userCssLink_.parentNode) {\n this.document_.head.removeChild(this.userCssLink_);\n }\n};\n\nhterm.ScrollPort.prototype.setUserCssText = function(text) {\n this.userCssText_.textContent = text;\n};\n\nhterm.ScrollPort.prototype.focus = function() {\n this.iframe_.focus();\n this.screen_.focus();\n};\n\nhterm.ScrollPort.prototype.getForegroundColor = function() {\n return this.screen_.style.color;\n};\n\nhterm.ScrollPort.prototype.setForegroundColor = function(color) {\n this.screen_.style.color = color;\n};\n\nhterm.ScrollPort.prototype.getBackgroundColor = function() {\n return this.screen_.style.backgroundColor;\n};\n\nhterm.ScrollPort.prototype.setBackgroundColor = function(color) {\n this.screen_.style.backgroundColor = color;\n};\n\nhterm.ScrollPort.prototype.setBackgroundImage = function(image) {\n this.screen_.style.backgroundImage = image;\n};\n\nhterm.ScrollPort.prototype.setBackgroundSize = function(size) {\n this.screen_.style.backgroundSize = size;\n};\n\nhterm.ScrollPort.prototype.setBackgroundPosition = function(position) {\n this.screen_.style.backgroundPosition = position;\n};\n\nhterm.ScrollPort.prototype.setCtrlVPaste = function(ctrlVPaste) {\n this.ctrlVPaste = ctrlVPaste;\n};\n\n/**\n * Get the usable size of the scrollport screen.\n *\n * The width will not include the scrollbar width.\n */\nhterm.ScrollPort.prototype.getScreenSize = function() {\n var size = hterm.getClientSize(this.screen_);\n return {\n height: size.height,\n width: size.width - this.currentScrollbarWidthPx\n };\n};\n\n/**\n * Get the usable width of the scrollport screen.\n *\n * This the widget width minus scrollbar width.\n */\nhterm.ScrollPort.prototype.getScreenWidth = function() {\n return this.getScreenSize().width ;\n};\n\n/**\n * Get the usable height of the scrollport screen.\n */\nhterm.ScrollPort.prototype.getScreenHeight = function() {\n return this.getScreenSize().height;\n};\n\n/**\n * Return the document that holds the visible rows of this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.getDocument = function() {\n return this.document_;\n};\n\n/**\n * Returns the x-screen element that holds the rows of this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.getScreenNode = function() {\n return this.screen_;\n};\n\n/**\n * Clear out any cached rowNodes.\n */\nhterm.ScrollPort.prototype.resetCache = function() {\n this.currentRowNodeCache_ = null;\n this.previousRowNodeCache_ = {};\n};\n\n/**\n * Change the current rowProvider.\n *\n * This will clear the row cache and cause a redraw.\n *\n * @param {Object} rowProvider An object capable of providing the rows\n * in this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.setRowProvider = function(rowProvider) {\n this.resetCache();\n this.rowProvider_ = rowProvider;\n this.scheduleRedraw();\n};\n\n/**\n * Inform the ScrollPort that the root DOM nodes for some or all of the visible\n * rows are no longer valid.\n *\n * Specifically, this should be called if this.rowProvider_.getRowNode() now\n * returns an entirely different node than it did before. It does not\n * need to be called if the content of a row node is the only thing that\n * changed.\n *\n * This skips some of the overhead of a full redraw, but should not be used\n * in cases where the scrollport has been scrolled, or when the row count has\n * changed.\n */\nhterm.ScrollPort.prototype.invalidate = function() {\n var node = this.topFold_.nextSibling;\n while (node != this.bottomFold_) {\n var nextSibling = node.nextSibling;\n node.parentElement.removeChild(node);\n node = nextSibling;\n }\n\n this.previousRowNodeCache_ = null;\n var topRowIndex = this.getTopRowIndex();\n var bottomRowIndex = this.getBottomRowIndex(topRowIndex);\n\n this.drawVisibleRows_(topRowIndex, bottomRowIndex);\n};\n\nhterm.ScrollPort.prototype.scheduleInvalidate = function() {\n if (this.timeouts_.invalidate)\n return;\n\n var self = this;\n this.timeouts_.invalidate = setTimeout(function () {\n delete self.timeouts_.invalidate;\n self.invalidate();\n }, 0);\n};\n\n/**\n * Set the font size of the ScrollPort.\n */\nhterm.ScrollPort.prototype.setFontSize = function(px) {\n this.screen_.style.fontSize = px + 'px';\n this.syncCharacterSize();\n};\n\n/**\n * Return the current font size of the ScrollPort.\n */\nhterm.ScrollPort.prototype.getFontSize = function() {\n return parseInt(this.screen_.style.fontSize);\n};\n\n/**\n * Measure the size of a single character in pixels.\n *\n * @param {string} opt_weight The font weight to measure, or 'normal' if\n * omitted.\n * @return {hterm.Size} A new hterm.Size object.\n */\nhterm.ScrollPort.prototype.measureCharacterSize = function(opt_weight) {\n // Number of lines used to average the height of a single character.\n var numberOfLines = 100;\n // Number of chars per line used to average the width of a single character.\n var lineLength = 100;\n\n if (!this.ruler_) {\n this.ruler_ = this.document_.createElement('div');\n this.ruler_.id = 'hterm:ruler-character-size';\n this.ruler_.style.cssText = (\n 'position: absolute;' +\n 'top: 0;' +\n 'left: 0;' +\n 'visibility: hidden;' +\n 'height: auto !important;' +\n 'width: auto !important;');\n\n // We need to put the text in a span to make the size calculation\n // work properly in Firefox\n this.rulerSpan_ = this.document_.createElement('span');\n this.rulerSpan_.id = 'hterm:ruler-span-workaround';\n this.rulerSpan_.innerHTML =\n ('X'.repeat(lineLength) + '\\r').repeat(numberOfLines);\n this.ruler_.appendChild(this.rulerSpan_);\n\n this.rulerBaseline_ = this.document_.createElement('span');\n this.rulerSpan_.id = 'hterm:ruler-baseline';\n // We want to collapse it on the baseline\n this.rulerBaseline_.style.fontSize = '0px';\n this.rulerBaseline_.textContent = 'X';\n }\n\n this.rulerSpan_.style.fontWeight = opt_weight || '';\n\n this.rowNodes_.appendChild(this.ruler_);\n var rulerSize = hterm.getClientSize(this.rulerSpan_);\n\n var size = new hterm.Size(rulerSize.width / lineLength,\n rulerSize.height / numberOfLines);\n\n this.ruler_.appendChild(this.rulerBaseline_);\n size.baseline = this.rulerBaseline_.offsetTop;\n this.ruler_.removeChild(this.rulerBaseline_);\n\n this.rowNodes_.removeChild(this.ruler_);\n\n this.div_.ownerDocument.body.appendChild(this.svg_);\n size.zoomFactor = this.svg_.currentScale;\n this.div_.ownerDocument.body.removeChild(this.svg_);\n\n return size;\n};\n\n/**\n * Synchronize the character size.\n *\n * This will re-measure the current character size and adjust the height\n * of an x-row to match.\n */\nhterm.ScrollPort.prototype.syncCharacterSize = function() {\n this.characterSize = this.measureCharacterSize();\n\n this.resize();\n};\n\n/**\n * Reset dimensions and visible row count to account for a change in the\n * dimensions of the 'x-screen'.\n */\nhterm.ScrollPort.prototype.resize = function() {\n this.currentScrollbarWidthPx = hterm.getClientWidth(this.screen_) -\n this.screen_.clientWidth;\n\n this.syncScrollHeight();\n this.syncRowNodesDimensions_();\n\n var self = this;\n this.publish(\n 'resize', { scrollPort: this },\n function() {\n self.scrollRowToBottom(self.rowProvider_.getRowCount());\n self.scheduleRedraw();\n });\n};\n\n/**\n * Set the position and size of the row nodes element.\n */\nhterm.ScrollPort.prototype.syncRowNodesDimensions_ = function() {\n var screenSize = this.getScreenSize();\n\n this.lastScreenWidth_ = screenSize.width;\n this.lastScreenHeight_ = screenSize.height;\n\n // We don't want to show a partial row because it would be distracting\n // in a terminal, so we floor any fractional row count.\n this.visibleRowCount = lib.f.smartFloorDivide(\n screenSize.height, this.characterSize.height);\n\n // Then compute the height of our integral number of rows.\n var visibleRowsHeight = this.visibleRowCount * this.characterSize.height;\n\n // Then the difference between the screen height and total row height needs to\n // be made up for as top margin. We need to record this value so it\n // can be used later to determine the topRowIndex.\n this.visibleRowTopMargin = 0;\n this.visibleRowBottomMargin = screenSize.height - visibleRowsHeight;\n\n this.topFold_.style.marginBottom = this.visibleRowTopMargin + 'px';\n\n\n var topFoldOffset = 0;\n var node = this.topFold_.previousSibling;\n while (node) {\n topFoldOffset += hterm.getClientHeight(node);\n node = node.previousSibling;\n }\n\n // Set the dimensions of the visible rows container.\n this.rowNodes_.style.width = screenSize.width + 'px';\n this.rowNodes_.style.height = visibleRowsHeight + topFoldOffset + 'px';\n this.rowNodes_.style.left = this.screen_.offsetLeft + 'px';\n this.rowNodes_.style.top = this.screen_.offsetTop - topFoldOffset + 'px';\n};\n\nhterm.ScrollPort.prototype.syncScrollHeight = function() {\n // Resize the scroll area to appear as though it contains every row.\n this.lastRowCount_ = this.rowProvider_.getRowCount();\n this.scrollArea_.style.height = (this.characterSize.height *\n this.lastRowCount_ +\n this.visibleRowTopMargin +\n this.visibleRowBottomMargin +\n 'px');\n};\n\n/**\n * Schedule a redraw to happen asynchronously.\n *\n * If this method is called multiple times before the redraw has a chance to\n * run only one redraw occurs.\n */\nhterm.ScrollPort.prototype.scheduleRedraw = function() {\n if (this.timeouts_.redraw)\n return;\n\n var self = this;\n this.timeouts_.redraw = setTimeout(function () {\n delete self.timeouts_.redraw;\n self.redraw_();\n }, 0);\n};\n\n/**\n * Redraw the current hterm.ScrollPort based on the current scrollbar position.\n *\n * When redrawing, we are careful to make sure that the rows that start or end\n * the current selection are not touched in any way. Doing so would disturb\n * the selection, and cleaning up after that would cause flashes at best and\n * incorrect selection at worst. Instead, we modify the DOM around these nodes.\n * We even stash the selection start/end outside of the visible area if\n * they are not supposed to be visible in the hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.redraw_ = function() {\n this.resetSelectBags_();\n this.selection.sync();\n\n this.syncScrollHeight();\n\n this.currentRowNodeCache_ = {};\n\n var topRowIndex = this.getTopRowIndex();\n var bottomRowIndex = this.getBottomRowIndex(topRowIndex);\n\n this.drawTopFold_(topRowIndex);\n this.drawBottomFold_(bottomRowIndex);\n this.drawVisibleRows_(topRowIndex, bottomRowIndex);\n\n this.syncRowNodesDimensions_();\n\n this.previousRowNodeCache_ = this.currentRowNodeCache_;\n this.currentRowNodeCache_ = null;\n\n this.isScrolledEnd = (\n this.getTopRowIndex() + this.visibleRowCount >= this.lastRowCount_);\n};\n\n/**\n * Ensure that the nodes above the top fold are as they should be.\n *\n * If the selection start and/or end nodes are above the visible range\n * of this hterm.ScrollPort then the dom will be adjusted so that they appear\n * before the top fold (the first x-fold element, aka this.topFold).\n *\n * If not, the top fold will be the first element.\n *\n * It is critical that this method does not move the selection nodes. Doing\n * so would clear the current selection. Instead, the rest of the DOM is\n * adjusted around them.\n */\nhterm.ScrollPort.prototype.drawTopFold_ = function(topRowIndex) {\n if (!this.selection.startRow ||\n this.selection.startRow.rowIndex >= topRowIndex) {\n // Selection is entirely below the top fold, just make sure the fold is\n // the first child.\n if (this.rowNodes_.firstChild != this.topFold_)\n this.rowNodes_.insertBefore(this.topFold_, this.rowNodes_.firstChild);\n\n return;\n }\n\n if (!this.selection.isMultiline ||\n this.selection.endRow.rowIndex >= topRowIndex) {\n // Only the startRow is above the fold.\n if (this.selection.startRow.nextSibling != this.topFold_)\n this.rowNodes_.insertBefore(this.topFold_,\n this.selection.startRow.nextSibling);\n } else {\n // Both rows are above the fold.\n if (this.selection.endRow.nextSibling != this.topFold_) {\n this.rowNodes_.insertBefore(this.topFold_,\n this.selection.endRow.nextSibling);\n }\n\n // Trim any intermediate lines.\n while (this.selection.startRow.nextSibling !=\n this.selection.endRow) {\n this.rowNodes_.removeChild(this.selection.startRow.nextSibling);\n }\n }\n\n while(this.rowNodes_.firstChild != this.selection.startRow) {\n this.rowNodes_.removeChild(this.rowNodes_.firstChild);\n }\n};\n\n/**\n * Ensure that the nodes below the bottom fold are as they should be.\n *\n * If the selection start and/or end nodes are below the visible range\n * of this hterm.ScrollPort then the dom will be adjusted so that they appear\n * after the bottom fold (the second x-fold element, aka this.bottomFold).\n *\n * If not, the bottom fold will be the last element.\n *\n * It is critical that this method does not move the selection nodes. Doing\n * so would clear the current selection. Instead, the rest of the DOM is\n * adjusted around them.\n */\nhterm.ScrollPort.prototype.drawBottomFold_ = function(bottomRowIndex) {\n if (!this.selection.endRow ||\n this.selection.endRow.rowIndex <= bottomRowIndex) {\n // Selection is entirely above the bottom fold, just make sure the fold is\n // the last child.\n if (this.rowNodes_.lastChild != this.bottomFold_)\n this.rowNodes_.appendChild(this.bottomFold_);\n\n return;\n }\n\n if (!this.selection.isMultiline ||\n this.selection.startRow.rowIndex <= bottomRowIndex) {\n // Only the endRow is below the fold.\n if (this.bottomFold_.nextSibling != this.selection.endRow)\n this.rowNodes_.insertBefore(this.bottomFold_,\n this.selection.endRow);\n } else {\n // Both rows are below the fold.\n if (this.bottomFold_.nextSibling != this.selection.startRow) {\n this.rowNodes_.insertBefore(this.bottomFold_,\n this.selection.startRow);\n }\n\n // Trim any intermediate lines.\n while (this.selection.startRow.nextSibling !=\n this.selection.endRow) {\n this.rowNodes_.removeChild(this.selection.startRow.nextSibling);\n }\n }\n\n while(this.rowNodes_.lastChild != this.selection.endRow) {\n this.rowNodes_.removeChild(this.rowNodes_.lastChild);\n }\n};\n\n/**\n * Ensure that the rows between the top and bottom folds are as they should be.\n *\n * This method assumes that drawTopFold_() and drawBottomFold_() have already\n * run, and that they have left any visible selection row (selection start\n * or selection end) between the folds.\n *\n * It recycles DOM nodes from the previous redraw where possible, but will ask\n * the rowSource to make new nodes if necessary.\n *\n * It is critical that this method does not move the selection nodes. Doing\n * so would clear the current selection. Instead, the rest of the DOM is\n * adjusted around them.\n */\nhterm.ScrollPort.prototype.drawVisibleRows_ = function(\n topRowIndex, bottomRowIndex) {\n var self = this;\n\n // Keep removing nodes, starting with currentNode, until we encounter\n // targetNode. Throws on failure.\n function removeUntilNode(currentNode, targetNode) {\n while (currentNode != targetNode) {\n if (!currentNode)\n throw 'Did not encounter target node';\n\n if (currentNode == self.bottomFold_)\n throw 'Encountered bottom fold before target node';\n\n var deadNode = currentNode;\n currentNode = currentNode.nextSibling;\n deadNode.parentNode.removeChild(deadNode);\n }\n }\n\n // Shorthand for things we're going to use a lot.\n var selectionStartRow = this.selection.startRow;\n var selectionEndRow = this.selection.endRow;\n var bottomFold = this.bottomFold_;\n\n // The node we're examining during the current iteration.\n var node = this.topFold_.nextSibling;\n\n var targetDrawCount = Math.min(this.visibleRowCount,\n this.rowProvider_.getRowCount());\n\n for (var drawCount = 0; drawCount < targetDrawCount; drawCount++) {\n var rowIndex = topRowIndex + drawCount;\n\n if (node == bottomFold) {\n // We've hit the bottom fold, we need to insert a new row.\n var newNode = this.fetchRowNode_(rowIndex);\n if (!newNode) {\n console.log(\"Couldn't fetch row index: \" + rowIndex);\n break;\n }\n\n this.rowNodes_.insertBefore(newNode, node);\n continue;\n }\n\n if (node.rowIndex == rowIndex) {\n // This node is in the right place, move along.\n node = node.nextSibling;\n continue;\n }\n\n if (selectionStartRow && selectionStartRow.rowIndex == rowIndex) {\n // The selection start row is supposed to be here, remove nodes until\n // we find it.\n removeUntilNode(node, selectionStartRow);\n node = selectionStartRow.nextSibling;\n continue;\n }\n\n if (selectionEndRow && selectionEndRow.rowIndex == rowIndex) {\n // The selection end row is supposed to be here, remove nodes until\n // we find it.\n removeUntilNode(node, selectionEndRow);\n node = selectionEndRow.nextSibling;\n continue;\n }\n\n if (node == selectionStartRow || node == selectionEndRow) {\n // We encountered the start/end of the selection, but we don't want it\n // yet. Insert a new row instead.\n var newNode = this.fetchRowNode_(rowIndex);\n if (!newNode) {\n console.log(\"Couldn't fetch row index: \" + rowIndex);\n break;\n }\n\n this.rowNodes_.insertBefore(newNode, node);\n continue;\n }\n\n // There is nothing special about this node, but it's in our way. Replace\n // it with the node that should be here.\n var newNode = this.fetchRowNode_(rowIndex);\n if (!newNode) {\n console.log(\"Couldn't fetch row index: \" + rowIndex);\n break;\n }\n\n if (node == newNode) {\n node = node.nextSibling;\n continue;\n }\n\n this.rowNodes_.insertBefore(newNode, node);\n if (!newNode.nextSibling)\n debugger;\n this.rowNodes_.removeChild(node);\n node = newNode.nextSibling;\n }\n\n if (node != this.bottomFold_)\n removeUntilNode(node, bottomFold);\n};\n\n/**\n * Empty out both select bags and remove them from the document.\n *\n * These nodes hold the text between the start and end of the selection\n * when that text is otherwise off screen. They are filled out in the\n * onCopy_ event.\n */\nhterm.ScrollPort.prototype.resetSelectBags_ = function() {\n if (this.topSelectBag_.parentNode) {\n this.topSelectBag_.textContent = '';\n this.topSelectBag_.parentNode.removeChild(this.topSelectBag_);\n }\n\n if (this.bottomSelectBag_.parentNode) {\n this.bottomSelectBag_.textContent = '';\n this.bottomSelectBag_.parentNode.removeChild(this.bottomSelectBag_);\n }\n};\n\n/**\n * Place a row node in the cache of visible nodes.\n *\n * This method may only be used during a redraw_.\n */\nhterm.ScrollPort.prototype.cacheRowNode_ = function(rowNode) {\n this.currentRowNodeCache_[rowNode.rowIndex] = rowNode;\n};\n\n/**\n * Fetch the row node for the given index.\n *\n * This will return a node from the cache if possible, or will request one\n * from the RowProvider if not.\n *\n * If a redraw_ is in progress the row will be added to the current cache.\n */\nhterm.ScrollPort.prototype.fetchRowNode_ = function(rowIndex) {\n var node;\n\n if (this.previousRowNodeCache_ && rowIndex in this.previousRowNodeCache_) {\n node = this.previousRowNodeCache_[rowIndex];\n } else {\n node = this.rowProvider_.getRowNode(rowIndex);\n }\n\n if (this.currentRowNodeCache_)\n this.cacheRowNode_(node);\n\n return node;\n};\n\n/**\n * Select all rows in the viewport.\n */\nhterm.ScrollPort.prototype.selectAll = function() {\n var firstRow;\n\n if (this.topFold_.nextSibling.rowIndex != 0) {\n while (this.topFold_.previousSibling) {\n this.rowNodes_.removeChild(this.topFold_.previousSibling);\n }\n\n firstRow = this.fetchRowNode_(0);\n this.rowNodes_.insertBefore(firstRow, this.topFold_);\n this.syncRowNodesDimensions_();\n } else {\n firstRow = this.topFold_.nextSibling;\n }\n\n var lastRowIndex = this.rowProvider_.getRowCount() - 1;\n var lastRow;\n\n if (this.bottomFold_.previousSibling.rowIndex != lastRowIndex) {\n while (this.bottomFold_.nextSibling) {\n this.rowNodes_.removeChild(this.bottomFold_.nextSibling);\n }\n\n lastRow = this.fetchRowNode_(lastRowIndex);\n this.rowNodes_.appendChild(lastRow);\n } else {\n lastRow = this.bottomFold_.previousSibling.rowIndex;\n }\n\n var selection = this.document_.getSelection();\n selection.collapse(firstRow, 0);\n selection.extend(lastRow, lastRow.childNodes.length);\n\n this.selection.sync();\n};\n\n/**\n * Return the maximum scroll position in pixels.\n */\nhterm.ScrollPort.prototype.getScrollMax_ = function(e) {\n return (hterm.getClientHeight(this.scrollArea_) +\n this.visibleRowTopMargin + this.visibleRowBottomMargin -\n hterm.getClientHeight(this.screen_));\n};\n\n/**\n * Scroll the given rowIndex to the top of the hterm.ScrollPort.\n *\n * @param {integer} rowIndex Index of the target row.\n */\nhterm.ScrollPort.prototype.scrollRowToTop = function(rowIndex) {\n this.syncScrollHeight();\n\n this.isScrolledEnd = (\n rowIndex + this.visibleRowCount >= this.lastRowCount_);\n\n var scrollTop = rowIndex * this.characterSize.height +\n this.visibleRowTopMargin;\n\n var scrollMax = this.getScrollMax_();\n if (scrollTop > scrollMax)\n scrollTop = scrollMax;\n\n if (this.screen_.scrollTop == scrollTop)\n return;\n\n this.screen_.scrollTop = scrollTop;\n this.scheduleRedraw();\n};\n\n/**\n * Scroll the given rowIndex to the bottom of the hterm.ScrollPort.\n *\n * @param {integer} rowIndex Index of the target row.\n */\nhterm.ScrollPort.prototype.scrollRowToBottom = function(rowIndex) {\n this.syncScrollHeight();\n\n this.isScrolledEnd = (\n rowIndex + this.visibleRowCount >= this.lastRowCount_);\n\n var scrollTop = rowIndex * this.characterSize.height +\n this.visibleRowTopMargin + this.visibleRowBottomMargin;\n scrollTop -= this.visibleRowCount * this.characterSize.height;\n\n if (scrollTop < 0)\n scrollTop = 0;\n\n if (this.screen_.scrollTop == scrollTop)\n return;\n\n this.screen_.scrollTop = scrollTop;\n};\n\n/**\n * Return the row index of the first visible row.\n *\n * This is based on the scroll position. If a redraw_ is in progress this\n * returns the row that *should* be at the top.\n */\nhterm.ScrollPort.prototype.getTopRowIndex = function() {\n return Math.round(this.screen_.scrollTop / this.characterSize.height);\n};\n\n/**\n * Return the row index of the last visible row.\n *\n * This is based on the scroll position. If a redraw_ is in progress this\n * returns the row that *should* be at the bottom.\n */\nhterm.ScrollPort.prototype.getBottomRowIndex = function(topRowIndex) {\n return topRowIndex + this.visibleRowCount - 1;\n};\n\n/**\n * Handler for scroll events.\n *\n * The onScroll event fires when scrollArea's scrollTop property changes. This\n * may be due to the user manually move the scrollbar, or a programmatic change.\n */\nhterm.ScrollPort.prototype.onScroll_ = function(e) {\n var screenSize = this.getScreenSize();\n if (screenSize.width != this.lastScreenWidth_ ||\n screenSize.height != this.lastScreenHeight_) {\n // This event may also fire during a resize (but before the resize event!).\n // This happens when the browser moves the scrollbar as part of the resize.\n // In these cases, we want to ignore the scroll event and let onResize\n // handle things. If we don't, then we end up scrolling to the wrong\n // position after a resize.\n this.resize();\n return;\n }\n\n this.redraw_();\n this.publish('scroll', { scrollPort: this });\n};\n\n/**\n * Clients can override this if they want to hear scrollwheel events.\n *\n * Clients may call event.preventDefault() if they want to keep the scrollport\n * from also handling the events.\n */\nhterm.ScrollPort.prototype.onScrollWheel = function(e) {};\n\n/**\n * Handler for scroll-wheel events.\n *\n * The onScrollWheel event fires when the user moves their scrollwheel over this\n * hterm.ScrollPort. Because the frontmost element in the hterm.ScrollPort is\n * a fixed position DIV, the scroll wheel does nothing by default. Instead, we\n * have to handle it manually.\n */\nhterm.ScrollPort.prototype.onScrollWheel_ = function(e) {\n this.onScrollWheel(e);\n\n if (e.defaultPrevented)\n return;\n\n // Figure out how far this event wants us to scroll.\n var delta = this.scrollWheelDelta(e);\n\n var top = this.screen_.scrollTop - delta;\n if (top < 0)\n top = 0;\n\n var scrollMax = this.getScrollMax_();\n if (top > scrollMax)\n top = scrollMax;\n\n if (top != this.screen_.scrollTop) {\n // Moving scrollTop causes a scroll event, which triggers the redraw.\n this.screen_.scrollTop = top;\n\n // Only preventDefault when we've actually scrolled. If there's nothing\n // to scroll we want to pass the event through so Chrome can detect the\n // overscroll.\n e.preventDefault();\n }\n};\n\n/**\n * Calculate how far a wheel event should scroll.\n *\n * @param {WheelEvent} e The mouse wheel event to process.\n * @return {number} How far (in pixels) to scroll.\n */\nhterm.ScrollPort.prototype.scrollWheelDelta = function(e) {\n var delta;\n\n switch (e.deltaMode) {\n case WheelEvent.DOM_DELTA_PIXEL:\n delta = e.deltaY * this.scrollWheelMultiplier_;\n break;\n case WheelEvent.DOM_DELTA_LINE:\n delta = e.deltaY * this.characterSize.height;\n break;\n case WheelEvent.DOM_DELTA_PAGE:\n delta = e.deltaY * this.characterSize.height * this.screen_.getHeight();\n break;\n }\n\n // The sign is inverted from what we would expect.\n return delta * -1;\n};\n\n\n/**\n * Clients can override this if they want to hear touch events.\n *\n * Clients may call event.preventDefault() if they want to keep the scrollport\n * from also handling the events.\n */\nhterm.ScrollPort.prototype.onTouch = function(e) {};\n\n/**\n * Handler for touch events.\n */\nhterm.ScrollPort.prototype.onTouch_ = function(e) {\n this.onTouch(e);\n\n if (e.defaultPrevented)\n return;\n\n // Extract the fields from the Touch event that we need. If we saved the\n // event directly, it has references to other objects (like x-row) that\n // might stick around for a long time. This way we only have small objects\n // in our lastTouch_ state.\n var scrubTouch = function(t) {\n return {\n id: t.identifier,\n y: t.clientY,\n x: t.clientX,\n };\n };\n\n var i, touch;\n switch (e.type) {\n case 'touchstart':\n // Save the current set of touches.\n for (i = 0; i < e.changedTouches.length; ++i) {\n touch = scrubTouch(e.changedTouches[i]);\n this.lastTouch_[touch.id] = touch;\n }\n break;\n\n case 'touchcancel':\n case 'touchend':\n // Throw away existing touches that we're finished with.\n for (i = 0; i < e.changedTouches.length; ++i)\n delete this.lastTouch_[e.changedTouches[i].identifier];\n break;\n\n case 'touchmove':\n // Walk all of the touches in this one event and merge all of their\n // changes into one delta. This lets multiple fingers scroll faster.\n var delta = 0;\n for (i = 0; i < e.changedTouches.length; ++i) {\n touch = scrubTouch(e.changedTouches[i]);\n delta += (this.lastTouch_[touch.id].y - touch.y);\n this.lastTouch_[touch.id] = touch;\n }\n\n // Invert to match the touchscreen scrolling direction of browser windows.\n delta *= -1;\n\n var top = this.screen_.scrollTop - delta;\n if (top < 0)\n top = 0;\n\n var scrollMax = this.getScrollMax_();\n if (top > scrollMax)\n top = scrollMax;\n\n if (top != this.screen_.scrollTop) {\n // Moving scrollTop causes a scroll event, which triggers the redraw.\n this.screen_.scrollTop = top;\n }\n break;\n }\n\n // To disable gestures or anything else interfering with our scrolling.\n e.preventDefault();\n};\n\n/**\n * Handler for resize events.\n *\n * The browser will resize us such that the top row stays at the top, but we\n * prefer to the bottom row to stay at the bottom.\n */\nhterm.ScrollPort.prototype.onResize_ = function(e) {\n // Re-measure, since onResize also happens for browser zoom changes.\n this.syncCharacterSize();\n this.resize();\n};\n\n/**\n * Clients can override this if they want to hear copy events.\n *\n * Clients may call event.preventDefault() if they want to keep the scrollport\n * from also handling the events.\n */\nhterm.ScrollPort.prototype.onCopy = function(e) { };\n\n/**\n * Handler for copy-to-clipboard events.\n *\n * If some or all of the selected rows are off screen we may need to fill in\n * the rows between selection start and selection end. This handler determines\n * if we're missing some of the selected text, and if so populates one or both\n * of the \"select bags\" with the missing text.\n */\nhterm.ScrollPort.prototype.onCopy_ = function(e) {\n this.onCopy(e);\n\n if (e.defaultPrevented)\n return;\n\n this.resetSelectBags_();\n this.selection.sync();\n\n if (!this.selection.startRow ||\n this.selection.endRow.rowIndex - this.selection.startRow.rowIndex < 2) {\n return;\n }\n\n var topRowIndex = this.getTopRowIndex();\n var bottomRowIndex = this.getBottomRowIndex(topRowIndex);\n\n if (this.selection.startRow.rowIndex < topRowIndex) {\n // Start of selection is above the top fold.\n var endBackfillIndex;\n\n if (this.selection.endRow.rowIndex < topRowIndex) {\n // Entire selection is above the top fold.\n endBackfillIndex = this.selection.endRow.rowIndex;\n } else {\n // Selection extends below the top fold.\n endBackfillIndex = this.topFold_.nextSibling.rowIndex;\n }\n\n this.topSelectBag_.textContent = this.rowProvider_.getRowsText(\n this.selection.startRow.rowIndex + 1, endBackfillIndex);\n this.rowNodes_.insertBefore(this.topSelectBag_,\n this.selection.startRow.nextSibling);\n this.syncRowNodesDimensions_();\n }\n\n if (this.selection.endRow.rowIndex > bottomRowIndex) {\n // Selection ends below the bottom fold.\n var startBackfillIndex;\n\n if (this.selection.startRow.rowIndex > bottomRowIndex) {\n // Entire selection is below the bottom fold.\n startBackfillIndex = this.selection.startRow.rowIndex + 1;\n } else {\n // Selection starts above the bottom fold.\n startBackfillIndex = this.bottomFold_.previousSibling.rowIndex + 1;\n }\n\n this.bottomSelectBag_.textContent = this.rowProvider_.getRowsText(\n startBackfillIndex, this.selection.endRow.rowIndex);\n this.rowNodes_.insertBefore(this.bottomSelectBag_, this.selection.endRow);\n }\n};\n\n/**\n * Focuses on the paste target on a ctrl-v keydown event, as in\n * FF a content editable element must be focused before the paste event.\n */\nhterm.ScrollPort.prototype.onBodyKeyDown_ = function(e) {\n if (!this.ctrlVPaste)\n return;\n\n var key = String.fromCharCode(e.which);\n var lowerKey = key.toLowerCase();\n if ((e.ctrlKey || e.metaKey) && lowerKey == \"v\")\n this.pasteTarget_.focus();\n};\n\n/**\n * Handle a paste event on the the ScrollPort's screen element.\n */\nhterm.ScrollPort.prototype.onPaste_ = function(e) {\n this.pasteTarget_.focus();\n\n var self = this;\n setTimeout(function() {\n self.publish('paste', { text: self.pasteTarget_.value });\n self.pasteTarget_.value = '';\n self.screen_.focus();\n }, 0);\n};\n\n/**\n * Handles a textInput event on the paste target. Stops this from\n * propagating as we want this to be handled in the onPaste_ method.\n */\nhterm.ScrollPort.prototype.handlePasteTargetTextInput_ = function(e) {\n e.stopPropagation();\n};\n\n/**\n * Set the vertical scrollbar mode of the ScrollPort.\n */\nhterm.ScrollPort.prototype.setScrollbarVisible = function(state) {\n this.screen_.style.overflowY = state ? 'scroll' : 'hidden';\n};\n\n/**\n * Set scroll wheel multiplier. This alters how much the screen scrolls on\n * mouse wheel events.\n */\nhterm.ScrollPort.prototype.setScrollWheelMoveMultipler = function(multiplier) {\n this.scrollWheelMultiplier_ = multiplier;\n};\n// SOURCE FILE: hterm/js/hterm_terminal.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.colors', 'lib.PreferenceManager', 'lib.resource', 'lib.wc',\n 'lib.f', 'hterm.Keyboard', 'hterm.Options', 'hterm.PreferenceManager',\n 'hterm.Screen', 'hterm.ScrollPort', 'hterm.Size',\n 'hterm.TextAttributes', 'hterm.VT');\n\n/**\n * Constructor for the Terminal class.\n *\n * A Terminal pulls together the hterm.ScrollPort, hterm.Screen and hterm.VT100\n * classes to provide the complete terminal functionality.\n *\n * There are a number of lower-level Terminal methods that can be called\n * directly to manipulate the cursor, text, scroll region, and other terminal\n * attributes. However, the primary method is interpret(), which parses VT\n * escape sequences and invokes the appropriate Terminal methods.\n *\n * This class was heavily influenced by Cory Maccarrone's Framebuffer class.\n *\n * TODO(rginda): Eventually we're going to need to support characters which are\n * displayed twice as wide as standard latin characters. This is to support\n * CJK (and possibly other character sets).\n *\n * @param {string} opt_profileId Optional preference profile name. If not\n * provided, defaults to 'default'.\n */\nhterm.Terminal = function(opt_profileId) {\n this.profileId_ = null;\n\n // Two screen instances.\n this.primaryScreen_ = new hterm.Screen();\n this.alternateScreen_ = new hterm.Screen();\n\n // The \"current\" screen.\n this.screen_ = this.primaryScreen_;\n\n // The local notion of the screen size. ScreenBuffers also have a size which\n // indicates their present size. During size changes, the two may disagree.\n // Also, the inactive screen's size is not altered until it is made the active\n // screen.\n this.screenSize = new hterm.Size(0, 0);\n\n // The scroll port we'll be using to display the visible rows.\n this.scrollPort_ = new hterm.ScrollPort(this);\n this.scrollPort_.subscribe('resize', this.onResize_.bind(this));\n this.scrollPort_.subscribe('scroll', this.onScroll_.bind(this));\n this.scrollPort_.subscribe('paste', this.onPaste_.bind(this));\n this.scrollPort_.onCopy = this.onCopy_.bind(this);\n\n // The div that contains this terminal.\n this.div_ = null;\n\n // The document that contains the scrollPort. Defaulted to the global\n // document here so that the terminal is functional even if it hasn't been\n // inserted into a document yet, but re-set in decorate().\n this.document_ = window.document;\n\n // The rows that have scrolled off screen and are no longer addressable.\n this.scrollbackRows_ = [];\n\n // Saved tab stops.\n this.tabStops_ = [];\n\n // Keep track of whether default tab stops have been erased; after a TBC\n // clears all tab stops, defaults aren't restored on resize until a reset.\n this.defaultTabStops = true;\n\n // The VT's notion of the top and bottom rows. Used during some VT\n // cursor positioning and scrolling commands.\n this.vtScrollTop_ = null;\n this.vtScrollBottom_ = null;\n\n // The DIV element for the visible cursor.\n this.cursorNode_ = null;\n\n // The current cursor shape of the terminal.\n this.cursorShape_ = hterm.Terminal.cursorShape.BLOCK;\n\n // The current color of the cursor.\n this.cursorColor_ = null;\n\n // Cursor blink on/off cycle in ms, overwritten by prefs once they're loaded.\n this.cursorBlinkCycle_ = [100, 100];\n\n // Pre-bound onCursorBlink_ handler, so we don't have to do this for each\n // cursor on/off servicing.\n this.myOnCursorBlink_ = this.onCursorBlink_.bind(this);\n\n // These prefs are cached so we don't have to read from local storage with\n // each output and keystroke. They are initialized by the preference manager.\n this.backgroundColor_ = null;\n this.foregroundColor_ = null;\n this.scrollOnOutput_ = null;\n this.scrollOnKeystroke_ = null;\n this.scrollWheelArrowKeys_ = null;\n\n // True if we should override mouse event reporting to allow local selection.\n this.defeatMouseReports_ = false;\n\n // Terminal bell sound.\n this.bellAudio_ = this.document_.createElement('audio');\n this.bellAudio_.id = 'hterm:bell-audio';\n this.bellAudio_.setAttribute('preload', 'auto');\n\n // All terminal bell notifications that have been generated (not necessarily\n // shown).\n this.bellNotificationList_ = [];\n\n // Whether we have permission to display notifications.\n this.desktopNotificationBell_ = false;\n\n // Cursor position and attributes saved with DECSC.\n this.savedOptions_ = {};\n\n // The current mode bits for the terminal.\n this.options_ = new hterm.Options();\n\n // Timeouts we might need to clear.\n this.timeouts_ = {};\n\n // The VT escape sequence interpreter.\n this.vt = new hterm.VT(this);\n\n // The keyboard handler.\n this.keyboard = new hterm.Keyboard(this);\n\n // General IO interface that can be given to third parties without exposing\n // the entire terminal object.\n this.io = new hterm.Terminal.IO(this);\n\n // True if mouse-click-drag should scroll the terminal.\n this.enableMouseDragScroll = true;\n\n this.copyOnSelect = null;\n this.mouseRightClickPaste = null;\n this.mousePasteButton = null;\n\n // Whether to use the default window copy behavior.\n this.useDefaultWindowCopy = false;\n\n this.clearSelectionAfterCopy = true;\n\n this.realizeSize_(80, 24);\n this.setDefaultTabStops();\n\n this.setProfile(opt_profileId || 'default',\n function() { this.onTerminalReady(); }.bind(this));\n};\n\n/**\n * Possible cursor shapes.\n */\nhterm.Terminal.cursorShape = {\n BLOCK: 'BLOCK',\n BEAM: 'BEAM',\n UNDERLINE: 'UNDERLINE'\n};\n\n/**\n * Clients should override this to be notified when the terminal is ready\n * for use.\n *\n * The terminal initialization is asynchronous, and shouldn't be used before\n * this method is called.\n */\nhterm.Terminal.prototype.onTerminalReady = function() { };\n\n/**\n * Default tab with of 8 to match xterm.\n */\nhterm.Terminal.prototype.tabWidth = 8;\n\n/**\n * Select a preference profile.\n *\n * This will load the terminal preferences for the given profile name and\n * associate subsequent preference changes with the new preference profile.\n *\n * @param {string} profileId The name of the preference profile. Forward slash\n * characters will be removed from the name.\n * @param {function} opt_callback Optional callback to invoke when the profile\n * transition is complete.\n */\nhterm.Terminal.prototype.setProfile = function(profileId, opt_callback) {\n this.profileId_ = profileId.replace(/\\//g, '');\n\n var terminal = this;\n\n if (this.prefs_)\n this.prefs_.deactivate();\n\n this.prefs_ = new hterm.PreferenceManager(this.profileId_);\n this.prefs_.addObservers(null, {\n 'alt-gr-mode': function(v) {\n if (v == null) {\n if (navigator.language.toLowerCase() == 'en-us') {\n v = 'none';\n } else {\n v = 'right-alt';\n }\n } else if (typeof v == 'string') {\n v = v.toLowerCase();\n } else {\n v = 'none';\n }\n\n if (!/^(none|ctrl-alt|left-alt|right-alt)$/.test(v))\n v = 'none';\n\n terminal.keyboard.altGrMode = v;\n },\n\n 'alt-backspace-is-meta-backspace': function(v) {\n terminal.keyboard.altBackspaceIsMetaBackspace = v;\n },\n\n 'alt-is-meta': function(v) {\n terminal.keyboard.altIsMeta = v;\n },\n\n 'alt-sends-what': function(v) {\n if (!/^(escape|8-bit|browser-key)$/.test(v))\n v = 'escape';\n\n terminal.keyboard.altSendsWhat = v;\n },\n\n 'audible-bell-sound': function(v) {\n var ary = v.match(/^lib-resource:(\\S+)/);\n if (ary) {\n terminal.bellAudio_.setAttribute('src',\n lib.resource.getDataUrl(ary[1]));\n } else {\n terminal.bellAudio_.setAttribute('src', v);\n }\n },\n\n 'desktop-notification-bell': function(v) {\n if (v && Notification) {\n terminal.desktopNotificationBell_ =\n Notification.permission === 'granted';\n if (!terminal.desktopNotificationBell_) {\n // Note: We don't call Notification.requestPermission here because\n // Chrome requires the call be the result of a user action (such as an\n // onclick handler), and pref listeners are run asynchronously.\n //\n // A way of working around this would be to display a dialog in the\n // terminal with a \"click-to-request-permission\" button.\n console.warn('desktop-notification-bell is true but we do not have ' +\n 'permission to display notifications.');\n }\n } else {\n terminal.desktopNotificationBell_ = false;\n }\n },\n\n 'background-color': function(v) {\n terminal.setBackgroundColor(v);\n },\n\n 'background-image': function(v) {\n terminal.scrollPort_.setBackgroundImage(v);\n },\n\n 'background-size': function(v) {\n terminal.scrollPort_.setBackgroundSize(v);\n },\n\n 'background-position': function(v) {\n terminal.scrollPort_.setBackgroundPosition(v);\n },\n\n 'backspace-sends-backspace': function(v) {\n terminal.keyboard.backspaceSendsBackspace = v;\n },\n\n 'character-map-overrides': function(v) {\n if (!(v == null || v instanceof Object)) {\n console.warn('Preference character-map-modifications is not an ' +\n 'object: ' + v);\n return;\n }\n\n terminal.vt.characterMaps.reset();\n terminal.vt.characterMaps.setOverrides(v);\n },\n\n 'cursor-blink': function(v) {\n terminal.setCursorBlink(!!v);\n },\n\n 'cursor-blink-cycle': function(v) {\n if (v instanceof Array &&\n typeof v[0] == 'number' &&\n typeof v[1] == 'number') {\n terminal.cursorBlinkCycle_ = v;\n } else if (typeof v == 'number') {\n terminal.cursorBlinkCycle_ = [v, v];\n } else {\n // Fast blink indicates an error.\n terminal.cursorBlinkCycle_ = [100, 100];\n }\n },\n\n 'cursor-color': function(v) {\n terminal.setCursorColor(v);\n },\n\n 'color-palette-overrides': function(v) {\n if (!(v == null || v instanceof Object || v instanceof Array)) {\n console.warn('Preference color-palette-overrides is not an array or ' +\n 'object: ' + v);\n return;\n }\n\n lib.colors.colorPalette = lib.colors.stockColorPalette.concat();\n\n if (v) {\n for (var key in v) {\n var i = parseInt(key);\n if (isNaN(i) || i < 0 || i > 255) {\n console.log('Invalid value in palette: ' + key + ': ' + v[key]);\n continue;\n }\n\n if (v[i]) {\n var rgb = lib.colors.normalizeCSS(v[i]);\n if (rgb)\n lib.colors.colorPalette[i] = rgb;\n }\n }\n }\n\n terminal.primaryScreen_.textAttributes.resetColorPalette();\n terminal.alternateScreen_.textAttributes.resetColorPalette();\n },\n\n 'copy-on-select': function(v) {\n terminal.copyOnSelect = !!v;\n },\n\n 'use-default-window-copy': function(v) {\n terminal.useDefaultWindowCopy = !!v;\n },\n\n 'clear-selection-after-copy': function(v) {\n terminal.clearSelectionAfterCopy = !!v;\n },\n\n 'ctrl-plus-minus-zero-zoom': function(v) {\n terminal.keyboard.ctrlPlusMinusZeroZoom = v;\n },\n\n 'ctrl-c-copy': function(v) {\n terminal.keyboard.ctrlCCopy = v;\n },\n\n 'ctrl-v-paste': function(v) {\n terminal.keyboard.ctrlVPaste = v;\n terminal.scrollPort_.setCtrlVPaste(v);\n },\n\n 'east-asian-ambiguous-as-two-column': function(v) {\n lib.wc.regardCjkAmbiguous = v;\n },\n\n 'enable-8-bit-control': function(v) {\n terminal.vt.enable8BitControl = !!v;\n },\n\n 'enable-bold': function(v) {\n terminal.syncBoldSafeState();\n },\n\n 'enable-bold-as-bright': function(v) {\n terminal.primaryScreen_.textAttributes.enableBoldAsBright = !!v;\n terminal.alternateScreen_.textAttributes.enableBoldAsBright = !!v;\n },\n\n 'enable-blink': function(v) {\n terminal.syncBlinkState();\n },\n\n 'enable-clipboard-write': function(v) {\n terminal.vt.enableClipboardWrite = !!v;\n },\n\n 'enable-dec12': function(v) {\n terminal.vt.enableDec12 = !!v;\n },\n\n 'font-family': function(v) {\n terminal.syncFontFamily();\n },\n\n 'font-size': function(v) {\n terminal.setFontSize(v);\n },\n\n 'font-smoothing': function(v) {\n terminal.syncFontFamily();\n },\n\n 'foreground-color': function(v) {\n terminal.setForegroundColor(v);\n },\n\n 'home-keys-scroll': function(v) {\n terminal.keyboard.homeKeysScroll = v;\n },\n\n 'keybindings': function(v) {\n terminal.keyboard.bindings.clear();\n\n if (!v)\n return;\n\n if (!(v instanceof Object)) {\n console.error('Error in keybindings preference: Expected object');\n return;\n }\n\n try {\n terminal.keyboard.bindings.addBindings(v);\n } catch (ex) {\n console.error('Error in keybindings preference: ' + ex);\n }\n },\n\n 'max-string-sequence': function(v) {\n terminal.vt.maxStringSequence = v;\n },\n\n 'media-keys-are-fkeys': function(v) {\n terminal.keyboard.mediaKeysAreFKeys = v;\n },\n\n 'meta-sends-escape': function(v) {\n terminal.keyboard.metaSendsEscape = v;\n },\n\n 'mouse-right-click-paste': function(v) {\n terminal.mouseRightClickPaste = v;\n },\n\n 'mouse-paste-button': function(v) {\n terminal.syncMousePasteButton();\n },\n\n 'page-keys-scroll': function(v) {\n terminal.keyboard.pageKeysScroll = v;\n },\n\n 'pass-alt-number': function(v) {\n if (v == null) {\n var osx = window.navigator.userAgent.match(/Mac OS X/);\n\n // Let Alt-1..9 pass to the browser (to control tab switching) on\n // non-OS X systems, or if hterm is not opened in an app window.\n v = (!osx && hterm.windowType != 'popup');\n }\n\n terminal.passAltNumber = v;\n },\n\n 'pass-ctrl-number': function(v) {\n if (v == null) {\n var osx = window.navigator.userAgent.match(/Mac OS X/);\n\n // Let Ctrl-1..9 pass to the browser (to control tab switching) on\n // non-OS X systems, or if hterm is not opened in an app window.\n v = (!osx && hterm.windowType != 'popup');\n }\n\n terminal.passCtrlNumber = v;\n },\n\n 'pass-meta-number': function(v) {\n if (v == null) {\n var osx = window.navigator.userAgent.match(/Mac OS X/);\n\n // Let Meta-1..9 pass to the browser (to control tab switching) on\n // OS X systems, or if hterm is not opened in an app window.\n v = (osx && hterm.windowType != 'popup');\n }\n\n terminal.passMetaNumber = v;\n },\n\n 'pass-meta-v': function(v) {\n terminal.keyboard.passMetaV = v;\n },\n\n 'receive-encoding': function(v) {\n if (!(/^(utf-8|raw)$/).test(v)) {\n console.warn('Invalid value for \"receive-encoding\": ' + v);\n v = 'utf-8';\n }\n\n terminal.vt.characterEncoding = v;\n },\n\n 'scroll-on-keystroke': function(v) {\n terminal.scrollOnKeystroke_ = v;\n },\n\n 'scroll-on-output': function(v) {\n terminal.scrollOnOutput_ = v;\n },\n\n 'scrollbar-visible': function(v) {\n terminal.setScrollbarVisible(v);\n },\n\n 'scroll-wheel-may-send-arrow-keys': function(v) {\n terminal.scrollWheelArrowKeys_ = v;\n },\n\n 'scroll-wheel-move-multiplier': function(v) {\n terminal.setScrollWheelMoveMultipler(v);\n },\n\n 'send-encoding': function(v) {\n if (!(/^(utf-8|raw)$/).test(v)) {\n console.warn('Invalid value for \"send-encoding\": ' + v);\n v = 'utf-8';\n }\n\n terminal.keyboard.characterEncoding = v;\n },\n\n 'shift-insert-paste': function(v) {\n terminal.keyboard.shiftInsertPaste = v;\n },\n\n 'terminal-encoding': function(v) {\n terminal.vt.setEncoding(v);\n },\n\n 'user-css': function(v) {\n terminal.scrollPort_.setUserCssUrl(v);\n },\n\n 'user-css-text': function(v) {\n terminal.scrollPort_.setUserCssText(v);\n },\n\n 'word-break-match-left': function(v) {\n terminal.primaryScreen_.wordBreakMatchLeft = v;\n terminal.alternateScreen_.wordBreakMatchLeft = v;\n },\n\n 'word-break-match-right': function(v) {\n terminal.primaryScreen_.wordBreakMatchRight = v;\n terminal.alternateScreen_.wordBreakMatchRight = v;\n },\n\n 'word-break-match-middle': function(v) {\n terminal.primaryScreen_.wordBreakMatchMiddle = v;\n terminal.alternateScreen_.wordBreakMatchMiddle = v;\n },\n });\n\n this.prefs_.readStorage(function() {\n this.prefs_.notifyAll();\n\n if (opt_callback)\n opt_callback();\n }.bind(this));\n};\n\n\n/**\n * Returns the preferences manager used for configuring this terminal.\n *\n * @return {hterm.PreferenceManager}\n */\nhterm.Terminal.prototype.getPrefs = function() {\n return this.prefs_;\n};\n\n/**\n * Enable or disable bracketed paste mode.\n *\n * @param {boolean} state The value to set.\n */\nhterm.Terminal.prototype.setBracketedPaste = function(state) {\n this.options_.bracketedPaste = state;\n};\n\n/**\n * Set the color for the cursor.\n *\n * If you want this setting to persist, set it through prefs_, rather than\n * with this method.\n *\n * @param {string} color The color to set.\n */\nhterm.Terminal.prototype.setCursorColor = function(color) {\n this.cursorColor_ = color;\n this.cursorNode_.style.backgroundColor = color;\n this.cursorNode_.style.borderColor = color;\n};\n\n/**\n * Return the current cursor color as a string.\n * @return {string}\n */\nhterm.Terminal.prototype.getCursorColor = function() {\n return this.cursorColor_;\n};\n\n/**\n * Enable or disable mouse based text selection in the terminal.\n *\n * @param {boolean} state The value to set.\n */\nhterm.Terminal.prototype.setSelectionEnabled = function(state) {\n this.enableMouseDragScroll = state;\n};\n\n/**\n * Set the background color.\n *\n * If you want this setting to persist, set it through prefs_, rather than\n * with this method.\n *\n * @param {string} color The color to set.\n */\nhterm.Terminal.prototype.setBackgroundColor = function(color) {\n this.backgroundColor_ = lib.colors.normalizeCSS(color);\n this.primaryScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.alternateScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.scrollPort_.setBackgroundColor(color);\n};\n\n/**\n * Return the current terminal background color.\n *\n * Intended for use by other classes, so we don't have to expose the entire\n * prefs_ object.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getBackgroundColor = function() {\n return this.backgroundColor_;\n};\n\n/**\n * Set the foreground color.\n *\n * If you want this setting to persist, set it through prefs_, rather than\n * with this method.\n *\n * @param {string} color The color to set.\n */\nhterm.Terminal.prototype.setForegroundColor = function(color) {\n this.foregroundColor_ = lib.colors.normalizeCSS(color);\n this.primaryScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.alternateScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.scrollPort_.setForegroundColor(color);\n};\n\n/**\n * Return the current terminal foreground color.\n *\n * Intended for use by other classes, so we don't have to expose the entire\n * prefs_ object.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getForegroundColor = function() {\n return this.foregroundColor_;\n};\n\n/**\n * Create a new instance of a terminal command and run it with a given\n * argument string.\n *\n * @param {function} commandClass The constructor for a terminal command.\n * @param {string} argString The argument string to pass to the command.\n */\nhterm.Terminal.prototype.runCommandClass = function(commandClass, argString) {\n var environment = this.prefs_.get('environment');\n if (typeof environment != 'object' || environment == null)\n environment = {};\n\n var self = this;\n this.command = new commandClass(\n { argString: argString || '',\n io: this.io.push(),\n environment: environment,\n onExit: function(code) {\n self.io.pop();\n self.uninstallKeyboard();\n if (self.prefs_.get('close-on-exit'))\n window.close();\n }\n });\n\n this.installKeyboard();\n this.command.run();\n};\n\n/**\n * Returns true if the current screen is the primary screen, false otherwise.\n *\n * @return {boolean}\n */\nhterm.Terminal.prototype.isPrimaryScreen = function() {\n return this.screen_ == this.primaryScreen_;\n};\n\n/**\n * Install the keyboard handler for this terminal.\n *\n * This will prevent the browser from seeing any keystrokes sent to the\n * terminal.\n */\nhterm.Terminal.prototype.installKeyboard = function() {\n this.keyboard.installKeyboard(this.scrollPort_.getDocument().body);\n}\n\n/**\n * Uninstall the keyboard handler for this terminal.\n */\nhterm.Terminal.prototype.uninstallKeyboard = function() {\n this.keyboard.installKeyboard(null);\n}\n\n/**\n * Set a CSS variable.\n *\n * Normally this is used to set variables in the hterm namespace.\n *\n * @param {string} name The variable to set.\n * @param {string} value The value to assign to the variable.\n * @param {string?} opt_prefix The variable namespace/prefix to use.\n */\nhterm.Terminal.prototype.setCssVar = function(name, value,\n opt_prefix='--hterm-') {\n this.document_.documentElement.style.setProperty(\n `${opt_prefix}${name}`, value);\n};\n\n/**\n * Set the font size for this terminal.\n *\n * Call setFontSize(0) to reset to the default font size.\n *\n * This function does not modify the font-size preference.\n *\n * @param {number} px The desired font size, in pixels.\n */\nhterm.Terminal.prototype.setFontSize = function(px) {\n if (px === 0)\n px = this.prefs_.get('font-size');\n\n this.scrollPort_.setFontSize(px);\n this.setCssVar('charsize-width', this.scrollPort_.characterSize.width + 'px');\n this.setCssVar('charsize-height',\n this.scrollPort_.characterSize.height + 'px');\n};\n\n/**\n * Get the current font size.\n *\n * @return {number}\n */\nhterm.Terminal.prototype.getFontSize = function() {\n return this.scrollPort_.getFontSize();\n};\n\n/**\n * Get the current font family.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getFontFamily = function() {\n return this.scrollPort_.getFontFamily();\n};\n\n/**\n * Set the CSS \"font-family\" for this terminal.\n */\nhterm.Terminal.prototype.syncFontFamily = function() {\n this.scrollPort_.setFontFamily(this.prefs_.get('font-family'),\n this.prefs_.get('font-smoothing'));\n this.syncBoldSafeState();\n};\n\n/**\n * Set this.mousePasteButton based on the mouse-paste-button pref,\n * autodetecting if necessary.\n */\nhterm.Terminal.prototype.syncMousePasteButton = function() {\n var button = this.prefs_.get('mouse-paste-button');\n if (typeof button == 'number') {\n this.mousePasteButton = button;\n return;\n }\n\n var ary = navigator.userAgent.match(/\\(X11;\\s+(\\S+)/);\n if (!ary || ary[1] == 'CrOS') {\n this.mousePasteButton = 1; // Middle mouse button.\n } else {\n this.mousePasteButton = 2; // Right mouse button.\n }\n};\n\n/**\n * Enable or disable bold based on the enable-bold pref, autodetecting if\n * necessary.\n */\nhterm.Terminal.prototype.syncBoldSafeState = function() {\n var enableBold = this.prefs_.get('enable-bold');\n if (enableBold !== null) {\n this.primaryScreen_.textAttributes.enableBold = enableBold;\n this.alternateScreen_.textAttributes.enableBold = enableBold;\n return;\n }\n\n var normalSize = this.scrollPort_.measureCharacterSize();\n var boldSize = this.scrollPort_.measureCharacterSize('bold');\n\n var isBoldSafe = normalSize.equals(boldSize);\n if (!isBoldSafe) {\n console.warn('Bold characters disabled: Size of bold weight differs ' +\n 'from normal. Font family is: ' +\n this.scrollPort_.getFontFamily());\n }\n\n this.primaryScreen_.textAttributes.enableBold = isBoldSafe;\n this.alternateScreen_.textAttributes.enableBold = isBoldSafe;\n};\n\n/**\n * Enable or disable blink based on the enable-blink pref.\n */\nhterm.Terminal.prototype.syncBlinkState = function() {\n this.setCssVar('node-duration',\n this.prefs_.get('enable-blink') ? '0.7s' : '0');\n};\n\n/**\n * Set the mouse cursor style based on the current terminal mode.\n */\nhterm.Terminal.prototype.syncMouseStyle = function() {\n this.setCssVar('mouse-cursor-style',\n this.vt.mouseReport == this.vt.MOUSE_REPORT_DISABLED ?\n 'var(--hterm-mouse-cursor-text)' :\n 'var(--hterm-mouse-cursor-pointer)');\n};\n\n/**\n * Return a copy of the current cursor position.\n *\n * @return {hterm.RowCol} The RowCol object representing the current position.\n */\nhterm.Terminal.prototype.saveCursor = function() {\n return this.screen_.cursorPosition.clone();\n};\n\n/**\n * Return the current text attributes.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getTextAttributes = function() {\n return this.screen_.textAttributes;\n};\n\n/**\n * Set the text attributes.\n *\n * @param {string} textAttributes The attributes to set.\n */\nhterm.Terminal.prototype.setTextAttributes = function(textAttributes) {\n this.screen_.textAttributes = textAttributes;\n};\n\n/**\n * Return the current browser zoom factor applied to the terminal.\n *\n * @return {number} The current browser zoom factor.\n */\nhterm.Terminal.prototype.getZoomFactor = function() {\n return this.scrollPort_.characterSize.zoomFactor;\n};\n\n/**\n * Change the title of this terminal's window.\n *\n * @param {string} title The title to set.\n */\nhterm.Terminal.prototype.setWindowTitle = function(title) {\n window.document.title = title;\n};\n\n/**\n * Restore a previously saved cursor position.\n *\n * @param {hterm.RowCol} cursor The position to restore.\n */\nhterm.Terminal.prototype.restoreCursor = function(cursor) {\n var row = lib.f.clamp(cursor.row, 0, this.screenSize.height - 1);\n var column = lib.f.clamp(cursor.column, 0, this.screenSize.width - 1);\n this.screen_.setCursorPosition(row, column);\n if (cursor.column > column ||\n cursor.column == column && cursor.overflow) {\n this.screen_.cursorPosition.overflow = true;\n }\n};\n\n/**\n * Clear the cursor's overflow flag.\n */\nhterm.Terminal.prototype.clearCursorOverflow = function() {\n this.screen_.cursorPosition.overflow = false;\n};\n\n/**\n * Sets the cursor shape\n *\n * @param {string} shape The shape to set.\n */\nhterm.Terminal.prototype.setCursorShape = function(shape) {\n this.cursorShape_ = shape;\n this.restyleCursor_();\n}\n\n/**\n * Get the cursor shape\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getCursorShape = function() {\n return this.cursorShape_;\n}\n\n/**\n * Set the width of the terminal, resizing the UI to match.\n *\n * @param {number} columnCount\n */\nhterm.Terminal.prototype.setWidth = function(columnCount) {\n if (columnCount == null) {\n this.div_.style.width = '100%';\n return;\n }\n\n this.div_.style.width = Math.ceil(\n this.scrollPort_.characterSize.width *\n columnCount + this.scrollPort_.currentScrollbarWidthPx) + 'px';\n this.realizeSize_(columnCount, this.screenSize.height);\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Set the height of the terminal, resizing the UI to match.\n *\n * @param {number} rowCount The height in rows.\n */\nhterm.Terminal.prototype.setHeight = function(rowCount) {\n if (rowCount == null) {\n this.div_.style.height = '100%';\n return;\n }\n\n this.div_.style.height =\n this.scrollPort_.characterSize.height * rowCount + 'px';\n this.realizeSize_(this.screenSize.width, rowCount);\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Deal with terminal size changes.\n *\n * @param {number} columnCount The number of columns.\n * @param {number} rowCount The number of rows.\n */\nhterm.Terminal.prototype.realizeSize_ = function(columnCount, rowCount) {\n if (columnCount != this.screenSize.width)\n this.realizeWidth_(columnCount);\n\n if (rowCount != this.screenSize.height)\n this.realizeHeight_(rowCount);\n\n // Send new terminal size to plugin.\n this.io.onTerminalResize_(columnCount, rowCount);\n};\n\n/**\n * Deal with terminal width changes.\n *\n * This function does what needs to be done when the terminal width changes\n * out from under us. It happens here rather than in onResize_() because this\n * code may need to run synchronously to handle programmatic changes of\n * terminal width.\n *\n * Relying on the browser to send us an async resize event means we may not be\n * in the correct state yet when the next escape sequence hits.\n *\n * @param {number} columnCount The number of columns.\n */\nhterm.Terminal.prototype.realizeWidth_ = function(columnCount) {\n if (columnCount <= 0)\n throw new Error('Attempt to realize bad width: ' + columnCount);\n\n var deltaColumns = columnCount - this.screen_.getWidth();\n\n this.screenSize.width = columnCount;\n this.screen_.setColumnCount(columnCount);\n\n if (deltaColumns > 0) {\n if (this.defaultTabStops)\n this.setDefaultTabStops(this.screenSize.width - deltaColumns);\n } else {\n for (var i = this.tabStops_.length - 1; i >= 0; i--) {\n if (this.tabStops_[i] < columnCount)\n break;\n\n this.tabStops_.pop();\n }\n }\n\n this.screen_.setColumnCount(this.screenSize.width);\n};\n\n/**\n * Deal with terminal height changes.\n *\n * This function does what needs to be done when the terminal height changes\n * out from under us. It happens here rather than in onResize_() because this\n * code may need to run synchronously to handle programmatic changes of\n * terminal height.\n *\n * Relying on the browser to send us an async resize event means we may not be\n * in the correct state yet when the next escape sequence hits.\n *\n * @param {number} rowCount The number of rows.\n */\nhterm.Terminal.prototype.realizeHeight_ = function(rowCount) {\n if (rowCount <= 0)\n throw new Error('Attempt to realize bad height: ' + rowCount);\n\n var deltaRows = rowCount - this.screen_.getHeight();\n\n this.screenSize.height = rowCount;\n\n var cursor = this.saveCursor();\n\n if (deltaRows < 0) {\n // Screen got smaller.\n deltaRows *= -1;\n while (deltaRows) {\n var lastRow = this.getRowCount() - 1;\n if (lastRow - this.scrollbackRows_.length == cursor.row)\n break;\n\n if (this.getRowText(lastRow))\n break;\n\n this.screen_.popRow();\n deltaRows--;\n }\n\n var ary = this.screen_.shiftRows(deltaRows);\n this.scrollbackRows_.push.apply(this.scrollbackRows_, ary);\n\n // We just removed rows from the top of the screen, we need to update\n // the cursor to match.\n cursor.row = Math.max(cursor.row - deltaRows, 0);\n } else if (deltaRows > 0) {\n // Screen got larger.\n\n if (deltaRows <= this.scrollbackRows_.length) {\n var scrollbackCount = Math.min(deltaRows, this.scrollbackRows_.length);\n var rows = this.scrollbackRows_.splice(\n this.scrollbackRows_.length - scrollbackCount, scrollbackCount);\n this.screen_.unshiftRows(rows);\n deltaRows -= scrollbackCount;\n cursor.row += scrollbackCount;\n }\n\n if (deltaRows)\n this.appendRows_(deltaRows);\n }\n\n this.setVTScrollRegion(null, null);\n this.restoreCursor(cursor);\n};\n\n/**\n * Scroll the terminal to the top of the scrollback buffer.\n */\nhterm.Terminal.prototype.scrollHome = function() {\n this.scrollPort_.scrollRowToTop(0);\n};\n\n/**\n * Scroll the terminal to the end.\n */\nhterm.Terminal.prototype.scrollEnd = function() {\n this.scrollPort_.scrollRowToBottom(this.getRowCount());\n};\n\n/**\n * Scroll the terminal one page up (minus one line) relative to the current\n * position.\n */\nhterm.Terminal.prototype.scrollPageUp = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i - this.screenSize.height + 1);\n};\n\n/**\n * Scroll the terminal one page down (minus one line) relative to the current\n * position.\n */\nhterm.Terminal.prototype.scrollPageDown = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i + this.screenSize.height - 1);\n};\n\n/**\n * Scroll the terminal one line up relative to the current position.\n */\nhterm.Terminal.prototype.scrollLineUp = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i - 1);\n};\n\n/**\n * Scroll the terminal one line down relative to the current position.\n */\nhterm.Terminal.prototype.scrollLineDown = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i + 1);\n};\n\n/**\n * Clear primary screen, secondary screen, and the scrollback buffer.\n */\nhterm.Terminal.prototype.wipeContents = function() {\n this.scrollbackRows_.length = 0;\n this.scrollPort_.resetCache();\n\n [this.primaryScreen_, this.alternateScreen_].forEach(function(screen) {\n var bottom = screen.getHeight();\n if (bottom > 0) {\n this.renumberRows_(0, bottom);\n this.clearHome(screen);\n }\n }.bind(this));\n\n this.syncCursorPosition_();\n this.scrollPort_.invalidate();\n};\n\n/**\n * Full terminal reset.\n */\nhterm.Terminal.prototype.reset = function() {\n this.clearAllTabStops();\n this.setDefaultTabStops();\n\n this.clearHome(this.primaryScreen_);\n this.primaryScreen_.textAttributes.reset();\n\n this.clearHome(this.alternateScreen_);\n this.alternateScreen_.textAttributes.reset();\n\n this.setCursorBlink(!!this.prefs_.get('cursor-blink'));\n\n this.vt.reset();\n\n this.softReset();\n};\n\n/**\n * Soft terminal reset.\n *\n * Perform a soft reset to the default values listed in\n * http://www.vt100.net/docs/vt510-rm/DECSTR#T5-9\n */\nhterm.Terminal.prototype.softReset = function() {\n // Reset terminal options to their default values.\n this.options_ = new hterm.Options();\n\n // We show the cursor on soft reset but do not alter the blink state.\n this.options_.cursorBlink = !!this.timeouts_.cursorBlink;\n\n // Xterm also resets the color palette on soft reset, even though it doesn't\n // seem to be documented anywhere.\n this.primaryScreen_.textAttributes.resetColorPalette();\n this.alternateScreen_.textAttributes.resetColorPalette();\n\n // The xterm man page explicitly says this will happen on soft reset.\n this.setVTScrollRegion(null, null);\n\n // Xterm also shows the cursor on soft reset, but does not alter the blink\n // state.\n this.setCursorVisible(true);\n};\n\n/**\n * Move the cursor forward to the next tab stop, or to the last column\n * if no more tab stops are set.\n */\nhterm.Terminal.prototype.forwardTabStop = function() {\n var column = this.screen_.cursorPosition.column;\n\n for (var i = 0; i < this.tabStops_.length; i++) {\n if (this.tabStops_[i] > column) {\n this.setCursorColumn(this.tabStops_[i]);\n return;\n }\n }\n\n // xterm does not clear the overflow flag on HT or CHT.\n var overflow = this.screen_.cursorPosition.overflow;\n this.setCursorColumn(this.screenSize.width - 1);\n this.screen_.cursorPosition.overflow = overflow;\n};\n\n/**\n * Move the cursor backward to the previous tab stop, or to the first column\n * if no previous tab stops are set.\n */\nhterm.Terminal.prototype.backwardTabStop = function() {\n var column = this.screen_.cursorPosition.column;\n\n for (var i = this.tabStops_.length - 1; i >= 0; i--) {\n if (this.tabStops_[i] < column) {\n this.setCursorColumn(this.tabStops_[i]);\n return;\n }\n }\n\n this.setCursorColumn(1);\n};\n\n/**\n * Set a tab stop at the given column.\n *\n * @param {integer} column Zero based column.\n */\nhterm.Terminal.prototype.setTabStop = function(column) {\n for (var i = this.tabStops_.length - 1; i >= 0; i--) {\n if (this.tabStops_[i] == column)\n return;\n\n if (this.tabStops_[i] < column) {\n this.tabStops_.splice(i + 1, 0, column);\n return;\n }\n }\n\n this.tabStops_.splice(0, 0, column);\n};\n\n/**\n * Clear the tab stop at the current cursor position.\n *\n * No effect if there is no tab stop at the current cursor position.\n */\nhterm.Terminal.prototype.clearTabStopAtCursor = function() {\n var column = this.screen_.cursorPosition.column;\n\n var i = this.tabStops_.indexOf(column);\n if (i == -1)\n return;\n\n this.tabStops_.splice(i, 1);\n};\n\n/**\n * Clear all tab stops.\n */\nhterm.Terminal.prototype.clearAllTabStops = function() {\n this.tabStops_.length = 0;\n this.defaultTabStops = false;\n};\n\n/**\n * Set up the default tab stops, starting from a given column.\n *\n * This sets a tabstop every (column % this.tabWidth) column, starting\n * from the specified column, or 0 if no column is provided. It also flags\n * future resizes to set them up.\n *\n * This does not clear the existing tab stops first, use clearAllTabStops\n * for that.\n *\n * @param {integer} opt_start Optional starting zero based starting column, useful\n * for filling out missing tab stops when the terminal is resized.\n */\nhterm.Terminal.prototype.setDefaultTabStops = function(opt_start) {\n var start = opt_start || 0;\n var w = this.tabWidth;\n // Round start up to a default tab stop.\n start = start - 1 - ((start - 1) % w) + w;\n for (var i = start; i < this.screenSize.width; i += w) {\n this.setTabStop(i);\n }\n\n this.defaultTabStops = true;\n};\n\n/**\n * Interpret a sequence of characters.\n *\n * Incomplete escape sequences are buffered until the next call.\n *\n * @param {string} str Sequence of characters to interpret or pass through.\n */\nhterm.Terminal.prototype.interpret = function(str) {\n this.vt.interpret(str);\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Take over the given DIV for use as the terminal display.\n *\n * @param {HTMLDivElement} div The div to use as the terminal display.\n */\nhterm.Terminal.prototype.decorate = function(div) {\n this.div_ = div;\n\n this.scrollPort_.decorate(div);\n this.scrollPort_.setBackgroundImage(this.prefs_.get('background-image'));\n this.scrollPort_.setBackgroundSize(this.prefs_.get('background-size'));\n this.scrollPort_.setBackgroundPosition(\n this.prefs_.get('background-position'));\n this.scrollPort_.setUserCssUrl(this.prefs_.get('user-css'));\n this.scrollPort_.setUserCssText(this.prefs_.get('user-css-text'));\n\n this.div_.focus = this.focus.bind(this);\n\n this.setFontSize(this.prefs_.get('font-size'));\n this.syncFontFamily();\n\n this.setScrollbarVisible(this.prefs_.get('scrollbar-visible'));\n this.setScrollWheelMoveMultipler(\n this.prefs_.get('scroll-wheel-move-multiplier'));\n\n this.document_ = this.scrollPort_.getDocument();\n\n this.document_.body.oncontextmenu = function() { return false; };\n\n var onMouse = this.onMouse_.bind(this);\n var screenNode = this.scrollPort_.getScreenNode();\n screenNode.addEventListener('mousedown', onMouse);\n screenNode.addEventListener('mouseup', onMouse);\n screenNode.addEventListener('mousemove', onMouse);\n this.scrollPort_.onScrollWheel = onMouse;\n\n screenNode.addEventListener(\n 'focus', this.onFocusChange_.bind(this, true));\n // Listen for mousedown events on the screenNode as in FF the focus\n // events don't bubble.\n screenNode.addEventListener('mousedown', function() {\n setTimeout(this.onFocusChange_.bind(this, true));\n }.bind(this));\n\n screenNode.addEventListener(\n 'blur', this.onFocusChange_.bind(this, false));\n\n var style = this.document_.createElement('style');\n style.textContent =\n ('.cursor-node[focus=\"false\"] {' +\n ' box-sizing: border-box;' +\n ' background-color: transparent !important;' +\n ' border-width: 2px;' +\n ' border-style: solid;' +\n '}' +\n '.wc-node {' +\n ' display: inline-block;' +\n ' text-align: center;' +\n ' width: calc(var(--hterm-charsize-width) * 2);' +\n ' line-height: var(--hterm-charsize-height);' +\n '}' +\n ':root {' +\n ' --hterm-charsize-width: ' + this.scrollPort_.characterSize.width + 'px;' +\n ' --hterm-charsize-height: ' + this.scrollPort_.characterSize.height + 'px;' +\n ' --hterm-cursor-offset-col: 0;' +\n ' --hterm-cursor-offset-row: 0;' +\n ' --hterm-blink-node-duration: 0.7s;' +\n ' --hterm-mouse-cursor-text: text;' +\n ' --hterm-mouse-cursor-pointer: default;' +\n ' --hterm-mouse-cursor-style: var(--hterm-mouse-cursor-text);' +\n '}' +\n '@keyframes blink {' +\n ' from { opacity: 1.0; }' +\n ' to { opacity: 0.0; }' +\n '}' +\n '.blink-node {' +\n ' animation-name: blink;' +\n ' animation-duration: var(--hterm-blink-node-duration);' +\n ' animation-iteration-count: infinite;' +\n ' animation-timing-function: ease-in-out;' +\n ' animation-direction: alternate;' +\n '}');\n this.document_.head.appendChild(style);\n\n this.cursorNode_ = this.document_.createElement('div');\n this.cursorNode_.id = 'hterm:terminal-cursor';\n this.cursorNode_.className = 'cursor-node';\n this.cursorNode_.style.cssText =\n ('position: absolute;' +\n 'left: calc(var(--hterm-charsize-width) * var(--hterm-cursor-offset-col));' +\n 'top: calc(var(--hterm-charsize-height) * var(--hterm-cursor-offset-row));' +\n 'display: block;' +\n 'width: var(--hterm-charsize-width);' +\n 'height: var(--hterm-charsize-height);' +\n '-webkit-transition: opacity, background-color 100ms linear;' +\n '-moz-transition: opacity, background-color 100ms linear;');\n\n this.setCursorColor(this.prefs_.get('cursor-color'));\n this.setCursorBlink(!!this.prefs_.get('cursor-blink'));\n this.restyleCursor_();\n\n this.document_.body.appendChild(this.cursorNode_);\n\n // When 'enableMouseDragScroll' is off we reposition this element directly\n // under the mouse cursor after a click. This makes Chrome associate\n // subsequent mousemove events with the scroll-blocker. Since the\n // scroll-blocker is a peer (not a child) of the scrollport, the mousemove\n // events do not cause the scrollport to scroll.\n //\n // It's a hack, but it's the cleanest way I could find.\n this.scrollBlockerNode_ = this.document_.createElement('div');\n this.scrollBlockerNode_.id = 'hterm:mouse-drag-scroll-blocker';\n this.scrollBlockerNode_.style.cssText =\n ('position: absolute;' +\n 'top: -99px;' +\n 'display: block;' +\n 'width: 10px;' +\n 'height: 10px;');\n this.document_.body.appendChild(this.scrollBlockerNode_);\n\n this.scrollPort_.onScrollWheel = onMouse;\n ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick',\n ].forEach(function(event) {\n this.scrollBlockerNode_.addEventListener(event, onMouse);\n this.cursorNode_.addEventListener(event, onMouse);\n this.document_.addEventListener(event, onMouse);\n }.bind(this));\n\n this.cursorNode_.addEventListener('mousedown', function() {\n setTimeout(this.focus.bind(this));\n }.bind(this));\n\n this.setReverseVideo(false);\n\n this.scrollPort_.focus();\n this.scrollPort_.scheduleRedraw();\n};\n\n/**\n * Return the HTML document that contains the terminal DOM nodes.\n *\n * @return {HTMLDocument}\n */\nhterm.Terminal.prototype.getDocument = function() {\n return this.document_;\n};\n\n/**\n * Focus the terminal.\n */\nhterm.Terminal.prototype.focus = function() {\n this.scrollPort_.focus();\n};\n\n/**\n * Return the HTML Element for a given row index.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to fetch rows on demand as they are scrolled into view.\n *\n * TODO(rginda): Consider saving scrollback rows as (HTML source, text content)\n * pairs to conserve memory.\n *\n * @param {integer} index The zero-based row index, measured relative to the\n * start of the scrollback buffer. On-screen rows will always have the\n * largest indices.\n * @return {HTMLElement} The 'x-row' element containing for the requested row.\n */\nhterm.Terminal.prototype.getRowNode = function(index) {\n if (index < this.scrollbackRows_.length)\n return this.scrollbackRows_[index];\n\n var screenIndex = index - this.scrollbackRows_.length;\n return this.screen_.rowsArray[screenIndex];\n};\n\n/**\n * Return the text content for a given range of rows.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to fetch text content on demand when the user attempts to copy their\n * selection to the clipboard.\n *\n * @param {integer} start The zero-based row index to start from, measured\n * relative to the start of the scrollback buffer. On-screen rows will\n * always have the largest indices.\n * @param {integer} end The zero-based row index to end on, measured\n * relative to the start of the scrollback buffer.\n * @return {string} A single string containing the text value of the range of\n * rows. Lines will be newline delimited, with no trailing newline.\n */\nhterm.Terminal.prototype.getRowsText = function(start, end) {\n var ary = [];\n for (var i = start; i < end; i++) {\n var node = this.getRowNode(i);\n ary.push(node.textContent);\n if (i < end - 1 && !node.getAttribute('line-overflow'))\n ary.push('\\n');\n }\n\n return ary.join('');\n};\n\n/**\n * Return the text content for a given row.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to fetch text content on demand when the user attempts to copy their\n * selection to the clipboard.\n *\n * @param {integer} index The zero-based row index to return, measured\n * relative to the start of the scrollback buffer. On-screen rows will\n * always have the largest indices.\n * @return {string} A string containing the text value of the selected row.\n */\nhterm.Terminal.prototype.getRowText = function(index) {\n var node = this.getRowNode(index);\n return node.textContent;\n};\n\n/**\n * Return the total number of rows in the addressable screen and in the\n * scrollback buffer of this terminal.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to compute the size of the scrollbar.\n *\n * @return {integer} The number of rows in this terminal.\n */\nhterm.Terminal.prototype.getRowCount = function() {\n return this.scrollbackRows_.length + this.screen_.rowsArray.length;\n};\n\n/**\n * Create DOM nodes for new rows and append them to the end of the terminal.\n *\n * This is the only correct way to add a new DOM node for a row. Notice that\n * the new row is appended to the bottom of the list of rows, and does not\n * require renumbering (of the rowIndex property) of previous rows.\n *\n * If you think you want a new blank row somewhere in the middle of the\n * terminal, look into moveRows_().\n *\n * This method does not pay attention to vtScrollTop/Bottom, since you should\n * be using moveRows() in cases where they would matter.\n *\n * The cursor will be positioned at column 0 of the first inserted line.\n *\n * @param {number} count The number of rows to created.\n */\nhterm.Terminal.prototype.appendRows_ = function(count) {\n var cursorRow = this.screen_.rowsArray.length;\n var offset = this.scrollbackRows_.length + cursorRow;\n for (var i = 0; i < count; i++) {\n var row = this.document_.createElement('x-row');\n row.appendChild(this.document_.createTextNode(''));\n row.rowIndex = offset + i;\n this.screen_.pushRow(row);\n }\n\n var extraRows = this.screen_.rowsArray.length - this.screenSize.height;\n if (extraRows > 0) {\n var ary = this.screen_.shiftRows(extraRows);\n Array.prototype.push.apply(this.scrollbackRows_, ary);\n if (this.scrollPort_.isScrolledEnd)\n this.scheduleScrollDown_();\n }\n\n if (cursorRow >= this.screen_.rowsArray.length)\n cursorRow = this.screen_.rowsArray.length - 1;\n\n this.setAbsoluteCursorPosition(cursorRow, 0);\n};\n\n/**\n * Relocate rows from one part of the addressable screen to another.\n *\n * This is used to recycle rows during VT scrolls (those which are driven\n * by VT commands, rather than by the user manipulating the scrollbar.)\n *\n * In this case, the blank lines scrolled into the scroll region are made of\n * the nodes we scrolled off. These have their rowIndex properties carefully\n * renumbered so as not to confuse the ScrollPort.\n *\n * @param {number} fromIndex The start index.\n * @param {number} count The number of rows to move.\n * @param {number} toIndex The destination index.\n */\nhterm.Terminal.prototype.moveRows_ = function(fromIndex, count, toIndex) {\n var ary = this.screen_.removeRows(fromIndex, count);\n this.screen_.insertRows(toIndex, ary);\n\n var start, end;\n if (fromIndex < toIndex) {\n start = fromIndex;\n end = toIndex + count;\n } else {\n start = toIndex;\n end = fromIndex + count;\n }\n\n this.renumberRows_(start, end);\n this.scrollPort_.scheduleInvalidate();\n};\n\n/**\n * Renumber the rowIndex property of the given range of rows.\n *\n * The start and end indices are relative to the screen, not the scrollback.\n * Rows in the scrollback buffer cannot be renumbered. Since they are not\n * addressable (you can't delete them, scroll them, etc), you should have\n * no need to renumber scrollback rows.\n *\n * @param {number} start The start index.\n * @param {number} end The end index.\n * @param {hterm.Screen} opt_screen The screen to renumber.\n */\nhterm.Terminal.prototype.renumberRows_ = function(start, end, opt_screen) {\n var screen = opt_screen || this.screen_;\n\n var offset = this.scrollbackRows_.length;\n for (var i = start; i < end; i++) {\n screen.rowsArray[i].rowIndex = offset + i;\n }\n};\n\n/**\n * Print a string to the terminal.\n *\n * This respects the current insert and wraparound modes. It will add new lines\n * to the end of the terminal, scrolling off the top into the scrollback buffer\n * if necessary.\n *\n * The string is *not* parsed for escape codes. Use the interpret() method if\n * that's what you're after.\n *\n * @param{string} str The string to print.\n */\nhterm.Terminal.prototype.print = function(str) {\n var startOffset = 0;\n\n var strWidth = lib.wc.strWidth(str);\n\n while (startOffset < strWidth) {\n if (this.options_.wraparound && this.screen_.cursorPosition.overflow) {\n this.screen_.commitLineOverflow();\n this.newLine();\n }\n\n var count = strWidth - startOffset;\n var didOverflow = false;\n var substr;\n\n if (this.screen_.cursorPosition.column + count >= this.screenSize.width) {\n didOverflow = true;\n count = this.screenSize.width - this.screen_.cursorPosition.column;\n }\n\n if (didOverflow && !this.options_.wraparound) {\n // If the string overflowed the line but wraparound is off, then the\n // last printed character should be the last of the string.\n // TODO: This will add to our problems with multibyte UTF-16 characters.\n substr = lib.wc.substr(str, startOffset, count - 1) +\n lib.wc.substr(str, strWidth - 1);\n count = strWidth;\n } else {\n substr = lib.wc.substr(str, startOffset, count);\n }\n\n var tokens = hterm.TextAttributes.splitWidecharString(substr);\n for (var i = 0; i < tokens.length; i++) {\n this.screen_.textAttributes.wcNode = tokens[i].wcNode;\n this.screen_.textAttributes.asciiNode = tokens[i].asciiNode;\n\n if (this.options_.insertMode) {\n this.screen_.insertString(tokens[i].str);\n } else {\n this.screen_.overwriteString(tokens[i].str);\n }\n this.screen_.textAttributes.wcNode = false;\n this.screen_.textAttributes.asciiNode = true;\n }\n\n this.screen_.maybeClipCurrentRow();\n startOffset += count;\n }\n\n this.scheduleSyncCursorPosition_();\n\n if (this.scrollOnOutput_)\n this.scrollPort_.scrollRowToBottom(this.getRowCount());\n};\n\n/**\n * Set the VT scroll region.\n *\n * This also resets the cursor position to the absolute (0, 0) position, since\n * that's what xterm appears to do.\n *\n * Setting the scroll region to the full height of the terminal will clear\n * the scroll region. This is *NOT* what most terminals do. We're explicitly\n * going \"off-spec\" here because it makes `screen` and `tmux` overflow into the\n * local scrollback buffer, which means the scrollbars and shift-pgup/pgdn\n * continue to work as most users would expect.\n *\n * @param {integer} scrollTop The zero-based top of the scroll region.\n * @param {integer} scrollBottom The zero-based bottom of the scroll region,\n * inclusive.\n */\nhterm.Terminal.prototype.setVTScrollRegion = function(scrollTop, scrollBottom) {\n if (scrollTop == 0 && scrollBottom == this.screenSize.height - 1) {\n this.vtScrollTop_ = null;\n this.vtScrollBottom_ = null;\n } else {\n this.vtScrollTop_ = scrollTop;\n this.vtScrollBottom_ = scrollBottom;\n }\n};\n\n/**\n * Return the top row index according to the VT.\n *\n * This will return 0 unless the terminal has been told to restrict scrolling\n * to some lower row. It is used for some VT cursor positioning and scrolling\n * commands.\n *\n * @return {integer} The topmost row in the terminal's scroll region.\n */\nhterm.Terminal.prototype.getVTScrollTop = function() {\n if (this.vtScrollTop_ != null)\n return this.vtScrollTop_;\n\n return 0;\n};\n\n/**\n * Return the bottom row index according to the VT.\n *\n * This will return the height of the terminal unless the it has been told to\n * restrict scrolling to some higher row. It is used for some VT cursor\n * positioning and scrolling commands.\n *\n * @return {integer} The bottom most row in the terminal's scroll region.\n */\nhterm.Terminal.prototype.getVTScrollBottom = function() {\n if (this.vtScrollBottom_ != null)\n return this.vtScrollBottom_;\n\n return this.screenSize.height - 1;\n}\n\n/**\n * Process a '\\n' character.\n *\n * If the cursor is on the final row of the terminal this will append a new\n * blank row to the screen and scroll the topmost row into the scrollback\n * buffer.\n *\n * Otherwise, this moves the cursor to column zero of the next row.\n */\nhterm.Terminal.prototype.newLine = function() {\n var cursorAtEndOfScreen = (this.screen_.cursorPosition.row ==\n this.screen_.rowsArray.length - 1);\n\n if (this.vtScrollBottom_ != null) {\n // A VT Scroll region is active, we never append new rows.\n if (this.screen_.cursorPosition.row == this.vtScrollBottom_) {\n // We're at the end of the VT Scroll Region, perform a VT scroll.\n this.vtScrollUp(1);\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row, 0);\n } else if (cursorAtEndOfScreen) {\n // We're at the end of the screen, the only thing to do is put the\n // cursor to column 0.\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row, 0);\n } else {\n // Anywhere else, advance the cursor row, and reset the column.\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row + 1, 0);\n }\n } else if (cursorAtEndOfScreen) {\n // We're at the end of the screen. Append a new row to the terminal,\n // shifting the top row into the scrollback.\n this.appendRows_(1);\n } else {\n // Anywhere else in the screen just moves the cursor.\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row + 1, 0);\n }\n};\n\n/**\n * Like newLine(), except maintain the cursor column.\n */\nhterm.Terminal.prototype.lineFeed = function() {\n var column = this.screen_.cursorPosition.column;\n this.newLine();\n this.setCursorColumn(column);\n};\n\n/**\n * If autoCarriageReturn is set then newLine(), else lineFeed().\n */\nhterm.Terminal.prototype.formFeed = function() {\n if (this.options_.autoCarriageReturn) {\n this.newLine();\n } else {\n this.lineFeed();\n }\n};\n\n/**\n * Move the cursor up one row, possibly inserting a blank line.\n *\n * The cursor column is not changed.\n */\nhterm.Terminal.prototype.reverseLineFeed = function() {\n var scrollTop = this.getVTScrollTop();\n var currentRow = this.screen_.cursorPosition.row;\n\n if (currentRow == scrollTop) {\n this.insertLines(1);\n } else {\n this.setAbsoluteCursorRow(currentRow - 1);\n }\n};\n\n/**\n * Replace all characters to the left of the current cursor with the space\n * character.\n *\n * TODO(rginda): This should probably *remove* the characters (not just replace\n * with a space) if there are no characters at or beyond the current cursor\n * position.\n */\nhterm.Terminal.prototype.eraseToLeft = function() {\n var cursor = this.saveCursor();\n this.setCursorColumn(0);\n this.screen_.overwriteString(lib.f.getWhitespace(cursor.column + 1));\n this.restoreCursor(cursor);\n};\n\n/**\n * Erase a given number of characters to the right of the cursor.\n *\n * The cursor position is unchanged.\n *\n * If the current background color is not the default background color this\n * will insert spaces rather than delete. This is unfortunate because the\n * trailing space will affect text selection, but it's difficult to come up\n * with a way to style empty space that wouldn't trip up the hterm.Screen\n * code.\n *\n * eraseToRight is ignored in the presence of a cursor overflow. This deviates\n * from xterm, but agrees with gnome-terminal and konsole, xfce4-terminal. See\n * crbug.com/232390 for details.\n *\n * @param {number} opt_count The number of characters to erase.\n */\nhterm.Terminal.prototype.eraseToRight = function(opt_count) {\n if (this.screen_.cursorPosition.overflow)\n return;\n\n var maxCount = this.screenSize.width - this.screen_.cursorPosition.column;\n var count = opt_count ? Math.min(opt_count, maxCount) : maxCount;\n\n if (this.screen_.textAttributes.background ===\n this.screen_.textAttributes.DEFAULT_COLOR) {\n var cursorRow = this.screen_.rowsArray[this.screen_.cursorPosition.row];\n if (hterm.TextAttributes.nodeWidth(cursorRow) <=\n this.screen_.cursorPosition.column + count) {\n this.screen_.deleteChars(count);\n this.clearCursorOverflow();\n return;\n }\n }\n\n var cursor = this.saveCursor();\n this.screen_.overwriteString(lib.f.getWhitespace(count));\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Erase the current line.\n *\n * The cursor position is unchanged.\n */\nhterm.Terminal.prototype.eraseLine = function() {\n var cursor = this.saveCursor();\n this.screen_.clearCursorRow();\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Erase all characters from the start of the screen to the current cursor\n * position, regardless of scroll region.\n *\n * The cursor position is unchanged.\n */\nhterm.Terminal.prototype.eraseAbove = function() {\n var cursor = this.saveCursor();\n\n this.eraseToLeft();\n\n for (var i = 0; i < cursor.row; i++) {\n this.setAbsoluteCursorPosition(i, 0);\n this.screen_.clearCursorRow();\n }\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Erase all characters from the current cursor position to the end of the\n * screen, regardless of scroll region.\n *\n * The cursor position is unchanged.\n */\nhterm.Terminal.prototype.eraseBelow = function() {\n var cursor = this.saveCursor();\n\n this.eraseToRight();\n\n var bottom = this.screenSize.height - 1;\n for (var i = cursor.row + 1; i <= bottom; i++) {\n this.setAbsoluteCursorPosition(i, 0);\n this.screen_.clearCursorRow();\n }\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Fill the terminal with a given character.\n *\n * This methods does not respect the VT scroll region.\n *\n * @param {string} ch The character to use for the fill.\n */\nhterm.Terminal.prototype.fill = function(ch) {\n var cursor = this.saveCursor();\n\n this.setAbsoluteCursorPosition(0, 0);\n for (var row = 0; row < this.screenSize.height; row++) {\n for (var col = 0; col < this.screenSize.width; col++) {\n this.setAbsoluteCursorPosition(row, col);\n this.screen_.overwriteString(ch);\n }\n }\n\n this.restoreCursor(cursor);\n};\n\n/**\n * Erase the entire display and leave the cursor at (0, 0).\n *\n * This does not respect the scroll region.\n *\n * @param {hterm.Screen} opt_screen Optional screen to operate on. Defaults\n * to the current screen.\n */\nhterm.Terminal.prototype.clearHome = function(opt_screen) {\n var screen = opt_screen || this.screen_;\n var bottom = screen.getHeight();\n\n if (bottom == 0) {\n // Empty screen, nothing to do.\n return;\n }\n\n for (var i = 0; i < bottom; i++) {\n screen.setCursorPosition(i, 0);\n screen.clearCursorRow();\n }\n\n screen.setCursorPosition(0, 0);\n};\n\n/**\n * Erase the entire display without changing the cursor position.\n *\n * The cursor position is unchanged. This does not respect the scroll\n * region.\n *\n * @param {hterm.Screen} opt_screen Optional screen to operate on. Defaults\n * to the current screen.\n */\nhterm.Terminal.prototype.clear = function(opt_screen) {\n var screen = opt_screen || this.screen_;\n var cursor = screen.cursorPosition.clone();\n this.clearHome(screen);\n screen.setCursorPosition(cursor.row, cursor.column);\n};\n\n/**\n * VT command to insert lines at the current cursor row.\n *\n * This respects the current scroll region. Rows pushed off the bottom are\n * lost (they won't show up in the scrollback buffer).\n *\n * @param {integer} count The number of lines to insert.\n */\nhterm.Terminal.prototype.insertLines = function(count) {\n var cursorRow = this.screen_.cursorPosition.row;\n\n var bottom = this.getVTScrollBottom();\n count = Math.min(count, bottom - cursorRow);\n\n // The moveCount is the number of rows we need to relocate to make room for\n // the new row(s). The count is the distance to move them.\n var moveCount = bottom - cursorRow - count + 1;\n if (moveCount)\n this.moveRows_(cursorRow, moveCount, cursorRow + count);\n\n for (var i = count - 1; i >= 0; i--) {\n this.setAbsoluteCursorPosition(cursorRow + i, 0);\n this.screen_.clearCursorRow();\n }\n};\n\n/**\n * VT command to delete lines at the current cursor row.\n *\n * New rows are added to the bottom of scroll region to take their place. New\n * rows are strictly there to take up space and have no content or style.\n *\n * @param {number} count The number of lines to delete.\n */\nhterm.Terminal.prototype.deleteLines = function(count) {\n var cursor = this.saveCursor();\n\n var top = cursor.row;\n var bottom = this.getVTScrollBottom();\n\n var maxCount = bottom - top + 1;\n count = Math.min(count, maxCount);\n\n var moveStart = bottom - count + 1;\n if (count != maxCount)\n this.moveRows_(top, count, moveStart);\n\n for (var i = 0; i < count; i++) {\n this.setAbsoluteCursorPosition(moveStart + i, 0);\n this.screen_.clearCursorRow();\n }\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Inserts the given number of spaces at the current cursor position.\n *\n * The cursor position is not changed.\n *\n * @param {number} count The number of spaces to insert.\n */\nhterm.Terminal.prototype.insertSpace = function(count) {\n var cursor = this.saveCursor();\n\n var ws = lib.f.getWhitespace(count || 1);\n this.screen_.insertString(ws);\n this.screen_.maybeClipCurrentRow();\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Forward-delete the specified number of characters starting at the cursor\n * position.\n *\n * @param {integer} count The number of characters to delete.\n */\nhterm.Terminal.prototype.deleteChars = function(count) {\n var deleted = this.screen_.deleteChars(count);\n if (deleted && !this.screen_.textAttributes.isDefault()) {\n var cursor = this.saveCursor();\n this.setCursorColumn(this.screenSize.width - deleted);\n this.screen_.insertString(lib.f.getWhitespace(deleted));\n this.restoreCursor(cursor);\n }\n\n this.clearCursorOverflow();\n};\n\n/**\n * Shift rows in the scroll region upwards by a given number of lines.\n *\n * New rows are inserted at the bottom of the scroll region to fill the\n * vacated rows. The new rows not filled out with the current text attributes.\n *\n * This function does not affect the scrollback rows at all. Rows shifted\n * off the top are lost.\n *\n * The cursor position is not altered.\n *\n * @param {integer} count The number of rows to scroll.\n */\nhterm.Terminal.prototype.vtScrollUp = function(count) {\n var cursor = this.saveCursor();\n\n this.setAbsoluteCursorRow(this.getVTScrollTop());\n this.deleteLines(count);\n\n this.restoreCursor(cursor);\n};\n\n/**\n * Shift rows below the cursor down by a given number of lines.\n *\n * This function respects the current scroll region.\n *\n * New rows are inserted at the top of the scroll region to fill the\n * vacated rows. The new rows not filled out with the current text attributes.\n *\n * This function does not affect the scrollback rows at all. Rows shifted\n * off the bottom are lost.\n *\n * @param {integer} count The number of rows to scroll.\n */\nhterm.Terminal.prototype.vtScrollDown = function(opt_count) {\n var cursor = this.saveCursor();\n\n this.setAbsoluteCursorPosition(this.getVTScrollTop(), 0);\n this.insertLines(opt_count);\n\n this.restoreCursor(cursor);\n};\n\n\n/**\n * Set the cursor position.\n *\n * The cursor row is relative to the scroll region if the terminal has\n * 'origin mode' enabled, or relative to the addressable screen otherwise.\n *\n * @param {integer} row The new zero-based cursor row.\n * @param {integer} row The new zero-based cursor column.\n */\nhterm.Terminal.prototype.setCursorPosition = function(row, column) {\n if (this.options_.originMode) {\n this.setRelativeCursorPosition(row, column);\n } else {\n this.setAbsoluteCursorPosition(row, column);\n }\n};\n\n/**\n * Move the cursor relative to its current position.\n *\n * @param {number} row\n * @param {number} column\n */\nhterm.Terminal.prototype.setRelativeCursorPosition = function(row, column) {\n var scrollTop = this.getVTScrollTop();\n row = lib.f.clamp(row + scrollTop, scrollTop, this.getVTScrollBottom());\n column = lib.f.clamp(column, 0, this.screenSize.width - 1);\n this.screen_.setCursorPosition(row, column);\n};\n\n/**\n * Move the cursor to the specified position.\n *\n * @param {number} row\n * @param {number} column\n */\nhterm.Terminal.prototype.setAbsoluteCursorPosition = function(row, column) {\n row = lib.f.clamp(row, 0, this.screenSize.height - 1);\n column = lib.f.clamp(column, 0, this.screenSize.width - 1);\n this.screen_.setCursorPosition(row, column);\n};\n\n/**\n * Set the cursor column.\n *\n * @param {integer} column The new zero-based cursor column.\n */\nhterm.Terminal.prototype.setCursorColumn = function(column) {\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row, column);\n};\n\n/**\n * Return the cursor column.\n *\n * @return {integer} The zero-based cursor column.\n */\nhterm.Terminal.prototype.getCursorColumn = function() {\n return this.screen_.cursorPosition.column;\n};\n\n/**\n * Set the cursor row.\n *\n * The cursor row is relative to the scroll region if the terminal has\n * 'origin mode' enabled, or relative to the addressable screen otherwise.\n *\n * @param {integer} row The new cursor row.\n */\nhterm.Terminal.prototype.setAbsoluteCursorRow = function(row) {\n this.setAbsoluteCursorPosition(row, this.screen_.cursorPosition.column);\n};\n\n/**\n * Return the cursor row.\n *\n * @return {integer} The zero-based cursor row.\n */\nhterm.Terminal.prototype.getCursorRow = function() {\n return this.screen_.cursorPosition.row;\n};\n\n/**\n * Request that the ScrollPort redraw itself soon.\n *\n * The redraw will happen asynchronously, soon after the call stack winds down.\n * Multiple calls will be coalesced into a single redraw.\n */\nhterm.Terminal.prototype.scheduleRedraw_ = function() {\n if (this.timeouts_.redraw)\n return;\n\n var self = this;\n this.timeouts_.redraw = setTimeout(function() {\n delete self.timeouts_.redraw;\n self.scrollPort_.redraw_();\n }, 0);\n};\n\n/**\n * Request that the ScrollPort be scrolled to the bottom.\n *\n * The scroll will happen asynchronously, soon after the call stack winds down.\n * Multiple calls will be coalesced into a single scroll.\n *\n * This affects the scrollbar position of the ScrollPort, and has nothing to\n * do with the VT scroll commands.\n */\nhterm.Terminal.prototype.scheduleScrollDown_ = function() {\n if (this.timeouts_.scrollDown)\n return;\n\n var self = this;\n this.timeouts_.scrollDown = setTimeout(function() {\n delete self.timeouts_.scrollDown;\n self.scrollPort_.scrollRowToBottom(self.getRowCount());\n }, 10);\n};\n\n/**\n * Move the cursor up a specified number of rows.\n *\n * @param {integer} count The number of rows to move the cursor.\n */\nhterm.Terminal.prototype.cursorUp = function(count) {\n return this.cursorDown(-(count || 1));\n};\n\n/**\n * Move the cursor down a specified number of rows.\n *\n * @param {integer} count The number of rows to move the cursor.\n */\nhterm.Terminal.prototype.cursorDown = function(count) {\n count = count || 1;\n var minHeight = (this.options_.originMode ? this.getVTScrollTop() : 0);\n var maxHeight = (this.options_.originMode ? this.getVTScrollBottom() :\n this.screenSize.height - 1);\n\n var row = lib.f.clamp(this.screen_.cursorPosition.row + count,\n minHeight, maxHeight);\n this.setAbsoluteCursorRow(row);\n};\n\n/**\n * Move the cursor left a specified number of columns.\n *\n * If reverse wraparound mode is enabled and the previous row wrapped into\n * the current row then we back up through the wraparound as well.\n *\n * @param {integer} count The number of columns to move the cursor.\n */\nhterm.Terminal.prototype.cursorLeft = function(count) {\n count = count || 1;\n\n if (count < 1)\n return;\n\n var currentColumn = this.screen_.cursorPosition.column;\n if (this.options_.reverseWraparound) {\n if (this.screen_.cursorPosition.overflow) {\n // If this cursor is in the right margin, consume one count to get it\n // back to the last column. This only applies when we're in reverse\n // wraparound mode.\n count--;\n this.clearCursorOverflow();\n\n if (!count)\n return;\n }\n\n var newRow = this.screen_.cursorPosition.row;\n var newColumn = currentColumn - count;\n if (newColumn < 0) {\n newRow = newRow - Math.floor(count / this.screenSize.width) - 1;\n if (newRow < 0) {\n // xterm also wraps from row 0 to the last row.\n newRow = this.screenSize.height + newRow % this.screenSize.height;\n }\n newColumn = this.screenSize.width + newColumn % this.screenSize.width;\n }\n\n this.setCursorPosition(Math.max(newRow, 0), newColumn);\n\n } else {\n var newColumn = Math.max(currentColumn - count, 0);\n this.setCursorColumn(newColumn);\n }\n};\n\n/**\n * Move the cursor right a specified number of columns.\n *\n * @param {integer} count The number of columns to move the cursor.\n */\nhterm.Terminal.prototype.cursorRight = function(count) {\n count = count || 1;\n\n if (count < 1)\n return;\n\n var column = lib.f.clamp(this.screen_.cursorPosition.column + count,\n 0, this.screenSize.width - 1);\n this.setCursorColumn(column);\n};\n\n/**\n * Reverse the foreground and background colors of the terminal.\n *\n * This only affects text that was drawn with no attributes.\n *\n * TODO(rginda): Test xterm to see if reverse is respected for text that has\n * been drawn with attributes that happen to coincide with the default\n * 'no-attribute' colors. My guess is probably not.\n *\n * @param {boolean} state The state to set.\n */\nhterm.Terminal.prototype.setReverseVideo = function(state) {\n this.options_.reverseVideo = state;\n if (state) {\n this.scrollPort_.setForegroundColor(this.prefs_.get('background-color'));\n this.scrollPort_.setBackgroundColor(this.prefs_.get('foreground-color'));\n } else {\n this.scrollPort_.setForegroundColor(this.prefs_.get('foreground-color'));\n this.scrollPort_.setBackgroundColor(this.prefs_.get('background-color'));\n }\n};\n\n/**\n * Ring the terminal bell.\n *\n * This will not play the bell audio more than once per second.\n */\nhterm.Terminal.prototype.ringBell = function() {\n this.cursorNode_.style.backgroundColor =\n this.scrollPort_.getForegroundColor();\n\n var self = this;\n setTimeout(function() {\n self.cursorNode_.style.backgroundColor = self.prefs_.get('cursor-color');\n }, 200);\n\n // bellSquelchTimeout_ affects both audio and notification bells.\n if (this.bellSquelchTimeout_)\n return;\n\n if (this.bellAudio_.getAttribute('src')) {\n this.bellAudio_.play();\n this.bellSequelchTimeout_ = setTimeout(function() {\n delete this.bellSquelchTimeout_;\n }.bind(this), 500);\n } else {\n delete this.bellSquelchTimeout_;\n }\n\n if (this.desktopNotificationBell_ && !this.document_.hasFocus()) {\n var n = hterm.notify();\n this.bellNotificationList_.push(n);\n // TODO: Should we try to raise the window here?\n n.onclick = function() { self.closeBellNotifications_(); };\n }\n};\n\n/**\n * Set the origin mode bit.\n *\n * If origin mode is on, certain VT cursor and scrolling commands measure their\n * row parameter relative to the VT scroll region. Otherwise, row 0 corresponds\n * to the top of the addressable screen.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set origin mode, false to unset.\n */\nhterm.Terminal.prototype.setOriginMode = function(state) {\n this.options_.originMode = state;\n this.setCursorPosition(0, 0);\n};\n\n/**\n * Set the insert mode bit.\n *\n * If insert mode is on, existing text beyond the cursor position will be\n * shifted right to make room for new text. Otherwise, new text overwrites\n * any existing text.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set insert mode, false to unset.\n */\nhterm.Terminal.prototype.setInsertMode = function(state) {\n this.options_.insertMode = state;\n};\n\n/**\n * Set the auto carriage return bit.\n *\n * If auto carriage return is on then a formfeed character is interpreted\n * as a newline, otherwise it's the same as a linefeed. The difference boils\n * down to whether or not the cursor column is reset.\n *\n * @param {boolean} state The state to set.\n */\nhterm.Terminal.prototype.setAutoCarriageReturn = function(state) {\n this.options_.autoCarriageReturn = state;\n};\n\n/**\n * Set the wraparound mode bit.\n *\n * If wraparound mode is on, certain VT commands will allow the cursor to wrap\n * to the start of the following row. Otherwise, the cursor is clamped to the\n * end of the screen and attempts to write past it are ignored.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set wraparound mode, false to unset.\n */\nhterm.Terminal.prototype.setWraparound = function(state) {\n this.options_.wraparound = state;\n};\n\n/**\n * Set the reverse-wraparound mode bit.\n *\n * If wraparound mode is off, certain VT commands will allow the cursor to wrap\n * to the end of the previous row. Otherwise, the cursor is clamped to column\n * 0.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set reverse-wraparound mode, false to unset.\n */\nhterm.Terminal.prototype.setReverseWraparound = function(state) {\n this.options_.reverseWraparound = state;\n};\n\n/**\n * Selects between the primary and alternate screens.\n *\n * If alternate mode is on, the alternate screen is active. Otherwise the\n * primary screen is active.\n *\n * Swapping screens has no effect on the scrollback buffer.\n *\n * Each screen maintains its own cursor position.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set alternate mode, false to unset.\n */\nhterm.Terminal.prototype.setAlternateMode = function(state) {\n var cursor = this.saveCursor();\n this.screen_ = state ? this.alternateScreen_ : this.primaryScreen_;\n\n if (this.screen_.rowsArray.length &&\n this.screen_.rowsArray[0].rowIndex != this.scrollbackRows_.length) {\n // If the screen changed sizes while we were away, our rowIndexes may\n // be incorrect.\n var offset = this.scrollbackRows_.length;\n var ary = this.screen_.rowsArray;\n for (var i = 0; i < ary.length; i++) {\n ary[i].rowIndex = offset + i;\n }\n }\n\n this.realizeWidth_(this.screenSize.width);\n this.realizeHeight_(this.screenSize.height);\n this.scrollPort_.syncScrollHeight();\n this.scrollPort_.invalidate();\n\n this.restoreCursor(cursor);\n this.scrollPort_.resize();\n};\n\n/**\n * Set the cursor-blink mode bit.\n *\n * If cursor-blink is on, the cursor will blink when it is visible. Otherwise\n * a visible cursor does not blink.\n *\n * You should make sure to turn blinking off if you're going to dispose of a\n * terminal, otherwise you'll leak a timeout.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set cursor-blink mode, false to unset.\n */\nhterm.Terminal.prototype.setCursorBlink = function(state) {\n this.options_.cursorBlink = state;\n\n if (!state && this.timeouts_.cursorBlink) {\n clearTimeout(this.timeouts_.cursorBlink);\n delete this.timeouts_.cursorBlink;\n }\n\n if (this.options_.cursorVisible)\n this.setCursorVisible(true);\n};\n\n/**\n * Set the cursor-visible mode bit.\n *\n * If cursor-visible is on, the cursor will be visible. Otherwise it will not.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set cursor-visible mode, false to unset.\n */\nhterm.Terminal.prototype.setCursorVisible = function(state) {\n this.options_.cursorVisible = state;\n\n if (!state) {\n if (this.timeouts_.cursorBlink) {\n clearTimeout(this.timeouts_.cursorBlink);\n delete this.timeouts_.cursorBlink;\n }\n this.cursorNode_.style.opacity = '0';\n return;\n }\n\n this.syncCursorPosition_();\n\n this.cursorNode_.style.opacity = '1';\n\n if (this.options_.cursorBlink) {\n if (this.timeouts_.cursorBlink)\n return;\n\n this.onCursorBlink_();\n } else {\n if (this.timeouts_.cursorBlink) {\n clearTimeout(this.timeouts_.cursorBlink);\n delete this.timeouts_.cursorBlink;\n }\n }\n};\n\n/**\n * Synchronizes the visible cursor and document selection with the current\n * cursor coordinates.\n */\nhterm.Terminal.prototype.syncCursorPosition_ = function() {\n var topRowIndex = this.scrollPort_.getTopRowIndex();\n var bottomRowIndex = this.scrollPort_.getBottomRowIndex(topRowIndex);\n var cursorRowIndex = this.scrollbackRows_.length +\n this.screen_.cursorPosition.row;\n\n if (cursorRowIndex > bottomRowIndex) {\n // Cursor is scrolled off screen, move it outside of the visible area.\n this.setCssVar('cursor-offset-row', '-1');\n return;\n }\n\n if (this.options_.cursorVisible &&\n this.cursorNode_.style.display == 'none') {\n // Re-display the terminal cursor if it was hidden by the mouse cursor.\n this.cursorNode_.style.display = '';\n }\n\n // Position the cursor using CSS variable math. If we do the math in JS,\n // the float math will end up being more precise than the CSS which will\n // cause the cursor tracking to be off.\n this.setCssVar(\n 'cursor-offset-row',\n `${cursorRowIndex - topRowIndex} + ` +\n `${this.scrollPort_.visibleRowTopMargin}px`);\n this.setCssVar('cursor-offset-col', this.screen_.cursorPosition.column);\n\n this.cursorNode_.setAttribute('title',\n '(' + this.screen_.cursorPosition.column +\n ', ' + this.screen_.cursorPosition.row +\n ')');\n\n // Update the caret for a11y purposes.\n var selection = this.document_.getSelection();\n if (selection && selection.isCollapsed)\n this.screen_.syncSelectionCaret(selection);\n};\n\n/**\n * Adjusts the style of this.cursorNode_ according to the current cursor shape\n * and character cell dimensions.\n */\nhterm.Terminal.prototype.restyleCursor_ = function() {\n var shape = this.cursorShape_;\n\n if (this.cursorNode_.getAttribute('focus') == 'false') {\n // Always show a block cursor when unfocused.\n shape = hterm.Terminal.cursorShape.BLOCK;\n }\n\n var style = this.cursorNode_.style;\n\n switch (shape) {\n case hterm.Terminal.cursorShape.BEAM:\n style.height = 'var(--hterm-charsize-height)';\n style.backgroundColor = 'transparent';\n style.borderBottomStyle = null;\n style.borderLeftStyle = 'solid';\n break;\n\n case hterm.Terminal.cursorShape.UNDERLINE:\n style.height = this.scrollPort_.characterSize.baseline + 'px';\n style.backgroundColor = 'transparent';\n style.borderBottomStyle = 'solid';\n // correct the size to put it exactly at the baseline\n style.borderLeftStyle = null;\n break;\n\n default:\n style.height = 'var(--hterm-charsize-height)';\n style.backgroundColor = this.cursorColor_;\n style.borderBottomStyle = null;\n style.borderLeftStyle = null;\n break;\n }\n};\n\n/**\n * Synchronizes the visible cursor with the current cursor coordinates.\n *\n * The sync will happen asynchronously, soon after the call stack winds down.\n * Multiple calls will be coalesced into a single sync.\n */\nhterm.Terminal.prototype.scheduleSyncCursorPosition_ = function() {\n if (this.timeouts_.syncCursor)\n return;\n\n var self = this;\n this.timeouts_.syncCursor = setTimeout(function() {\n self.syncCursorPosition_();\n delete self.timeouts_.syncCursor;\n }, 0);\n};\n\n/**\n * Show or hide the zoom warning.\n *\n * The zoom warning is a message warning the user that their browser zoom must\n * be set to 100% in order for hterm to function properly.\n *\n * @param {boolean} state True to show the message, false to hide it.\n */\nhterm.Terminal.prototype.showZoomWarning_ = function(state) {\n if (!this.zoomWarningNode_) {\n if (!state)\n return;\n\n this.zoomWarningNode_ = this.document_.createElement('div');\n this.zoomWarningNode_.id = 'hterm:zoom-warning';\n this.zoomWarningNode_.style.cssText = (\n 'color: black;' +\n 'background-color: #ff2222;' +\n 'font-size: large;' +\n 'border-radius: 8px;' +\n 'opacity: 0.75;' +\n 'padding: 0.2em 0.5em 0.2em 0.5em;' +\n 'top: 0.5em;' +\n 'right: 1.2em;' +\n 'position: absolute;' +\n '-webkit-text-size-adjust: none;' +\n '-webkit-user-select: none;' +\n '-moz-text-size-adjust: none;' +\n '-moz-user-select: none;');\n\n this.zoomWarningNode_.addEventListener('click', function(e) {\n this.parentNode.removeChild(this);\n });\n }\n\n this.zoomWarningNode_.textContent = lib.MessageManager.replaceReferences(\n hterm.zoomWarningMessage,\n [parseInt(this.scrollPort_.characterSize.zoomFactor * 100)]);\n\n this.zoomWarningNode_.style.fontFamily = this.prefs_.get('font-family');\n\n if (state) {\n if (!this.zoomWarningNode_.parentNode)\n this.div_.parentNode.appendChild(this.zoomWarningNode_);\n } else if (this.zoomWarningNode_.parentNode) {\n this.zoomWarningNode_.parentNode.removeChild(this.zoomWarningNode_);\n }\n};\n\n/**\n * Show the terminal overlay for a given amount of time.\n *\n * The terminal overlay appears in inverse video in a large font, centered\n * over the terminal. You should probably keep the overlay message brief,\n * since it's in a large font and you probably aren't going to check the size\n * of the terminal first.\n *\n * @param {string} msg The text (not HTML) message to display in the overlay.\n * @param {number} opt_timeout The amount of time to wait before fading out\n * the overlay. Defaults to 1.5 seconds. Pass null to have the overlay\n * stay up forever (or until the next overlay).\n */\nhterm.Terminal.prototype.showOverlay = function(msg, opt_timeout) {\n if (!this.overlayNode_) {\n if (!this.div_)\n return;\n\n this.overlayNode_ = this.document_.createElement('div');\n this.overlayNode_.style.cssText = (\n 'border-radius: 15px;' +\n 'font-size: xx-large;' +\n 'opacity: 0.75;' +\n 'padding: 0.2em 0.5em 0.2em 0.5em;' +\n 'position: absolute;' +\n '-webkit-user-select: none;' +\n '-webkit-transition: opacity 180ms ease-in;' +\n '-moz-user-select: none;' +\n '-moz-transition: opacity 180ms ease-in;');\n\n this.overlayNode_.addEventListener('mousedown', function(e) {\n e.preventDefault();\n e.stopPropagation();\n }, true);\n }\n\n this.overlayNode_.style.color = this.prefs_.get('background-color');\n this.overlayNode_.style.backgroundColor = this.prefs_.get('foreground-color');\n this.overlayNode_.style.fontFamily = this.prefs_.get('font-family');\n\n this.overlayNode_.textContent = msg;\n this.overlayNode_.style.opacity = '0.75';\n\n if (!this.overlayNode_.parentNode)\n this.div_.appendChild(this.overlayNode_);\n\n var divSize = hterm.getClientSize(this.div_);\n var overlaySize = hterm.getClientSize(this.overlayNode_);\n\n this.overlayNode_.style.top =\n (divSize.height - overlaySize.height) / 2 + 'px';\n this.overlayNode_.style.left = (divSize.width - overlaySize.width -\n this.scrollPort_.currentScrollbarWidthPx) / 2 + 'px';\n\n var self = this;\n\n if (this.overlayTimeout_)\n clearTimeout(this.overlayTimeout_);\n\n if (opt_timeout === null)\n return;\n\n this.overlayTimeout_ = setTimeout(function() {\n self.overlayNode_.style.opacity = '0';\n self.overlayTimeout_ = setTimeout(function() {\n if (self.overlayNode_.parentNode)\n self.overlayNode_.parentNode.removeChild(self.overlayNode_);\n self.overlayTimeout_ = null;\n self.overlayNode_.style.opacity = '0.75';\n }, 200);\n }, opt_timeout || 1500);\n};\n\n/**\n * Paste from the system clipboard to the terminal.\n */\nhterm.Terminal.prototype.paste = function() {\n return hterm.pasteFromClipboard(this.document_);\n};\n\n/**\n * Copy a string to the system clipboard.\n *\n * Note: If there is a selected range in the terminal, it'll be cleared.\n *\n * @param {string} str The string to copy.\n */\nhterm.Terminal.prototype.copyStringToClipboard = function(str) {\n if (this.prefs_.get('enable-clipboard-notice'))\n setTimeout(this.showOverlay.bind(this, hterm.notifyCopyMessage, 500), 200);\n\n var copySource = this.document_.createElement('pre');\n copySource.id = 'hterm:copy-to-clipboard-source';\n copySource.textContent = str;\n copySource.style.cssText = (\n '-webkit-user-select: text;' +\n '-moz-user-select: text;' +\n 'position: absolute;' +\n 'top: -99px');\n\n this.document_.body.appendChild(copySource);\n\n var selection = this.document_.getSelection();\n var anchorNode = selection.anchorNode;\n var anchorOffset = selection.anchorOffset;\n var focusNode = selection.focusNode;\n var focusOffset = selection.focusOffset;\n\n selection.selectAllChildren(copySource);\n\n hterm.copySelectionToClipboard(this.document_);\n\n // IE doesn't support selection.extend. This means that the selection\n // won't return on IE.\n if (selection.extend) {\n selection.collapse(anchorNode, anchorOffset);\n selection.extend(focusNode, focusOffset);\n }\n\n copySource.parentNode.removeChild(copySource);\n};\n\n/**\n * Returns the selected text, or null if no text is selected.\n *\n * @return {string|null}\n */\nhterm.Terminal.prototype.getSelectionText = function() {\n var selection = this.scrollPort_.selection;\n selection.sync();\n\n if (selection.isCollapsed)\n return null;\n\n\n // Start offset measures from the beginning of the line.\n var startOffset = selection.startOffset;\n var node = selection.startNode;\n\n if (node.nodeName != 'X-ROW') {\n // If the selection doesn't start on an x-row node, then it must be\n // somewhere inside the x-row. Add any characters from previous siblings\n // into the start offset.\n\n if (node.nodeName == '#text' && node.parentNode.nodeName == 'SPAN') {\n // If node is the text node in a styled span, move up to the span node.\n node = node.parentNode;\n }\n\n while (node.previousSibling) {\n node = node.previousSibling;\n startOffset += hterm.TextAttributes.nodeWidth(node);\n }\n }\n\n // End offset measures from the end of the line.\n var endOffset = (hterm.TextAttributes.nodeWidth(selection.endNode) -\n selection.endOffset);\n node = selection.endNode;\n\n if (node.nodeName != 'X-ROW') {\n // If the selection doesn't end on an x-row node, then it must be\n // somewhere inside the x-row. Add any characters from following siblings\n // into the end offset.\n\n if (node.nodeName == '#text' && node.parentNode.nodeName == 'SPAN') {\n // If node is the text node in a styled span, move up to the span node.\n node = node.parentNode;\n }\n\n while (node.nextSibling) {\n node = node.nextSibling;\n endOffset += hterm.TextAttributes.nodeWidth(node);\n }\n }\n\n var rv = this.getRowsText(selection.startRow.rowIndex,\n selection.endRow.rowIndex + 1);\n return lib.wc.substring(rv, startOffset, lib.wc.strWidth(rv) - endOffset);\n};\n\n/**\n * Copy the current selection to the system clipboard, then clear it after a\n * short delay.\n */\nhterm.Terminal.prototype.copySelectionToClipboard = function() {\n var text = this.getSelectionText();\n if (text != null)\n this.copyStringToClipboard(text);\n};\n\nhterm.Terminal.prototype.overlaySize = function() {\n this.showOverlay(this.screenSize.width + 'x' + this.screenSize.height);\n};\n\n/**\n * Invoked by hterm.Terminal.Keyboard when a VT keystroke is detected.\n *\n * @param {string} string The VT string representing the keystroke, in UTF-16.\n */\nhterm.Terminal.prototype.onVTKeystroke = function(string) {\n if (this.scrollOnKeystroke_)\n this.scrollPort_.scrollRowToBottom(this.getRowCount());\n\n this.io.onVTKeystroke(this.keyboard.encode(string));\n};\n\n/**\n * Launches url in a new tab.\n *\n * @param {string} url URL to launch in a new tab.\n */\nhterm.Terminal.prototype.openUrl = function(url) {\n if (window.chrome && window.chrome.browser) {\n // For Chrome v2 apps, we need to use this API to properly open windows.\n chrome.browser.openTab({'url': url});\n } else {\n var win = window.open(url, '_blank');\n win.focus();\n }\n}\n\n/**\n * Open the selected url.\n */\nhterm.Terminal.prototype.openSelectedUrl_ = function() {\n var str = this.getSelectionText();\n\n // If there is no selection, try and expand wherever they clicked.\n if (str == null) {\n this.screen_.expandSelection(this.document_.getSelection());\n str = this.getSelectionText();\n\n // If clicking in empty space, return.\n if (str == null)\n return;\n }\n\n // Make sure URL is valid before opening.\n if (str.length > 2048 || str.search(/[\\s\\[\\](){}<>\"'\\\\^`]/) >= 0)\n return;\n\n // If the URI isn't anchored, it'll open relative to the extension.\n // We have no way of knowing the correct schema, so assume http.\n if (str.search('^[a-zA-Z][a-zA-Z0-9+.-]*://') < 0) {\n // We have to whitelist a few protocols that lack authorities and thus\n // never use the //. Like mailto.\n switch (str.split(':', 1)[0]) {\n case 'mailto':\n break;\n default:\n str = 'http://' + str;\n break;\n }\n }\n\n this.openUrl(str);\n}\n\n\n/**\n * Add the terminalRow and terminalColumn properties to mouse events and\n * then forward on to onMouse().\n *\n * The terminalRow and terminalColumn properties contain the (row, column)\n * coordinates for the mouse event.\n *\n * @param {Event} e The mouse event to handle.\n */\nhterm.Terminal.prototype.onMouse_ = function(e) {\n if (e.processedByTerminalHandler_) {\n // We register our event handlers on the document, as well as the cursor\n // and the scroll blocker. Mouse events that occur on the cursor or\n // scroll blocker will also appear on the document, but we don't want to\n // process them twice.\n //\n // We can't just prevent bubbling because that has other side effects, so\n // we decorate the event object with this property instead.\n return;\n }\n\n var reportMouseEvents = (!this.defeatMouseReports_ &&\n this.vt.mouseReport != this.vt.MOUSE_REPORT_DISABLED);\n\n e.processedByTerminalHandler_ = true;\n\n // One based row/column stored on the mouse event.\n e.terminalRow = parseInt((e.clientY - this.scrollPort_.visibleRowTopMargin) /\n this.scrollPort_.characterSize.height) + 1;\n e.terminalColumn = parseInt(e.clientX /\n this.scrollPort_.characterSize.width) + 1;\n\n if (e.type == 'mousedown' && e.terminalColumn > this.screenSize.width) {\n // Mousedown in the scrollbar area.\n return;\n }\n\n if (this.options_.cursorVisible && !reportMouseEvents) {\n // If the cursor is visible and we're not sending mouse events to the\n // host app, then we want to hide the terminal cursor when the mouse\n // cursor is over top. This keeps the terminal cursor from interfering\n // with local text selection.\n if (e.terminalRow - 1 == this.screen_.cursorPosition.row &&\n e.terminalColumn - 1 == this.screen_.cursorPosition.column) {\n this.cursorNode_.style.display = 'none';\n } else if (this.cursorNode_.style.display == 'none') {\n this.cursorNode_.style.display = '';\n }\n }\n\n if (e.type == 'mousedown') {\n if (e.altKey || !reportMouseEvents) {\n // If VT mouse reporting is disabled, or has been defeated with\n // alt-mousedown, then the mouse will act on the local selection.\n this.defeatMouseReports_ = true;\n this.setSelectionEnabled(true);\n } else {\n // Otherwise we defer ownership of the mouse to the VT.\n this.defeatMouseReports_ = false;\n this.document_.getSelection().collapseToEnd();\n this.setSelectionEnabled(false);\n e.preventDefault();\n }\n }\n\n if (!reportMouseEvents) {\n if (e.type == 'dblclick' && this.copyOnSelect) {\n this.screen_.expandSelection(this.document_.getSelection());\n this.copySelectionToClipboard(this.document_);\n }\n\n if (e.type == 'click' && !e.shiftKey && (e.ctrlKey || e.metaKey)) {\n // Debounce this event with the dblclick event. If you try to doubleclick\n // a URL to open it, Chrome will fire click then dblclick, but we won't\n // have expanded the selection text at the first click event.\n clearTimeout(this.timeouts_.openUrl);\n this.timeouts_.openUrl = setTimeout(this.openSelectedUrl_.bind(this),\n 500);\n return;\n }\n\n if (e.type == 'mousedown') {\n if ((this.mouseRightClickPaste && e.button == 2 /* right button */) ||\n e.button == this.mousePasteButton) {\n if (!this.paste())\n console.warning('Could not paste manually due to web restrictions');;\n }\n }\n\n if (e.type == 'mouseup' && e.button == 0 && this.copyOnSelect &&\n !this.document_.getSelection().isCollapsed) {\n this.copySelectionToClipboard(this.document_);\n }\n\n if ((e.type == 'mousemove' || e.type == 'mouseup') &&\n this.scrollBlockerNode_.engaged) {\n // Disengage the scroll-blocker after one of these events.\n this.scrollBlockerNode_.engaged = false;\n this.scrollBlockerNode_.style.top = '-99px';\n }\n\n // Emulate arrow key presses via scroll wheel events.\n if (this.scrollWheelArrowKeys_ && !e.shiftKey &&\n this.keyboard.applicationCursor && !this.isPrimaryScreen()) {\n if (e.type == 'wheel') {\n var delta = this.scrollPort_.scrollWheelDelta(e);\n var lines = lib.f.smartFloorDivide(\n Math.abs(delta), this.scrollPort_.characterSize.height);\n\n var data = '\\x1bO' + (delta < 0 ? 'B' : 'A');\n this.io.sendString(data.repeat(lines));\n\n e.preventDefault();\n }\n }\n } else /* if (this.reportMouseEvents) */ {\n if (!this.scrollBlockerNode_.engaged) {\n if (e.type == 'mousedown') {\n // Move the scroll-blocker into place if we want to keep the scrollport\n // from scrolling.\n this.scrollBlockerNode_.engaged = true;\n this.scrollBlockerNode_.style.top = (e.clientY - 5) + 'px';\n this.scrollBlockerNode_.style.left = (e.clientX - 5) + 'px';\n } else if (e.type == 'mousemove') {\n // Oh. This means that drag-scroll was disabled AFTER the mouse down,\n // in which case it's too late to engage the scroll-blocker.\n this.document_.getSelection().collapseToEnd();\n e.preventDefault();\n }\n }\n\n this.onMouse(e);\n }\n\n if (e.type == 'mouseup' && this.document_.getSelection().isCollapsed) {\n // Restore this on mouseup in case it was temporarily defeated with a\n // alt-mousedown. Only do this when the selection is empty so that\n // we don't immediately kill the users selection.\n this.defeatMouseReports_ = false;\n }\n};\n\n/**\n * Clients should override this if they care to know about mouse events.\n *\n * The event parameter will be a normal DOM mouse click event with additional\n * 'terminalRow' and 'terminalColumn' properties.\n *\n * @param {Event} e The mouse event to handle.\n */\nhterm.Terminal.prototype.onMouse = function(e) { };\n\n/**\n * React when focus changes.\n *\n * @param {boolean} focused True if focused, false otherwise.\n */\nhterm.Terminal.prototype.onFocusChange_ = function(focused) {\n this.cursorNode_.setAttribute('focus', focused);\n this.restyleCursor_();\n if (focused === true)\n this.closeBellNotifications_();\n};\n\n/**\n * React when the ScrollPort is scrolled.\n */\nhterm.Terminal.prototype.onScroll_ = function() {\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * React when text is pasted into the scrollPort.\n *\n * @param {Event} e The DOM paste event to handle.\n */\nhterm.Terminal.prototype.onPaste_ = function(e) {\n var data = e.text.replace(/\\n/mg, '\\r');\n data = this.keyboard.encode(data);\n if (this.options_.bracketedPaste)\n data = '\\x1b[200~' + data + '\\x1b[201~';\n\n this.io.sendString(data);\n};\n\n/**\n * React when the user tries to copy from the scrollPort.\n *\n * @param {Event} e The DOM copy event.\n */\nhterm.Terminal.prototype.onCopy_ = function(e) {\n if (!this.useDefaultWindowCopy) {\n e.preventDefault();\n setTimeout(this.copySelectionToClipboard.bind(this), 0);\n }\n};\n\n/**\n * React when the ScrollPort is resized.\n *\n * Note: This function should not directly contain code that alters the internal\n * state of the terminal. That kind of code belongs in realizeWidth or\n * realizeHeight, so that it can be executed synchronously in the case of a\n * programmatic width change.\n */\nhterm.Terminal.prototype.onResize_ = function() {\n var columnCount = Math.floor(this.scrollPort_.getScreenWidth() /\n this.scrollPort_.characterSize.width) || 0;\n var rowCount = lib.f.smartFloorDivide(this.scrollPort_.getScreenHeight(),\n this.scrollPort_.characterSize.height) || 0;\n\n if (columnCount <= 0 || rowCount <= 0) {\n // We avoid these situations since they happen sometimes when the terminal\n // gets removed from the document or during the initial load, and we can't\n // deal with that.\n // This can also happen if called before the scrollPort calculates the\n // character size, meaning we dived by 0 above and default to 0 values.\n return;\n }\n\n var isNewSize = (columnCount != this.screenSize.width ||\n rowCount != this.screenSize.height);\n\n // We do this even if the size didn't change, just to be sure everything is\n // in sync.\n this.realizeSize_(columnCount, rowCount);\n this.showZoomWarning_(this.scrollPort_.characterSize.zoomFactor != 1);\n\n if (isNewSize)\n this.overlaySize();\n\n this.restyleCursor_();\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Service the cursor blink timeout.\n */\nhterm.Terminal.prototype.onCursorBlink_ = function() {\n if (!this.options_.cursorBlink) {\n delete this.timeouts_.cursorBlink;\n return;\n }\n\n if (this.cursorNode_.getAttribute('focus') == 'false' ||\n this.cursorNode_.style.opacity == '0') {\n this.cursorNode_.style.opacity = '1';\n this.timeouts_.cursorBlink = setTimeout(this.myOnCursorBlink_,\n this.cursorBlinkCycle_[0]);\n } else {\n this.cursorNode_.style.opacity = '0';\n this.timeouts_.cursorBlink = setTimeout(this.myOnCursorBlink_,\n this.cursorBlinkCycle_[1]);\n }\n};\n\n/**\n * Set the scrollbar-visible mode bit.\n *\n * If scrollbar-visible is on, the vertical scrollbar will be visible.\n * Otherwise it will not.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set scrollbar-visible mode, false to unset.\n */\nhterm.Terminal.prototype.setScrollbarVisible = function(state) {\n this.scrollPort_.setScrollbarVisible(state);\n};\n\n/**\n * Set the scroll wheel move multiplier. This will affect how fast the page\n * scrolls on wheel events.\n *\n * Defaults to 1.\n *\n * @param {number} multiplier The multiplier to set.\n */\nhterm.Terminal.prototype.setScrollWheelMoveMultipler = function(multiplier) {\n this.scrollPort_.setScrollWheelMoveMultipler(multiplier);\n};\n\n/**\n * Close all web notifications created by terminal bells.\n */\nhterm.Terminal.prototype.closeBellNotifications_ = function() {\n this.bellNotificationList_.forEach(function(n) {\n n.close();\n });\n this.bellNotificationList_.length = 0;\n};\n// SOURCE FILE: hterm/js/hterm_terminal_io.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.encodeUTF8');\n\n/**\n * Input/Output interface used by commands to communicate with the terminal.\n *\n * Commands like `nassh` and `crosh` receive an instance of this class as\n * part of their argv object. This allows them to write to and read from the\n * terminal without exposing them to an entire hterm.Terminal instance.\n *\n * The active command must override the onVTKeystroke() and sendString() methods\n * of this class in order to receive keystrokes and send output to the correct\n * destination.\n *\n * Isolating commands from the terminal provides the following benefits:\n * - Provides a mechanism to save and restore onVTKeystroke and sendString\n * handlers when invoking subcommands (see the push() and pop() methods).\n * - The isolation makes it easier to make changes in Terminal and supporting\n * classes without affecting commands.\n * - In The Future commands may run in web workers where they would only be able\n * to talk to a Terminal instance through an IPC mechanism.\n *\n * @param {hterm.Terminal}\n */\nhterm.Terminal.IO = function(terminal) {\n this.terminal_ = terminal;\n\n // The IO object to restore on IO.pop().\n this.previousIO_ = null;\n};\n\n/**\n * Show the terminal overlay for a given amount of time.\n *\n * The terminal overlay appears in inverse video in a large font, centered\n * over the terminal. You should probably keep the overlay message brief,\n * since it's in a large font and you probably aren't going to check the size\n * of the terminal first.\n *\n * @param {string} msg The text (not HTML) message to display in the overlay.\n * @param {number} opt_timeout The amount of time to wait before fading out\n * the overlay. Defaults to 1.5 seconds. Pass null to have the overlay\n * stay up forever (or until the next overlay).\n */\nhterm.Terminal.IO.prototype.showOverlay = function(message, opt_timeout) {\n this.terminal_.showOverlay(message, opt_timeout);\n};\n\n/**\n * Open an frame in the current terminal window, pointed to the specified\n * url.\n *\n * Eventually we'll probably need size/position/decoration options.\n * The user should also be able to move/resize the frame.\n *\n * @param {string} url The URL to load in the frame.\n * @param {Object} opt_options Optional frame options. Not implemented.\n */\nhterm.Terminal.IO.prototype.createFrame = function(url, opt_options) {\n return new hterm.Frame(this.terminal_, url, opt_options);\n};\n\n/**\n * Change the preference profile for the terminal.\n *\n * @param profileName {string} The name of the preference profile to activate.\n */\nhterm.Terminal.IO.prototype.setTerminalProfile = function(profileName) {\n this.terminal_.setProfile(profileName);\n};\n\n/**\n * Create a new hterm.Terminal.IO instance and make it active on the Terminal\n * object associated with this instance.\n *\n * This is used to pass control of the terminal IO off to a subcommand. The\n * IO.pop() method can be used to restore control when the subcommand completes.\n */\nhterm.Terminal.IO.prototype.push = function() {\n var io = new hterm.Terminal.IO(this.terminal_);\n io.keyboardCaptured_ = this.keyboardCaptured_;\n\n io.columnCount = this.columnCount;\n io.rowCount = this.rowCount;\n\n io.previousIO_ = this.terminal_.io;\n this.terminal_.io = io;\n\n return io;\n};\n\n/**\n * Restore the Terminal's previous IO object.\n */\nhterm.Terminal.IO.prototype.pop = function() {\n this.terminal_.io = this.previousIO_;\n};\n\n/**\n * Called when data needs to be sent to the current command.\n *\n * Clients should override this to receive notification of pending data.\n *\n * @param {string} string The data to send.\n */\nhterm.Terminal.IO.prototype.sendString = function(string) {\n // Override this.\n console.log('Unhandled sendString: ' + string);\n};\n\n/**\n * Called when a terminal keystroke is detected.\n *\n * Clients should override this to receive notification of keystrokes.\n *\n * The keystroke data will be encoded according to the 'send-encoding'\n * preference.\n *\n * @param {string} string The VT key sequence.\n */\nhterm.Terminal.IO.prototype.onVTKeystroke = function(string) {\n // Override this.\n console.log('Unobserverd VT keystroke: ' + JSON.stringify(string));\n};\n\nhterm.Terminal.IO.prototype.onTerminalResize_ = function(width, height) {\n var obj = this;\n while (obj) {\n obj.columnCount = width;\n obj.rowCount = height;\n obj = obj.previousIO_;\n }\n\n this.onTerminalResize(width, height);\n};\n\n/**\n * Called when terminal size is changed.\n *\n * Clients should override this to receive notification of resize.\n *\n * @param {string|integer} terminal width.\n * @param {string|integer} terminal height.\n */\nhterm.Terminal.IO.prototype.onTerminalResize = function(width, height) {\n // Override this.\n};\n\n/**\n * Write a UTF-8 encoded byte string to the terminal.\n *\n * @param {string} string The UTF-8 encoded string to print.\n */\nhterm.Terminal.IO.prototype.writeUTF8 = function(string) {\n if (this.terminal_.io != this)\n throw 'Attempt to print from inactive IO object.';\n\n this.terminal_.interpret(string);\n};\n\n/**\n * Write a UTF-8 encoded byte string to the terminal followed by crlf.\n *\n * @param {string} string The UTF-8 encoded string to print.\n */\nhterm.Terminal.IO.prototype.writelnUTF8 = function(string) {\n if (this.terminal_.io != this)\n throw 'Attempt to print from inactive IO object.';\n\n this.terminal_.interpret(string + '\\r\\n');\n};\n\n/**\n * Write a UTF-16 JavaScript string to the terminal.\n *\n * @param {string} string The string to print.\n */\nhterm.Terminal.IO.prototype.print =\nhterm.Terminal.IO.prototype.writeUTF16 = function(string) {\n this.writeUTF8(lib.encodeUTF8(string));\n};\n\n/**\n * Print a UTF-16 JavaScript string to the terminal followed by a newline.\n *\n * @param {string} string The string to print.\n */\nhterm.Terminal.IO.prototype.println =\nhterm.Terminal.IO.prototype.writelnUTF16 = function(string) {\n this.writelnUTF8(lib.encodeUTF8(string));\n};\n// SOURCE FILE: hterm/js/hterm_text_attributes.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.colors');\n\n/**\n * Constructor for TextAttribute objects.\n *\n * These objects manage a set of text attributes such as foreground/\n * background color, bold, faint, italic, blink, underline, and strikethrough.\n *\n * TextAttribute instances can be used to construct a DOM container implementing\n * the current attributes, or to test an existing DOM container for\n * compatibility with the current attributes.\n *\n * @constructor\n * @param {HTMLDocument} document The parent document to use when creating\n * new DOM containers.\n */\nhterm.TextAttributes = function(document) {\n this.document_ = document;\n // These variables contain the source of the color as either:\n // SRC_DEFAULT (use context default)\n // SRC_RGB (specified in 'rgb( r, g, b)' form)\n // number (representing the index from color palette to use)\n this.foregroundSource = this.SRC_DEFAULT;\n this.backgroundSource = this.SRC_DEFAULT;\n\n // These properties cache the value in the color table, but foregroundSource\n // and backgroundSource contain the canonical values.\n this.foreground = this.DEFAULT_COLOR;\n this.background = this.DEFAULT_COLOR;\n\n this.defaultForeground = 'rgb(255, 255, 255)';\n this.defaultBackground = 'rgb(0, 0, 0)';\n\n this.bold = false;\n this.faint = false;\n this.italic = false;\n this.blink = false;\n this.underline = false;\n this.strikethrough = false;\n this.inverse = false;\n this.invisible = false;\n this.wcNode = false;\n this.asciiNode = true;\n this.tileData = null;\n\n this.colorPalette = null;\n this.resetColorPalette();\n};\n\n/**\n * If false, we ignore the bold attribute.\n *\n * This is used for fonts that have a bold version that is a different size\n * than the normal weight version.\n */\nhterm.TextAttributes.prototype.enableBold = true;\n\n/**\n * If true, use bright colors (if available) for bold text.\n *\n * This setting is independent of the enableBold setting.\n */\nhterm.TextAttributes.prototype.enableBoldAsBright = true;\n\n/**\n * A sentinel constant meaning \"whatever the default color is in this context\".\n */\nhterm.TextAttributes.prototype.DEFAULT_COLOR = lib.f.createEnum('');\n\n/**\n * A constant string used to specify that source color is context default.\n */\nhterm.TextAttributes.prototype.SRC_DEFAULT = 'default';\n\n\n/**\n * A constant string used to specify that the source of a color is a valid\n * rgb( r, g, b) specifier.\n */\nhterm.TextAttributes.prototype.SRC_RGB = 'rgb';\n\n/**\n * The document object which should own the DOM nodes created by this instance.\n *\n * @param {HTMLDocument} document The parent document.\n */\nhterm.TextAttributes.prototype.setDocument = function(document) {\n this.document_ = document;\n};\n\n/**\n * Create a deep copy of this object.\n *\n * @return {hterm.TextAttributes} A deep copy of this object.\n */\nhterm.TextAttributes.prototype.clone = function() {\n var rv = new hterm.TextAttributes(null);\n\n for (var key in this) {\n rv[key] = this[key];\n }\n\n rv.colorPalette = this.colorPalette.concat();\n return rv;\n};\n\n/**\n * Reset the current set of attributes.\n *\n * This does not affect the palette. Use resetColorPalette() for that.\n * It also doesn't affect the tile data, it's not meant to.\n */\nhterm.TextAttributes.prototype.reset = function() {\n this.foregroundSource = this.SRC_DEFAULT;\n this.backgroundSource = this.SRC_DEFAULT;\n this.foreground = this.DEFAULT_COLOR;\n this.background = this.DEFAULT_COLOR;\n this.bold = false;\n this.faint = false;\n this.italic = false;\n this.blink = false;\n this.underline = false;\n this.strikethrough = false;\n this.inverse = false;\n this.invisible = false;\n this.wcNode = false;\n this.asciiNode = true;\n};\n\n/**\n * Reset the color palette to the default state.\n */\nhterm.TextAttributes.prototype.resetColorPalette = function() {\n this.colorPalette = lib.colors.colorPalette.concat();\n this.syncColors();\n};\n\n/**\n * Test if the current attributes describe unstyled text.\n *\n * @return {boolean} True if the current attributes describe unstyled text.\n */\nhterm.TextAttributes.prototype.isDefault = function() {\n return (this.foregroundSource == this.SRC_DEFAULT &&\n this.backgroundSource == this.SRC_DEFAULT &&\n !this.bold &&\n !this.faint &&\n !this.italic &&\n !this.blink &&\n !this.underline &&\n !this.strikethrough &&\n !this.inverse &&\n !this.invisible &&\n !this.wcNode &&\n this.asciiNode &&\n this.tileData == null);\n};\n\n/**\n * Create a DOM container (a span or a text node) with a style to match the\n * current set of attributes.\n *\n * This method will create a plain text node if the text is unstyled, or\n * an HTML span if the text is styled. Due to lack of monospace wide character\n * fonts on certain systems (e.g. Chrome OS), we need to put each wide character\n * in a span of CSS class '.wc-node' which has double column width.\n * Each vt_tiledata tile is also represented by a span with a single\n * character, with CSS classes '.tile' and '.tile_'.\n *\n * @param {string} opt_textContent Optional text content for the new container.\n * @return {HTMLNode} An HTML span or text nodes styled to match the current\n * attributes.\n */\nhterm.TextAttributes.prototype.createContainer = function(opt_textContent) {\n if (this.isDefault())\n return this.document_.createTextNode(opt_textContent);\n\n var span = this.document_.createElement('span');\n var style = span.style;\n var classes = [];\n\n if (this.foreground != this.DEFAULT_COLOR)\n style.color = this.foreground;\n\n if (this.background != this.DEFAULT_COLOR)\n style.backgroundColor = this.background;\n\n if (this.enableBold && this.bold)\n style.fontWeight = 'bold';\n\n if (this.faint)\n span.faint = true;\n\n if (this.italic)\n style.fontStyle = 'italic';\n\n if (this.blink) {\n classes.push('blink-node');\n span.blinkNode = true;\n }\n\n var textDecoration = '';\n if (this.underline) {\n textDecoration += ' underline';\n span.underline = true;\n }\n if (this.strikethrough) {\n textDecoration += ' line-through';\n span.strikethrough = true;\n }\n if (textDecoration) {\n style.textDecoration = textDecoration;\n }\n\n if (this.wcNode) {\n classes.push('wc-node');\n span.wcNode = true;\n span.asciiNode = false;\n }\n\n if (this.tileData != null) {\n classes.push('tile');\n classes.push('tile_' + this.tileData);\n span.tileNode = true;\n }\n\n if (opt_textContent)\n span.textContent = opt_textContent;\n\n if (classes.length)\n span.className = classes.join(' ');\n\n return span;\n};\n\n/**\n * Tests if the provided object (string, span or text node) has the same\n * style as this TextAttributes instance.\n *\n * This indicates that text with these attributes could be inserted directly\n * into the target DOM node.\n *\n * For the purposes of this method, a string is considered a text node.\n *\n * @param {string|HTMLNode} obj The object to test.\n * @return {boolean} True if the provided container has the same style as\n * this attributes instance.\n */\nhterm.TextAttributes.prototype.matchesContainer = function(obj) {\n if (typeof obj == 'string' || obj.nodeType == 3)\n return this.isDefault();\n\n var style = obj.style;\n\n // We don't want to put multiple characters in a wcNode or a tile.\n // See the comments in createContainer.\n return (!(this.wcNode || obj.wcNode) &&\n this.asciiNode == this.asciiNode &&\n !(this.tileData != null || obj.tileNode) &&\n this.foreground == style.color &&\n this.background == style.backgroundColor &&\n (this.enableBold && this.bold) == !!style.fontWeight &&\n this.blink == obj.blinkNode &&\n this.italic == !!style.fontStyle &&\n !!this.underline == !!obj.underline &&\n !!this.strikethrough == !!obj.strikethrough);\n};\n\nhterm.TextAttributes.prototype.setDefaults = function(foreground, background) {\n this.defaultForeground = foreground;\n this.defaultBackground = background;\n\n this.syncColors();\n};\n\n/**\n * Updates foreground and background properties based on current indices and\n * other state.\n *\n * @param {string} terminalForeground The terminal foreground color for use as\n * inverse text background.\n * @param {string} terminalBackground The terminal background color for use as\n * inverse text foreground.\n *\n */\nhterm.TextAttributes.prototype.syncColors = function() {\n function getBrightIndex(i) {\n if (i < 8) {\n // If the color is from the lower half of the ANSI 16, add 8.\n return i + 8;\n }\n\n // If it's not from the 16 color palette, ignore bold requests. This\n // matches the behavior of gnome-terminal.\n return i;\n }\n\n var foregroundSource = this.foregroundSource;\n var backgroundSource = this.backgroundSource;\n var defaultForeground = this.DEFAULT_COLOR;\n var defaultBackground = this.DEFAULT_COLOR;\n\n if (this.inverse) {\n foregroundSource = this.backgroundSource;\n backgroundSource = this.foregroundSource;\n // We can't inherit the container's color anymore.\n defaultForeground = this.defaultBackground;\n defaultBackground = this.defaultForeground;\n }\n\n if (this.enableBoldAsBright && this.bold) {\n if (foregroundSource != this.SRC_DEFAULT &&\n foregroundSource != this.SRC_RGB) {\n foregroundSource = getBrightIndex(foregroundSource);\n }\n }\n\n if (this.invisible) {\n foregroundSource = backgroundSource;\n defaultForeground = this.defaultBackground;\n }\n\n // Set fore/background colors unless already specified in rgb(r, g, b) form.\n if (foregroundSource != this.SRC_RGB) {\n this.foreground = ((foregroundSource == this.SRC_DEFAULT) ?\n defaultForeground : this.colorPalette[foregroundSource]);\n }\n\n if (this.faint && !this.invisible) {\n var colorToMakeFaint = ((this.foreground == this.DEFAULT_COLOR) ?\n this.defaultForeground : this.foreground);\n this.foreground = lib.colors.mix(colorToMakeFaint, 'rgb(0, 0, 0)', 0.3333);\n }\n\n if (backgroundSource != this.SRC_RGB) {\n this.background = ((backgroundSource == this.SRC_DEFAULT) ?\n defaultBackground : this.colorPalette[backgroundSource]);\n }\n};\n\n/**\n * Static method used to test if the provided objects (strings, spans or\n * text nodes) have the same style.\n *\n * For the purposes of this method, a string is considered a text node.\n *\n * @param {string|HTMLNode} obj1 An object to test.\n * @param {string|HTMLNode} obj2 Another object to test.\n * @return {boolean} True if the containers have the same style.\n */\nhterm.TextAttributes.containersMatch = function(obj1, obj2) {\n if (typeof obj1 == 'string')\n return hterm.TextAttributes.containerIsDefault(obj2);\n\n if (obj1.nodeType != obj2.nodeType)\n return false;\n\n if (obj1.nodeType == 3)\n return true;\n\n var style1 = obj1.style;\n var style2 = obj2.style;\n\n return (style1.color == style2.color &&\n style1.backgroundColor == style2.backgroundColor &&\n style1.fontWeight == style2.fontWeight &&\n style1.fontStyle == style2.fontStyle &&\n style1.textDecoration == style2.textDecoration);\n};\n\n/**\n * Static method to test if a given DOM container represents unstyled text.\n *\n * For the purposes of this method, a string is considered a text node.\n *\n * @param {string|HTMLNode} obj1 An object to test.\n * @return {boolean} True if the object is unstyled.\n */\nhterm.TextAttributes.containerIsDefault = function(obj) {\n return typeof obj == 'string' || obj.nodeType == 3;\n};\n\n/**\n * Static method to get the column width of a node's textContent.\n *\n * @param {HTMLElement} node The HTML element to get the width of textContent\n * from.\n * @return {integer} The column width of the node's textContent.\n */\nhterm.TextAttributes.nodeWidth = function(node) {\n if (!node.asciiNode) {\n return lib.wc.strWidth(node.textContent);\n } else {\n return node.textContent.length;\n }\n}\n\n/**\n * Static method to get the substr of a node's textContent. The start index\n * and substr width are computed in column width.\n *\n * @param {HTMLElement} node The HTML element to get the substr of textContent\n * from.\n * @param {integer} start The starting offset in column width.\n * @param {integer} width The width to capture in column width.\n * @return {integer} The extracted substr of the node's textContent.\n */\nhterm.TextAttributes.nodeSubstr = function(node, start, width) {\n if (!node.asciiNode) {\n return lib.wc.substr(node.textContent, start, width);\n } else {\n return node.textContent.substr(start, width);\n }\n}\n\n/**\n * Static method to get the substring based of a node's textContent. The\n * start index of end index are computed in column width.\n *\n * @param {HTMLElement} node The HTML element to get the substr of textContent\n * from.\n * @param {integer} start The starting offset in column width.\n * @param {integer} end The ending offset in column width.\n * @return {integer} The extracted substring of the node's textContent.\n */\nhterm.TextAttributes.nodeSubstring = function(node, start, end) {\n if (!node.asciiNode) {\n return lib.wc.substring(node.textContent, start, end);\n } else {\n return node.textContent.substring(start, end);\n }\n};\n\n/**\n * Static method to split a string into contiguous runs of single-width\n * characters and runs of double-width characters.\n *\n * @param {string} str The string to split.\n * @return {Array} An array of objects that contain substrings of str, where\n * each substring is either a contiguous runs of single-width characters\n * or a double-width character. For objects that contain a double-width\n * character, its wcNode property is set to true. For objects that contain\n * only ASCII content, its asciiNode property is set to true.\n */\nhterm.TextAttributes.splitWidecharString = function(str) {\n var rv = [];\n var base = 0, length = 0;\n var asciiNode = true;\n\n for (var i = 0; i < str.length;) {\n var c = str.codePointAt(i);\n var increment = (c <= 0xffff) ? 1 : 2;\n if (c < 128) {\n length += increment;\n } else if (lib.wc.charWidth(c) <= 1) {\n length += increment;\n asciiNode = false;\n } else {\n if (length) {\n rv.push({\n str: str.substr(base, length),\n asciiNode: asciiNode,\n });\n asciiNode = true;\n }\n rv.push({\n str: str.substr(i, increment),\n wcNode: true,\n asciiNode: false,\n });\n base = i + increment;\n length = 0;\n }\n i += increment;\n }\n\n if (length) {\n rv.push({\n str: str.substr(base, length),\n asciiNode: asciiNode,\n });\n }\n\n return rv;\n};\n// SOURCE FILE: hterm/js/hterm_vt.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.colors', 'lib.f', 'lib.UTF8Decoder',\n 'hterm.VT.CharacterMap');\n\n/**\n * Constructor for the VT escape sequence interpreter.\n *\n * The interpreter operates on a terminal object capable of performing cursor\n * move operations, painting characters, etc.\n *\n * This interpreter is intended to be compatible with xterm, though it\n * ignores some of the more esoteric escape sequences.\n *\n * Control sequences are documented in hterm/doc/ControlSequences.md.\n *\n * @param {hterm.Terminal} terminal Terminal to use with the interpreter.\n */\nhterm.VT = function(terminal) {\n /**\n * The display terminal object associated with this virtual terminal.\n */\n this.terminal = terminal;\n\n terminal.onMouse = this.onTerminalMouse_.bind(this);\n this.mouseReport = this.MOUSE_REPORT_DISABLED;\n\n // Parse state left over from the last parse. You should use the parseState\n // instance passed into your parse routine, rather than reading\n // this.parseState_ directly.\n this.parseState_ = new hterm.VT.ParseState(this.parseUnknown_);\n\n // Any \"leading modifiers\" for the escape sequence, such as '?', ' ', or the\n // other modifiers handled in this.parseCSI_.\n this.leadingModifier_ = '';\n\n // Any \"trailing modifiers\". Same character set as a leading modifier,\n // except these are found after the numeric arguments.\n this.trailingModifier_ = '';\n\n // Whether or not to respect the escape codes for setting terminal width.\n this.allowColumnWidthChanges_ = false;\n\n // The amount of time we're willing to wait for the end of an OSC sequence.\n this.oscTimeLimit_ = 20000;\n\n // Decoder to maintain UTF-8 decode state.\n this.utf8Decoder_ = new lib.UTF8Decoder();\n\n /**\n * Whether to accept the 8-bit control characters.\n *\n * An 8-bit control character is one with the eighth bit set. These\n * didn't work on 7-bit terminals so they all have two byte equivalents.\n * Most hosts still only use the two-byte versions.\n *\n * We ignore 8-bit control codes by default. This is in order to avoid\n * issues with \"accidental\" usage of codes that need to be terminated.\n * The \"accident\" usually involves cat'ing binary data.\n */\n this.enable8BitControl = false;\n\n /**\n * Whether to allow the OSC 52 sequence to write to the system clipboard.\n */\n this.enableClipboardWrite = true;\n\n /**\n * Respect the host's attempt to change the cursor blink status using\n * the DEC Private mode 12.\n */\n this.enableDec12 = false;\n\n /**\n * The expected encoding method for data received from the host.\n */\n this.characterEncoding = 'utf-8';\n\n /**\n * Max length of an unterminated DCS, OSC, PM or APC sequence before we give\n * up and ignore the code.\n *\n * These all end with a String Terminator (ST, '\\x9c', ESC '\\\\') or\n * (BEL, '\\x07') character, hence the \"string sequence\" moniker.\n */\n this.maxStringSequence = 1024;\n\n /**\n * If true, emit warnings when we encounter a control character or escape\n * sequence that we don't recognize or explicitly ignore.\n */\n this.warnUnimplemented = true;\n\n /**\n * The set of available character maps (used by G0...G3 below).\n */\n this.characterMaps = new hterm.VT.CharacterMaps();\n\n /**\n * The default G0...G3 character maps.\n * We default to the US/ASCII map everywhere as that aligns with other\n * terminals, and it makes it harder to accidentally switch to the graphics\n * character map (Ctrl-N). Any program that wants to use the graphics map\n * will usually select it anyways since there's no guarantee what state any\n * of the maps are in at any particular time.\n */\n this.G0 = this.G1 = this.G2 = this.G3 =\n this.characterMaps.getMap('B');\n\n /**\n * The 7-bit visible character set.\n *\n * This is a mapping from inbound data to display glyph. The GL set\n * contains the 94 bytes from 0x21 to 0x7e.\n *\n * The default GL set is 'B', US ASCII.\n */\n this.GL = 'G0';\n\n /**\n * The 8-bit visible character set.\n *\n * This is a mapping from inbound data to display glyph. The GR set\n * contains the 94 bytes from 0xa1 to 0xfe.\n */\n this.GR = 'G0';\n\n /**\n * The current encoding of the terminal.\n *\n * We only support ECMA-35 and UTF-8, so go with a boolean here.\n * The encoding can be locked too.\n */\n this.codingSystemUtf8_ = false;\n this.codingSystemLocked_ = false;\n\n // Construct a regular expression to match the known one-byte control chars.\n // This is used in parseUnknown_ to quickly scan a string for the next\n // control character.\n this.cc1Pattern_ = null;\n this.updateEncodingState_();\n\n // Saved state used in DECSC.\n //\n // This is a place to store a copy VT state, it is *not* the active state.\n this.savedState_ = new hterm.VT.CursorState(this);\n};\n\n/**\n * No mouse events.\n */\nhterm.VT.prototype.MOUSE_REPORT_DISABLED = 0;\n\n/**\n * DECSET mode 1000.\n *\n * Report mouse down/up events only.\n */\nhterm.VT.prototype.MOUSE_REPORT_CLICK = 1;\n\n/**\n * DECSET mode 1002.\n *\n * Report mouse down/up and movement while a button is down.\n */\nhterm.VT.prototype.MOUSE_REPORT_DRAG = 3;\n\n/**\n * ParseState constructor.\n *\n * This object tracks the current state of the parse. It has fields for the\n * current buffer, position in the buffer, and the parse function.\n *\n * @param {function} defaultFunc The default parser function.\n * @param {string} opt_buf Optional string to use as the current buffer.\n */\nhterm.VT.ParseState = function(defaultFunction, opt_buf) {\n this.defaultFunction = defaultFunction;\n this.buf = opt_buf || null;\n this.pos = 0;\n this.func = defaultFunction;\n this.args = [];\n};\n\n/**\n * Reset the parser function, buffer, and position.\n */\nhterm.VT.ParseState.prototype.reset = function(opt_buf) {\n this.resetParseFunction();\n this.resetBuf(opt_buf || '');\n this.resetArguments();\n};\n\n/**\n * Reset the parser function only.\n */\nhterm.VT.ParseState.prototype.resetParseFunction = function() {\n this.func = this.defaultFunction;\n};\n\n/**\n * Reset the buffer and position only.\n *\n * @param {string} buf Optional new value for buf, defaults to null.\n */\nhterm.VT.ParseState.prototype.resetBuf = function(opt_buf) {\n this.buf = (typeof opt_buf == 'string') ? opt_buf : null;\n this.pos = 0;\n};\n\n/**\n * Reset the arguments list only.\n *\n * @param {string} opt_arg_zero Optional initial value for args[0].\n */\nhterm.VT.ParseState.prototype.resetArguments = function(opt_arg_zero) {\n this.args.length = 0;\n if (typeof opt_arg_zero != 'undefined')\n this.args[0] = opt_arg_zero;\n};\n\n/**\n * Get an argument as an integer.\n *\n * @param {number} argnum The argument number to retrieve.\n */\nhterm.VT.ParseState.prototype.iarg = function(argnum, defaultValue) {\n var str = this.args[argnum];\n if (str) {\n var ret = parseInt(str, 10);\n // An argument of zero is treated as the default value.\n if (ret == 0)\n ret = defaultValue;\n return ret;\n }\n return defaultValue;\n};\n\n/**\n * Advance the parse position.\n *\n * @param {integer} count The number of bytes to advance.\n */\nhterm.VT.ParseState.prototype.advance = function(count) {\n this.pos += count;\n};\n\n/**\n * Return the remaining portion of the buffer without affecting the parse\n * position.\n *\n * @return {string} The remaining portion of the buffer.\n */\nhterm.VT.ParseState.prototype.peekRemainingBuf = function() {\n return this.buf.substr(this.pos);\n};\n\n/**\n * Return the next single character in the buffer without affecting the parse\n * position.\n *\n * @return {string} The next character in the buffer.\n */\nhterm.VT.ParseState.prototype.peekChar = function() {\n return this.buf.substr(this.pos, 1);\n};\n\n/**\n * Return the next single character in the buffer and advance the parse\n * position one byte.\n *\n * @return {string} The next character in the buffer.\n */\nhterm.VT.ParseState.prototype.consumeChar = function() {\n return this.buf.substr(this.pos++, 1);\n};\n\n/**\n * Return true if the buffer is empty, or the position is past the end.\n */\nhterm.VT.ParseState.prototype.isComplete = function() {\n return this.buf == null || this.buf.length <= this.pos;\n};\n\nhterm.VT.CursorState = function(vt) {\n this.vt_ = vt;\n this.save();\n};\n\nhterm.VT.CursorState.prototype.save = function() {\n this.cursor = this.vt_.terminal.saveCursor();\n\n this.textAttributes = this.vt_.terminal.getTextAttributes().clone();\n\n this.GL = this.vt_.GL;\n this.GR = this.vt_.GR;\n\n this.G0 = this.vt_.G0;\n this.G1 = this.vt_.G1;\n this.G2 = this.vt_.G2;\n this.G3 = this.vt_.G3;\n};\n\nhterm.VT.CursorState.prototype.restore = function() {\n this.vt_.terminal.restoreCursor(this.cursor);\n\n this.vt_.terminal.setTextAttributes(this.textAttributes.clone());\n\n this.vt_.GL = this.GL;\n this.vt_.GR = this.GR;\n\n this.vt_.G0 = this.G0;\n this.vt_.G1 = this.G1;\n this.vt_.G2 = this.G2;\n this.vt_.G3 = this.G3;\n};\n\nhterm.VT.prototype.reset = function() {\n this.G0 = this.characterMaps.getMap('B');\n this.G1 = this.characterMaps.getMap('0');\n this.G2 = this.characterMaps.getMap('B');\n this.G3 = this.characterMaps.getMap('B');\n\n this.GL = 'G0';\n this.GR = 'G0';\n\n this.savedState_ = new hterm.VT.CursorState(this);\n\n this.mouseReport = this.MOUSE_REPORT_DISABLED;\n};\n\n/**\n * Handle terminal mouse events.\n *\n * See the \"Mouse Tracking\" section of [xterm].\n */\nhterm.VT.prototype.onTerminalMouse_ = function(e) {\n if (this.mouseReport == this.MOUSE_REPORT_DISABLED)\n return;\n\n // Temporary storage for our response.\n var response;\n\n // Modifier key state.\n var mod = 0;\n if (e.shiftKey)\n mod |= 4;\n if (e.metaKey || (this.terminal.keyboard.altIsMeta && e.altKey))\n mod |= 8;\n if (e.ctrlKey)\n mod |= 16;\n\n // TODO(rginda): We should also support mode 1005 and/or 1006 to extend the\n // coordinate space. Though, after poking around just a little, I wasn't\n // able to get vi or emacs to use either of these modes.\n var x = String.fromCharCode(lib.f.clamp(e.terminalColumn + 32, 32, 255));\n var y = String.fromCharCode(lib.f.clamp(e.terminalRow + 32, 32, 255));\n\n switch (e.type) {\n case 'wheel':\n // Mouse wheel is treated as button 1 or 2 plus an additional 64.\n b = (((e.deltaY * -1) > 0) ? 0 : 1) + 96;\n b |= mod;\n response = '\\x1b[M' + String.fromCharCode(b) + x + y;\n\n // Keep the terminal from scrolling.\n e.preventDefault();\n break;\n\n case 'mousedown':\n // Buttons are encoded as button number plus 32.\n var b = Math.min(e.button, 2) + 32;\n\n // And mix in the modifier keys.\n b |= mod;\n\n response = '\\x1b[M' + String.fromCharCode(b) + x + y;\n break;\n\n case 'mouseup':\n // Mouse up has no indication of which button was released.\n response = '\\x1b[M\\x23' + x + y;\n break;\n\n case 'mousemove':\n if (this.mouseReport == this.MOUSE_REPORT_DRAG && e.buttons) {\n // Standard button bits. The XTerm protocol only reports the first\n // button press (e.g. if left & right are pressed, right is ignored),\n // and it only supports the first three buttons. If none of them are\n // pressed, then XTerm flags it as a release. We'll do the same.\n b = 32;\n\n // Priority here matches XTerm: left, middle, right.\n if (e.buttons & 0x1) {\n // Report left button.\n b += 0;\n } else if (e.buttons & 0x4) {\n // Report middle button.\n b += 1;\n } else if (e.buttons & 0x2) {\n // Report right button.\n b += 2;\n } else {\n // Release higher buttons.\n b += 3;\n }\n\n // Add 32 to indicate mouse motion.\n b += 32;\n\n // And mix in the modifier keys.\n b |= mod;\n\n response = '\\x1b[M' + String.fromCharCode(b) + x + y;\n }\n\n break;\n\n case 'click':\n case 'dblclick':\n break;\n\n default:\n console.error('Unknown mouse event: ' + e.type, e);\n break;\n }\n\n if (response)\n this.terminal.io.sendString(response);\n};\n\n/**\n * Interpret a string of characters, displaying the results on the associated\n * terminal object.\n *\n * The buffer will be decoded according to the 'receive-encoding' preference.\n */\nhterm.VT.prototype.interpret = function(buf) {\n this.parseState_.resetBuf(this.decode(buf));\n\n while (!this.parseState_.isComplete()) {\n var func = this.parseState_.func;\n var pos = this.parseState_.pos;\n var buf = this.parseState_.buf;\n\n this.parseState_.func.call(this, this.parseState_);\n\n if (this.parseState_.func == func && this.parseState_.pos == pos &&\n this.parseState_.buf == buf) {\n throw 'Parser did not alter the state!';\n }\n }\n};\n\n/**\n * Decode a string according to the 'receive-encoding' preference.\n */\nhterm.VT.prototype.decode = function(str) {\n if (this.characterEncoding == 'utf-8')\n return this.decodeUTF8(str);\n\n return str;\n};\n\n/**\n * Encode a UTF-16 string as UTF-8.\n *\n * See also: https://en.wikipedia.org/wiki/UTF-16\n */\nhterm.VT.prototype.encodeUTF8 = function(str) {\n return lib.encodeUTF8(str);\n};\n\n/**\n * Decode a UTF-8 string into UTF-16.\n */\nhterm.VT.prototype.decodeUTF8 = function(str) {\n return this.utf8Decoder_.decode(str);\n};\n\n/**\n * Set the encoding of the terminal.\n *\n * @param {string} encoding The name of the encoding to set.\n */\nhterm.VT.prototype.setEncoding = function(encoding) {\n switch (encoding) {\n default:\n console.warn('Invalid value for \"terminal-encoding\": ' + encoding);\n // Fall through.\n case 'iso-2022':\n this.codingSystemUtf8_ = false;\n this.codingSystemLocked_ = false;\n break;\n case 'utf-8-locked':\n this.codingSystemUtf8_ = true;\n this.codingSystemLocked_ = true;\n break;\n case 'utf-8':\n this.codingSystemUtf8_ = true;\n this.codingSystemLocked_ = false;\n break;\n }\n\n this.updateEncodingState_();\n};\n\n/**\n * Refresh internal state when the encoding changes.\n */\nhterm.VT.prototype.updateEncodingState_ = function() {\n // If we're in UTF8 mode, don't suport 8-bit escape sequences as we'll never\n // see those -- everything should be UTF8!\n var cc1 = Object.keys(hterm.VT.CC1)\n .filter((e) => !this.codingSystemUtf8_ || e.charCodeAt() < 0x80)\n .map((e) => '\\\\x' + lib.f.zpad(e.charCodeAt().toString(16), 2))\n .join('');\n this.cc1Pattern_ = new RegExp(`[${cc1}]`);\n};\n\n/**\n * The default parse function.\n *\n * This will scan the string for the first 1-byte control character (C0/C1\n * characters from [CTRL]). Any plain text coming before the code will be\n * printed to the terminal, then the control character will be dispatched.\n */\nhterm.VT.prototype.parseUnknown_ = function(parseState) {\n var self = this;\n\n function print(str) {\n if (!self.codingSystemUtf8_ && self[self.GL].GL)\n str = self[self.GL].GL(str);\n\n self.terminal.print(str);\n };\n\n // Search for the next contiguous block of plain text.\n var buf = parseState.peekRemainingBuf();\n var nextControl = buf.search(this.cc1Pattern_);\n\n if (nextControl == 0) {\n // We've stumbled right into a control character.\n this.dispatch('CC1', buf.substr(0, 1), parseState);\n parseState.advance(1);\n return;\n }\n\n if (nextControl == -1) {\n // There are no control characters in this string.\n print(buf);\n parseState.reset();\n return;\n }\n\n print(buf.substr(0, nextControl));\n this.dispatch('CC1', buf.substr(nextControl, 1), parseState);\n parseState.advance(nextControl + 1);\n};\n\n/**\n * Parse a Control Sequence Introducer code and dispatch it.\n *\n * See [CSI] for some useful information about these codes.\n */\nhterm.VT.prototype.parseCSI_ = function(parseState) {\n var ch = parseState.peekChar();\n var args = parseState.args;\n\n if (ch >= '@' && ch <= '~') {\n // This is the final character.\n this.dispatch('CSI', this.leadingModifier_ + this.trailingModifier_ + ch,\n parseState);\n parseState.resetParseFunction();\n\n } else if (ch == ';') {\n // Parameter delimiter.\n if (this.trailingModifier_) {\n // Parameter delimiter after the trailing modifier. That's a paddlin'.\n parseState.resetParseFunction();\n\n } else {\n if (!args.length) {\n // They omitted the first param, we need to supply it.\n args.push('');\n }\n\n args.push('');\n }\n\n } else if (ch >= '0' && ch <= '9') {\n // Next byte in the current parameter.\n\n if (this.trailingModifier_) {\n // Numeric parameter after the trailing modifier. That's a paddlin'.\n parseState.resetParseFunction();\n } else {\n if (!args.length) {\n args[0] = ch;\n } else {\n args[args.length - 1] += ch;\n }\n }\n\n } else if (ch >= ' ' && ch <= '?' && ch != ':') {\n // Modifier character.\n if (!args.length) {\n this.leadingModifier_ += ch;\n } else {\n this.trailingModifier_ += ch;\n }\n\n } else if (this.cc1Pattern_.test(ch)) {\n // Control character.\n this.dispatch('CC1', ch, parseState);\n\n } else {\n // Unexpected character in sequence, bail out.\n parseState.resetParseFunction();\n }\n\n parseState.advance(1);\n};\n\n/**\n * Skip over the string until the next String Terminator (ST, 'ESC \\') or\n * Bell (BEL, '\\x07').\n *\n * The string is accumulated in parseState.args[0]. Make sure to reset the\n * arguments (with parseState.resetArguments) before starting the parse.\n *\n * You can detect that parsing in complete by checking that the parse\n * function has changed back to the default parse function.\n *\n * If we encounter more than maxStringSequence characters, we send back\n * the unterminated sequence to be re-parsed with the default parser function.\n *\n * @return {boolean} If true, parsing is ongoing or complete. If false, we've\n * exceeded the max string sequence.\n */\nhterm.VT.prototype.parseUntilStringTerminator_ = function(parseState) {\n var buf = parseState.peekRemainingBuf();\n var nextTerminator = buf.search(/(\\x1b\\\\|\\x07)/);\n var args = parseState.args;\n\n if (!args.length) {\n args[0] = '';\n args[1] = new Date();\n }\n\n if (nextTerminator == -1) {\n // No terminator here, have to wait for the next string.\n\n args[0] += buf;\n\n var abortReason;\n\n if (args[0].length > this.maxStringSequence)\n abortReason = 'too long: ' + args[0].length;\n\n if (args[0].indexOf('\\x1b') != -1)\n abortReason = 'embedded escape: ' + args[0].indexOf('\\x1b');\n\n if (new Date() - args[1] > this.oscTimeLimit_)\n abortReason = 'timeout expired: ' + new Date() - args[1];\n\n if (abortReason) {\n console.log('parseUntilStringTerminator_: aborting: ' + abortReason,\n args[0]);\n parseState.reset(args[0]);\n return false;\n }\n\n parseState.advance(buf.length);\n return true;\n }\n\n if (args[0].length + nextTerminator > this.maxStringSequence) {\n // We found the end of the sequence, but we still think it's too long.\n parseState.reset(args[0] + buf);\n return false;\n }\n\n args[0] += buf.substr(0, nextTerminator);\n\n parseState.resetParseFunction();\n parseState.advance(nextTerminator +\n (buf.substr(nextTerminator, 1) == '\\x1b' ? 2 : 1));\n\n return true;\n};\n\n/**\n * Dispatch to the function that handles a given CC1, ESC, or CSI or VT52 code.\n */\nhterm.VT.prototype.dispatch = function(type, code, parseState) {\n var handler = hterm.VT[type][code];\n if (!handler) {\n if (this.warnUnimplemented)\n console.warn('Unknown ' + type + ' code: ' + JSON.stringify(code));\n return;\n }\n\n if (handler == hterm.VT.ignore) {\n if (this.warnUnimplemented)\n console.warn('Ignored ' + type + ' code: ' + JSON.stringify(code));\n return;\n }\n\n if (type == 'CC1' && code > '\\x7f' && !this.enable8BitControl) {\n // It's kind of a hack to put this here, but...\n //\n // If we're dispatching a 'CC1' code, and it's got the eighth bit set,\n // but we're not supposed to handle 8-bit codes? Just ignore it.\n //\n // This prevents an errant (DCS, '\\x90'), (OSC, '\\x9d'), (PM, '\\x9e') or\n // (APC, '\\x9f') from locking up the terminal waiting for its expected\n // (ST, '\\x9c') or (BEL, '\\x07').\n console.warn('Ignoring 8-bit control code: 0x' +\n code.charCodeAt(0).toString(16));\n return;\n }\n\n handler.apply(this, [parseState, code]);\n};\n\n/**\n * Set one of the ANSI defined terminal mode bits.\n *\n * Invoked in response to SM/RM.\n *\n * Unexpected and unimplemented values are silently ignored.\n */\nhterm.VT.prototype.setANSIMode = function(code, state) {\n if (code == 4) { // Insert Mode (IRM)\n this.terminal.setInsertMode(state);\n } else if (code == 20) { // Automatic Newline (LNM)\n this.terminal.setAutoCarriageReturn(state);\n } else if (this.warnUnimplemented) {\n console.warn('Unimplemented ANSI Mode: ' + code);\n }\n};\n\n/**\n * Set or reset one of the DEC Private modes.\n *\n * Invoked in response to DECSET/DECRST.\n */\nhterm.VT.prototype.setDECMode = function(code, state) {\n switch (parseInt(code, 10)) {\n case 1: // DECCKM\n this.terminal.keyboard.applicationCursor = state;\n break;\n\n case 3: // DECCOLM\n if (this.allowColumnWidthChanges_) {\n this.terminal.setWidth(state ? 132 : 80);\n\n this.terminal.clearHome();\n this.terminal.setVTScrollRegion(null, null);\n }\n break;\n\n case 5: // DECSCNM\n this.terminal.setReverseVideo(state);\n break;\n\n case 6: // DECOM\n this.terminal.setOriginMode(state);\n break;\n\n case 7: // DECAWM\n this.terminal.setWraparound(state);\n break;\n\n case 12: // Start blinking cursor\n if (this.enableDec12)\n this.terminal.setCursorBlink(state);\n break;\n\n case 25: // DECTCEM\n this.terminal.setCursorVisible(state);\n break;\n\n case 30: // Show scrollbar\n this.terminal.setScrollbarVisible(state);\n break;\n\n case 40: // Allow 80 - 132 (DECCOLM) Mode\n this.terminal.allowColumnWidthChanges_ = state;\n break;\n\n case 45: // Reverse-wraparound Mode\n this.terminal.setReverseWraparound(state);\n break;\n\n case 67: // Backarrow key sends backspace (DECBKM)\n this.terminal.keyboard.backspaceSendsBackspace = state;\n break;\n\n case 1000: // Report on mouse clicks only.\n this.mouseReport = (\n state ? this.MOUSE_REPORT_CLICK : this.MOUSE_REPORT_DISABLED);\n this.terminal.syncMouseStyle();\n break;\n\n case 1002: // Report on mouse clicks and drags\n this.mouseReport = (\n state ? this.MOUSE_REPORT_DRAG : this.MOUSE_REPORT_DISABLED);\n this.terminal.syncMouseStyle();\n break;\n\n case 1010: // Scroll to bottom on tty output\n this.terminal.scrollOnOutput = state;\n break;\n\n case 1011: // Scroll to bottom on key press\n this.terminal.scrollOnKeystroke = state;\n break;\n\n case 1036: // Send ESC when Meta modifies a key\n this.terminal.keyboard.metaSendsEscape = state;\n break;\n\n case 1039: // Send ESC when Alt modifies a key\n if (state) {\n if (!this.terminal.keyboard.previousAltSendsWhat_) {\n this.terminal.keyboard.previousAltSendsWhat_ =\n this.terminal.keyboard.altSendsWhat;\n this.terminal.keyboard.altSendsWhat = 'escape';\n }\n } else if (this.terminal.keyboard.previousAltSendsWhat_) {\n this.terminal.keyboard.altSendsWhat =\n this.terminal.keyboard.previousAltSendsWhat_;\n this.terminal.keyboard.previousAltSendsWhat_ = null;\n }\n break;\n\n case 47: // Use Alternate Screen Buffer\n case 1047:\n this.terminal.setAlternateMode(state);\n break;\n\n case 1048: // Save cursor as in DECSC.\n this.savedState_.save();\n\n case 1049: // 1047 + 1048 + clear.\n if (state) {\n this.savedState_.save();\n this.terminal.setAlternateMode(state);\n this.terminal.clear();\n } else {\n this.terminal.setAlternateMode(state);\n this.savedState_.restore();\n }\n\n break;\n\n case 2004: // Bracketed paste mode.\n this.terminal.setBracketedPaste(state);\n break;\n\n default:\n if (this.warnUnimplemented)\n console.warn('Unimplemented DEC Private Mode: ' + code);\n break;\n }\n};\n\n/**\n * Function shared by control characters and escape sequences that are\n * ignored.\n */\nhterm.VT.ignore = function() {};\n\n/**\n * Collection of control characters expressed in a single byte.\n *\n * This includes the characters from the C0 and C1 sets (see [CTRL]) that we\n * care about. Two byte versions of the C1 codes are defined in the\n * hterm.VT.ESC collection.\n *\n * The 'CC1' mnemonic here refers to the fact that these are one-byte Control\n * Codes. It's only used in this source file and not defined in any of the\n * referenced documents.\n */\nhterm.VT.CC1 = {};\n\n/**\n * Collection of two-byte and three-byte sequences starting with ESC.\n */\nhterm.VT.ESC = {};\n\n/**\n * Collection of CSI (Control Sequence Introducer) sequences.\n *\n * These sequences begin with 'ESC [', and may take zero or more arguments.\n */\nhterm.VT.CSI = {};\n\n/**\n * Collection of OSC (Operating System Control) sequences.\n *\n * These sequences begin with 'ESC ]', followed by a function number and a\n * string terminated by either ST or BEL.\n */\nhterm.VT.OSC = {};\n\n/**\n * Collection of VT52 sequences.\n *\n * When in VT52 mode, other sequences are disabled.\n */\nhterm.VT.VT52 = {};\n\n/**\n * Null (NUL).\n *\n * Silently ignored.\n */\nhterm.VT.CC1['\\x00'] = hterm.VT.ignore;\n\n/**\n * Enquiry (ENQ).\n *\n * Transmit answerback message.\n *\n * The default answerback message in xterm is an empty string, so we just\n * ignore this.\n */\nhterm.VT.CC1['\\x05'] = hterm.VT.ignore;\n\n/**\n * Ring Bell (BEL).\n */\nhterm.VT.CC1['\\x07'] = function() {\n this.terminal.ringBell();\n};\n\n/**\n * Backspace (BS).\n *\n * Move the cursor to the left one character position, unless it is at the\n * left margin, in which case no action occurs.\n */\nhterm.VT.CC1['\\x08'] = function() {\n this.terminal.cursorLeft(1);\n};\n\n/**\n * Horizontal Tab (HT).\n *\n * Move the cursor to the next tab stop, or to the right margin if no further\n * tab stops are present on the line.\n */\nhterm.VT.CC1['\\x09'] = function() {\n this.terminal.forwardTabStop();\n};\n\n/**\n * Line Feed (LF).\n *\n * This code causes a line feed or a new line operation. See Automatic\n * Newline (LNM).\n */\nhterm.VT.CC1['\\x0a'] = function() {\n this.terminal.formFeed();\n};\n\n/**\n * Vertical Tab (VT).\n *\n * Interpreted as LF.\n */\nhterm.VT.CC1['\\x0b'] = hterm.VT.CC1['\\x0a'];\n\n/**\n * Form Feed (FF).\n *\n * Interpreted as LF.\n */\nhterm.VT.CC1['\\x0c'] = hterm.VT.CC1['\\x0a'];\n\n/**\n * Carriage Return (CR).\n *\n * Move cursor to the left margin on the current line.\n */\nhterm.VT.CC1['\\x0d'] = function() {\n this.terminal.setCursorColumn(0);\n};\n\n/**\n * Shift Out (SO), aka Lock Shift 0 (LS1).\n *\n * Invoke G1 character set in GL.\n */\nhterm.VT.CC1['\\x0e'] = function() {\n this.GL = 'G1';\n};\n\n/**\n * Shift In (SI), aka Lock Shift 0 (LS0).\n *\n * Invoke G0 character set in GL.\n */\nhterm.VT.CC1['\\x0f'] = function() {\n this.GL = 'G0';\n};\n\n/**\n * Transmit On (XON).\n *\n * Not currently implemented.\n *\n * TODO(rginda): Implement?\n */\nhterm.VT.CC1['\\x11'] = hterm.VT.ignore;\n\n/**\n * Transmit Off (XOFF).\n *\n * Not currently implemented.\n *\n * TODO(rginda): Implement?\n */\nhterm.VT.CC1['\\x13'] = hterm.VT.ignore;\n\n/**\n * Cancel (CAN).\n *\n * If sent during a control sequence, the sequence is immediately terminated\n * and not executed.\n *\n * It also causes the error character to be displayed.\n */\nhterm.VT.CC1['\\x18'] = function(parseState) {\n // If we've shifted in the G1 character set, shift it back out to\n // the default character set.\n if (this.GL == 'G1') {\n this.GL = 'G0';\n }\n parseState.resetParseFunction();\n this.terminal.print('?');\n};\n\n/**\n * Substitute (SUB).\n *\n * Interpreted as CAN.\n */\nhterm.VT.CC1['\\x1a'] = hterm.VT.CC1['\\x18'];\n\n/**\n * Escape (ESC).\n */\nhterm.VT.CC1['\\x1b'] = function(parseState) {\n function parseESC(parseState) {\n var ch = parseState.consumeChar();\n\n if (ch == '\\x1b')\n return;\n\n this.dispatch('ESC', ch, parseState);\n\n if (parseState.func == parseESC)\n parseState.resetParseFunction();\n };\n\n parseState.func = parseESC;\n};\n\n/**\n * Delete (DEL).\n */\nhterm.VT.CC1['\\x7f'] = hterm.VT.ignore;\n\n// 8 bit control characters and their two byte equivalents, below...\n\n/**\n * Index (IND).\n *\n * Like newline, only keep the X position\n */\nhterm.VT.CC1['\\x84'] =\nhterm.VT.ESC['D'] = function() {\n this.terminal.lineFeed();\n};\n\n/**\n * Next Line (NEL).\n *\n * Like newline, but doesn't add lines.\n */\nhterm.VT.CC1['\\x85'] =\nhterm.VT.ESC['E'] = function() {\n this.terminal.setCursorColumn(0);\n this.terminal.cursorDown(1);\n};\n\n/**\n * Horizontal Tabulation Set (HTS).\n */\nhterm.VT.CC1['\\x88'] =\nhterm.VT.ESC['H'] = function() {\n this.terminal.setTabStop(this.terminal.getCursorColumn());\n};\n\n/**\n * Reverse Index (RI).\n *\n * Move up one line.\n */\nhterm.VT.CC1['\\x8d'] =\nhterm.VT.ESC['M'] = function() {\n this.terminal.reverseLineFeed();\n};\n\n/**\n * Single Shift 2 (SS2).\n *\n * Select of G2 Character Set for the next character only.\n *\n * Not currently implemented.\n */\nhterm.VT.CC1['\\x8e'] =\nhterm.VT.ESC['N'] = hterm.VT.ignore;\n\n/**\n * Single Shift 3 (SS3).\n *\n * Select of G3 Character Set for the next character only.\n *\n * Not currently implemented.\n */\nhterm.VT.CC1['\\x8f'] =\nhterm.VT.ESC['O'] = hterm.VT.ignore;\n\n/**\n * Device Control String (DCS).\n *\n * Indicate a DCS sequence. See Device-Control functions in [XTERM].\n * Not currently implemented.\n *\n * TODO(rginda): Consider implementing DECRQSS, the rest don't seem applicable.\n */\nhterm.VT.CC1['\\x90'] =\nhterm.VT.ESC['P'] = function(parseState) {\n parseState.resetArguments();\n parseState.func = this.parseUntilStringTerminator_;\n};\n\n/**\n * Start of Guarded Area (SPA).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x96'] =\nhterm.VT.ESC['V'] = hterm.VT.ignore;\n\n/**\n * End of Guarded Area (EPA).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x97'] =\nhterm.VT.ESC['W'] = hterm.VT.ignore;\n\n/**\n * Start of String (SOS).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x98'] =\nhterm.VT.ESC['X'] = hterm.VT.ignore;\n\n/**\n * Single Character Introducer (SCI, also DECID).\n *\n * Return Terminal ID. Obsolete form of 'ESC [ c' (DA).\n */\nhterm.VT.CC1['\\x9a'] =\nhterm.VT.ESC['Z'] = function() {\n this.terminal.io.sendString('\\x1b[?1;2c');\n};\n\n/**\n * Control Sequence Introducer (CSI).\n *\n * The lead into most escape sequences. See [CSI].\n */\nhterm.VT.CC1['\\x9b'] =\nhterm.VT.ESC['['] = function(parseState) {\n parseState.resetArguments();\n this.leadingModifier_ = '';\n this.trailingModifier_ = '';\n parseState.func = this.parseCSI_;\n};\n\n/**\n * String Terminator (ST).\n *\n * Used to terminate DCS/OSC/PM/APC commands which may take string arguments.\n *\n * We don't directly handle it here, as it's only used to terminate other\n * sequences. See the 'parseUntilStringTerminator_' method.\n */\nhterm.VT.CC1['\\x9c'] =\nhterm.VT.ESC['\\\\'] = hterm.VT.ignore;\n\n/**\n * Operating System Command (OSC).\n *\n * Commands relating to the operating system.\n */\nhterm.VT.CC1['\\x9d'] =\nhterm.VT.ESC[']'] = function(parseState) {\n parseState.resetArguments();\n\n function parseOSC(parseState) {\n if (!this.parseUntilStringTerminator_(parseState)) {\n // The string sequence was too long.\n return;\n }\n\n if (parseState.func == parseOSC) {\n // We're not done parsing the string yet.\n return;\n }\n\n // We're done.\n var ary = parseState.args[0].match(/^(\\d+);(.*)$/);\n if (ary) {\n parseState.args[0] = ary[2];\n this.dispatch('OSC', ary[1], parseState);\n } else {\n console.warn('Invalid OSC: ' + JSON.stringify(parseState.args[0]));\n }\n };\n\n parseState.func = parseOSC;\n};\n\n/**\n * Privacy Message (PM).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x9e'] =\nhterm.VT.ESC['^'] = function(parseState) {\n parseState.resetArguments();\n parseState.func = this.parseUntilStringTerminator_;\n};\n\n/**\n * Application Program Control (APC).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x9f'] =\nhterm.VT.ESC['_'] = function(parseState) {\n parseState.resetArguments();\n parseState.func = this.parseUntilStringTerminator_;\n};\n\n/**\n * ESC \\x20 - Unclear to me where these originated, possibly in xterm.\n *\n * Not currently implemented:\n * ESC \\x20 F - Select 7 bit escape codes in responses (S7C1T).\n * ESC \\x20 G - Select 8 bit escape codes in responses (S8C1T).\n * NB: We currently assume S7C1T always.\n *\n * Will not implement:\n * ESC \\x20 L - Set ANSI conformance level 1.\n * ESC \\x20 M - Set ANSI conformance level 2.\n * ESC \\x20 N - Set ANSI conformance level 3.\n */\nhterm.VT.ESC['\\x20'] = function(parseState) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n if (this.warnUnimplemented)\n console.warn('Unimplemented sequence: ESC 0x20 ' + ch);\n parseState.resetParseFunction();\n };\n};\n\n/**\n * DEC 'ESC #' sequences.\n */\nhterm.VT.ESC['#'] = function(parseState) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n if (ch == '8') // DEC Screen Alignment Test (DECALN)\n this.terminal.fill('E');\n\n parseState.resetParseFunction();\n };\n};\n\n/**\n * Designate Other Coding System (DOCS).\n */\nhterm.VT.ESC['%'] = function(parseState) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n\n // If we've locked the encoding, then just eat the bytes and return.\n if (this.codingSystemLocked_) {\n if (ch == '/')\n parseState.consumeChar();\n parseState.resetParseFunction();\n return;\n }\n\n // Process the encoding requests.\n switch (ch) {\n case '@':\n // Switch to ECMA 35.\n this.setEncoding('iso-2022');\n break;\n\n case 'G':\n // Switch to UTF-8.\n this.setEncoding('utf-8');\n break;\n\n case '/':\n // One way transition to something else.\n ch = parseState.consumeChar();\n switch (ch) {\n case 'G': // UTF-8 Level 1.\n case 'H': // UTF-8 Level 2.\n case 'I': // UTF-8 Level 3.\n // We treat all UTF-8 levels the same.\n this.setEncoding('utf-8-locked');\n break;\n\n default:\n if (this.warnUnimplemented)\n console.warn('Unknown ESC % / argument: ' + JSON.stringify(ch));\n break;\n }\n break;\n\n default:\n if (this.warnUnimplemented)\n console.warn('Unknown ESC % argument: ' + JSON.stringify(ch));\n break;\n }\n\n parseState.resetParseFunction();\n };\n};\n\n/**\n * Character Set Selection (SCS).\n *\n * ESC ( Ps - Set G0 character set (VT100).\n * ESC ) Ps - Set G1 character set (VT220).\n * ESC * Ps - Set G2 character set (VT220).\n * ESC + Ps - Set G3 character set (VT220).\n * ESC - Ps - Set G1 character set (VT300).\n * ESC . Ps - Set G2 character set (VT300).\n * ESC / Ps - Set G3 character set (VT300).\n *\n * All other sequences are echoed to the terminal.\n */\nhterm.VT.ESC['('] =\nhterm.VT.ESC[')'] =\nhterm.VT.ESC['*'] =\nhterm.VT.ESC['+'] =\nhterm.VT.ESC['-'] =\nhterm.VT.ESC['.'] =\nhterm.VT.ESC['/'] = function(parseState, code) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n if (ch == '\\x1b') {\n parseState.resetParseFunction();\n parseState.func();\n return;\n }\n\n var map = this.characterMaps.getMap(ch);\n if (map !== undefined) {\n if (code == '(') {\n this.G0 = map;\n } else if (code == ')' || code == '-') {\n this.G1 = map;\n } else if (code == '*' || code == '.') {\n this.G2 = map;\n } else if (code == '+' || code == '/') {\n this.G3 = map;\n }\n } else if (this.warnUnimplemented) {\n console.log('Invalid character set for \"' + code + '\": ' + ch);\n }\n\n parseState.resetParseFunction();\n };\n};\n\n/**\n * Back Index (DECBI).\n *\n * VT420 and up. Not currently implemented.\n */\nhterm.VT.ESC['6'] = hterm.VT.ignore;\n\n/**\n * Save Cursor (DECSC).\n */\nhterm.VT.ESC['7'] = function() {\n this.savedState_.save();\n};\n\n/**\n * Restore Cursor (DECRC).\n */\nhterm.VT.ESC['8'] = function() {\n this.savedState_.restore();\n};\n\n/**\n * Forward Index (DECFI).\n *\n * VT210 and up. Not currently implemented.\n */\nhterm.VT.ESC['9'] = hterm.VT.ignore;\n\n/**\n * Application keypad (DECKPAM).\n */\nhterm.VT.ESC['='] = function() {\n this.terminal.keyboard.applicationKeypad = true;\n};\n\n/**\n * Normal keypad (DECKPNM).\n */\nhterm.VT.ESC['>'] = function() {\n this.terminal.keyboard.applicationKeypad = false;\n};\n\n/**\n * Cursor to lower left corner of screen.\n *\n * Will not implement.\n *\n * This is only recognized by xterm when the hpLowerleftBugCompat resource is\n * set.\n */\nhterm.VT.ESC['F'] = hterm.VT.ignore;\n\n/**\n * Full Reset (RIS).\n */\nhterm.VT.ESC['c'] = function() {\n this.reset();\n this.terminal.reset();\n};\n\n/**\n * Memory lock/unlock.\n *\n * Will not implement.\n */\nhterm.VT.ESC['l'] =\nhterm.VT.ESC['m'] = hterm.VT.ignore;\n\n/**\n * Lock Shift 2 (LS2)\n *\n * Invoke the G2 Character Set as GL.\n */\nhterm.VT.ESC['n'] = function() {\n this.GL = 'G2';\n};\n\n/**\n * Lock Shift 3 (LS3)\n *\n * Invoke the G3 Character Set as GL.\n */\nhterm.VT.ESC['o'] = function() {\n this.GL = 'G3';\n};\n\n/**\n * Lock Shift 2, Right (LS3R)\n *\n * Invoke the G3 Character Set as GR.\n */\nhterm.VT.ESC['|'] = function() {\n this.GR = 'G3';\n};\n\n/**\n * Lock Shift 2, Right (LS2R)\n *\n * Invoke the G2 Character Set as GR.\n */\nhterm.VT.ESC['}'] = function() {\n this.GR = 'G2';\n};\n\n/**\n * Lock Shift 1, Right (LS1R)\n *\n * Invoke the G1 Character Set as GR.\n */\nhterm.VT.ESC['~'] = function() {\n this.GR = 'G1';\n};\n\n/**\n * Change icon name and window title.\n *\n * We only change the window title.\n */\nhterm.VT.OSC['0'] = function(parseState) {\n this.terminal.setWindowTitle(parseState.args[0]);\n};\n\n/**\n * Change window title.\n */\nhterm.VT.OSC['2'] = hterm.VT.OSC['0'];\n\n/**\n * Set/read color palette.\n */\nhterm.VT.OSC['4'] = function(parseState) {\n // Args come in as a single 'index1;rgb1 ... ;indexN;rgbN' string.\n // We split on the semicolon and iterate through the pairs.\n var args = parseState.args[0].split(';');\n\n var pairCount = parseInt(args.length / 2);\n var colorPalette = this.terminal.getTextAttributes().colorPalette;\n var responseArray = [];\n\n for (var pairNumber = 0; pairNumber < pairCount; ++pairNumber) {\n var colorIndex = parseInt(args[pairNumber * 2]);\n var colorValue = args[pairNumber * 2 + 1];\n\n if (colorIndex >= colorPalette.length)\n continue;\n\n if (colorValue == '?') {\n // '?' means we should report back the current color value.\n colorValue = lib.colors.rgbToX11(colorPalette[colorIndex]);\n if (colorValue)\n responseArray.push(colorIndex + ';' + colorValue);\n\n continue;\n }\n\n colorValue = lib.colors.x11ToCSS(colorValue);\n if (colorValue)\n colorPalette[colorIndex] = colorValue;\n }\n\n if (responseArray.length)\n this.terminal.io.sendString('\\x1b]4;' + responseArray.join(';') + '\\x07');\n};\n\n/**\n * iTerm2 growl notifications.\n */\nhterm.VT.OSC['9'] = function(parseState) {\n // This just dumps the entire string as the message.\n hterm.notify({'body': parseState.args[0]});\n};\n\n/**\n * Change VT100 text foreground color.\n */\nhterm.VT.OSC['10'] = function(parseState) {\n // Args come in as a single string, but extra args will chain to the following\n // OSC sequences.\n var args = parseState.args[0].split(';');\n if (!args)\n return;\n\n var colorArg;\n var colorX11 = lib.colors.x11ToCSS(args.shift());\n if (colorX11)\n this.terminal.setForegroundColor(colorX11);\n\n if (args.length > 0) {\n parseState.args[0] = args.join(';');\n hterm.VT.OSC['11'].apply(this, [parseState]);\n }\n};\n\n/**\n * Change VT100 text background color.\n */\nhterm.VT.OSC['11'] = function(parseState) {\n // Args come in as a single string, but extra args will chain to the following\n // OSC sequences.\n var args = parseState.args[0].split(';');\n if (!args)\n return;\n\n var colorArg;\n var colorX11 = lib.colors.x11ToCSS(args.shift());\n if (colorX11)\n this.terminal.setBackgroundColor(colorX11);\n\n /* Note: If we support OSC 12+, we'd chain it here.\n if (args.length > 0) {\n parseState.args[0] = args.join(';');\n hterm.VT.OSC['12'].apply(this, [parseState]);\n }\n */\n};\n\n/**\n * Set the cursor shape.\n *\n * Parameter is expected to be in the form \"CursorShape=number\", where number is\n * one of:\n *\n * 0 - Block\n * 1 - I-Beam\n * 2 - Underline\n *\n * This is a bit of a de-facto standard supported by iTerm 2 and Konsole. See\n * also: DECSCUSR.\n *\n * Invalid numbers will restore the cursor to the block shape.\n */\nhterm.VT.OSC['50'] = function(parseState) {\n var args = parseState.args[0].match(/CursorShape=(.)/i);\n if (!args) {\n console.warn('Could not parse OSC 50 args: ' + parseState.args[0]);\n return;\n }\n\n switch (args[1]) {\n case '1': // CursorShape=1: I-Beam.\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BEAM);\n break;\n\n case '2': // CursorShape=2: Underline.\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.UNDERLINE);\n break;\n\n default: // CursorShape=0: Block.\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BLOCK);\n }\n};\n\n/**\n * Set/read system clipboard.\n *\n * Read is not implemented due to security considerations. A remote app\n * that is able to both write and read to the clipboard could essentially\n * take over your session.\n *\n * The clipboard data will be decoded according to the 'receive-encoding'\n * preference.\n */\nhterm.VT.OSC['52'] = function(parseState) {\n // Args come in as a single 'clipboard;b64-data' string. The clipboard\n // parameter is used to select which of the X clipboards to address. Since\n // we're not integrating with X, we treat them all the same.\n var args = parseState.args[0].match(/^[cps01234567]*;(.*)/);\n if (!args)\n return;\n\n var data = window.atob(args[1]);\n if (data)\n this.terminal.copyStringToClipboard(this.decode(data));\n};\n\n/**\n * URxvt perl modules.\n *\n * This is the escape system used by rxvt-unicode and its perl modules.\n * Obviously we don't support perl or custom modules, so we list a few common\n * ones that we find useful.\n *\n * Technically there is no format here, but most modules obey:\n * ;\n */\nhterm.VT.OSC['777'] = function(parseState) {\n var ary;\n var urxvtMod = parseState.args[0].split(';', 1)[0];\n\n switch (urxvtMod) {\n case 'notify':\n // Format:\n // notify;title;message\n var title, message;\n ary = parseState.args[0].match(/^[^;]+;([^;]*)(;([\\s\\S]*))?$/);\n if (ary) {\n title = ary[1];\n message = ary[3];\n }\n hterm.notify({'title': title, 'body': message});\n break;\n\n default:\n console.warn('Unknown urxvt module: ' + parseState.args[0]);\n break;\n }\n};\n\n/**\n * Insert (blank) characters (ICH).\n */\nhterm.VT.CSI['@'] = function(parseState) {\n this.terminal.insertSpace(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Up (CUU).\n */\nhterm.VT.CSI['A'] = function(parseState) {\n this.terminal.cursorUp(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Down (CUD).\n */\nhterm.VT.CSI['B'] = function(parseState) {\n this.terminal.cursorDown(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Forward (CUF).\n */\nhterm.VT.CSI['C'] = function(parseState) {\n this.terminal.cursorRight(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Backward (CUB).\n */\nhterm.VT.CSI['D'] = function(parseState) {\n this.terminal.cursorLeft(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Next Line (CNL).\n *\n * This is like Cursor Down, except the cursor moves to the beginning of the\n * line as well.\n */\nhterm.VT.CSI['E'] = function(parseState) {\n this.terminal.cursorDown(parseState.iarg(0, 1));\n this.terminal.setCursorColumn(0);\n};\n\n/**\n * Cursor Preceding Line (CPL).\n *\n * This is like Cursor Up, except the cursor moves to the beginning of the\n * line as well.\n */\nhterm.VT.CSI['F'] = function(parseState) {\n this.terminal.cursorUp(parseState.iarg(0, 1));\n this.terminal.setCursorColumn(0);\n};\n\n/**\n * Cursor Character Absolute (CHA).\n */\nhterm.VT.CSI['G'] = function(parseState) {\n this.terminal.setCursorColumn(parseState.iarg(0, 1) - 1);\n};\n\n/**\n * Cursor Position (CUP).\n */\nhterm.VT.CSI['H'] = function(parseState) {\n this.terminal.setCursorPosition(parseState.iarg(0, 1) - 1,\n parseState.iarg(1, 1) - 1);\n};\n\n/**\n * Cursor Forward Tabulation (CHT).\n */\nhterm.VT.CSI['I'] = function(parseState) {\n var count = parseState.iarg(0, 1);\n count = lib.f.clamp(count, 1, this.terminal.screenSize.width);\n for (var i = 0; i < count; i++) {\n this.terminal.forwardTabStop();\n }\n};\n\n/**\n * Erase in Display (ED, DECSED).\n */\nhterm.VT.CSI['J'] =\nhterm.VT.CSI['?J'] = function(parseState, code) {\n var arg = parseState.args[0];\n\n if (!arg || arg == 0) {\n this.terminal.eraseBelow();\n } else if (arg == 1) {\n this.terminal.eraseAbove();\n } else if (arg == 2) {\n this.terminal.clear();\n } else if (arg == 3) {\n // The xterm docs say this means \"Erase saved lines\", but we'll just clear\n // the display since killing the scrollback seems rude.\n this.terminal.clear();\n }\n};\n\n/**\n * Erase in line (EL, DECSEL).\n */\nhterm.VT.CSI['K'] =\nhterm.VT.CSI['?K'] = function(parseState, code) {\n var arg = parseState.args[0];\n\n if (!arg || arg == 0) {\n this.terminal.eraseToRight();\n } else if (arg == 1) {\n this.terminal.eraseToLeft();\n } else if (arg == 2) {\n this.terminal.eraseLine();\n }\n};\n\n/**\n * Insert Lines (IL).\n */\nhterm.VT.CSI['L'] = function(parseState) {\n this.terminal.insertLines(parseState.iarg(0, 1));\n};\n\n/**\n * Delete Lines (DL).\n */\nhterm.VT.CSI['M'] = function(parseState) {\n this.terminal.deleteLines(parseState.iarg(0, 1));\n};\n\n/**\n * Delete Characters (DCH).\n *\n * This command shifts the line contents left, starting at the cursor position.\n */\nhterm.VT.CSI['P'] = function(parseState) {\n this.terminal.deleteChars(parseState.iarg(0, 1));\n};\n\n/**\n * Scroll Up (SU).\n */\nhterm.VT.CSI['S'] = function(parseState) {\n this.terminal.vtScrollUp(parseState.iarg(0, 1));\n};\n\n/**\n * Scroll Down (SD).\n * Also 'Initiate highlight mouse tracking'. Will not implement this part.\n */\nhterm.VT.CSI['T'] = function(parseState) {\n if (parseState.args.length <= 1)\n this.terminal.vtScrollDown(parseState.iarg(0, 1));\n};\n\n/**\n * Reset one or more features of the title modes to the default value.\n *\n * ESC [ > Ps T\n *\n * Normally, \"reset\" disables the feature. It is possible to disable the\n * ability to reset features by compiling a different default for the title\n * modes into xterm.\n *\n * Ps values:\n * 0 - Do not set window/icon labels using hexadecimal.\n * 1 - Do not query window/icon labels using hexadecimal.\n * 2 - Do not set window/icon labels using UTF-8.\n * 3 - Do not query window/icon labels using UTF-8.\n *\n * Will not implement.\n */\nhterm.VT.CSI['>T'] = hterm.VT.ignore;\n\n/**\n * Erase Characters (ECH).\n */\nhterm.VT.CSI['X'] = function(parseState) {\n this.terminal.eraseToRight(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Backward Tabulation (CBT).\n */\nhterm.VT.CSI['Z'] = function(parseState) {\n var count = parseState.iarg(0, 1);\n count = lib.f.clamp(count, 1, this.terminal.screenSize.width);\n for (var i = 0; i < count; i++) {\n this.terminal.backwardTabStop();\n }\n};\n\n/**\n * Character Position Absolute (HPA).\n *\n * Same as Cursor Character Absolute (CHA).\n */\nhterm.VT.CSI['`'] = hterm.VT.CSI['G'];\n\n/**\n * Character Position Relative (HPR).\n */\nhterm.VT.CSI['a'] = function(parseState) {\n this.terminal.setCursorColumn(this.terminal.getCursorColumn() +\n parseState.iarg(0, 1));\n};\n\n/**\n * Repeat the preceding graphic character.\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['b'] = hterm.VT.ignore;\n\n/**\n * Send Device Attributes (Primary DA).\n *\n * TODO(rginda): This is hardcoded to send back 'VT100 with Advanced Video\n * Option', but it may be more correct to send a VT220 response once\n * we fill out the 'Not currently implemented' parts.\n */\nhterm.VT.CSI['c'] = function(parseState) {\n if (!parseState.args[0] || parseState.args[0] == 0) {\n this.terminal.io.sendString('\\x1b[?1;2c');\n }\n};\n\n/**\n * Send Device Attributes (Secondary DA).\n *\n * TODO(rginda): This is hardcoded to send back 'VT100' but it may be more\n * correct to send a VT220 response once we fill out more 'Not currently\n * implemented' parts.\n */\nhterm.VT.CSI['>c'] = function(parseState) {\n this.terminal.io.sendString('\\x1b[>0;256;0c');\n};\n\n/**\n * Line Position Absolute (VPA).\n */\nhterm.VT.CSI['d'] = function(parseState) {\n this.terminal.setAbsoluteCursorRow(parseState.iarg(0, 1) - 1);\n};\n\n/**\n * Horizontal and Vertical Position (HVP).\n *\n * Same as Cursor Position (CUP).\n */\nhterm.VT.CSI['f'] = hterm.VT.CSI['H'];\n\n/**\n * Tab Clear (TBC).\n */\nhterm.VT.CSI['g'] = function(parseState) {\n if (!parseState.args[0] || parseState.args[0] == 0) {\n // Clear tab stop at cursor.\n this.terminal.clearTabStopAtCursor(false);\n } else if (parseState.args[0] == 3) {\n // Clear all tab stops.\n this.terminal.clearAllTabStops();\n }\n};\n\n/**\n * Set Mode (SM).\n */\nhterm.VT.CSI['h'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setANSIMode(parseState.args[i], true);\n }\n};\n\n/**\n * DEC Private Mode Set (DECSET).\n */\nhterm.VT.CSI['?h'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setDECMode(parseState.args[i], true);\n }\n};\n\n/**\n * Media Copy (MC).\n * Media Copy (MC, DEC Specific).\n *\n * These commands control the printer. Will not implement.\n */\nhterm.VT.CSI['i'] =\nhterm.VT.CSI['?i'] = hterm.VT.ignore;\n\n/**\n * Reset Mode (RM).\n */\nhterm.VT.CSI['l'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setANSIMode(parseState.args[i], false);\n }\n};\n\n/**\n * DEC Private Mode Reset (DECRST).\n */\nhterm.VT.CSI['?l'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setDECMode(parseState.args[i], false);\n }\n};\n\n/**\n * Character Attributes (SGR).\n *\n * Iterate through the list of arguments, applying the attribute changes based\n * on the argument value...\n */\nhterm.VT.CSI['m'] = function(parseState) {\n function get256(i) {\n if (parseState.args.length < i + 2 || parseState.args[i + 1] != 5)\n return null;\n\n return parseState.iarg(i + 2, 0);\n }\n\n function getTrueColor(i) {\n if (parseState.args.length < i + 5 || parseState.args[i + 1] != 2)\n return null;\n var r = parseState.iarg(i + 2, 0);\n var g = parseState.iarg(i + 3, 0);\n var b = parseState.iarg(i + 4, 0);\n\n return 'rgb(' + r + ' ,' + g + ' ,' + b + ')';\n }\n\n var attrs = this.terminal.getTextAttributes();\n\n if (!parseState.args.length) {\n attrs.reset();\n return;\n }\n\n for (var i = 0; i < parseState.args.length; i++) {\n var arg = parseState.iarg(i, 0);\n\n if (arg < 30) {\n if (arg == 0) { // Normal (default).\n attrs.reset();\n } else if (arg == 1) { // Bold.\n attrs.bold = true;\n } else if (arg == 2) { // Faint.\n attrs.faint = true;\n } else if (arg == 3) { // Italic.\n attrs.italic = true;\n } else if (arg == 4) { // Underline.\n attrs.underline = true;\n } else if (arg == 5) { // Blink.\n attrs.blink = true;\n } else if (arg == 7) { // Inverse.\n attrs.inverse = true;\n } else if (arg == 8) { // Invisible.\n attrs.invisible = true;\n } else if (arg == 9) { // Crossed out.\n attrs.strikethrough = true;\n } else if (arg == 22) { // Not bold & not faint.\n attrs.bold = false;\n attrs.faint = false;\n } else if (arg == 23) { // Not italic.\n attrs.italic = false;\n } else if (arg == 24) { // Not underlined.\n attrs.underline = false;\n } else if (arg == 25) { // Not blink.\n attrs.blink = false;\n } else if (arg == 27) { // Steady.\n attrs.inverse = false;\n } else if (arg == 28) { // Visible.\n attrs.invisible = false;\n } else if (arg == 29) { // Not crossed out.\n attrs.strikethrough = false;\n }\n\n } else if (arg < 50) {\n // Select fore/background color from bottom half of 16 color palette\n // or from the 256 color palette or alternative specify color in fully\n // qualified rgb(r, g, b) form.\n if (arg < 38) {\n attrs.foregroundSource = arg - 30;\n\n } else if (arg == 38) {\n // First check for true color definition\n var trueColor = getTrueColor(i);\n if (trueColor != null) {\n attrs.foregroundSource = attrs.SRC_RGB;\n attrs.foreground = trueColor;\n\n i += 5;\n } else {\n // Check for 256 color\n var c = get256(i);\n if (c == null)\n break;\n\n i += 2;\n\n if (c >= attrs.colorPalette.length)\n continue;\n\n attrs.foregroundSource = c;\n }\n\n } else if (arg == 39) {\n attrs.foregroundSource = attrs.SRC_DEFAULT;\n\n } else if (arg < 48) {\n attrs.backgroundSource = arg - 40;\n\n } else if (arg == 48) {\n // First check for true color definition\n var trueColor = getTrueColor(i);\n if (trueColor != null) {\n attrs.backgroundSource = attrs.SRC_RGB;\n attrs.background = trueColor;\n\n i += 5;\n } else {\n // Check for 256 color\n var c = get256(i);\n if (c == null)\n break;\n\n i += 2;\n\n if (c >= attrs.colorPalette.length)\n continue;\n\n attrs.backgroundSource = c;\n }\n } else {\n attrs.backgroundSource = attrs.SRC_DEFAULT;\n }\n\n } else if (arg >= 90 && arg <= 97) {\n attrs.foregroundSource = arg - 90 + 8;\n\n } else if (arg >= 100 && arg <= 107) {\n attrs.backgroundSource = arg - 100 + 8;\n }\n }\n\n attrs.setDefaults(this.terminal.getForegroundColor(),\n this.terminal.getBackgroundColor());\n};\n\n/**\n * Set xterm-specific keyboard modes.\n *\n * Will not implement.\n */\nhterm.VT.CSI['>m'] = hterm.VT.ignore;\n\n/**\n * Device Status Report (DSR, DEC Specific).\n *\n * 5 - Status Report. Result (OK) is CSI 0 n\n * 6 - Report Cursor Position (CPR) [row;column]. Result is CSI r ; c R\n */\nhterm.VT.CSI['n'] = function(parseState) {\n if (parseState.args[0] == 5) {\n this.terminal.io.sendString('\\x1b0n');\n } else if (parseState.args[0] == 6) {\n var row = this.terminal.getCursorRow() + 1;\n var col = this.terminal.getCursorColumn() + 1;\n this.terminal.io.sendString('\\x1b[' + row + ';' + col + 'R');\n }\n};\n\n/**\n * Disable modifiers which may be enabled via CSI['>m'].\n *\n * Will not implement.\n */\nhterm.VT.CSI['>n'] = hterm.VT.ignore;\n\n/**\n * Device Status Report (DSR, DEC Specific).\n *\n * 6 - Report Cursor Position (CPR) [row;column] as CSI ? r ; c R\n * 15 - Report Printer status as CSI ? 1 0 n (ready) or\n * CSI ? 1 1 n (not ready).\n * 25 - Report UDK status as CSI ? 2 0 n (unlocked) or CSI ? 2 1 n (locked).\n * 26 - Report Keyboard status as CSI ? 2 7 ; 1 ; 0 ; 0 n (North American).\n * The last two parameters apply to VT400 & up, and denote keyboard ready\n * and LK01 respectively.\n * 53 - Report Locator status as CSI ? 5 3 n Locator available, if compiled-in,\n * or CSI ? 5 0 n No Locator, if not.\n */\nhterm.VT.CSI['?n'] = function(parseState) {\n if (parseState.args[0] == 6) {\n var row = this.terminal.getCursorRow() + 1;\n var col = this.terminal.getCursorColumn() + 1;\n this.terminal.io.sendString('\\x1b[' + row + ';' + col + 'R');\n } else if (parseState.args[0] == 15) {\n this.terminal.io.sendString('\\x1b[?11n');\n } else if (parseState.args[0] == 25) {\n this.terminal.io.sendString('\\x1b[?21n');\n } else if (parseState.args[0] == 26) {\n this.terminal.io.sendString('\\x1b[?12;1;0;0n');\n } else if (parseState.args[0] == 53) {\n this.terminal.io.sendString('\\x1b[?50n');\n }\n};\n\n/**\n * This is used by xterm to decide whether to hide the pointer cursor as the\n * user types.\n *\n * Valid values for the parameter:\n * 0 - Never hide the pointer.\n * 1 - Hide if the mouse tracking mode is not enabled.\n * 2 - Always hide the pointer.\n *\n * If no parameter is given, xterm uses the default, which is 1.\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['>p'] = hterm.VT.ignore;\n\n/**\n * Soft terminal reset (DECSTR).\n */\nhterm.VT.CSI['!p'] = function() {\n this.reset();\n this.terminal.softReset();\n};\n\n/**\n * Request ANSI Mode (DECRQM).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['$p'] = hterm.VT.ignore;\nhterm.VT.CSI['?$p'] = hterm.VT.ignore;\n\n/**\n * Set conformance level (DECSCL).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\"p'] = hterm.VT.ignore;\n\n/**\n * Load LEDs (DECLL).\n *\n * Not currently implemented. Could be implemented as virtual LEDs overlaying\n * the terminal if anyone cares.\n */\nhterm.VT.CSI['q'] = hterm.VT.ignore;\n\n/**\n * Set cursor style (DECSCUSR, VT520).\n */\nhterm.VT.CSI[' q'] = function(parseState) {\n var arg = parseState.args[0];\n\n if (arg == 0 || arg == 1) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BLOCK);\n this.terminal.setCursorBlink(true);\n } else if (arg == 2) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BLOCK);\n this.terminal.setCursorBlink(false);\n } else if (arg == 3) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.UNDERLINE);\n this.terminal.setCursorBlink(true);\n } else if (arg == 4) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.UNDERLINE);\n this.terminal.setCursorBlink(false);\n } else if (arg == 5) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BEAM);\n this.terminal.setCursorBlink(true);\n } else if (arg == 6) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BEAM);\n this.terminal.setCursorBlink(false);\n } else {\n console.warn('Unknown cursor style: ' + arg);\n }\n};\n\n/**\n * Select character protection attribute (DECSCA).\n *\n * Will not implement.\n */\nhterm.VT.CSI['\"q'] = hterm.VT.ignore;\n\n/**\n * Set Scrolling Region (DECSTBM).\n */\nhterm.VT.CSI['r'] = function(parseState) {\n var args = parseState.args;\n var scrollTop = args[0] ? parseInt(args[0], 10) -1 : null;\n var scrollBottom = args[1] ? parseInt(args[1], 10) - 1 : null;\n this.terminal.setVTScrollRegion(scrollTop, scrollBottom);\n this.terminal.setCursorPosition(0, 0);\n};\n\n/**\n * Restore DEC Private Mode Values.\n *\n * Will not implement.\n */\nhterm.VT.CSI['?r'] = hterm.VT.ignore;\n\n/**\n * Change Attributes in Rectangular Area (DECCARA)\n *\n * Will not implement.\n */\nhterm.VT.CSI['$r'] = hterm.VT.ignore;\n\n/**\n * Save cursor (ANSI.SYS)\n */\nhterm.VT.CSI['s'] = function() {\n this.savedState_.save();\n};\n\n/**\n * Save DEC Private Mode Values.\n *\n * Will not implement.\n */\nhterm.VT.CSI['?s'] = hterm.VT.ignore;\n\n/**\n * Window manipulation (from dtterm, as well as extensions).\n *\n * Will not implement.\n */\nhterm.VT.CSI['t'] = hterm.VT.ignore;\n\n/**\n * Reverse Attributes in Rectangular Area (DECRARA).\n *\n * Will not implement.\n */\nhterm.VT.CSI['$t'] = hterm.VT.ignore;\n\n/**\n * Set one or more features of the title modes.\n *\n * Will not implement.\n */\nhterm.VT.CSI['>t'] = hterm.VT.ignore;\n\n/**\n * Set warning-bell volume (DECSWBV, VT520).\n *\n * Will not implement.\n */\nhterm.VT.CSI[' t'] = hterm.VT.ignore;\n\n/**\n * Restore cursor (ANSI.SYS).\n */\nhterm.VT.CSI['u'] = function() {\n this.savedState_.restore();\n};\n\n/**\n * Set margin-bell volume (DECSMBV, VT520).\n *\n * Will not implement.\n */\nhterm.VT.CSI[' u'] = hterm.VT.ignore;\n\n/**\n * Copy Rectangular Area (DECCRA, VT400 and up).\n *\n * Will not implement.\n */\nhterm.VT.CSI['$v'] = hterm.VT.ignore;\n\n/**\n * Enable Filter Rectangle (DECEFR).\n *\n * Will not implement.\n */\nhterm.VT.CSI['\\'w'] = hterm.VT.ignore;\n\n/**\n * Request Terminal Parameters (DECREQTPARM).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['x'] = hterm.VT.ignore;\n\n/**\n * Select Attribute Change Extent (DECSACE).\n *\n * Will not implement.\n */\nhterm.VT.CSI['*x'] = hterm.VT.ignore;\n\n/**\n * Fill Rectangular Area (DECFRA), VT420 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['$x'] = hterm.VT.ignore;\n\n/**\n * vt_tiledata (as used by NAOhack and UnNetHack)\n * (see https://nethackwiki.com/wiki/Vt_tiledata for more info)\n *\n * Implemented as far as we care (start a glyph and end a glyph).\n */\nhterm.VT.CSI['z'] = function(parseState) {\n if (parseState.args.length < 1)\n return;\n var arg = parseState.args[0];\n if (arg == 0) {\n // Start a glyph (one parameter, the glyph number).\n if (parseState.args.length < 2)\n return;\n this.terminal.getTextAttributes().tileData = parseState.args[1];\n } else if (arg == 1) {\n // End a glyph.\n this.terminal.getTextAttributes().tileData = null;\n }\n};\n\n/**\n * Enable Locator Reporting (DECELR).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\\'z'] = hterm.VT.ignore;\n\n/**\n * Erase Rectangular Area (DECERA), VT400 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['$z'] = hterm.VT.ignore;\n\n/**\n * Select Locator Events (DECSLE).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\\'{'] = hterm.VT.ignore;\n\n/**\n * Request Locator Position (DECRQLP).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\\'|'] = hterm.VT.ignore;\n\n/**\n * Insert Columns (DECIC), VT420 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['\\'}'] = hterm.VT.ignore;\n\n/**\n * Delete P s Columns (DECDC), VT420 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['\\'~'] = hterm.VT.ignore;\n// SOURCE FILE: hterm/js/hterm_vt_character_map.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f');\n\n/**\n * Character map object.\n *\n * Mapping from received to display character, used depending on the active\n * VT character set.\n *\n * GR maps are not currently supported.\n *\n * @param {string} description A human readable description of this map.\n * @param {Object} glmap The GL mapping from input to output characters.\n */\nhterm.VT.CharacterMap = function(description, glmap) {\n /**\n * Short description for this character set, useful for debugging.\n */\n this.description = description;\n\n /**\n * The function to call to when this map is installed in GL.\n */\n this.GL = null;\n\n // Always keep an unmodified reference to the map.\n // This allows us to sanely reset back to the original state.\n this.glmapBase_ = glmap;\n\n // Now sync the internal state as needed.\n this.sync_();\n};\n\n/**\n * Internal helper for resyncing internal state.\n *\n * Used when the mappings change.\n *\n * @param {Object?} opt_glmap Additional mappings to overlay on top of the\n * base mapping.\n */\nhterm.VT.CharacterMap.prototype.sync_ = function(opt_glmap) {\n // If there are no maps, then reset the state back.\n if (!this.glmapBase_ && !opt_glmap) {\n this.GL = null;\n delete this.glmap_;\n delete this.glre_;\n return;\n }\n\n // Set the the GL mapping. If we're given a custom mapping, then create a\n // new object to hold the merged map. This way we can cleanly reset back.\n if (opt_glmap)\n this.glmap_ = Object.assign({}, this.glmapBase_, opt_glmap);\n else\n this.glmap_ = this.glmapBase_;\n\n var glchars = Object.keys(this.glmap_).map((key) =>\n '\\\\x' + lib.f.zpad(key.charCodeAt(0).toString(16)));\n this.glre_ = new RegExp('[' + glchars.join('') + ']', 'g');\n\n this.GL = (str) => str.replace(this.glre_, (ch) => this.glmap_[ch]);\n};\n\n/**\n * Reset map back to original mappings (discarding runtime updates).\n *\n * Specifically, any calls to setOverrides will be discarded.\n */\nhterm.VT.CharacterMap.prototype.reset = function() {\n // If we haven't been given a custom mapping, then there's nothing to reset.\n if (this.glmap_ !== this.glmapBase_)\n this.sync_();\n};\n\n/**\n * Merge custom changes to this map.\n *\n * The input map need not duplicate the existing mappings as it is merged with\n * the existing base map (what was created with). Subsequent calls to this\n * will throw away previous override settings.\n *\n * @param {Object} glmap The custom map to override existing mappings.\n */\nhterm.VT.CharacterMap.prototype.setOverrides = function(glmap) {\n this.sync_(glmap);\n};\n\n/**\n * Return a copy of this mapping.\n *\n * @return {hterm.VT.CharacterMap} A new hterm.VT.CharacterMap instance.\n */\nhterm.VT.CharacterMap.prototype.clone = function() {\n var map = new hterm.VT.CharacterMap(this.description, this.glmapBase_);\n if (this.glmap_ !== this.glmapBase_)\n map.setOverrides(this.glmap_);\n return map;\n};\n\n/**\n * Table of character maps.\n */\nhterm.VT.CharacterMaps = function() {\n this.maps_ = hterm.VT.CharacterMaps.DefaultMaps;\n\n // Always keep an unmodified reference to the map.\n // This allows us to sanely reset back to the original state.\n this.mapsBase_ = this.maps_;\n};\n\n/**\n * Look up a previously registered map.\n *\n * @param {String} name The name of the map to lookup.\n * @return {hterm.VT.CharacterMap} The map, if it's been registered.\n */\nhterm.VT.CharacterMaps.prototype.getMap = function(name) {\n if (this.maps_.hasOwnProperty(name))\n return this.maps_[name];\n else\n return undefined;\n};\n\n/**\n * Register a new map.\n *\n * Any previously registered maps by this name will be discarded.\n *\n * @param {String} name The name of the map.\n * @param {hterm.VT.CharacterMap} map The map to register.\n */\nhterm.VT.CharacterMaps.prototype.addMap = function(name, map) {\n if (this.maps_ === this.mapsBase_)\n this.maps_ = Object.assign({}, this.mapsBase_);\n this.maps_[name] = map;\n};\n\n/**\n * Reset the table and all its maps back to original state.\n */\nhterm.VT.CharacterMaps.prototype.reset = function() {\n if (this.maps_ !== hterm.VT.CharacterMaps.DefaultMaps)\n this.maps_ = hterm.VT.CharacterMaps.DefaultMaps;\n};\n\n/**\n * Merge custom changes to this table.\n *\n * @param {Object} maps A set of hterm.VT.CharacterMap objects.\n */\nhterm.VT.CharacterMaps.prototype.setOverrides = function(maps) {\n if (this.maps_ === this.mapsBase_)\n this.maps_ = Object.assign({}, this.mapsBase_);\n\n for (var name in maps) {\n var map = this.getMap(name);\n if (map !== undefined) {\n this.maps_[name] = map.clone();\n this.maps_[name].setOverrides(maps[name]);\n } else\n this.addMap(name, new hterm.VT.CharacterMap('user ' + name, maps[name]));\n }\n};\n\n/**\n * The default set of supported character maps.\n */\nhterm.VT.CharacterMaps.DefaultMaps = {};\n\n/**\n * VT100 Graphic character map.\n * http://vt100.net/docs/vt220-rm/table2-4.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['0'] = new hterm.VT.CharacterMap(\n 'graphic', {\n '\\x60':'\\u25c6', // ` -> diamond\n '\\x61':'\\u2592', // a -> grey-box\n '\\x62':'\\u2409', // b -> h/t\n '\\x63':'\\u240c', // c -> f/f\n '\\x64':'\\u240d', // d -> c/r\n '\\x65':'\\u240a', // e -> l/f\n '\\x66':'\\u00b0', // f -> degree\n '\\x67':'\\u00b1', // g -> +/-\n '\\x68':'\\u2424', // h -> n/l\n '\\x69':'\\u240b', // i -> v/t\n '\\x6a':'\\u2518', // j -> bottom-right\n '\\x6b':'\\u2510', // k -> top-right\n '\\x6c':'\\u250c', // l -> top-left\n '\\x6d':'\\u2514', // m -> bottom-left\n '\\x6e':'\\u253c', // n -> line-cross\n '\\x6f':'\\u23ba', // o -> scan1\n '\\x70':'\\u23bb', // p -> scan3\n '\\x71':'\\u2500', // q -> scan5\n '\\x72':'\\u23bc', // r -> scan7\n '\\x73':'\\u23bd', // s -> scan9\n '\\x74':'\\u251c', // t -> left-tee\n '\\x75':'\\u2524', // u -> right-tee\n '\\x76':'\\u2534', // v -> bottom-tee\n '\\x77':'\\u252c', // w -> top-tee\n '\\x78':'\\u2502', // x -> vertical-line\n '\\x79':'\\u2264', // y -> less-equal\n '\\x7a':'\\u2265', // z -> greater-equal\n '\\x7b':'\\u03c0', // { -> pi\n '\\x7c':'\\u2260', // | -> not-equal\n '\\x7d':'\\u00a3', // } -> british-pound\n '\\x7e':'\\u00b7', // ~ -> dot\n });\n\n/**\n * British character map.\n * http://vt100.net/docs/vt220-rm/table2-5.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['A'] = new hterm.VT.CharacterMap(\n 'british', {\n '\\x23': '\\u00a3', // # -> british-pound\n });\n\n/**\n * US ASCII map, no changes.\n */\nhterm.VT.CharacterMaps.DefaultMaps['B'] = new hterm.VT.CharacterMap(\n 'us', null);\n\n/**\n * Dutch character map.\n * http://vt100.net/docs/vt220-rm/table2-6.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['4'] = new hterm.VT.CharacterMap(\n 'dutch', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00be', // @ -> 3/4\n\n '\\x5b': '\\u0132', // [ -> 'ij' ligature (xterm goes with \\u00ff?)\n '\\x5c': '\\u00bd', // \\ -> 1/2\n '\\x5d': '\\u007c', // ] -> vertical bar\n\n '\\x7b': '\\u00a8', // { -> two dots\n '\\x7c': '\\u0066', // | -> f\n '\\x7d': '\\u00bc', // } -> 1/4\n '\\x7e': '\\u00b4', // ~ -> acute\n });\n\n/**\n * Finnish character map.\n * http://vt100.net/docs/vt220-rm/table2-7.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['C'] =\nhterm.VT.CharacterMaps.DefaultMaps['5'] = new hterm.VT.CharacterMap(\n 'finnish', {\n '\\x5b': '\\u00c4', // [ -> 'A' umlaut\n '\\x5c': '\\u00d6', // \\ -> 'O' umlaut\n '\\x5d': '\\u00c5', // ] -> 'A' ring\n '\\x5e': '\\u00dc', // ~ -> 'u' umlaut\n\n '\\x60': '\\u00e9', // ` -> 'e' acute\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00e5', // } -> 'a' ring\n '\\x7e': '\\u00fc', // ~ -> 'u' umlaut\n });\n\n/**\n * French character map.\n * http://vt100.net/docs/vt220-rm/table2-8.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['R'] = new hterm.VT.CharacterMap(\n 'french', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00e0', // @ -> 'a' grave\n\n '\\x5b': '\\u00b0', // [ -> ring\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00a7', // ] -> section symbol (double s)\n\n '\\x7b': '\\u00e9', // { -> 'e' acute\n '\\x7c': '\\u00f9', // | -> 'u' grave\n '\\x7d': '\\u00e8', // } -> 'e' grave\n '\\x7e': '\\u00a8', // ~ -> umlaut\n });\n\n/**\n * French Canadian character map.\n * http://vt100.net/docs/vt220-rm/table2-9.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['Q'] = new hterm.VT.CharacterMap(\n 'french canadian', {\n '\\x40': '\\u00e0', // @ -> 'a' grave\n\n '\\x5b': '\\u00e2', // [ -> 'a' circumflex\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00ea', // ] -> 'e' circumflex\n '\\x5e': '\\u00ee', // ^ -> 'i' circumflex\n\n '\\x60': '\\u00f4', // ` -> 'o' circumflex\n\n '\\x7b': '\\u00e9', // { -> 'e' acute\n '\\x7c': '\\u00f9', // | -> 'u' grave\n '\\x7d': '\\u00e8', // } -> 'e' grave\n '\\x7e': '\\u00fb', // ~ -> 'u' circumflex\n });\n\n/**\n * German character map.\n * http://vt100.net/docs/vt220-rm/table2-10.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['K'] = new hterm.VT.CharacterMap(\n 'german', {\n '\\x40': '\\u00a7', // @ -> section symbol (double s)\n\n '\\x5b': '\\u00c4', // [ -> 'A' umlaut\n '\\x5c': '\\u00d6', // \\ -> 'O' umlaut\n '\\x5d': '\\u00dc', // ] -> 'U' umlaut\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00fc', // } -> 'u' umlaut\n '\\x7e': '\\u00df', // ~ -> eszett\n });\n\n/**\n * Italian character map.\n * http://vt100.net/docs/vt220-rm/table2-11.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['Y'] = new hterm.VT.CharacterMap(\n 'italian', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00a7', // @ -> section symbol (double s)\n\n '\\x5b': '\\u00b0', // [ -> ring\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00e9', // ] -> 'e' acute\n\n '\\x60': '\\u00f9', // ` -> 'u' grave\n\n '\\x7b': '\\u00e0', // { -> 'a' grave\n '\\x7c': '\\u00f2', // | -> 'o' grave\n '\\x7d': '\\u00e8', // } -> 'e' grave\n '\\x7e': '\\u00ec', // ~ -> 'i' grave\n });\n\n/**\n * Norwegian/Danish character map.\n * http://vt100.net/docs/vt220-rm/table2-12.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['E'] =\nhterm.VT.CharacterMaps.DefaultMaps['6'] = new hterm.VT.CharacterMap(\n 'norwegian/danish', {\n '\\x40': '\\u00c4', // @ -> 'A' umlaut\n\n '\\x5b': '\\u00c6', // [ -> 'AE' ligature\n '\\x5c': '\\u00d8', // \\ -> 'O' stroke\n '\\x5d': '\\u00c5', // ] -> 'A' ring\n '\\x5e': '\\u00dc', // ^ -> 'U' umlaut\n\n '\\x60': '\\u00e4', // ` -> 'a' umlaut\n\n '\\x7b': '\\u00e6', // { -> 'ae' ligature\n '\\x7c': '\\u00f8', // | -> 'o' stroke\n '\\x7d': '\\u00e5', // } -> 'a' ring\n '\\x7e': '\\u00fc', // ~ -> 'u' umlaut\n });\n\n/**\n * Spanish character map.\n * http://vt100.net/docs/vt220-rm/table2-13.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['Z'] = new hterm.VT.CharacterMap(\n 'spanish', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00a7', // @ -> section symbol (double s)\n\n '\\x5b': '\\u00a1', // [ -> '!' inverted\n '\\x5c': '\\u00d1', // \\ -> 'N' tilde\n '\\x5d': '\\u00bf', // ] -> '?' inverted\n\n '\\x7b': '\\u00b0', // { -> ring\n '\\x7c': '\\u00f1', // | -> 'n' tilde\n '\\x7d': '\\u00e7', // } -> 'c' cedilla\n });\n\n/**\n * Swedish character map.\n * http://vt100.net/docs/vt220-rm/table2-14.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['7'] =\nhterm.VT.CharacterMaps.DefaultMaps['H'] = new hterm.VT.CharacterMap(\n 'swedish', {\n '\\x40': '\\u00c9', // @ -> 'E' acute\n\n '\\x5b': '\\u00c4', // [ -> 'A' umlaut\n '\\x5c': '\\u00d6', // \\ -> 'O' umlaut\n '\\x5d': '\\u00c5', // ] -> 'A' ring\n '\\x5e': '\\u00dc', // ^ -> 'U' umlaut\n\n '\\x60': '\\u00e9', // ` -> 'e' acute\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00e5', // } -> 'a' ring\n '\\x7e': '\\u00fc', // ~ -> 'u' umlaut\n });\n\n/**\n * Swiss character map.\n * http://vt100.net/docs/vt220-rm/table2-15.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['='] = new hterm.VT.CharacterMap(\n 'swiss', {\n '\\x23': '\\u00f9', // # -> 'u' grave\n\n '\\x40': '\\u00e0', // @ -> 'a' grave\n\n '\\x5b': '\\u00e9', // [ -> 'e' acute\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00ea', // ] -> 'e' circumflex\n '\\x5e': '\\u00ee', // ^ -> 'i' circumflex\n '\\x5f': '\\u00e8', // _ -> 'e' grave\n\n '\\x60': '\\u00f4', // ` -> 'o' circumflex\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00fc', // } -> 'u' umlaut\n '\\x7e': '\\u00fb', // ~ -> 'u' circumflex\n });\nlib.resource.add('hterm/audio/bell', 'audio/ogg;base64',\n'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' +\n'zinmkFLKMeUcUko5p5xTzjkIHYTKMQadgxAppRxTzinHHITMQeWcg9BBKAAAIMABACDAQig0ZEUA' +\n'ECcA4HAkz5M0SxQlSxNFzxRl1xNN15U0zTQ1UVRVyxNV1VRV2xZNVbYlTRNNTfRUVRNFVRVV05ZN' +\n'VbVtzzRl2VRV3RZV1bZl2xZ+V5Z13zNNWRZV1dZNVbV115Z9X9ZtXZg0zTQ1UVRVTRRV1VRV2zZV' +\n'17Y1UXRVUVVlWVRVWXZlWfdVV9Z9SxRV1VNN2RVVVbZV2fVtVZZ94XRVXVdl2fdVWRZ+W9eF4fZ9' +\n'4RhV1dZN19V1VZZ9YdZlYbd13yhpmmlqoqiqmiiqqqmqtm2qrq1bouiqoqrKsmeqrqzKsq+rrmzr' +\n'miiqrqiqsiyqqiyrsqz7qizrtqiquq3KsrCbrqvrtu8LwyzrunCqrq6rsuz7qizruq3rxnHrujB8' +\n'pinLpqvquqm6um7runHMtm0co6rqvirLwrDKsu/rui+0dSFRVXXdlF3jV2VZ921fd55b94WybTu/' +\n'rfvKceu60vg5z28cubZtHLNuG7+t+8bzKz9hOI6lZ5q2baqqrZuqq+uybivDrOtCUVV9XZVl3zdd' +\n'WRdu3zeOW9eNoqrquirLvrDKsjHcxm8cuzAcXds2jlvXnbKtC31jyPcJz2vbxnH7OuP2daOvDAnH' +\n'jwAAgAEHAIAAE8pAoSErAoA4AQAGIecUUxAqxSB0EFLqIKRUMQYhc05KxRyUUEpqIZTUKsYgVI5J' +\n'yJyTEkpoKZTSUgehpVBKa6GU1lJrsabUYu0gpBZKaS2U0lpqqcbUWowRYxAy56RkzkkJpbQWSmkt' +\n'c05K56CkDkJKpaQUS0otVsxJyaCj0kFIqaQSU0mptVBKa6WkFktKMbYUW24x1hxKaS2kEltJKcYU' +\n'U20txpojxiBkzknJnJMSSmktlNJa5ZiUDkJKmYOSSkqtlZJSzJyT0kFIqYOOSkkptpJKTKGU1kpK' +\n'sYVSWmwx1pxSbDWU0lpJKcaSSmwtxlpbTLV1EFoLpbQWSmmttVZraq3GUEprJaUYS0qxtRZrbjHm' +\n'GkppraQSW0mpxRZbji3GmlNrNabWam4x5hpbbT3WmnNKrdbUUo0txppjbb3VmnvvIKQWSmktlNJi' +\n'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' +\n'm2L/kruPM6Q7oz4tvDQy+bZ3HzOi+gNHA4DZEgA=' +\n''\n);\n\nlib.resource.add('hterm/images/icon-96', 'image/png;base64',\n'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' +\n'ODoyNC0wNDowMNba8BsAAAAASUVORK5CYII=' +\n''\n);\n\nlib.resource.add('hterm/concat/date', 'text/plain',\n'Tue, 22 Aug 2017 06:42:31 +0000' +\n''\n);\n\nlib.resource.add('hterm/changelog/version', 'text/plain',\n'1.70' +\n''\n);\n\nlib.resource.add('hterm/changelog/date', 'text/plain',\n'2017-08-16' +\n''\n);\n\nlib.resource.add('hterm/git/HEAD', 'text/plain',\n'git rev-parse HEAD' +\n''\n);\n\n// SOURCE FILE: hterm/js/hterm_export.js\nmodule.exports = {\n hterm: hterm,\n lib: lib\n};\n\n","/*!\n * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit)\n * @license MIT\n * @version 0.5.0\n * ==xterm-addon-fit/LICENSE==\n * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.FitAddon=t():e.FitAddon=t()}(self,(function(){return(()=>{\"use strict\";var e={775:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue(\"height\")),i=Math.max(0,parseInt(t.getPropertyValue(\"width\"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue(\"padding-top\"))+parseInt(n.getPropertyValue(\"padding-bottom\"))),a=i-(parseInt(n.getPropertyValue(\"padding-right\"))+parseInt(n.getPropertyValue(\"padding-left\")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(a/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()}));\n//# sourceMappingURL=xterm-addon-fit.js.map","/*!\n * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links)\n * @license MIT\n * @version 0.4.0\n * ==xterm-addon-web-links/LICENSE==\n * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.WebLinksAddon=t():e.WebLinksAddon=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.WebLinksAddon=void 0;var r=n(1),i=new RegExp(\"(?:^|[^\\\\da-z\\\\.-]+)((https?:\\\\/\\\\/)((([\\\\da-z\\\\.-]+)\\\\.([a-z\\\\.]{2,6}))|((\\\\d{1,3}\\\\.){3}\\\\d{1,3})|(localhost))(:\\\\d{1,5})?((\\\\/[\\\\/\\\\w\\\\.\\\\-%~:+@]*)*([^:\\\"'\\\\s]))?(\\\\?[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?(#[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?)($|[^\\\\/\\\\w\\\\.\\\\-%]+)\");function o(e,t){var n=window.open();n?(n.opener=null,n.location.href=t):console.warn(\"Opening link blocked as opener could not be cleared\")}var a=function(){function e(e,t,n){void 0===e&&(e=o),void 0===t&&(t={}),void 0===n&&(n=!1),this._handler=e,this._options=t,this._useLinkProvider=n,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&\"registerLinkProvider\"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new r.WebLinkProvider(this._terminal,i,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(i,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var r=function(){function e(e,t,n){this._terminal=e,this._regex=t,this._handler=n}return e.prototype.provideLinks=function(e,t){t(i.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=r;var i=function(){function e(){}return e.computeLink=function(t,n,r,i){for(var o,a=new RegExp(n.source,(n.flags||\"\")+\"g\"),s=e._translateBufferLineToStringWithWrap(t-1,!1,r),u=s[0],d=s[1],l=-1,c=[];null!==(o=a.exec(u));){var f=o[1];if(!f){console.log(\"match found without corresponding matchIndex\");break}if(l=u.indexOf(f,l+1),a.lastIndex=l+f.length,l<0)break;for(var p=l+f.length,h=d+1;p>r.cols;)p-=r.cols,h++;var v={start:{x:l+1,y:d+1},end:{x:p,y:h}};c.push({range:v,text:f,activate:i})}return c},e._translateBufferLineToStringWithWrap=function(e,t,n){var r,i,o=\"\";do{if(!(s=n.buffer.active.getLine(e)))break;s.isWrapped&&e--,i=s.isWrapped}while(i);var a=e;do{var s,u=n.buffer.active.getLine(e+1);if(r=!!u&&u.isWrapped,!(s=n.buffer.active.getLine(e)))break;o+=s.translateToString(!r&&t).substring(0,n.cols),e++}while(r);return[o,a]},e}();t.LinkComputer=i}])}));\n//# sourceMappingURL=xterm-addon-web-links.js.map","/*!\n * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl)\n * @license MIT\n * @version 0.10.0\n * ==xterm-addon-webgl/LICENSE==\n * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.WebglAddon=e():t.WebglAddon=e()}(self,(function(){return(()=>{\"use strict\";var t={965:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.GlyphRenderer=void 0;var r=i(381),o=i(310),n=i(455),s=i(259),a=i(855),l=i(147),h=10,c=h*Float32Array.BYTES_PER_ELEMENT,_=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_unitquad;\\nlayout (location = 1) in vec2 a_cellpos;\\nlayout (location = 2) in vec2 a_offset;\\nlayout (location = 3) in vec2 a_size;\\nlayout (location = 4) in vec2 a_texcoord;\\nlayout (location = 5) in vec2 a_texsize;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec2 v_texcoord;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec2 v_texcoord;\\n\\nuniform sampler2D u_texture;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = texture(u_texture, v_texcoord);\\n}\"));this._program=s,this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._textureLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_texture\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),_=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,_),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,c,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,c,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,c,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,c,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,c,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=r.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return t.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},t.prototype.updateCell=function(t,e,i,r,o,n){this._updateCell(this._vertices.attributes,t,e,i,r,o,n)},t.prototype._updateCell=function(t,e,i,r,o,s,l){var c,_=(i*this._terminal.cols+e)*h;r!==a.NULL_CELL_CODE&&r!==a.WHITESPACE_CELL_CODE&&void 0!==r?this._atlas&&((c=l&&l.length>1?this._atlas.getRasterizedGlyphCombinedChar(l,o,s):this._atlas.getRasterizedGlyph(r,o,s))?(t[_]=-c.offset.x+this._dimensions.scaledCharLeft,t[_+1]=-c.offset.y+this._dimensions.scaledCharTop,t[_+2]=c.size.x/this._dimensions.scaledCanvasWidth,t[_+3]=c.size.y/this._dimensions.scaledCanvasHeight,t[_+4]=c.texturePositionClipSpace.x,t[_+5]=c.texturePositionClipSpace.y,t[_+6]=c.sizeClipSpace.x,t[_+7]=c.sizeClipSpace.y):n.fill(t,0,_,_+h-1-2)):n.fill(t,0,_,_+h-1-2)},t.prototype.updateSelection=function(t){var e=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var i=this._colors.selectionOpaque.rgba>>>8|50331648;if(t.selection.columnSelectMode)for(var r=t.selection.startCol,o=t.selection.endCol-r,n=t.selection.viewportCappedEndRow-t.selection.viewportCappedStartRow+1,a=t.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var g=l.AttributeData.toColorRGB(f.getBgColor());u|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;u|=v>>8&16711680|v>>8&65280|v>>8&255}u|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(h));var C=s.getCell(c).getChars();this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u,C)}else this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u)}},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._colors.ansi[t]},t.prototype.onResize=function(){var t=this._terminal,e=this._gl;e.viewport(0,0,e.canvas.width,e.canvas.height);var i=t.cols*t.rows*h;if(this._vertices.count!==i){this._vertices.count=i,this._vertices.attributes=new Float32Array(i);for(var r=0;r{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RectangleRenderer=void 0;var r=i(381),o=i(455),n=i(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_position;\\nlayout (location = 1) in vec2 a_size;\\nlayout (location = 2) in vec4 a_color;\\nlayout (location = 3) in vec2 a_unitquad;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec4 v_color;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_color = a_color;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec4 v_color;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = v_color;\\n}\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),c=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,c),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return t.prototype.render=function(){var t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,r.PROJECTION_MATRIX),t.uniform2f(this._resolutionLocation,t.canvas.width,t.canvas.height),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,this._vertices.count),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.selection,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,3)},t.prototype.onResize=function(){this._updateViewportRectangle()},t.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},t.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},t.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},t.prototype.updateSelection=function(t){var e=this._terminal;if(t.hasSelection)if(t.columnSelectMode){var i=t.startCol,r=t.endCol-i,n=t.viewportCappedEndRow-t.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,r*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{i=t.viewportStartRow===t.viewportCappedStartRow?t.startCol:0;var s=t.viewportCappedStartRow===t.viewportEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-i)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(t.viewportCappedEndRow-t.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(t.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,e.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),t.viewportCappedStartRow!==t.viewportCappedEndRow){var l=t.viewportEndRow===t.viewportCappedEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,16,0,t.viewportCappedEndRow*this._dimensions.scaledCellHeight,l*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},t.prototype.updateBackgrounds=function(t){for(var e=this._terminal,i=this._vertices,r=1,o=0;o>24&255)/255,d=(l>>16&255)/255,u=(l>>8&255)/255;this._addRectangle(t.attributes,e,h,c,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,_,d,u,1)},t.prototype._addRectangle=function(t,e,i,r,o,n,s,a,l,h){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s,t[e+5]=a,t[e+6]=l,t[e+7]=h},t.prototype._addRectangleFloat=function(t,e,i,r,o,n,s){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s[0],t[e+5]=s[1],t[e+6]=s[2],t[e+7]=s[3]},t.prototype._colorToFloat32Array=function(t){return new Float32Array([(t.rgba>>24&255)/255,(t.rgba>>16&255)/255,(t.rgba>>8&255)/255,(255&t.rgba)/255])},t}();e.RectangleRenderer=a},310:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RenderModel=e.COMBINED_CHAR_BIT_MASK=e.RENDER_MODEL_FG_OFFSET=e.RENDER_MODEL_BG_OFFSET=e.RENDER_MODEL_INDICIES_PER_CELL=void 0;var r=i(455);e.RENDER_MODEL_INDICIES_PER_CELL=3,e.RENDER_MODEL_BG_OFFSET=1,e.RENDER_MODEL_FG_OFFSET=2,e.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function t(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return t.prototype.resize=function(t,i){var r=t*i*e.RENDER_MODEL_INDICIES_PER_CELL;r!==this.cells.length&&(this.cells=new Uint32Array(r),this.lineLengths=new Uint32Array(i))},t.prototype.clear=function(){r.fill(this.cells,0,0),r.fill(this.lineLengths,0,0)},t.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},t}();e.RenderModel=o},259:(t,e)=>{function i(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length),e<0&&(e=(t.length+e)%t.length),i=i>=t.length?t.length:(t.length+i)%t.length,e=Math.min(e,i);for(var r=new t.constructor(i-e),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglAddon=void 0;var r=i(666),o=function(){function t(t){this._preserveDrawingBuffer=t}return t.prototype.activate=function(t){if(!t.element)throw new Error(\"Cannot activate WebglAddon before Terminal.open\");this._terminal=t;var e=t._core._renderService,i=t._core._colorManager.colors;this._renderer=new r.WebglRenderer(t,i,this._preserveDrawingBuffer),e.setRenderer(this._renderer)},t.prototype.dispose=function(){if(!this._terminal)throw new Error(\"Cannot dispose WebglAddon because it is activated\");var t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(t.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._renderer)||void 0===t?void 0:t.textureAtlas},enumerable:!1,configurable:!0}),t.prototype.clearTextureAtlas=function(){var t;null===(t=this._renderer)||void 0===t||t.clearCharAtlas()},t}();e.WebglAddon=o},666:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglRenderer=void 0;var n=i(965),s=i(733),a=i(461),l=i(713),h=i(344),c=i(310),_=i(859),d=i(855),u=i(345),f=i(782),p=function(t){function e(e,i,r){var o=t.call(this)||this;o._terminal=e,o._colors=i,o._model=new c.RenderModel,o._workCell=new f.CellData,o._onRequestRedraw=new u.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement(\"canvas\");var l={antialias:!1,depth:!1,preserveDrawingBuffer:r};if(o._gl=o._canvas.getContext(\"webgl2\",l),!o._gl)throw new Error(\"WebGL2 not supported \"+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new h.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(e,t),Object.defineProperty(e.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._renderLayers.forEach((function(t){return t.dispose()})),this._core.screenElement.removeChild(this._canvas),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._charAtlas)||void 0===t?void 0:t.cacheCanvas},enumerable:!1,configurable:!0}),e.prototype.setColors=function(t){var e=this;this._colors=t,this._renderLayers.forEach((function(t){t.setColors(e._terminal,e._colors),t.reset(e._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},e.prototype.onResize=function(t,e){var i=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(t){return t.resize(i._terminal,i.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+\"px\",this._canvas.style.height=this.dimensions.canvasHeight+\"px\",this._core.screenElement.style.width=this.dimensions.canvasWidth+\"px\",this._core.screenElement.style.height=this.dimensions.canvasHeight+\"px\",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},e.prototype.onBlur=function(){var t=this;this._renderLayers.forEach((function(e){return e.onBlur(t._terminal)}))},e.prototype.onFocus=function(){var t=this;this._renderLayers.forEach((function(e){return e.onFocus(t._terminal)}))},e.prototype.onSelectionChanged=function(t,e,i){var r=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(r._terminal,t,e,i)})),this._updateSelectionModel(t,e,i),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.onCursorMove=function(){var t=this;this._renderLayers.forEach((function(e){return e.onCursorMove(t._terminal)}))},e.prototype.onOptionsChanged=function(){var t=this;this._renderLayers.forEach((function(e){return e.onOptionsChanged(t._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},e.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var t=l.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!(\"getRasterizedGlyph\"in t))throw new Error(\"The webgl renderer only works with the webgl char atlas\");this._charAtlas=t,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},e.prototype.clearCharAtlas=function(){var t;null===(t=this._charAtlas)||void 0===t||t.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.clear=function(){var t=this;this._renderLayers.forEach((function(e){return e.reset(t._terminal)}))},e.prototype.registerCharacterJoiner=function(t){return-1},e.prototype.deregisterCharacterJoiner=function(t){return!1},e.prototype.renderRows=function(t,e){var i=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(r){return r.onGridChanged(i._terminal,t,e)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(t,e),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},e.prototype._updateModel=function(t,e){for(var i=this._core,r=t;r<=e;r++){var o=r+i.buffer.ydisp,n=i.buffer.lines.get(o);this._model.lineLengths[r]=0;for(var s=0;s1&&(l|=c.COMBINED_CHAR_BIT_MASK),this._model.cells[h]=l,this._model.cells[h+c.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[h+c.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,r,l,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},e.prototype._updateSelectionModel=function(t,e,i){void 0===i&&(i=!1);var r=this._terminal;if(!t||!e||t[0]===e[0]&&t[1]===e[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=t[1]-r.buffer.active.viewportY,n=e[1]-r.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,r.rows-1);if(s>=r.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=i,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=t[0],this._model.selection.endCol=e[0],this._rectangleRenderer.updateSelection(this._model.selection)},e.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption(\"lineHeight\")),this.dimensions.scaledCharTop=1===this._terminal.getOption(\"lineHeight\")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption(\"letterSpacing\")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption(\"letterSpacing\")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},e}(_.Disposable);e.WebglRenderer=p},381:(t,e)=>{function i(t,e,i){var o=r(t.createShader(e));if(t.shaderSource(o,i),t.compileShader(o),t.getShaderParameter(o,t.COMPILE_STATUS))return o;console.error(t.getShaderInfoLog(o)),t.deleteShader(o)}function r(t){if(!t)throw new Error(\"value must not be falsy\");return t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.throwIfFalsy=e.expandFloat32Array=e.createShader=e.createProgram=e.PROJECTION_MATRIX=void 0,e.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),e.createProgram=function(t,e,o){var n=r(t.createProgram());if(t.attachShader(n,r(i(t,t.VERTEX_SHADER,e))),t.attachShader(n,r(i(t,t.FRAGMENT_SHADER,o))),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS))return n;console.error(t.getProgramInfoLog(n)),t.deleteProgram(n)},e.createShader=i,e.expandFloat32Array=function(t,e){for(var i=Math.min(2*t.length,e),r=new Float32Array(i),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.removeTerminalFromCache=e.acquireCharAtlas=void 0;var r=i(433),o=i(167),n=[];e.acquireCharAtlas=function(t,e,i,s){for(var a=r.generateConfig(i,s,t,e),l=0;l=0){if(r.configEquals(c.config,a))return c.atlas;1===c.ownedBy.length?(c.atlas.dispose(),n.splice(l,1)):c.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(e,\"__esModule\",{value:!0}),e.is256Color=e.configEquals=e.generateConfig=void 0;var i={css:\"\",rgba:0};e.generateConfig=function(t,e,r,o){var n={foreground:o.foreground,background:o.background,cursor:i,cursorAccent:i,selectionTransparent:i,selectionOpaque:i,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:t,scaledCharHeight:e,fontFamily:r.getOption(\"fontFamily\"),fontSize:r.getOption(\"fontSize\"),fontWeight:r.getOption(\"fontWeight\"),fontWeightBold:r.getOption(\"fontWeightBold\"),allowTransparency:r.getOption(\"allowTransparency\"),drawBoldTextInBrightColors:r.getOption(\"drawBoldTextInBrightColors\"),minimumContrastRatio:r.getOption(\"minimumContrastRatio\"),colors:n}},e.configEquals=function(t,e){for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglCharAtlas=void 0;var r=i(499),o=i(855),n=i(381),s=i(147),a=i(742),l=1024,h=1024,c=Math.floor(819.2),_={css:\"rgba(0, 0, 0, 0)\",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},u=function(){function t(t,e){this._config=e,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=t.createElement(\"canvas\"),this.cacheCanvas.width=l,this.cacheCanvas.height=h,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext(\"2d\",{alpha:!0})),this._tmpCanvas=t.createElement(\"canvas\"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext(\"2d\",{alpha:this._config.allowTransparency}))}return t.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},t.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},t.prototype._doWarmUp=function(){for(var t,e,i=33;i<126;i++){var r=this._drawToCache(i,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[i]=((t={})[o.DEFAULT_COLOR]=((e={})[o.DEFAULT_COLOR]=r,e),t)}},t.prototype.beginFrame=function(){return this._currentRowY>c&&(this.clearTexture(),this.warmUp(),!0)},t.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,l,h),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},t.prototype.getRasterizedGlyphCombinedChar=function(t,e,i){var r,o=this._cacheMapCombined[t];o||(o={},this._cacheMapCombined[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype.getRasterizedGlyph=function(t,e,i){var r,o=this._cacheMap[t];o||(o={},this._cacheMap[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._config.colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._config.colors.ansi[t]},t.prototype._getBackgroundColor=function(t,e,i){if(this._config.allowTransparency)return _;switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e);case 50331648:var r=s.AttributeData.toColorRGB(e);return{rgba:e<<8,css:\"#\"+f(r[0])+f(r[1])+f(r[2])};case 0:default:return i?this._config.colors.foreground:this._config.colors.background}},t.prototype._getForegroundCss=function(t,e,i,r,o,n,l,h){var c=this._getMinimumContrastCss(t,e,i,r,o,n,l,h);if(c)return c;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&h&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var _=s.AttributeData.toColorRGB(n);return a.channels.toCss(_[0],_[1],_[2]);case 0:default:if(l){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},t.prototype._resolveBackgroundRgba=function(t,e,i){switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},t.prototype._resolveForegroundRgba=function(t,e,i,r){switch(t){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&r&&e<8&&(e+=8),this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},t.prototype._getMinimumContrastCss=function(t,e,i,r,o,n,s,l){if(1!==this._config.minimumContrastRatio){var h=this._config.colors.contrastCache.getCss(t,r);if(void 0!==h)return h||void 0;var c=this._resolveBackgroundRgba(e,i,s),_=this._resolveForegroundRgba(o,n,s,l),d=a.rgba.ensureContrastRatio(c,_,this._config.minimumContrastRatio);if(d){var u=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(t,r,u),u}this._config.colors.contrastCache.setCss(t,r,null)}},t.prototype._drawToCache=function(t,e,i){var o=\"number\"==typeof t?String.fromCharCode(t):t;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=e,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),c=!!this._workAttributeData.isItalic(),_=this._workAttributeData.getFgColor(),u=this._workAttributeData.getFgColorMode(),f=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var g=_;_=f,f=g;var v=u;u=p,p=v}var C=this._getBackgroundColor(p,f,s);this._tmpCtx.globalCompositeOperation=\"copy\",this._tmpCtx.fillStyle=C.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation=\"source-over\";var m=n?this._config.fontWeightBold:this._config.fontWeight,y=c?\"italic\":\"\";this._tmpCtx.font=y+\" \"+m+\" \"+this._config.fontSize*this._config.devicePixelRatio+\"px \"+this._config.fontFamily,this._tmpCtx.textBaseline=\"middle\",this._tmpCtx.fillStyle=this._getForegroundCss(e,p,f,i,u,_,s,n),a&&(this._tmpCtx.globalAlpha=r.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var R=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(t,e){for(var i=!0,r=e.rgba>>>24,o=e.rgba>>>16&255,n=e.rgba>>>8&255,s=0;sl&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),b.texturePosition.x=this._currentRowX,b.texturePosition.y=this._currentRowY,b.texturePositionClipSpace.x=this._currentRowX/l,b.texturePositionClipSpace.y=this._currentRowY/h,this._currentRowHeight=Math.max(this._currentRowHeight,b.size.y),this._currentRowX+=b.size.x,this._cacheCtx.putImageData(w,b.texturePosition.x,b.texturePosition.y),b},t.prototype._findGlyphBoundingBox=function(t,e){e.top=0;for(var i=!1,r=0;r=0;o--){for(r=0;r=0;r--){for(o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.BaseRenderLayer=void 0;var r=i(713),o=i(381),n=function(){function t(t,e,i,r,o){this._container=t,this._alpha=r,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+e+\"-layer\"),this._canvas.style.zIndex=i.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return t.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},t.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},t.prototype.onOptionsChanged=function(t){},t.prototype.onBlur=function(t){},t.prototype.onFocus=function(t){},t.prototype.onCursorMove=function(t){},t.prototype.onGridChanged=function(t,e,i){},t.prototype.onSelectionChanged=function(t,e,i,r){void 0===r&&(r=!1)},t.prototype.setColors=function(t,e){this._refreshCharAtlas(t,e)},t.prototype._setTransparency=function(t,e){if(e!==this._alpha){var i=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(t,this._colors),this.onGridChanged(t,0,t.rows-1)}},t.prototype._refreshCharAtlas=function(t,e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=r.acquireCharAtlas(t,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},t.prototype.resize=function(t,e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(t,this._colors)},t.prototype._fillCells=function(t,e,i,r){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight)},t.prototype._fillBottomLineAtCells=function(t,e,i){void 0===i&&(i=1),this._ctx.fillRect(t*this._scaledCellWidth,(e+1)*this._scaledCellHeight-window.devicePixelRatio-1,i*this._scaledCellWidth,window.devicePixelRatio)},t.prototype._fillLeftLineAtCell=function(t,e,i){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,window.devicePixelRatio*i,this._scaledCellHeight)},t.prototype._strokeRectAtCell=function(t,e,i,r){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(t*this._scaledCellWidth+window.devicePixelRatio/2,e*this._scaledCellHeight+window.devicePixelRatio/2,i*this._scaledCellWidth-window.devicePixelRatio,r*this._scaledCellHeight-window.devicePixelRatio)},t.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},t.prototype._clearCells=function(t,e,i,r){this._alpha?this._ctx.clearRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight))},t.prototype._fillCharTrueColor=function(t,e,i,r){this._ctx.font=this._getFont(t,!1,!1),this._ctx.textBaseline=\"middle\",this._clipRow(t,r),this._ctx.fillText(e.getChars(),i*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},t.prototype._clipRow=function(t,e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,t.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},t.prototype._getFont=function(t,e,i){return(i?\"italic\":\"\")+\" \"+(e?t.getOption(\"fontWeightBold\"):t.getOption(\"fontWeight\"))+\" \"+t.getOption(\"fontSize\")*window.devicePixelRatio+\"px \"+t.getOption(\"fontFamily\")},t}();e.BaseRenderLayer=n},461:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CursorRenderLayer=void 0;var n=i(592),s=i(782),a=600,l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"cursor\",i,!0,r)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:\"\",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},e.prototype.reset=function(t){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(t))},e.prototype.onBlur=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onFocus=function(t){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(t):this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onOptionsChanged=function(t){var e,i=this;t.getOption(\"cursorBlink\")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new h(t,(function(){i._render(t,!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onCursorMove=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype.onGridChanged=function(t,e,i){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(t,!1):this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype._render=function(t,e){if(t._core._coreService.isCursorInitialized&&!t._core._coreService.isCursorHidden){var i=t.buffer.active.baseY+t.buffer.active.cursorY,r=i-t.buffer.active.viewportY,o=Math.min(t.buffer.active.cursorX,t.cols-1);if(r<0||r>=t.rows)this._clearCursor();else if(t._core.buffer.lines.get(i).loadCell(o,this._cell),void 0!==this._cell.content){if(!c(t)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=t.getOption(\"cursorStyle\");return n&&\"block\"!==n?this._cursorRenderers[n](t,o,r,this._cell):this._renderBlurCursor(t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===r&&this._state.isFocused===c(t)&&this._state.style===t.getOption(\"cursorStyle\")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[t.getOption(\"cursorStyle\")||\"block\"](t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=t.getOption(\"cursorStyle\"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},e.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},e.prototype._renderBarCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,i,t.getOption(\"cursorWidth\")),this._ctx.restore()},e.prototype._renderBlockCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,i,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(t,r,e,i),this._ctx.restore()},e.prototype._renderUnderlineCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,i),this._ctx.restore()},e.prototype._renderBlurCursor=function(t,e,i,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,i,r.getWidth(),1),this._ctx.restore()},e}(n.BaseRenderLayer);e.CursorRenderLayer=l;var h=function(){function t(t,e){this._renderCallback=e,this.isCursorVisible=!0,c(t)&&this._restartInterval()}return Object.defineProperty(t.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.restartBlinkAnimation=function(t){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},t.prototype._restartInterval=function(t){var e=this;void 0===t&&(t=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);if(e._animationTimeRestarted=void 0,t>0)return void e._restartInterval(t)}e.isCursorVisible=!1,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0})),e._blinkInterval=window.setInterval((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);return e._animationTimeRestarted=void 0,void e._restartInterval(t)}e.isCursorVisible=!e.isCursorVisible,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))}),a)}),t)},t.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.resume=function(t){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(t)},t}();function c(t){return document.activeElement===t.textarea&&document.hasFocus()}},733:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.LinkRenderLayer=void 0;var n=i(592),s=i(499),a=i(433),l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"link\",i,!0,r)||this;return o.linkifier.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),o.linkifier2.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier2.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state=void 0},e.prototype.reset=function(t){this._clearCurrentLink()},e.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var t=this._state.y2-this._state.y1-1;t>0&&this._clearCells(0,this._state.y1+1,this._state.cols,t),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},e.prototype._onShowLinkUnderline=function(t){if(t.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==t.fg&&a.is256Color(t.fg)?this._ctx.fillStyle=this._colors.ansi[t.fg].css:this._ctx.fillStyle=this._colors.foreground.css,t.y1===t.y2)this._fillBottomLineAtCells(t.x1,t.y1,t.x2-t.x1);else{this._fillBottomLineAtCells(t.x1,t.y1,t.cols-t.x1);for(var e=t.y1+1;e{var i,r,o,n;function s(t){var e=t.toString(16);return e.length<2?\"0\"+e:e}function a(t,e){return t>>0}}(i=e.channels||(e.channels={})),(r=e.color||(e.color={})).blend=function(t,e){var r=(255&e.rgba)/255;if(1===r)return{css:e.css,rgba:e.rgba};var o=e.rgba>>24&255,n=e.rgba>>16&255,s=e.rgba>>8&255,a=t.rgba>>24&255,l=t.rgba>>16&255,h=t.rgba>>8&255,c=a+Math.round((o-a)*r),_=l+Math.round((n-l)*r),d=h+Math.round((s-h)*r);return{css:i.toCss(c,_,d),rgba:i.toRgba(c,_,d)}},r.isOpaque=function(t){return 255==(255&t.rgba)},r.ensureContrastRatio=function(t,e,i){var r=n.ensureContrastRatio(t.rgba,e.rgba,i);if(r)return n.toColor(r>>24&255,r>>16&255,r>>8&255)},r.opaque=function(t){var e=(255|t.rgba)>>>0,r=n.toChannels(e),o=r[0],s=r[1],a=r[2];return{css:i.toCss(o,s,a),rgba:e}},r.opacity=function(t,e){var r=Math.round(255*e),o=n.toChannels(t.rgba),s=o[0],a=o[1],l=o[2];return{css:i.toCss(s,a,l,r),rgba:i.toRgba(s,a,l,r)}},(e.css||(e.css={})).toColor=function(t){switch(t.length){case 7:return{css:t,rgba:(parseInt(t.slice(1),16)<<8|255)>>>0};case 9:return{css:t,rgba:parseInt(t.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(t){function e(t,e,i){var r=t/255,o=e/255,n=i/255;return.2126*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}t.relativeLuminance=function(t){return e(t>>16&255,t>>8&255,255&t)},t.relativeLuminance2=e}(o=e.rgb||(e.rgb={})),function(t){function e(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_0||h>0||c>0);)l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),c-=Math.max(0,Math.ceil(.1*c)),_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));return(l<<24|h<<16|c<<8|255)>>>0}function r(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_>>0}t.ensureContrastRatio=function(t,i,n){var s=o.relativeLuminance(t>>8),l=o.relativeLuminance(i>>8);if(a(s,l)>24&255,t>>16&255,t>>8&255,255&t]},t.toColor=function(t,e,r){return{css:i.toCss(t,e,r),rgba:i.toRgba(t,e,r)}}}(n=e.rgba||(e.rgba={})),e.toPaddedHex=s,e.contrastRatio=a},499:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.CHAR_ATLAS_CELL_SPACING=e.DIM_OPACITY=e.INVERTED_DEFAULT_COLOR=void 0,e.INVERTED_DEFAULT_COLOR=257,e.DIM_OPACITY=.5,e.CHAR_ATLAS_CELL_SPACING=1},345:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.forwardEvent=e.EventEmitter=void 0;var i=function(){function t(){this._listeners=[],this._disposed=!1}return Object.defineProperty(t.prototype,\"event\",{get:function(){var t=this;return this._event||(this._event=function(e){return t._listeners.push(e),{dispose:function(){if(!t._disposed)for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.getDisposeArrayDisposable=e.disposeArray=e.Disposable=void 0;var i=function(){function t(){this._disposables=[],this._isDisposed=!1}return t.prototype.dispose=function(){this._isDisposed=!0;for(var t=0,e=this._disposables;t{function i(t,e,i,r){if(void 0===i&&(i=0),void 0===r&&(r=t.length),i>=t.length)return t;i=(t.length+i)%t.length,r=r>=t.length?t.length:(t.length+r)%t.length;for(var o=i;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.ExtendedAttrs=e.AttributeData=void 0;var i=function(){function t(){this.fg=0,this.bg=0,this.extended=new r}return t.toColorRGB=function(t){return[t>>>16&255,t>>>8&255,255&t]},t.fromColorRGB=function(t){return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},t.prototype.clone=function(){var e=new t;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e},t.prototype.isInverse=function(){return 67108864&this.fg},t.prototype.isBold=function(){return 134217728&this.fg},t.prototype.isUnderline=function(){return 268435456&this.fg},t.prototype.isBlink=function(){return 536870912&this.fg},t.prototype.isInvisible=function(){return 1073741824&this.fg},t.prototype.isItalic=function(){return 67108864&this.bg},t.prototype.isDim=function(){return 134217728&this.bg},t.prototype.getFgColorMode=function(){return 50331648&this.fg},t.prototype.getBgColorMode=function(){return 50331648&this.bg},t.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},t.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},t.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},t.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},t.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},t.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},t.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},t.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},t.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},t.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},t.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},t.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},t.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},t.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},t.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},t.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},t.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},t}();e.AttributeData=i;var r=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=-1),this.underlineStyle=t,this.underlineColor=e}return t.prototype.clone=function(){return new t(this.underlineStyle,this.underlineColor)},t.prototype.isEmpty=function(){return 0===this.underlineStyle},t}();e.ExtendedAttrs=r},782:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CellData=void 0;var n=i(133),s=i(855),a=i(147),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.content=0,e.fg=0,e.bg=0,e.extended=new a.ExtendedAttrs,e.combinedData=\"\",e}return o(e,t),e.fromCharData=function(t){var i=new e;return i.setFromCharData(t),i},e.prototype.isCombined=function(){return 2097152&this.content},e.prototype.getWidth=function(){return this.content>>22},e.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):\"\"},e.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},e.prototype.setFromCharData=function(t){this.fg=t[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var e=!1;if(t[s.CHAR_DATA_CHAR_INDEX].length>2)e=!0;else if(2===t[s.CHAR_DATA_CHAR_INDEX].length){var i=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){var r=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=r&&r<=57343?this.content=1024*(i-55296)+r-56320+65536|t[s.CHAR_DATA_WIDTH_INDEX]<<22:e=!0}else e=!0}else this.content=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[s.CHAR_DATA_WIDTH_INDEX]<<22;e&&(this.combinedData=t[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|t[s.CHAR_DATA_WIDTH_INDEX]<<22)},e.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},e}(a.AttributeData);e.CellData=l},855:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WHITESPACE_CELL_CODE=e.WHITESPACE_CELL_WIDTH=e.WHITESPACE_CELL_CHAR=e.NULL_CELL_CODE=e.NULL_CELL_WIDTH=e.NULL_CELL_CHAR=e.CHAR_DATA_CODE_INDEX=e.CHAR_DATA_WIDTH_INDEX=e.CHAR_DATA_CHAR_INDEX=e.CHAR_DATA_ATTR_INDEX=e.DEFAULT_ATTR=e.DEFAULT_COLOR=void 0,e.DEFAULT_COLOR=256,e.DEFAULT_ATTR=256|e.DEFAULT_COLOR<<9,e.CHAR_DATA_ATTR_INDEX=0,e.CHAR_DATA_CHAR_INDEX=1,e.CHAR_DATA_WIDTH_INDEX=2,e.CHAR_DATA_CODE_INDEX=3,e.NULL_CELL_CHAR=\"\",e.NULL_CELL_WIDTH=1,e.NULL_CELL_CODE=0,e.WHITESPACE_CELL_CHAR=\" \",e.WHITESPACE_CELL_WIDTH=1,e.WHITESPACE_CELL_CODE=32},133:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.Utf8ToUtf32=e.StringToUtf32=e.utf32ToString=e.stringFromCodePoint=void 0,e.stringFromCodePoint=function(t){return t>65535?(t-=65536,String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)},e.utf32ToString=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length);for(var r=\"\",o=e;o65535?(n-=65536,r+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):r+=String.fromCharCode(n)}return r};var i=function(){function t(){this._interim=0}return t.prototype.clear=function(){this._interim=0},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r=0,o=0;this._interim&&(56320<=(a=t.charCodeAt(o++))&&a<=57343?e[r++]=1024*(this._interim-55296)+a-56320+65536:(e[r++]=this._interim,e[r++]=a),this._interim=0);for(var n=o;n=i)return this._interim=s,r;var a;56320<=(a=t.charCodeAt(n))&&a<=57343?e[r++]=1024*(s-55296)+a-56320+65536:(e[r++]=s,e[r++]=a)}else 65279!==s&&(e[r++]=s)}return r},t}();e.StringToUtf32=i;var r=function(){function t(){this.interim=new Uint8Array(3)}return t.prototype.clear=function(){this.interim.fill(0)},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r,o,n,s,a=0,l=0,h=0;if(this.interim[0]){var c=!1,_=this.interim[0];_&=192==(224&_)?31:224==(240&_)?15:7;for(var d=0,u=void 0;(u=63&this.interim[++d])&&d<4;)_<<=6,_|=u;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=f-d;h=i)return 0;if(128!=(192&(u=t[h++]))){h--,c=!0;break}this.interim[d++]=u,_<<=6,_|=63&u}c||(2===f?_<128?h--:e[a++]=_:3===f?_<2048||_>=55296&&_<=57343||65279===_||(e[a++]=_):_<65536||_>1114111||(e[a++]=_)),this.interim.fill(0)}for(var g=i-4,v=h;v=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if((l=(31&r)<<6|63&o)<128){v--;continue}e[a++]=l}else if(224==(240&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if((l=(15&r)<<12|(63&o)<<6|63&n)<2048||l>=55296&&l<=57343||65279===l)continue;e[a++]=l}else if(240==(248&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=t[v++]))){v--;continue}if((l=(7&r)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||l>1114111)continue;e[a++]=l}}return a},t}();e.Utf8ToUtf32=r}},e={};return function i(r){if(e[r])return e[r].exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,i),o.exports}(795)})()}));\n//# sourceMappingURL=xterm-addon-webgl.js.map","/*!\n * xterm (https://npmjs.com/package/xterm)\n * @license MIT\n * @version 4.12.0\n * ==xterm/LICENSE==\n * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)\n * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var r=t();for(var i in r)(\"object\"==typeof exports?exports:e)[i]=r[i]}}(self,(function(){return(()=>{\"use strict\";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce=\"\",i._accessibilityTreeRoot=document.createElement(\"div\"),i._accessibilityTreeRoot.classList.add(\"xterm-accessibility\"),i._rowContainer=document.createElement(\"div\"),i._rowContainer.setAttribute(\"role\",\"list\"),i._rowContainer.classList.add(\"xterm-accessibility-tree\"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(\"focus\",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement(\"div\");return e.setAttribute(\"role\",\"listitem\"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,\"\\n\"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent=\"\",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=\" \":a.textContent=o,a.setAttribute(\"aria-posinset\",s),a.setAttribute(\"aria-setsize\",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\\r?\\n/g,\"\\r\")}function i(e,t){return t?\"\u001b[200~\"+e+\"\u001b[201~\":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=\"\"}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width=\"20px\",t.style.height=\"20px\",t.style.left=n+\"px\",t.style.top=o+\"px\",t.style.zIndex=\"1000\",t.focus()}Object.defineProperty(t,\"__esModule\",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData(\"text/plain\",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData(\"text/plain\"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?\"0\"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor(\"#ffffff\"),s=i.css.toColor(\"#000000\"),a=i.css.toColor(\"#ffffff\"),c=i.css.toColor(\"#000000\"),l={css:\"rgba(255, 255, 255, 0.3)\",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor(\"#2e3436\"),i.css.toColor(\"#cc0000\"),i.css.toColor(\"#4e9a06\"),i.css.toColor(\"#c4a000\"),i.css.toColor(\"#3465a4\"),i.css.toColor(\"#75507b\"),i.css.toColor(\"#06989a\"),i.css.toColor(\"#d3d7cf\"),i.css.toColor(\"#555753\"),i.css.toColor(\"#ef2929\"),i.css.toColor(\"#8ae234\"),i.css.toColor(\"#fce94f\"),i.css.toColor(\"#729fcf\"),i.css.toColor(\"#ad7fa8\"),i.css.toColor(\"#34e2e2\"),i.css.toColor(\"#eeeeec\")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement(\"canvas\");h.width=1,h.height=1;var u=h.getContext(\"2d\");if(!u)throw new Error(\"Could not get rendering context\");this._ctx=u,this._ctx.globalCompositeOperation=\"copy\",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){\"minimumContrastRatio\"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,\"string\"!=typeof this._ctx.fillStyle)return console.warn(\"Color: \"+e+\" is invalid using fallback \"+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn(\"Color: \"+e+\" is using transparency, but allowTransparency is false. Using fallback \"+t.css+\".\"),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(\",\").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLinkTooltip\",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&\"break\"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn(\"Opening link blocked as opener could not be cleared\")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add(\"xterm-cursor-pointer\")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove(\"xterm-cursor-pointer\"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,\"currentLink\",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,\"mouseleave\",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,\"mousemove\",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,\"click\",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle(\"xterm-cursor-pointer\",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(\"xterm-cursor-pointer\")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(\"xterm-cursor-pointer\")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel=\"Terminal input\",t.tooMuchOutput=\"Too much output to announce, navigate to rows manually to read\"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,\"mousedown\",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener(\"mousemove\",this._mouseMoveListener),this._element.addEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.addEventListener(\"click\",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener(\"mousemove\",this._mouseMoveListener),this._element.removeEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.removeEventListener(\"click\",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia(\"screen and (resolution: \"+window.devicePixelRatio+\"dppx)\"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),b=r(1296),S=r(7399),m=r(8460),C=r(8437),w=r(5680),E=r(3230),L=r(4725),k=r(428),A=r(8934),R=r(6465),x=r(5114),T=r(8969),O=r(4774),D=r(4269),P=\"undefined\"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new m.EventEmitter,r._onKey=new m.EventEmitter,r._onRender=new m.EventEmitter,r._onSelectionChange=new m.EventEmitter,r._onTitleChange=new m.EventEmitter,r._onBell=new m.EventEmitter,r._onFocus=new m.EventEmitter,r._onBlur=new m.EventEmitter,r._onA11yCharEmitter=new m.EventEmitter,r._onA11yTabEmitter=new m.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(R.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(m.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(m.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(m.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(m.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,\"options\",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onKey\",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRender\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBell\",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onFocus\",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBlur\",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.removeEventListener(\"mousemove\",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?(\"debug\"===e.optionsService.options.logLevel&&e._logService.debug(\"Binding to mouse events:\",e._coreMouseService.explainEvents(t)),e.element.classList.add(\"enable-mouse-events\"),e._selectionService.disable()):(e._logService.debug(\"Unbinding from mouse events.\"),e.element.classList.remove(\"enable-mouse-events\"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener(\"mousemove\",l),n.mousemove=l):(r.removeEventListener(\"mousemove\",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener(\"wheel\",s,{passive:!1}),n.wheel=s):(r.removeEventListener(\"wheel\",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener(\"mousemove\",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,\"mousedown\",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.addEventListener(\"mousemove\",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,\"wheel\",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?\"O\":\"[\")+(t.deltaY<0?\"A\":\"B\"),o=\"\",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,\"scroll\",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+\"px\")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return\"alt\"===r&&t.altKey||\"ctrl\"===r&&t.ctrlKey||\"shift\"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=\"\"}return Object.defineProperty(e.prototype,\"isComposing\",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent=\"\",this._dataAlreadySent=\"\",this._compositionView.classList.add(\"active\")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove(\"active\"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){if(t._isSendingComposition){t._isSendingComposition=!1;var e;r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0)}}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,\"\");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+\"px\",this._compositionView.style.top=n+\"px\",this._compositionView.style.height=i+\"px\",this._compositionView.style.lineHeight=i+\"px\",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+\"px\";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+\"px\",this._textarea.style.top=n+\"px\",this._textarea.style.width=Math.max(s.width,1)+\"px\",this._textarea.style.height=Math.max(s.height,1)+\"px\",this._textarea.style.lineHeight=s.height+\"px\"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?\"A\":\"B\"}function a(e,t,r,i,n,o){for(var s=e,a=t,c=\"\";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?\"O\":\"[\";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r=\"\",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?\"D\":\"C\",l(Math.abs(h-e),c(s,i));s=u>t?\"D\":\"C\";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error(\"You must set the allowProposedApi option to true to use proposed API\")},Object.defineProperty(e.prototype,\"onCursorMove\",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLineFeed\",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onSelectionChange\",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onData\",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBinary\",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTitleChange\",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBell\",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onScroll\",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onKey\",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onRender\",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onResize\",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"element\",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parser\",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"unicode\",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"textarea\",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rows\",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"cols\",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"buffer\",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"markers\",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write(\"\\r\\n\",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,\"strings\",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,\"versions\",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:\"\",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+t+\"-layer\"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline=\"ideographic\",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline=\"ideographic\",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getBgColor()).join(\",\")+\")\";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getFgColor()).join(\",\")+\")\";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?\"italic\":\"\")+\" \"+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+\" \"+this._optionsService.options.fontSize*window.devicePixelRatio+\"px \"+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,\"cursor\",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:\"\",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&\"block\"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||\"block\"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,\"link\",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error(\"value must not be falsy\");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,\"selection\",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,\"text\",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont=\"\",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,\"__esModule\",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:\"rgba(0, 0, 0, 0)\",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement(\"canvas\"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext(\"2d\",{alpha:!0}));var n=t.createElement(\"canvas\");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext(\"2d\",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,\"__esModule\",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p=\"xterm-dom-renderer-owner-\",v=\"xterm-fg-\",g=\"xterm-bg-\",y=\"xterm-focus\",b=1,S=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=b++,f._rowElements=[],f._rowContainer=document.createElement(\"div\"),f._rowContainer.classList.add(\"xterm-rows\"),f._rowContainer.style.lineHeight=\"normal\",f._rowContainer.setAttribute(\"aria-hidden\",\"true\"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement(\"div\"),f._selectionContainer.classList.add(\"xterm-selection\"),f._selectionContainer.setAttribute(\"aria-hidden\",\"true\"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement(\"div\");return n.style.height=i*this.dimensions.actualCellHeight+\"px\",n.style.top=e*this.dimensions.actualCellHeight+\"px\",n.style.left=t*this.dimensions.actualCellWidth+\"px\",n.style.width=this.dimensions.actualCellWidth*(r-t)+\"px\",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=S},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS=\"xterm-bold\",t.DIM_CLASS=\"xterm-dim\",t.ITALIC_CLASS=\"xterm-italic\",t.UNDERLINE_CLASS=\"xterm-underline\",t.CURSOR_CLASS=\"xterm-cursor\",t.CURSOR_BLINK_CLASS=\"xterm-cursor-blink\",t.CURSOR_STYLE_BLOCK_CLASS=\"xterm-cursor-block\",t.CURSOR_STYLE_BAR_CLASS=\"xterm-cursor-bar\",t.CURSOR_STYLE_UNDERLINE_CLASS=\"xterm-cursor-underline\";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){b=!0;var C=p.shift();m=new u.JoinedCellData(this._workCell,e.translateToString(!0,C[0],C[1]),C[1]-C[0]),S=C[1]-1,y=m.getWidth()}var w=this._document.createElement(\"span\");if(y>1&&(w.style.width=h*y+\"px\"),b&&(w.style.display=\"inline\",a>=g&&a<=S&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case\"bar\":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case\"underline\":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}m.isBold()&&w.classList.add(t.BOLD_CLASS),m.isItalic()&&w.classList.add(t.ITALIC_CLASS),m.isDim()&&w.classList.add(t.DIM_CLASS),m.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),m.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=m.getChars()||s.WHITESPACE_CELL_CHAR;var E=m.getFgColor(),L=m.getFgColorMode(),k=m.getBgColor(),A=m.getBgColorMode(),R=!!m.isInverse();if(R){var x=E;E=k,k=x;var T=L;L=A,A=T}switch(L){case 16777216:case 33554432:m.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add(\"xterm-fg-\"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,\"color:#\"+_(E.toString(16),\"0\",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||R&&w.classList.add(\"xterm-fg-\"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:w.classList.add(\"xterm-bg-\"+k);break;case 50331648:this._addStyle(w,\"background-color:#\"+_(k.toString(16),\"0\",6));break;case 0:default:R&&w.classList.add(\"xterm-bg-\"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=S}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,\"color:\"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute(\"style\",\"\"+(e.getAttribute(\"style\")||\"\")+t+\";\")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,\"finalSelectionStart\",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"finalSelectionEnd\",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,\"hasValidSize\",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onCharSizeChange\",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement(\"span\"),this._measureElement.classList.add(\"xterm-char-measure-element\"),this._measureElement.textContent=\"W\",this._measureElement.setAttribute(\"aria-hidden\",\"true\"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+\"px\";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData=\"\",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error(\"not implemented\")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,\"isFocused\",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,\"resize\",(function(){return l.onDevicePixelRatioChange()}))),\"IntersectionObserver\"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,\"onDimensionsChange\",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRenderedBufferChange\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRefreshRequest\",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dimensions\",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,\"g\"),b=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,\"onLinuxMouseSelection\",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestScrollLines\",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,\"selectionStart\",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionEnd\",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasSelection\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionText\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return\"\";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return\"\";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y,\" \")})).join(a.isWindows?\"\\r\\n\":\"\\n\")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(\"mouseup\",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(\"mouseup\",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption(\"altClickMovesCursor\")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(\" \"===s.charAt(a)){for(;a>0&&\" \"===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var b=a+l-h+f,S=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||\"\"!==s.slice(a,c).trim()){if(r&&0===b&&32!==o.getCodePoint(0)){var m=n.lines.get(e[1]-1);if(m&&o.isWrapped&&32!==m.getCodePoint(this._bufferService.cols-1)){var C=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(C){var w=this._bufferService.cols-C.start;b-=w,S+=w}}}if(i&&b+S===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(S+=L.length)}}return{start:b,length:S}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=b},4725:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator(\"CharSizeService\"),t.ICoreBrowserService=i.createDecorator(\"CoreBrowserService\"),t.IMouseService=i.createDecorator(\"MouseService\"),t.IRenderService=i.createDecorator(\"RenderService\"),t.ISelectionService=i.createDecorator(\"SelectionService\"),t.ISoundService=i.createDecorator(\"SoundService\"),t.ICharacterJoinerService=i.createDecorator(\"CharacterJoinerService\")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,\"audioContext\",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn(\"Web Audio API is not supported by this browser. Consider upgrading to the latest version\"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,\"onDelete\",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onInsert\",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTrim\",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxLength\",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error(\"start argument out of range\");if(e+r<0)throw new Error(\"Cannot shift elements in list beyond index 0\");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),\"object\"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),b=r(5981),S=!1,m=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new b.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"cols\",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rows\",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"buffers\",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!S&&(this._logService.warn(\"writeSync is unreliable and will be removed soon.\"),S=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case\"scrollback\":this.buffers.resize(this.cols,this.rows);break;case\"windowsMode\":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:\"H\"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,\"event\",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]=\"GET_WIN_SIZE_PIXELS\",e[e.GET_CELL_SIZE_PIXELS=1]=\"GET_CELL_SIZE_PIXELS\"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'\"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0\"q'+s.C0.ESC+\"\\\\\");break;case'\"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1\"p'+s.C0.ESC+\"\\\\\");break;case\"r\":var r=this._bufferService.buffer.scrollTop+1+\";\"+(this._bufferService.buffer.scrollBottom+1)+\"r\";this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+r+s.C0.ESC+\"\\\\\");break;case\"m\":this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r0m\"+s.C0.ESC+\"\\\\\");break;case\" q\":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+i+\" q\"+s.C0.ESC+\"\\\\\");break;default:this._logService.debug(\"Unknown DCS $q %s\",t),this._coreService.triggerDataEvent(s.C0.ESC+\"P0$r\"+s.C0.ESC+\"\\\\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle=\"\",g._iconName=\"\",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug(\"Unknown CSI code: \",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug(\"Unknown ESC code: \",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug(\"Unknown EXECUTE code: \",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug(\"Unknown OSC code: \",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){\"HOOK\"===t&&(r=r.toArray()),g._logService.debug(\"Unknown DCS code: \",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:\"@\"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"@\"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:\"A\"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"A\"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:\"B\"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:\"C\"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:\"D\"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:\"E\"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:\"F\"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:\"G\"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:\"H\"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:\"I\"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:\"L\"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:\"M\"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:\"P\"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:\"S\"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:\"T\"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:\"X\"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:\"Z\"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:\"`\"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:\"a\"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:\"b\"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:\"c\"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:\">\",final:\"c\"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:\"d\"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:\"e\"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:\"f\"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:\"g\"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:\"h\"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"h\"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:\"l\"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"l\"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:\"m\"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:\"n\"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"n\"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:\"!\",final:\"p\"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"q\"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:\"r\"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:\"s\"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:\"t\"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:\"u\"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"}\"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"~\"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:\"7\"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:\"8\"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:\"D\"},(function(){return g.index()})),g._parser.registerEscHandler({final:\"E\"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:\"H\"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:\"M\"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:\"=\"},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:\">\"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:\"c\"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:\"n\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"o\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"|\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"}\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"~\"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:\"%\",final:\"@\"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:\"%\",final:\"G\"},(function(){return g.selectDefaultCharset()}));var b=function(e){S._parser.registerEscHandler({intermediates:\"(\",final:e},(function(){return g.selectCharset(\"(\"+e)})),S._parser.registerEscHandler({intermediates:\")\",final:e},(function(){return g.selectCharset(\")\"+e)})),S._parser.registerEscHandler({intermediates:\"*\",final:e},(function(){return g.selectCharset(\"*\"+e)})),S._parser.registerEscHandler({intermediates:\"+\",final:e},(function(){return g.selectCharset(\"+\"+e)})),S._parser.registerEscHandler({intermediates:\"-\",final:e},(function(){return g.selectCharset(\"-\"+e)})),S._parser.registerEscHandler({intermediates:\".\",final:e},(function(){return g.selectCharset(\".\"+e)})),S._parser.registerEscHandler({intermediates:\"/\",final:e},(function(){return g.selectCharset(\"/\"+e)}))},S=this;for(var m in a.CHARSETS)b(m);return g._parser.registerEscHandler({intermediates:\"#\",final:\"8\"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error(\"Parsing error: \",e),e})),g._parser.registerDcsHandler({intermediates:\"$\",final:\"q\"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,\"onRequestBell\",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRefreshRows\",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestReset\",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestSyncScrollBar\",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestWindowsOptionsReport\",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onAnsiColorChange\",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t(\"#SLOW_TIMEOUT\")}),5e3)}))]).catch((function(e){if(\"#SLOW_TIMEOUT\"!==e)throw e;console.warn(\"async parser handler taking longer than 5000 ms\")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>m&&(s=this._parseStack.position+m)}if(this._logService.debug(\"parsing data\",e),this._parseBuffer.lengthm)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return\"t\"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!C(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new b.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is(\"xterm\")||this._is(\"rxvt-unicode\")||this._is(\"screen\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[?1;2c\"):this._is(\"linux\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[?6c\")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is(\"xterm\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>0;276;0c\"):this._is(\"rxvt-unicode\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>85;95;0c\"):this._is(\"linux\")?this._coreService.triggerDataEvent(e.params[0]+\"c\"):this._is(\"screen\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[>83;40003;0c\")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+\"\").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug(\"Unknown SGR attribute: %d.\",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+\"[0n\");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[\"+t+\";\"+r+\"R\")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[?\"+t+\";\"+r+\"R\")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle=\"block\";break;case 3:case 4:this._optionsService.options.cursorStyle=\"underline\";break;case 5:case 6:this._optionsService.options.cursorStyle=\"bar\"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!C(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+\"[8;\"+this._bufferService.rows+\";\"+this._bufferService.cols+\"t\");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\\d+);rgb:([\\da-f]{2})\\/([\\da-f]{2})\\/([\\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn(\"Expected format ;rgb:// but got data: \"+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug(\"Serial port requested application keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug(\"Switching back to normal keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):(\"/\"===e[0]||this._charsetService.setgCharset(S[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|\"E\".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r=\"undefined\"==typeof navigator,i=r?\"node\":navigator.userAgent,n=r?\"node\":navigator.platform;t.isFirefox=i.includes(\"Firefox\"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=[\"Macintosh\",\"MacIntel\",\"MacPPC\",\"Mac68K\"].includes(n),t.isIpad=\"iPad\"===n,t.isIphone=\"iPhone\"===n,t.isWindows=[\"Windows\",\"Win16\",\"Win32\",\"WinCE\"].includes(n),t.isLinux=n.indexOf(\"Linux\")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,\"hasScrollback\",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isCursorInViewport\",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,b=_[y];0===b&&(b=_[--y]);for(var S=l.length-d-1,m=f;S>=0;){var C=Math.min(m,b);if(l[y].copyCellsFrom(l[S],m-C,b-C,C,!0),0==(b-=C)&&(b=_[--y]),0==(m-=C)){S--;var w=Math.max(S,0);m=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var L=[],k=[];for(v=0;v=0;v--)if(T&&T.start>R+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,L.push({index:R+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++x]}else this.lines.set(v,k[R--]);var P=0;for(v=L.length-1;v>=0;v--)L[v].index+=P,this.lines.onInsertEmitter.fire(L[v]),P+=L[v].amount;var M=Math.max(0,A+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t=\"\",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):\"\"},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o=\"\";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error(\"Buffer range end (\"+e.end.x+\", \"+e.end.y+\") cannot be before start (\"+e.start.x+\", \"+e.start.y+\")\");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(S>u||0===h[S].getTrimmedLength());S--)b++;b>0&&(s.push(a+h.length-b),s.push(b)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,\"onBufferActivate\",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,\"alt\",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"active\",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"normal\",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData=\"\",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):\"\"},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR=\"\",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=\" \",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onDispose\",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={\"`\":\"◆\",a:\"▒\",b:\"␉\",c:\"␌\",d:\"␍\",e:\"␊\",f:\"°\",g:\"±\",h:\"␤\",i:\"␋\",j:\"┘\",k:\"┐\",l:\"┌\",m:\"└\",n:\"┼\",o:\"⎺\",p:\"⎻\",q:\"─\",r:\"⎼\",s:\"⎽\",t:\"├\",u:\"┤\",v:\"┴\",w:\"┬\",x:\"│\",y:\"≤\",z:\"≥\",\"{\":\"π\",\"|\":\"≠\",\"}\":\"£\",\"~\":\"·\"},t.CHARSETS.A={\"#\":\"£\"},t.CHARSETS.B=void 0,t.CHARSETS[4]={\"#\":\"£\",\"@\":\"¾\",\"[\":\"ij\",\"\\\\\":\"½\",\"]\":\"|\",\"{\":\"¨\",\"|\":\"f\",\"}\":\"¼\",\"~\":\"´\"},t.CHARSETS.C=t.CHARSETS[5]={\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.R={\"#\":\"£\",\"@\":\"à\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"§\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"¨\"},t.CHARSETS.Q={\"@\":\"à\",\"[\":\"â\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",\"`\":\"ô\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"û\"},t.CHARSETS.K={\"@\":\"§\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Ü\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"ß\"},t.CHARSETS.Y={\"#\":\"£\",\"@\":\"§\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"é\",\"`\":\"ù\",\"{\":\"à\",\"|\":\"ò\",\"}\":\"è\",\"~\":\"ì\"},t.CHARSETS.E=t.CHARSETS[6]={\"@\":\"Ä\",\"[\":\"Æ\",\"\\\\\":\"Ø\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"ä\",\"{\":\"æ\",\"|\":\"ø\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.Z={\"#\":\"£\",\"@\":\"§\",\"[\":\"¡\",\"\\\\\":\"Ñ\",\"]\":\"¿\",\"{\":\"°\",\"|\":\"ñ\",\"}\":\"ç\"},t.CHARSETS.H=t.CHARSETS[7]={\"@\":\"É\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS[\"=\"]={\"#\":\"ù\",\"@\":\"à\",\"[\":\"é\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",_:\"è\",\"`\":\"ô\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"û\"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,\"__esModule\",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL=\"\\0\",i.SOH=\"\u0001\",i.STX=\"\u0002\",i.ETX=\"\u0003\",i.EOT=\"\u0004\",i.ENQ=\"\u0005\",i.ACK=\"\u0006\",i.BEL=\"\u0007\",i.BS=\"\\b\",i.HT=\"\\t\",i.LF=\"\\n\",i.VT=\"\\v\",i.FF=\"\\f\",i.CR=\"\\r\",i.SO=\"\u000e\",i.SI=\"\u000f\",i.DLE=\"\u0010\",i.DC1=\"\u0011\",i.DC2=\"\u0012\",i.DC3=\"\u0013\",i.DC4=\"\u0014\",i.NAK=\"\u0015\",i.SYN=\"\u0016\",i.ETB=\"\u0017\",i.CAN=\"\u0018\",i.EM=\"\u0019\",i.SUB=\"\u001a\",i.ESC=\"\u001b\",i.FS=\"\u001c\",i.GS=\"\u001d\",i.RS=\"\u001e\",i.US=\"\u001f\",i.SP=\" \",i.DEL=\"\",(r=t.C1||(t.C1={})).PAD=\"€\",r.HOP=\"\",r.BPH=\"‚\",r.NBH=\"ƒ\",r.IND=\"„\",r.NEL=\"…\",r.SSA=\"†\",r.ESA=\"‡\",r.HTS=\"ˆ\",r.HTJ=\"‰\",r.VTS=\"Š\",r.PLD=\"‹\",r.PLU=\"Œ\",r.RI=\"\",r.SS2=\"Ž\",r.SS3=\"\",r.DCS=\"\",r.PU1=\"‘\",r.PU2=\"’\",r.STS=\"“\",r.CCH=\"”\",r.MW=\"•\",r.SPA=\"–\",r.EPA=\"—\",r.SOS=\"˜\",r.SGCI=\"™\",r.SCI=\"š\",r.CSI=\"›\",r.ST=\"œ\",r.OSC=\"\",r.PM=\"ž\",r.APC=\"Ÿ\"},7399:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:[\"0\",\")\"],49:[\"1\",\"!\"],50:[\"2\",\"@\"],51:[\"3\",\"#\"],52:[\"4\",\"$\"],53:[\"5\",\"%\"],54:[\"6\",\"^\"],55:[\"7\",\"&\"],56:[\"8\",\"*\"],57:[\"9\",\"(\"],186:[\";\",\":\"],187:[\"=\",\"+\"],188:[\",\",\"<\"],189:[\"-\",\"_\"],190:[\".\",\">\"],191:[\"/\",\"?\"],192:[\"`\",\"~\"],219:[\"[\",\"{\"],220:[\"\\\\\",\"|\"],221:[\"]\",\"}\"],222:[\"'\",'\"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:\"UIKeyInputUpArrow\"===e.key?s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\":\"UIKeyInputLeftArrow\"===e.key?s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\":\"UIKeyInputRightArrow\"===e.key?s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\":\"UIKeyInputDownArrow\"===e.key&&(s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+\"[Z\";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"D\",s.key===i.C0.ESC+\"[1;3D\"&&(s.key=i.C0.ESC+(r?\"b\":\"[1;5D\"))):s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"C\",s.key===i.C0.ESC+\"[1;3C\"&&(s.key=i.C0.ESC+(r?\"f\":\"[1;5C\"))):s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"A\",r||s.key!==i.C0.ESC+\"[1;3A\"||(s.key=i.C0.ESC+\"[1;5A\")):s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"B\",r||s.key!==i.C0.ESC+\"[1;3B\"||(s.key=i.C0.ESC+\"[1;5B\")):s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+\"[2~\");break;case 46:s.key=a?i.C0.ESC+\"[3;\"+(a+1)+\"~\":i.C0.ESC+\"[3~\";break;case 36:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"H\":t?i.C0.ESC+\"OH\":i.C0.ESC+\"[H\";break;case 35:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"F\":t?i.C0.ESC+\"OF\":i.C0.ESC+\"[F\";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+\"[5~\";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+\"[6~\";break;case 112:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"P\":i.C0.ESC+\"OP\";break;case 113:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"Q\":i.C0.ESC+\"OQ\";break;case 114:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"R\":i.C0.ESC+\"OR\";break;case 115:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"S\":i.C0.ESC+\"OS\";break;case 116:s.key=a?i.C0.ESC+\"[15;\"+(a+1)+\"~\":i.C0.ESC+\"[15~\";break;case 117:s.key=a?i.C0.ESC+\"[17;\"+(a+1)+\"~\":i.C0.ESC+\"[17~\";break;case 118:s.key=a?i.C0.ESC+\"[18;\"+(a+1)+\"~\":i.C0.ESC+\"[18~\";break;case 119:s.key=a?i.C0.ESC+\"[19;\"+(a+1)+\"~\":i.C0.ESC+\"[19~\";break;case 120:s.key=a?i.C0.ESC+\"[20;\"+(a+1)+\"~\":i.C0.ESC+\"[20~\";break;case 121:s.key=a?i.C0.ESC+\"[21;\"+(a+1)+\"~\":i.C0.ESC+\"[21~\";break;case 122:s.key=a?i.C0.ESC+\"[23;\"+(a+1)+\"~\":i.C0.ESC+\"[23~\";break;case 123:s.key=a?i.C0.ESC+\"[24;\"+(a+1)+\"~\":i.C0.ESC+\"[24~\";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&\"_\"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i=\"\",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version=\"6\",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WriteBuffer=void 0;var r=\"undefined\"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error(\"write data discarded, use flow control to avoid losing data\");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,\"HOOK\",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,\"PUT\",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,\"UNHOOK\",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data=\"\",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data=\"\",t._hitLimit=!1,e}));return this._params=c,this._data=\"\",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error(\"only one byte as prefix supported\");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error(\"prefix must be in range 0x3c .. 0x3f\")}if(e.intermediates){if(e.intermediates.length>2)throw new Error(\"only two bytes as intermediates are supported\");for(var i=0;in||n>47)throw new Error(\"intermediate must be in range 0x20 .. 0x2f\");r<<=8,r|=n}}if(1!==e.final.length)throw new Error(\"final must be a single byte\");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error(\"final must be in range \"+t[0]+\" .. \"+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join(\"\")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error(\"improper continuation due to previous async handler, giving up parsing\");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,\"START\")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,\"PUT\",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,\"END\",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data=\"\",this._hitLimit=!1}return e.prototype.start=function(){this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data=\"\",t._hitLimit=!1,e}));return this._data=\"\",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error(\"maxSubParamsLength must not be greater than 256\");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"buffer\",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?\"\":\"\u001b[M\"+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?\"m\":\"M\";return\"\u001b[<\"+c(e,!0)+\";\"+e.col+\";\"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol=\"\",this._activeEncoding=\"\",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&(\"DEFAULT\"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onUserInput\",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,\"start\",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"end\",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error(\"[createInstance] First service dependency of \"+e.name+\" at position \"+(u+1)+\" conflicts with \"+t.length+\" static arguments\");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND=\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:\"block\",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:\"none\",drawBoldTextInBrightColors:!0,fastScrollModifier:\"alt\",fastScrollSensitivity:5,fontFamily:\"courier-new, courier, monospace\",fontSize:15,fontWeight:\"normal\",fontWeightBold:\"bold\",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:\"info\",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:\"canvas\",windowOptions:{},windowsMode:!1,wordSeparator:\" ()[]{}',\\\"`\",altClickMovesCursor:!0,convertEol:!1,termName:\"xterm\",cancelEvents:!1});var s=[\"normal\",\"bold\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],a=[\"cols\",\"rows\"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error(\"@IServiceName-decorator can only be used to decorate a parameter\");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator(\"BufferService\"),t.ICoreMouseService=n.createDecorator(\"CoreMouseService\"),t.ICoreService=n.createDecorator(\"CoreService\"),t.ICharsetService=n.createDecorator(\"CharsetService\"),t.IDirtyRowService=n.createDecorator(\"DirtyRowService\"),t.IInstantiationService=n.createDecorator(\"InstantiationService\"),t.ILogService=n.createDecorator(\"LogService\"),t.IOptionsService=n.createDecorator(\"OptionsService\"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]=\"DEBUG\",i[i.INFO=1]=\"INFO\",i[i.WARN=2]=\"WARN\",i[i.ERROR=3]=\"ERROR\",i[i.OFF=4]=\"OFF\",t.IUnicodeService=n.createDecorator(\"UnicodeService\")},1480:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active=\"\",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,\"onChange\",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"versions\",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version \"'+e+'\"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()}));\n//# sourceMappingURL=xterm.js.map","import * as bare from \"libapps\";\n\nexport class Hterm {\n elem: HTMLElement;\n\n term: bare.hterm.Terminal;\n io: bare.hterm.IO;\n\n columns: number;\n rows: number;\n\n // to \"show\" the current message when removeMessage() is called\n message: string;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n bare.hterm.defaultStorage = new bare.lib.Storage.Memory();\n this.term = new bare.hterm.Terminal();\n this.term.getPrefs().set(\"send-encoding\", \"raw\");\n this.term.decorate(this.elem);\n\n this.io = this.term.io.push();\n this.term.installKeyboard();\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.columns, rows: this.rows };\n };\n\n output(data: string) {\n if (this.term.io != null) {\n this.term.io.writeUTF8(data);\n }\n };\n\n showMessage(message: string, timeout: number) {\n this.message = message;\n if (timeout > 0) {\n this.term.io.showOverlay(message, timeout);\n } else {\n this.term.io.showOverlay(message, null);\n }\n };\n\n removeMessage(): void {\n // there is no hideOverlay(), so show the same message with 0 sec\n this.term.io.showOverlay(this.message, 0);\n }\n\n setWindowTitle(title: string) {\n this.term.setWindowTitle(title);\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key != \"EnableWebGL\") {\n this.term.getPrefs().set(key, value[key]);\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.io.onVTKeystroke = (data) => {\n callback(data);\n };\n this.io.sendString = (data) => {\n callback(data);\n };\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.io.onTerminalResize = (columns: number, rows: number) => {\n this.columns = columns;\n this.rows = rows;\n callback(columns, rows);\n };\n };\n\n deactivate(): void {\n this.io.onVTKeystroke = function () { };\n this.io.sendString = function () { };\n this.io.onTerminalResize = function () { };\n this.term.uninstallKeyboard();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.installKeyboard();\n }\n\n close(): void {\n this.term.uninstallKeyboard();\n }\n}\n","export class ConnectionFactory {\n url: string;\n protocols: string[];\n\n constructor(url: string, protocols: string[]) {\n this.url = url;\n this.protocols = protocols;\n };\n\n create(): Connection {\n return new Connection(this.url, this.protocols);\n };\n}\n\nexport class Connection {\n bare: WebSocket;\n\n\n constructor(url: string, protocols: string[]) {\n this.bare = new WebSocket(url, protocols);\n }\n\n open() {\n // nothing todo for websocket\n };\n\n close() {\n this.bare.close();\n };\n\n send(data: string) {\n this.bare.send(data);\n };\n\n isOpen(): boolean {\n if (this.bare.readyState == WebSocket.CONNECTING ||\n this.bare.readyState == WebSocket.OPEN) {\n return true\n }\n return false\n }\n\n onOpen(callback: () => void) {\n this.bare.onopen = (event) => {\n callback();\n }\n };\n\n onReceive(callback: (data: string) => void) {\n this.bare.onmessage = (event) => {\n callback(event.data);\n }\n };\n\n onClose(callback: () => void) {\n this.bare.onclose = (event) => {\n callback();\n };\n };\n}\n","export const protocols = [\"webtty\"];\n\nexport const msgInputUnknown = '0';\nexport const msgInput = '1';\nexport const msgPing = '2';\nexport const msgResizeTerminal = '3';\n\nexport const msgUnknownOutput = '0';\nexport const msgOutput = '1';\nexport const msgPong = '2';\nexport const msgSetWindowTitle = '3';\nexport const msgSetPreferences = '4';\nexport const msgSetReconnect = '5';\nexport const msgSetBufferSize = '6';\n\n\nexport interface Terminal {\n info(): { columns: number, rows: number };\n output(data: string): void;\n showMessage(message: string, timeout: number): void;\n removeMessage(): void;\n setWindowTitle(title: string): void;\n setPreferences(value: object): void;\n onInput(callback: (input: string) => void): void;\n onResize(callback: (colmuns: number, rows: number) => void): void;\n reset(): void;\n deactivate(): void;\n close(): void;\n}\n\nexport interface Connection {\n open(): void;\n close(): void;\n send(data: string): void;\n isOpen(): boolean;\n onOpen(callback: () => void): void;\n onReceive(callback: (data: string) => void): void;\n onClose(callback: () => void): void;\n}\n\nexport interface ConnectionFactory {\n create(): Connection;\n}\n\n\nexport class WebTTY {\n term: Terminal;\n connectionFactory: ConnectionFactory;\n args: string;\n authToken: string;\n reconnect: number;\n bufSize: number;\n\n constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) {\n this.term = term;\n this.connectionFactory = connectionFactory;\n this.args = args;\n this.authToken = authToken;\n this.reconnect = -1;\n this.bufSize = 1024;\n };\n\n open() {\n let connection = this.connectionFactory.create();\n let pingTimer: NodeJS.Timeout;\n let reconnectTimeout: NodeJS.Timeout;\n\n const setup = () => {\n connection.onOpen(() => {\n const termInfo = this.term.info();\n\n connection.send(JSON.stringify(\n {\n Arguments: this.args,\n AuthToken: this.authToken,\n }\n ));\n\n\n const resizeHandler = (colmuns: number, rows: number) => {\n connection.send(\n msgResizeTerminal + JSON.stringify(\n {\n columns: colmuns,\n rows: rows\n }\n )\n );\n };\n\n this.term.onResize(resizeHandler);\n resizeHandler(termInfo.columns, termInfo.rows);\n\n this.term.onInput(\n (input: string) => {\n // Leave room for message type id\n let effectiveBufferSize = this.bufSize - 1;\n\n // Split input into buffer sized chunks\n for (let i = 0; i < Math.ceil(input.length/effectiveBufferSize); i++) {\n let inputChunk = input.substring(i*effectiveBufferSize, Math.min((i+1)*effectiveBufferSize, input.length))\n connection.send(msgInput + inputChunk);\n }\n }\n );\n\n pingTimer = setInterval(() => {\n connection.send(msgPing)\n }, 30 * 1000);\n\n });\n\n connection.onReceive((data) => {\n const payload = data.slice(1);\n switch (data[0]) {\n case msgOutput:\n this.term.output(atob(payload));\n break;\n case msgPong:\n break;\n case msgSetWindowTitle:\n this.term.setWindowTitle(payload);\n break;\n case msgSetPreferences:\n const preferences = JSON.parse(payload);\n this.term.setPreferences(preferences);\n break;\n case msgSetReconnect:\n const autoReconnect = JSON.parse(payload);\n console.log(\"Enabling reconnect: \" + autoReconnect + \" seconds\")\n this.reconnect = autoReconnect;\n break;\n case msgSetBufferSize:\n const bufSize = JSON.parse(payload);\n this.bufSize = bufSize;\n break;\n }\n });\n\n connection.onClose(() => {\n clearInterval(pingTimer);\n this.term.deactivate();\n this.term.showMessage(\"Connection Closed\", 0);\n if (this.reconnect > 0) {\n reconnectTimeout = setTimeout(() => {\n connection = this.connectionFactory.create();\n this.term.reset();\n setup();\n }, this.reconnect * 1000);\n }\n });\n\n connection.open();\n }\n\n setup();\n return () => {\n clearTimeout(reconnectTimeout);\n connection.close();\n }\n };\n};\n","import { Terminal, IDisposable } from \"xterm\";\nimport { FitAddon } from 'xterm-addon-fit';\nimport { WebLinksAddon } from 'xterm-addon-web-links';\nimport { WebglAddon } from 'xterm-addon-webgl';\nimport { lib } from \"libapps\"\n\nexport class Xterm {\n elem: HTMLElement;\n term: Terminal;\n resizeListener: () => void;\n decoder: lib.UTF8Decoder;\n\n message: HTMLElement;\n messageTimeout: number;\n messageTimer: NodeJS.Timeout;\n onResizeHandler: IDisposable;\n onDataHandler: IDisposable;\n fitAddOn: FitAddon;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n this.term = new Terminal();\n this.fitAddOn = new FitAddon();\n this.term.loadAddon(new WebLinksAddon());\n this.term.loadAddon(this.fitAddOn);\n\n this.message = elem.ownerDocument.createElement(\"div\");\n this.message.className = \"xterm-overlay\";\n this.messageTimeout = 2000;\n\n this.resizeListener = () => {\n this.fitAddOn.fit();\n this.term.scrollToBottom();\n this.showMessage(String(this.term.cols) + \"x\" + String(this.term.rows), this.messageTimeout);\n };\n\n this.term.open(elem);\n this.term.focus();\n this.resizeListener();\n window.addEventListener(\"resize\", () => { this.resizeListener(); });\n\n this.decoder = new lib.UTF8Decoder()\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.term.cols, rows: this.term.rows };\n };\n\n output(data: string) {\n this.term.write(this.decoder.decode(data));\n };\n\n showMessage(message: string, timeout: number) {\n this.message.textContent = message;\n this.elem.appendChild(this.message);\n\n if (this.messageTimer) {\n clearTimeout(this.messageTimer);\n }\n if (timeout > 0) {\n this.messageTimer = setTimeout(() => {\n this.elem.removeChild(this.message);\n }, timeout);\n }\n };\n\n removeMessage(): void {\n if (this.message.parentNode == this.elem) {\n this.elem.removeChild(this.message);\n }\n }\n\n setWindowTitle(title: string) {\n document.title = title;\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key == \"EnableWebGL\" && key) {\n this.term.loadAddon(new WebglAddon());\n } else if (key == \"font-size\") {\n this.term.setOption(\"fontSize\", value[key])\n } else if (key == \"font-family\") {\n this.term.setOption(\"fontFamily\", value[key])\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.onDataHandler = this.term.onData((data) => {\n callback(data);\n });\n\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.onResizeHandler = this.term.onResize(() => {\n callback(this.term.cols, this.term.rows);\n });\n };\n\n deactivate(): void {\n this.onDataHandler.dispose();\n this.onResizeHandler.dispose();\n this.term.blur();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.clear();\n }\n\n close(): void {\n window.removeEventListener(\"resize\", this.resizeListener);\n this.term.dispose();\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { Hterm } from \"./hterm\";\nimport { Xterm } from \"./xterm\";\nimport { Terminal, WebTTY, protocols } from \"./webtty\";\nimport { ConnectionFactory } from \"./websocket\";\n\n// @TODO remove these\ndeclare var gotty_auth_token: string;\ndeclare var gotty_term: string;\n\nconst elem = document.getElementById(\"terminal\")\n\nif (elem !== null) {\n var term: Terminal;\n if (gotty_term == \"hterm\") {\n term = new Hterm(elem);\n } else {\n term = new Xterm(elem);\n }\n const httpsEnabled = window.location.protocol == \"https:\";\n const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws';\n const args = window.location.search;\n const factory = new ConnectionFactory(url, protocols);\n const wt = new WebTTY(term, factory, args, gotty_auth_token);\n const closer = wt.open();\n\n window.addEventListener(\"unload\", () => {\n closer();\n term.close();\n });\n};\n"],"sourceRoot":""} \ No newline at end of file diff --git a/bindata/static/manifest.json b/bindata/static/manifest.json new file mode 100644 index 0000000..8a53b58 --- /dev/null +++ b/bindata/static/manifest.json @@ -0,0 +1,15 @@ +{ + "short_name": "{{ .title }}", + "name": "{{ .title }}", + "start_url": "./", + "icons": [ + { + "src": "./icon_192.png", + "type": "image/png", + "sizes": "192x192" + } + ], + "display": "minimal-ui", + "theme_color": "#000000", + "background_color": "#000000" +} diff --git a/js/package-lock.json b/js/package-lock.json index fccd540..d73639f 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -1,8 +1,1839 @@ { "name": "gotty", "version": "2.0.0", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "gotty", + "version": "2.0.0", + "dependencies": { + "css-loader": "^5.2.6", + "libapps": "github:yudai/libapps#release-hterm-1.70", + "style-loader": "^2.0.0", + "xterm": "^4.12.0", + "xterm-addon-fit": "^0.5.0", + "xterm-addon-web-links": "^0.4.0", + "xterm-addon-webgl": "^0.10.0" + }, + "devDependencies": { + "license-loader": "^0.5.0", + "ts-loader": "^8.3.0", + "typescript": "^4.3.2", + "webpack": "^5.38.1", + "webpack-cli": "^4.7.0" + } + }, + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.3.tgz", + "integrity": "sha512-Fxt+AfXgjMoin2maPIYzFZnQjAXjAL0PHscM5pRTtatFqB+vZxAM9tLp2Optnuw3QOQC40jTNeGYFOMvyf7v9g==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@types/eslint": { + "version": "7.2.13", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.13.tgz", + "integrity": "sha512-LKmQCWAlnVHvvXq4oasNUMTJJb2GwSyTY8+1C7OH5ILR8mPLaljv1jxL1bXW3xB3jFbQxTKxJAvI8PyjB09aBg==", + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", + "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.47", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.47.tgz", + "integrity": "sha512-c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==" + }, + "node_modules/@types/json-schema": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", + "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==" + }, + "node_modules/@types/node": { + "version": "15.9.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-15.9.0.tgz", + "integrity": "sha512-AR1Vq1Ei1GaA5FjKL5PBqblTZsL5M+monvGSZwe6sSIdGiuu7Xr/pNwWJY+0ZQuN8AapD/XMB5IzBAyYRFbocA==" + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz", + "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==", + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz", + "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==" + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz", + "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==" + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz", + "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==" + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz", + "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==", + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.0", + "@webassemblyjs/helper-api-error": "1.11.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz", + "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==" + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz", + "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==", + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-buffer": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/wasm-gen": "1.11.0" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz", + "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==", + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz", + "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==", + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz", + "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==" + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz", + "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==", + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-buffer": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/helper-wasm-section": "1.11.0", + "@webassemblyjs/wasm-gen": "1.11.0", + "@webassemblyjs/wasm-opt": "1.11.0", + "@webassemblyjs/wasm-parser": "1.11.0", + "@webassemblyjs/wast-printer": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz", + "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==", + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/ieee754": "1.11.0", + "@webassemblyjs/leb128": "1.11.0", + "@webassemblyjs/utf8": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz", + "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==", + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-buffer": "1.11.0", + "@webassemblyjs/wasm-gen": "1.11.0", + "@webassemblyjs/wasm-parser": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz", + "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==", + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-api-error": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/ieee754": "1.11.0", + "@webassemblyjs/leb128": "1.11.0", + "@webassemblyjs/utf8": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz", + "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==", + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webpack-cli/configtest": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.3.tgz", + "integrity": "sha512-WQs0ep98FXX2XBAfQpRbY0Ma6ADw8JR6xoIkaIiJIzClGOMqVRvPCWqndTxf28DgFopWan0EKtHtg/5W1h0Zkw==", + "dev": true, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x", + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/info": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.4.tgz", + "integrity": "sha512-ogE2T4+pLhTTPS/8MM3IjHn0IYplKM4HbVNMCWA9N4NrdPzunwenpCsqKEXyejMfRu6K8mhauIPYf8ZxWG5O6g==", + "dev": true, + "dependencies": { + "envinfo": "^7.7.3" + }, + "peerDependencies": { + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/serve": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.4.0.tgz", + "integrity": "sha512-xgT/HqJ+uLWGX+Mzufusl3cgjAcnqYYskaB7o0vRcwOEfuu6hMzSILQpnIzFMGsTaeaX4Nnekl+6fadLbl1/Vg==", + "dev": true, + "peerDependencies": { + "webpack-cli": "4.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/@xtuc/ieee754": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" + }, + "node_modules/@xtuc/long": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" + }, + "node_modules/acorn": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.3.0.tgz", + "integrity": "sha512-tqPKHZ5CaBJw0Xmy0ZZvLs1qTV+BNFSyvn77ASXkpBNfIRk8ev26fKrD9iLGwGA9zedPao52GSHzq8lyZG0NUw==", + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/ajv/node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==" + }, + "node_modules/ajv/node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmjs.org/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "engines": { + "node": "*" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/browserslist": { + "version": "4.16.6", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", + "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", + "dependencies": { + "caniuse-lite": "^1.0.30001219", + "colorette": "^1.2.2", + "electron-to-chromium": "^1.3.723", + "escalade": "^3.1.1", + "node-releases": "^1.1.71" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/buffer-from": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001233", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001233.tgz", + "integrity": "sha512-BmkbxLfStqiPA7IEzQpIk0UFZFf3A4E6fzjPJ6OR+bFC2L8ES9J8zGA/asoi47p8XDVkev+WJo2I2Nc8c/34Yg==", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } + }, + "node_modules/chalk": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.1.tgz", + "integrity": "sha512-diHzdDKxcU+bAsUboHLPEDQiw0qEe0qd7SYUn3HgcFlWgbDcfLGswOHYeGrHKzG9z6UYf01d9VFMfZxPM1xZSg==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chrome-trace-event": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", + "engines": { + "node": ">=6.0" + } + }, + "node_modules/clone-deep": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/clone-deep/-/clone-deep-4.0.1.tgz", + "integrity": "sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ==", + "dev": true, + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dev": true, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", + "dev": true + }, + "node_modules/colorette": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.2.tgz", + "integrity": "sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==" + }, + "node_modules/commander": { + "version": "2.20.3", + "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", + "dev": true + }, + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", + "dev": true, + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/css-loader": { + "version": "5.2.6", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.2.6.tgz", + "integrity": "sha512-0wyN5vXMQZu6BvjbrPdUJvkCzGEO24HC7IS7nW4llc6BBFC+zwR9CKtYGv63Puzsg10L/o12inMY5/2ByzfD6w==", + "dependencies": { + "icss-utils": "^5.1.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.15", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^3.0.0", + "semver": "^7.3.5" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.27.0 || ^5.0.0" + } + }, + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/electron-to-chromium": { + "version": "1.3.744", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.744.tgz", + "integrity": "sha512-o/vep/PvSXg+7buwCbVJXHY3zbjYVmFPwnMMnchESXgAzrfcasvbX/hQZHCFGG7YdZgdtwt1KTMyK9CyBxPbLA==" + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "engines": { + "node": ">= 4" + } + }, + "node_modules/enhanced-resolve": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-4.5.0.tgz", + "integrity": "sha512-Nv9m36S/vxpsI+Hc4/ZGRs0n9mXqSWGGq49zxb/cJfPAQMbUtttJAlNPS4AQzaBdw/pKskw5bMbekT/Y7W/Wlg==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.2", + "memory-fs": "^0.5.0", + "tapable": "^1.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/envinfo": { + "version": "7.8.1", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.8.1.tgz", + "integrity": "sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw==", + "dev": true, + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "dev": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/es-module-lexer": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz", + "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==" + }, + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", + "dependencies": { + "esrecurse": "^4.3.0", + "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/estraverse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/execa": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.0.tgz", + "integrity": "sha512-CkdUB7s2y6S+d4y+OM/+ZtQcJCiKUCth4cNImGMqrt2zEVtW2rfHGspQBE1GDo6LjeNIQmTPKXqTCKjqFKyu3A==", + "dev": true, + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fastest-levenshtein": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", + "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", + "dev": true + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dev": true, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/find-up": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", + "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", + "dev": true, + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", + "dev": true + }, + "node_modules/get-stream": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", + "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" + }, + "node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/import-local": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", + "dev": true, + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/interpret": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-core-module": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.4.0.tgz", + "integrity": "sha512-6A2fkfq1rfeQZjxrZJGerpLCTHRNEBiSgnu0+obeJpEPZRUooHgsizvzv0ZjJwOz3iWIHdJtVWJ/tmPr3D21/A==", + "dev": true, + "dependencies": { + "has": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "dev": true, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "dev": true, + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz", + "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", + "dev": true + }, + "node_modules/isexe": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", + "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", + "dev": true + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jest-worker": { + "version": "27.0.2", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.2.tgz", + "integrity": "sha512-EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg==", + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } + }, + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/json-parse-better-errors": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" + }, + "node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/json5/node_modules/minimist": { + "version": "1.2.5", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", + "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" + }, + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/libapps": { + "version": "1.70.0", + "resolved": "git+ssh://git@github.com/yudai/libapps.git#424e3e95e5346ef0c0c281aaf2ef73463a55b39e", + "integrity": "sha512-BpAlnvEvCmcXAPGBdUfrjo1al9V4vIktyKLBxOdYdY/XEAb6rx3Lz/XeZJrns5Tn3IFF0DfBQ9jEF4YZgDMsOg==", + "license": "BSD-3-Clause" + }, + "node_modules/license-loader": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/license-loader/-/license-loader-0.5.0.tgz", + "integrity": "sha512-4p+estbTHilHxOXv/wh8qHndksfINzBT6HGvgIU4sfwWu28kCByHGV57K/HVgSujoFFv2wCITghGbK/qRiRbUQ==", + "dev": true + }, + "node_modules/loader-runner": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", + "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", + "engines": { + "node": ">=6.11.5" + } + }, + "node_modules/loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" + } + }, + "node_modules/locate-path": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", + "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", + "dev": true, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/memory-fs": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/memory-fs/-/memory-fs-0.5.0.tgz", + "integrity": "sha512-jA0rdU5KoQMC0e6ppoNRtpp6vjFq6+NY7r8hywnC7V+1Xj/MtHwGIbB1QaK/dunyjWteJzmkpd7ooeWg10T7GA==", + "dev": true, + "dependencies": { + "errno": "^0.1.3", + "readable-stream": "^2.0.1" + }, + "engines": { + "node": ">=4.3.0 <5.0.0 || >=5.10" + } + }, + "node_modules/merge-stream": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" + }, + "node_modules/micromatch": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz", + "integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==", + "dev": true, + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.2.3" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/mime-db": { + "version": "1.48.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", + "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.31", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", + "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", + "dependencies": { + "mime-db": "1.48.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/nanoid": { + "version": "3.1.23", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", + "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" + }, + "node_modules/node-releases": { + "version": "1.1.72", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz", + "integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==" + }, + "node_modules/npm-run-path": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", + "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", + "dev": true, + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dev": true, + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-locate": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", + "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", + "dev": true, + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-locate/node_modules/p-limit": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", + "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", + "dev": true, + "dependencies": { + "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-try": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", + "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/path-exists": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", + "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true + }, + "node_modules/picomatch": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz", + "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==", + "dev": true, + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/postcss": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.3.0.tgz", + "integrity": "sha512-+ogXpdAjWGa+fdYY5BQ96V/6tAo+TdSSIMP5huJBIygdWwKtVoB5JWZ7yUd4xZ8r+8Kvvx4nyg/PQ071H4UtcQ==", + "dependencies": { + "colorette": "^1.2.2", + "nanoid": "^3.1.23", + "source-map-js": "^0.6.2" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + } + }, + "node_modules/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" + } + }, + "node_modules/postcss-selector-parser": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz", + "integrity": "sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg==", + "dependencies": { + "cssesc": "^3.0.0", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/postcss-value-parser": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", + "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==", + "dev": true + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha1-0/wRS6BplaRexok/SEzrHXj19HY=", + "dev": true + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/rechoir": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz", + "integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==", + "dev": true, + "dependencies": { + "resolve": "^1.9.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", + "dev": true, + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/schema-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", + "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", + "dependencies": { + "@types/json-schema": "^7.0.6", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/serialize-javascript": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", + "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/shallow-clone": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/shallow-clone/-/shallow-clone-3.0.1.tgz", + "integrity": "sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA==", + "dev": true, + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-command": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", + "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "dev": true, + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "node_modules/source-list-map": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "0.6.2", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-0.6.2.tgz", + "integrity": "sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-support": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", + "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dev": true, + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/strip-final-newline": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", + "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/style-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", + "integrity": "sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==", + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/style-loader/node_modules/schema-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", + "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", + "dependencies": { + "@types/json-schema": "^7.0.6", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/tapable": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", + "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/terser": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", + "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.7.2", + "source-map-support": "~0.5.19" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/terser-webpack-plugin": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz", + "integrity": "sha512-cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A==", + "dependencies": { + "jest-worker": "^27.0.2", + "p-limit": "^3.1.0", + "schema-utils": "^3.0.0", + "serialize-javascript": "^5.0.1", + "source-map": "^0.6.1", + "terser": "^5.7.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" + } + }, + "node_modules/terser/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "engines": { + "node": ">= 8" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dev": true, + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/ts-loader": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-8.3.0.tgz", + "integrity": "sha512-MgGly4I6cStsJy27ViE32UoqxPTN9Xly4anxxVyaIWR+9BGxboV4EyJBGfR3RePV7Ksjj3rHmPZJeIt+7o4Vag==", + "dev": true, + "dependencies": { + "chalk": "^4.1.0", + "enhanced-resolve": "^4.0.0", + "loader-utils": "^2.0.0", + "micromatch": "^4.0.0", + "semver": "^7.3.4" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "typescript": "*", + "webpack": "*" + } + }, + "node_modules/typescript": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.3.2.tgz", + "integrity": "sha512-zZ4hShnmnoVnAHpVHWpTcxdv7dWP60S2FsydQLV8V5PbS3FifjWFFRiHSWpDJahly88PRyV5teTSLoq4eG7mKw==", + "dev": true, + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=4.2.0" + } + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/v8-compile-cache": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz", + "integrity": "sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==", + "dev": true + }, + "node_modules/watchpack": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz", + "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==", + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack": { + "version": "5.38.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.38.1.tgz", + "integrity": "sha512-OqRmYD1OJbHZph6RUMD93GcCZy4Z4wC0ele4FXyYF0J6AxO1vOSuIlU1hkS/lDlR9CDYBz64MZRmdbdnFFoT2g==", + "dependencies": { + "@types/eslint-scope": "^3.7.0", + "@types/estree": "^0.0.47", + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/wasm-edit": "1.11.0", + "@webassemblyjs/wasm-parser": "1.11.0", + "acorn": "^8.2.1", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.8.0", + "es-module-lexer": "^0.4.0", + "eslint-scope": "5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.4", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.1", + "watchpack": "^2.2.0", + "webpack-sources": "^2.3.0" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-cli": { + "version": "4.7.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.7.0.tgz", + "integrity": "sha512-7bKr9182/sGfjFm+xdZSwgQuFjgEcy0iCTIBxRUeteJ2Kr8/Wz0qNJX+jw60LU36jApt4nmMkep6+W5AKhok6g==", + "dev": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^1.0.3", + "@webpack-cli/info": "^1.2.4", + "@webpack-cli/serve": "^1.4.0", + "colorette": "^1.2.1", + "commander": "^7.0.0", + "execa": "^5.0.0", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^2.2.0", + "rechoir": "^0.7.0", + "v8-compile-cache": "^2.2.0", + "webpack-merge": "^5.7.3" + }, + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "optional": true + }, + "@webpack-cli/migrate": { + "optional": true + }, + "webpack-bundle-analyzer": { + "optional": true + }, + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/webpack-cli/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-merge": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz", + "integrity": "sha512-6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==", + "dev": true, + "dependencies": { + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.0.tgz", + "integrity": "sha512-WyOdtwSvOML1kbgtXbTDnEW0jkJ7hZr/bDByIwszhWd/4XX1A3XMkrbFMsuH4+/MfLlZCUzlAdg4r7jaGKEIgQ==", + "dependencies": { + "source-list-map": "^2.0.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack/node_modules/enhanced-resolve": { + "version": "5.8.2", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz", + "integrity": "sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==", + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack/node_modules/tapable": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz", + "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", + "dev": true + }, + "node_modules/xterm": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/xterm/-/xterm-4.12.0.tgz", + "integrity": "sha512-K5mF/p3txUV18mjiZFlElagoHFpqXrm5OYHeoymeXSu8GG/nMaOO/+NRcNCwfdjzAbdQ5VLF32hEHiWWKKm0bw==" + }, + "node_modules/xterm-addon-fit": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/xterm-addon-fit/-/xterm-addon-fit-0.5.0.tgz", + "integrity": "sha512-DsS9fqhXHacEmsPxBJZvfj2la30Iz9xk+UKjhQgnYNkrUIN5CYLbw7WEfz117c7+S86S/tpHPfvNxJsF5/G8wQ==", + "peerDependencies": { + "xterm": "^4.0.0" + } + }, + "node_modules/xterm-addon-web-links": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/xterm-addon-web-links/-/xterm-addon-web-links-0.4.0.tgz", + "integrity": "sha512-xv8GeiINmx0zENO9hf5k+5bnkaE8mRzF+OBAr9WeFq2eLaQSudioQSiT34M1ofKbzcdjSsKiZm19Rw3i4eXamg==", + "peerDependencies": { + "xterm": "^4.0.0" + } + }, + "node_modules/xterm-addon-webgl": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/xterm-addon-webgl/-/xterm-addon-webgl-0.10.0.tgz", + "integrity": "sha512-MJzyWie5yw+PH6p//fXlXzmsULLtpBo992EWEKl2uv5M5Zj9etTwfuutCUK7o98mr6itDl+vS/CYIMP68jCf8w==", + "peerDependencies": { + "xterm": "^4.0.0" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + }, + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + } + }, "dependencies": { "@discoveryjs/json-ext": { "version": "0.5.3", @@ -14,7 +1845,6 @@ "version": "7.2.13", "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.13.tgz", "integrity": "sha512-LKmQCWAlnVHvvXq4oasNUMTJJb2GwSyTY8+1C7OH5ILR8mPLaljv1jxL1bXW3xB3jFbQxTKxJAvI8PyjB09aBg==", - "dev": true, "requires": { "@types/estree": "*", "@types/json-schema": "*" @@ -24,7 +1854,6 @@ "version": "3.7.0", "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", - "dev": true, "requires": { "@types/eslint": "*", "@types/estree": "*" @@ -33,8 +1862,7 @@ "@types/estree": { "version": "0.0.47", "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.47.tgz", - "integrity": "sha512-c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==", - "dev": true + "integrity": "sha512-c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==" }, "@types/json-schema": { "version": "7.0.7", @@ -44,14 +1872,12 @@ "@types/node": { "version": "15.9.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-15.9.0.tgz", - "integrity": "sha512-AR1Vq1Ei1GaA5FjKL5PBqblTZsL5M+monvGSZwe6sSIdGiuu7Xr/pNwWJY+0ZQuN8AapD/XMB5IzBAyYRFbocA==", - "dev": true + "integrity": "sha512-AR1Vq1Ei1GaA5FjKL5PBqblTZsL5M+monvGSZwe6sSIdGiuu7Xr/pNwWJY+0ZQuN8AapD/XMB5IzBAyYRFbocA==" }, "@webassemblyjs/ast": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz", "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==", - "dev": true, "requires": { "@webassemblyjs/helper-numbers": "1.11.0", "@webassemblyjs/helper-wasm-bytecode": "1.11.0" @@ -60,26 +1886,22 @@ "@webassemblyjs/floating-point-hex-parser": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz", - "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==", - "dev": true + "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==" }, "@webassemblyjs/helper-api-error": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz", - "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==", - "dev": true + "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==" }, "@webassemblyjs/helper-buffer": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz", - "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==", - "dev": true + "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==" }, "@webassemblyjs/helper-numbers": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz", "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==", - "dev": true, "requires": { "@webassemblyjs/floating-point-hex-parser": "1.11.0", "@webassemblyjs/helper-api-error": "1.11.0", @@ -89,14 +1911,12 @@ "@webassemblyjs/helper-wasm-bytecode": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz", - "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==", - "dev": true + "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==" }, "@webassemblyjs/helper-wasm-section": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz", "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-buffer": "1.11.0", @@ -108,7 +1928,6 @@ "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz", "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==", - "dev": true, "requires": { "@xtuc/ieee754": "^1.2.0" } @@ -117,7 +1936,6 @@ "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz", "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==", - "dev": true, "requires": { "@xtuc/long": "4.2.2" } @@ -125,14 +1943,12 @@ "@webassemblyjs/utf8": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz", - "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==", - "dev": true + "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==" }, "@webassemblyjs/wasm-edit": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz", "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-buffer": "1.11.0", @@ -148,7 +1964,6 @@ "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz", "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-wasm-bytecode": "1.11.0", @@ -161,7 +1976,6 @@ "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz", "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-buffer": "1.11.0", @@ -173,7 +1987,6 @@ "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz", "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", "@webassemblyjs/helper-api-error": "1.11.0", @@ -187,7 +2000,6 @@ "version": "1.11.0", "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz", "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==", - "dev": true, "requires": { "@webassemblyjs/ast": "1.11.0", "@xtuc/long": "4.2.2" @@ -197,7 +2009,8 @@ "version": "1.0.3", "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.3.tgz", "integrity": "sha512-WQs0ep98FXX2XBAfQpRbY0Ma6ADw8JR6xoIkaIiJIzClGOMqVRvPCWqndTxf28DgFopWan0EKtHtg/5W1h0Zkw==", - "dev": true + "dev": true, + "requires": {} }, "@webpack-cli/info": { "version": "1.2.4", @@ -212,25 +2025,23 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.4.0.tgz", "integrity": "sha512-xgT/HqJ+uLWGX+Mzufusl3cgjAcnqYYskaB7o0vRcwOEfuu6hMzSILQpnIzFMGsTaeaX4Nnekl+6fadLbl1/Vg==", - "dev": true + "dev": true, + "requires": {} }, "@xtuc/ieee754": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz", - "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==", - "dev": true + "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==" }, "@xtuc/long": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz", - "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==", - "dev": true + "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==" }, "acorn": { "version": "8.3.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.3.0.tgz", - "integrity": "sha512-tqPKHZ5CaBJw0Xmy0ZZvLs1qTV+BNFSyvn77ASXkpBNfIRk8ev26fKrD9iLGwGA9zedPao52GSHzq8lyZG0NUw==", - "dev": true + "integrity": "sha512-tqPKHZ5CaBJw0Xmy0ZZvLs1qTV+BNFSyvn77ASXkpBNfIRk8ev26fKrD9iLGwGA9zedPao52GSHzq8lyZG0NUw==" }, "ajv": { "version": "6.12.6", @@ -258,7 +2069,8 @@ "ajv-keywords": { "version": "3.5.2", "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==" + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "requires": {} }, "ansi-styles": { "version": "4.3.0", @@ -287,7 +2099,6 @@ "version": "4.16.6", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.6.tgz", "integrity": "sha512-Wspk/PqO+4W9qp5iUTJsa1B/QrYn1keNCcEP5OvP7WBwT4KaDly0uONYmC6Xa3Z5IqnUgS0KcgLYu1l74x0ZXQ==", - "dev": true, "requires": { "caniuse-lite": "^1.0.30001219", "colorette": "^1.2.2", @@ -299,14 +2110,12 @@ "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", - "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==", - "dev": true + "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==" }, "caniuse-lite": { "version": "1.0.30001233", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001233.tgz", - "integrity": "sha512-BmkbxLfStqiPA7IEzQpIk0UFZFf3A4E6fzjPJ6OR+bFC2L8ES9J8zGA/asoi47p8XDVkev+WJo2I2Nc8c/34Yg==", - "dev": true + "integrity": "sha512-BmkbxLfStqiPA7IEzQpIk0UFZFf3A4E6fzjPJ6OR+bFC2L8ES9J8zGA/asoi47p8XDVkev+WJo2I2Nc8c/34Yg==" }, "chalk": { "version": "4.1.1", @@ -321,8 +2130,7 @@ "chrome-trace-event": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz", - "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==", - "dev": true + "integrity": "sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg==" }, "clone-deep": { "version": "4.0.1", @@ -358,8 +2166,7 @@ "commander": { "version": "2.20.3", "resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz", - "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==", - "dev": true + "integrity": "sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==" }, "core-util-is": { "version": "1.0.2", @@ -403,8 +2210,7 @@ "electron-to-chromium": { "version": "1.3.744", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.744.tgz", - "integrity": "sha512-o/vep/PvSXg+7buwCbVJXHY3zbjYVmFPwnMMnchESXgAzrfcasvbX/hQZHCFGG7YdZgdtwt1KTMyK9CyBxPbLA==", - "dev": true + "integrity": "sha512-o/vep/PvSXg+7buwCbVJXHY3zbjYVmFPwnMMnchESXgAzrfcasvbX/hQZHCFGG7YdZgdtwt1KTMyK9CyBxPbLA==" }, "emojis-list": { "version": "3.0.0", @@ -440,20 +2246,17 @@ "es-module-lexer": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.4.1.tgz", - "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==", - "dev": true + "integrity": "sha512-ooYciCUtfw6/d2w56UVeqHPcoCFAiJdz5XOkYpv/Txl1HMUozpXjz/2RIQgqwKdXNDPSF1W7mJCFse3G+HDyAA==" }, "escalade": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", - "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", - "dev": true + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==" }, "eslint-scope": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", - "dev": true, "requires": { "esrecurse": "^4.3.0", "estraverse": "^4.1.1" @@ -463,7 +2266,6 @@ "version": "4.3.0", "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", - "dev": true, "requires": { "estraverse": "^5.2.0" }, @@ -471,22 +2273,19 @@ "estraverse": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", - "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", - "dev": true + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==" } } }, "estraverse": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", - "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", - "dev": true + "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==" }, "events": { "version": "3.3.0", "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", - "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", - "dev": true + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==" }, "execa": { "version": "5.1.0", @@ -550,14 +2349,12 @@ "glob-to-regexp": { "version": "0.4.1", "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", - "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", - "dev": true + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==" }, "graceful-fs": { "version": "4.2.6", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", - "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", - "dev": true + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==" }, "has": { "version": "1.0.3", @@ -571,8 +2368,7 @@ "has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - "dev": true + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==" }, "human-signals": { "version": "2.1.0", @@ -583,7 +2379,8 @@ "icss-utils": { "version": "5.1.0", "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", - "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==" + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "requires": {} }, "import-local": { "version": "3.0.2", @@ -659,7 +2456,6 @@ "version": "27.0.2", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.0.2.tgz", "integrity": "sha512-EoBdilOTTyOgmHXtw/cPc+ZrCA0KJMrkXzkrPGNwLmnvvlN1nj7MPrxpT7m+otSv2e1TLaVffzDnE/LB14zJMg==", - "dev": true, "requires": { "@types/node": "*", "merge-stream": "^2.0.0", @@ -670,7 +2466,6 @@ "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - "dev": true, "requires": { "has-flag": "^4.0.0" } @@ -680,8 +2475,7 @@ "json-parse-better-errors": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz", - "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==", - "dev": true + "integrity": "sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw==" }, "json5": { "version": "2.2.0", @@ -705,8 +2499,8 @@ "dev": true }, "libapps": { - "version": "github:yudai/libapps#424e3e95e5346ef0c0c281aaf2ef73463a55b39e", - "from": "github:yudai/libapps#release-hterm-1.70" + "version": "git+ssh://git@github.com/yudai/libapps.git#424e3e95e5346ef0c0c281aaf2ef73463a55b39e", + "from": "libapps@github:yudai/libapps#release-hterm-1.70" }, "license-loader": { "version": "0.5.0", @@ -717,8 +2511,7 @@ "loader-runner": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", - "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", - "dev": true + "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==" }, "loader-utils": { "version": "2.0.0", @@ -760,8 +2553,7 @@ "merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - "dev": true + "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==" }, "micromatch": { "version": "4.0.4", @@ -776,14 +2568,12 @@ "mime-db": { "version": "1.48.0", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.48.0.tgz", - "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==", - "dev": true + "integrity": "sha512-FM3QwxV+TnZYQ2aRqhlKBMHxk10lTbMt3bBkMAp54ddrNeVSfcQYOOKuGuy3Ddrm38I04If834fOUSq1yzslJQ==" }, "mime-types": { "version": "2.1.31", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.31.tgz", "integrity": "sha512-XGZnNzm3QvgKxa8dpzyhFTHmpP3l5YNusmne07VUOXxou9CqUqYa/HBy124RqtVh/O2pECas/MOcsDgpilPOPg==", - "dev": true, "requires": { "mime-db": "1.48.0" } @@ -802,14 +2592,12 @@ "neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" }, "node-releases": { "version": "1.1.72", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.72.tgz", - "integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==", - "dev": true + "integrity": "sha512-LLUo+PpH3dU6XizX3iVoubUNheF/owjXCZZ5yACDxNnPtgFuludV1ZL3ayK1kVep42Rmm0+R9/Y60NQbZ2bifw==" }, "npm-run-path": { "version": "4.0.1", @@ -833,7 +2621,6 @@ "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - "dev": true, "requires": { "yocto-queue": "^0.1.0" } @@ -910,7 +2697,8 @@ "postcss-modules-extract-imports": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", - "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==" + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", + "requires": {} }, "postcss-modules-local-by-default": { "version": "4.0.0", @@ -973,7 +2761,6 @@ "version": "2.1.0", "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", - "dev": true, "requires": { "safe-buffer": "^5.1.0" } @@ -1030,8 +2817,7 @@ "safe-buffer": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", - "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==", - "dev": true + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" }, "schema-utils": { "version": "3.0.0", @@ -1055,7 +2841,6 @@ "version": "5.0.1", "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-5.0.1.tgz", "integrity": "sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA==", - "dev": true, "requires": { "randombytes": "^2.1.0" } @@ -1093,14 +2878,12 @@ "source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", - "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", - "dev": true + "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==" }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-js": { "version": "0.6.2", @@ -1111,7 +2894,6 @@ "version": "0.5.19", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.19.tgz", "integrity": "sha512-Wonm7zOCIJzBGQdB+thsPar0kYuCIzYvxZwlBa87yi/Mdjv7Tip2cyVbLj5o0cFPN4EVkuTwb3GDDyUx2DGnGw==", - "dev": true, "requires": { "buffer-from": "^1.0.0", "source-map": "^0.6.0" @@ -1172,7 +2954,6 @@ "version": "5.7.0", "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.0.tgz", "integrity": "sha512-HP5/9hp2UaZt5fYkuhNBR8YyRcT8juw8+uFbAme53iN9hblvKnLUTKkmwJG6ocWpIKf8UK4DoeWG4ty0J6S6/g==", - "dev": true, "requires": { "commander": "^2.20.0", "source-map": "~0.7.2", @@ -1182,8 +2963,7 @@ "source-map": { "version": "0.7.3", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", - "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", - "dev": true + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==" } } }, @@ -1191,7 +2971,6 @@ "version": "5.1.3", "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.3.tgz", "integrity": "sha512-cxGbMqr6+A2hrIB5ehFIF+F/iST5ZOxvOmy9zih9ySbP1C2oEWQSOUS+2SNBTjzx5xLKO4xnod9eywdfq1Nb9A==", - "dev": true, "requires": { "jest-worker": "^27.0.2", "p-limit": "^3.1.0", @@ -1252,7 +3031,6 @@ "version": "2.2.0", "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.2.0.tgz", "integrity": "sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA==", - "dev": true, "requires": { "glob-to-regexp": "^0.4.1", "graceful-fs": "^4.1.2" @@ -1262,7 +3040,6 @@ "version": "5.38.1", "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.38.1.tgz", "integrity": "sha512-OqRmYD1OJbHZph6RUMD93GcCZy4Z4wC0ele4FXyYF0J6AxO1vOSuIlU1hkS/lDlR9CDYBz64MZRmdbdnFFoT2g==", - "dev": true, "requires": { "@types/eslint-scope": "^3.7.0", "@types/estree": "^0.0.47", @@ -1293,7 +3070,6 @@ "version": "5.8.2", "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.8.2.tgz", "integrity": "sha512-F27oB3WuHDzvR2DOGNTaYy0D5o0cnrv8TeI482VM4kYgQd/FT9lUQwuNsJ0oOHtBUq7eiW5ytqzp7nBFknL+GA==", - "dev": true, "requires": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -1302,8 +3078,7 @@ "tapable": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz", - "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==", - "dev": true + "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==" } } }, @@ -1350,7 +3125,6 @@ "version": "2.3.0", "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.3.0.tgz", "integrity": "sha512-WyOdtwSvOML1kbgtXbTDnEW0jkJ7hZr/bDByIwszhWd/4XX1A3XMkrbFMsuH4+/MfLlZCUzlAdg4r7jaGKEIgQ==", - "dev": true, "requires": { "source-list-map": "^2.0.1", "source-map": "^0.6.1" @@ -1379,17 +3153,20 @@ "xterm-addon-fit": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/xterm-addon-fit/-/xterm-addon-fit-0.5.0.tgz", - "integrity": "sha512-DsS9fqhXHacEmsPxBJZvfj2la30Iz9xk+UKjhQgnYNkrUIN5CYLbw7WEfz117c7+S86S/tpHPfvNxJsF5/G8wQ==" + "integrity": "sha512-DsS9fqhXHacEmsPxBJZvfj2la30Iz9xk+UKjhQgnYNkrUIN5CYLbw7WEfz117c7+S86S/tpHPfvNxJsF5/G8wQ==", + "requires": {} }, "xterm-addon-web-links": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/xterm-addon-web-links/-/xterm-addon-web-links-0.4.0.tgz", - "integrity": "sha512-xv8GeiINmx0zENO9hf5k+5bnkaE8mRzF+OBAr9WeFq2eLaQSudioQSiT34M1ofKbzcdjSsKiZm19Rw3i4eXamg==" + "integrity": "sha512-xv8GeiINmx0zENO9hf5k+5bnkaE8mRzF+OBAr9WeFq2eLaQSudioQSiT34M1ofKbzcdjSsKiZm19Rw3i4eXamg==", + "requires": {} }, "xterm-addon-webgl": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/xterm-addon-webgl/-/xterm-addon-webgl-0.10.0.tgz", - "integrity": "sha512-MJzyWie5yw+PH6p//fXlXzmsULLtpBo992EWEKl2uv5M5Zj9etTwfuutCUK7o98mr6itDl+vS/CYIMP68jCf8w==" + "integrity": "sha512-MJzyWie5yw+PH6p//fXlXzmsULLtpBo992EWEKl2uv5M5Zj9etTwfuutCUK7o98mr6itDl+vS/CYIMP68jCf8w==", + "requires": {} }, "yallist": { "version": "4.0.0", @@ -1399,8 +3176,7 @@ "yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - "dev": true + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" } } } From 26fc4127a96746a78847958f03d7503b2cc58e7a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Mon, 28 Mar 2022 15:15:02 -0700 Subject: [PATCH 08/56] Update js dependencies --- js/package-lock.json | 35 +++++++++++++++++------------------ 1 file changed, 17 insertions(+), 18 deletions(-) diff --git a/js/package-lock.json b/js/package-lock.json index d73639f..e21875a 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -860,11 +860,6 @@ "node": ">=6" } }, - "node_modules/json5/node_modules/minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - }, "node_modules/kind-of": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", @@ -989,10 +984,15 @@ "node": ">=6" } }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, "node_modules/nanoid": { - "version": "3.1.23", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", - "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==", + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz", + "integrity": "sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==", "bin": { "nanoid": "bin/nanoid.cjs" }, @@ -2483,13 +2483,6 @@ "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "requires": { "minimist": "^1.2.5" - }, - "dependencies": { - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==" - } } }, "kind-of": { @@ -2500,6 +2493,7 @@ }, "libapps": { "version": "git+ssh://git@github.com/yudai/libapps.git#424e3e95e5346ef0c0c281aaf2ef73463a55b39e", + "integrity": "sha512-BpAlnvEvCmcXAPGBdUfrjo1al9V4vIktyKLBxOdYdY/XEAb6rx3Lz/XeZJrns5Tn3IFF0DfBQ9jEF4YZgDMsOg==", "from": "libapps@github:yudai/libapps#release-hterm-1.70" }, "license-loader": { @@ -2584,10 +2578,15 @@ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", "dev": true }, + "minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, "nanoid": { - "version": "3.1.23", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.23.tgz", - "integrity": "sha512-FiB0kzdP0FFVGDKlRLEQ1BgDzU87dy5NnzjeW9YZNt+/c3+q82EQDUwniSAUxp/F0gFNI1ZhKU1FqYsMuqZVnw==" + "version": "3.3.2", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.2.tgz", + "integrity": "sha512-CuHBogktKwpm5g2sRgv83jEy2ijFzBwMoYA60orPDR7ynsLijJDqgsi4RDGj3OJpy3Ieb+LYwiRmIOGyytgITA==" }, "neo-async": { "version": "2.6.2", From 163fd0537cf9e0548ad7ffa8251c23aa7eb63979 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Mon, 28 Mar 2022 15:48:20 -0700 Subject: [PATCH 09/56] Remove hterm --- README.md | 11 +-- bindata/static/js/gotty.js | 2 +- bindata/static/js/gotty.js.LICENSE.txt | 34 -------- bindata/static/js/gotty.js.map | 2 +- js/package-lock.json | 12 --- js/package.json | 1 - js/src/hterm.ts | 94 --------------------- js/src/main.ts | 8 +- js/src/xterm.ts | 6 +- js/typings/libapps/index.d.ts | 51 ----------- server/handlers.go | 9 +- server/options.go | 112 ++++++------------------- 12 files changed, 34 insertions(+), 308 deletions(-) delete mode 100644 js/src/hterm.ts delete mode 100644 js/typings/libapps/index.d.ts diff --git a/README.md b/README.md index 30ee11e..ddb9d30 100644 --- a/README.md +++ b/README.md @@ -73,7 +73,6 @@ By default, GoTTY starts a web server at port 8080. Open the URL on your web bro --width value Static width of the screen, 0(default) means dynamically resize (default: 0) [$GOTTY_WIDTH] --height value Static height of the screen, 0(default) means dynamically resize (default: 0) [$GOTTY_HEIGHT] --ws-origin value A regular expression that matches origin URLs to be accepted by WebSocket. No cross origin requests are acceptable by default [$GOTTY_WS_ORIGIN] - --term value Terminal name to use on the browser, one of xterm or hterm. (default: "xterm") [$GOTTY_TERM] --enable-webgl Enable WebGL renderer (default: true) [$GOTTY_ENABLE_WEBGL] --close-signal value Signal sent to the command process when gotty close it (default: SIGHUP) (default: 1) [$GOTTY_CLOSE_SIGNAL] --close-timeout value Time in seconds to force kill process after client is disconnected (default: -1) (default: -1) [$GOTTY_CLOSE_TIMEOUT] @@ -82,7 +81,7 @@ By default, GoTTY starts a web server at port 8080. Open the URL on your web bro --version, -v print the version (default: false) ``` ### Config File -You can customize default options and your terminal (hterm) by providing a config file to the `gotty` command. GoTTY loads a profile file at `~/.gotty` by default when it exists. +You can customize default options and your terminal by providing a config file to the `gotty` command. GoTTY loads a profile file at `~/.gotty` by default when it exists. ``` // Listen at port 9000 by default @@ -91,12 +90,6 @@ port = "9000" // Enable TSL/SSL by default enable_tls = true -// hterm preferences -// Smaller font and a little bit bluer background color -preferences { - font_size = 5 - background_color = "rgb(16, 16, 32)" -} ``` See the [`.gotty`](https://github.com/sorenisanerd/gotty/blob/master/.gotty) file in this repository for the list of configuration options. @@ -164,7 +157,7 @@ To build the frontend part (JS files and other static files), you need `npm`. ## Architecture -GoTTY uses [xterm.js](https://xtermjs.org/) and [hterm](https://groups.google.com/a/chromium.org/forum/#!forum/chromium-hterm) to run a JavaScript based terminal on web browsers. GoTTY itself provides a websocket server that simply relays output from the TTY to clients and receives input from clients and forwards it to the TTY. This hterm + websocket idea is inspired by [Wetty](https://github.com/krishnasrinivas/wetty). +GoTTY uses [xterm.js](https://xtermjs.org/) to run a JavaScript based terminal on web browsers. GoTTY itself provides a websocket server that simply relays output from the TTY to clients and receives input from clients and forwards it to the TTY. This xterm + websocket idea is inspired by [Wetty](https://github.com/krishnasrinivas/wetty). ## Alternatives diff --git a/bindata/static/js/gotty.js b/bindata/static/js/gotty.js index d8c08cf..cd44819 100644 --- a/bindata/static/js/gotty.js +++ b/bindata/static/js/gotty.js @@ -1,3 +1,3 @@ /*! For license information please see gotty.js.LICENSE.txt */ -(()=>{var e={276:e=>{"use strict";if(void 0!==t)throw new Error('Global "lib" object already exists.');var t={runtimeDependencies_:{},initCallbacks_:[],rtdep:function(e){var r;try{throw new Error}catch(e){var i=e.stack.split("\n");r=i.length>=3?i[2].replace(/^\s*at\s+/,""):i[1].replace(/^\s*global code@/,"")}for(var o=0;ot.length&&(t=t.repeat(e/t.length+1)),t.slice(0,e)+String(this))}),String.prototype.padEnd||(String.prototype.padEnd=function(e,t){return(e-=this.length)<=0?String(this):(void 0===t&&(t=" "),e>t.length&&(t=t.repeat(e/t.length+1)),String(this)+t.slice(0,e))}),t.colors={},t.colors.re_={hex16:/#([a-f0-9])([a-f0-9])([a-f0-9])/i,hex24:/#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/i,rgb:new RegExp("^/s*rgb/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*/)/s*$".replace(/\//g,"\\"),"i"),rgba:new RegExp("^/s*rgba/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*(?:,/s*(/d+(?:/./d+)?)/s*)/)/s*$".replace(/\//g,"\\"),"i"),rgbx:new RegExp("^/s*rgba?/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*(?:,/s*(/d+(?:/./d+)?)/s*)?/)/s*$".replace(/\//g,"\\"),"i"),x11rgb:/^\s*rgb:([a-f0-9]{1,4})\/([a-f0-9]{1,4})\/([a-f0-9]{1,4})\s*$/i,name:/[a-z][a-z0-9\s]+/},t.colors.rgbToX11=function(e){function r(e){return e=(257*Math.min(e,255)).toString(16),t.f.zpad(e,4)}var i=e.match(t.colors.re_.rgbx);return i?"rgb:"+r(i[1])+"/"+r(i[2])+"/"+r(i[3]):null},t.colors.x11HexToCSS=function(e){if(!e.startsWith("#"))return null;if(e=e.substr(1),-1==[3,6,9,12].indexOf(e.length))return null;if(e.match(/[^a-f0-9]/i))return null;var r=e.length/3,i=e.substr(0,r),o=e.substr(r,r),n=e.substr(r+r,r);return t.colors.arrayToRGBA([i,o,n].map((function(e){return e=parseInt(e,16),2==r?e:1==r?e<<4:e>>4*(r-2)})))},t.colors.x11ToCSS=function(e){var r=e.match(t.colors.re_.x11rgb);return r?(r.splice(0,1),t.colors.arrayToRGBA(r.map((function(e){return 1==e.length?parseInt(e+e,16):2==e.length?parseInt(e,16):(3==e.length&&(e+=e.substr(2)),Math.round(parseInt(e,16)/257))})))):e.startsWith("#")?t.colors.x11HexToCSS(e):t.colors.nameToRGB(e)},t.colors.hexToRGB=function(e){var r=t.colors.re_.hex16,i=t.colors.re_.hex24;function o(e){4==e.length&&(e=e.replace(r,(function(e,t,r,i){return"#"+t+t+r+r+i+i})));var t=e.match(i);return t?"rgb("+parseInt(t[1],16)+", "+parseInt(t[2],16)+", "+parseInt(t[3],16)+")":null}if(e instanceof Array)for(var n=0;n3?e[3]:1;return"rgba("+e[0]+", "+e[1]+", "+e[2]+", "+t+")"},t.colors.setAlpha=function(e,r){var i=t.colors.crackRGB(e);return i[3]=r,t.colors.arrayToRGBA(i)},t.colors.mix=function(e,r,i){for(var o=t.colors.crackRGB(e),n=t.colors.crackRGB(r),s=0;s<4;++s){var a=n[s]-o[s];o[s]=Math.round(parseInt(o[s])+a*i)}return t.colors.arrayToRGBA(o)},t.colors.crackRGB=function(e){var r;if(e.startsWith("rgba")){if(r=e.match(t.colors.re_.rgba))return r.shift(),r}else if(r=e.match(t.colors.re_.rgb))return r.shift(),r.push(1),r;return console.error("Couldn't crack: "+e),null},t.colors.nameToRGB=function(e){return e in t.colors.colorNames||(e=e.toLowerCase())in t.colors.colorNames||(e=e.replace(/\s+/g,""))in t.colors.colorNames?t.colors.colorNames[e]:null},t.colors.stockColorPalette=t.colors.hexToRGB(["#000000","#CC0000","#4E9A06","#C4A000","#3465A4","#75507B","#06989A","#D3D7CF","#555753","#EF2929","#00BA13","#FCE94F","#729FCF","#F200CB","#00B5BD","#EEEEEC","#000000","#00005F","#000087","#0000AF","#0000D7","#0000FF","#005F00","#005F5F","#005F87","#005FAF","#005FD7","#005FFF","#008700","#00875F","#008787","#0087AF","#0087D7","#0087FF","#00AF00","#00AF5F","#00AF87","#00AFAF","#00AFD7","#00AFFF","#00D700","#00D75F","#00D787","#00D7AF","#00D7D7","#00D7FF","#00FF00","#00FF5F","#00FF87","#00FFAF","#00FFD7","#00FFFF","#5F0000","#5F005F","#5F0087","#5F00AF","#5F00D7","#5F00FF","#5F5F00","#5F5F5F","#5F5F87","#5F5FAF","#5F5FD7","#5F5FFF","#5F8700","#5F875F","#5F8787","#5F87AF","#5F87D7","#5F87FF","#5FAF00","#5FAF5F","#5FAF87","#5FAFAF","#5FAFD7","#5FAFFF","#5FD700","#5FD75F","#5FD787","#5FD7AF","#5FD7D7","#5FD7FF","#5FFF00","#5FFF5F","#5FFF87","#5FFFAF","#5FFFD7","#5FFFFF","#870000","#87005F","#870087","#8700AF","#8700D7","#8700FF","#875F00","#875F5F","#875F87","#875FAF","#875FD7","#875FFF","#878700","#87875F","#878787","#8787AF","#8787D7","#8787FF","#87AF00","#87AF5F","#87AF87","#87AFAF","#87AFD7","#87AFFF","#87D700","#87D75F","#87D787","#87D7AF","#87D7D7","#87D7FF","#87FF00","#87FF5F","#87FF87","#87FFAF","#87FFD7","#87FFFF","#AF0000","#AF005F","#AF0087","#AF00AF","#AF00D7","#AF00FF","#AF5F00","#AF5F5F","#AF5F87","#AF5FAF","#AF5FD7","#AF5FFF","#AF8700","#AF875F","#AF8787","#AF87AF","#AF87D7","#AF87FF","#AFAF00","#AFAF5F","#AFAF87","#AFAFAF","#AFAFD7","#AFAFFF","#AFD700","#AFD75F","#AFD787","#AFD7AF","#AFD7D7","#AFD7FF","#AFFF00","#AFFF5F","#AFFF87","#AFFFAF","#AFFFD7","#AFFFFF","#D70000","#D7005F","#D70087","#D700AF","#D700D7","#D700FF","#D75F00","#D75F5F","#D75F87","#D75FAF","#D75FD7","#D75FFF","#D78700","#D7875F","#D78787","#D787AF","#D787D7","#D787FF","#D7AF00","#D7AF5F","#D7AF87","#D7AFAF","#D7AFD7","#D7AFFF","#D7D700","#D7D75F","#D7D787","#D7D7AF","#D7D7D7","#D7D7FF","#D7FF00","#D7FF5F","#D7FF87","#D7FFAF","#D7FFD7","#D7FFFF","#FF0000","#FF005F","#FF0087","#FF00AF","#FF00D7","#FF00FF","#FF5F00","#FF5F5F","#FF5F87","#FF5FAF","#FF5FD7","#FF5FFF","#FF8700","#FF875F","#FF8787","#FF87AF","#FF87D7","#FF87FF","#FFAF00","#FFAF5F","#FFAF87","#FFAFAF","#FFAFD7","#FFAFFF","#FFD700","#FFD75F","#FFD787","#FFD7AF","#FFD7D7","#FFD7FF","#FFFF00","#FFFF5F","#FFFF87","#FFFFAF","#FFFFD7","#FFFFFF","#080808","#121212","#1C1C1C","#262626","#303030","#3A3A3A","#444444","#4E4E4E","#585858","#626262","#6C6C6C","#767676","#808080","#8A8A8A","#949494","#9E9E9E","#A8A8A8","#B2B2B2","#BCBCBC","#C6C6C6","#D0D0D0","#DADADA","#E4E4E4","#EEEEEE"]),t.colors.colorPalette=t.colors.stockColorPalette,t.colors.colorNames={aliceblue:"rgb(240, 248, 255)",antiquewhite:"rgb(250, 235, 215)",antiquewhite1:"rgb(255, 239, 219)",antiquewhite2:"rgb(238, 223, 204)",antiquewhite3:"rgb(205, 192, 176)",antiquewhite4:"rgb(139, 131, 120)",aquamarine:"rgb(127, 255, 212)",aquamarine1:"rgb(127, 255, 212)",aquamarine2:"rgb(118, 238, 198)",aquamarine3:"rgb(102, 205, 170)",aquamarine4:"rgb(69, 139, 116)",azure:"rgb(240, 255, 255)",azure1:"rgb(240, 255, 255)",azure2:"rgb(224, 238, 238)",azure3:"rgb(193, 205, 205)",azure4:"rgb(131, 139, 139)",beige:"rgb(245, 245, 220)",bisque:"rgb(255, 228, 196)",bisque1:"rgb(255, 228, 196)",bisque2:"rgb(238, 213, 183)",bisque3:"rgb(205, 183, 158)",bisque4:"rgb(139, 125, 107)",black:"rgb(0, 0, 0)",blanchedalmond:"rgb(255, 235, 205)",blue:"rgb(0, 0, 255)",blue1:"rgb(0, 0, 255)",blue2:"rgb(0, 0, 238)",blue3:"rgb(0, 0, 205)",blue4:"rgb(0, 0, 139)",blueviolet:"rgb(138, 43, 226)",brown:"rgb(165, 42, 42)",brown1:"rgb(255, 64, 64)",brown2:"rgb(238, 59, 59)",brown3:"rgb(205, 51, 51)",brown4:"rgb(139, 35, 35)",burlywood:"rgb(222, 184, 135)",burlywood1:"rgb(255, 211, 155)",burlywood2:"rgb(238, 197, 145)",burlywood3:"rgb(205, 170, 125)",burlywood4:"rgb(139, 115, 85)",cadetblue:"rgb(95, 158, 160)",cadetblue1:"rgb(152, 245, 255)",cadetblue2:"rgb(142, 229, 238)",cadetblue3:"rgb(122, 197, 205)",cadetblue4:"rgb(83, 134, 139)",chartreuse:"rgb(127, 255, 0)",chartreuse1:"rgb(127, 255, 0)",chartreuse2:"rgb(118, 238, 0)",chartreuse3:"rgb(102, 205, 0)",chartreuse4:"rgb(69, 139, 0)",chocolate:"rgb(210, 105, 30)",chocolate1:"rgb(255, 127, 36)",chocolate2:"rgb(238, 118, 33)",chocolate3:"rgb(205, 102, 29)",chocolate4:"rgb(139, 69, 19)",coral:"rgb(255, 127, 80)",coral1:"rgb(255, 114, 86)",coral2:"rgb(238, 106, 80)",coral3:"rgb(205, 91, 69)",coral4:"rgb(139, 62, 47)",cornflowerblue:"rgb(100, 149, 237)",cornsilk:"rgb(255, 248, 220)",cornsilk1:"rgb(255, 248, 220)",cornsilk2:"rgb(238, 232, 205)",cornsilk3:"rgb(205, 200, 177)",cornsilk4:"rgb(139, 136, 120)",cyan:"rgb(0, 255, 255)",cyan1:"rgb(0, 255, 255)",cyan2:"rgb(0, 238, 238)",cyan3:"rgb(0, 205, 205)",cyan4:"rgb(0, 139, 139)",darkblue:"rgb(0, 0, 139)",darkcyan:"rgb(0, 139, 139)",darkgoldenrod:"rgb(184, 134, 11)",darkgoldenrod1:"rgb(255, 185, 15)",darkgoldenrod2:"rgb(238, 173, 14)",darkgoldenrod3:"rgb(205, 149, 12)",darkgoldenrod4:"rgb(139, 101, 8)",darkgray:"rgb(169, 169, 169)",darkgreen:"rgb(0, 100, 0)",darkgrey:"rgb(169, 169, 169)",darkkhaki:"rgb(189, 183, 107)",darkmagenta:"rgb(139, 0, 139)",darkolivegreen:"rgb(85, 107, 47)",darkolivegreen1:"rgb(202, 255, 112)",darkolivegreen2:"rgb(188, 238, 104)",darkolivegreen3:"rgb(162, 205, 90)",darkolivegreen4:"rgb(110, 139, 61)",darkorange:"rgb(255, 140, 0)",darkorange1:"rgb(255, 127, 0)",darkorange2:"rgb(238, 118, 0)",darkorange3:"rgb(205, 102, 0)",darkorange4:"rgb(139, 69, 0)",darkorchid:"rgb(153, 50, 204)",darkorchid1:"rgb(191, 62, 255)",darkorchid2:"rgb(178, 58, 238)",darkorchid3:"rgb(154, 50, 205)",darkorchid4:"rgb(104, 34, 139)",darkred:"rgb(139, 0, 0)",darksalmon:"rgb(233, 150, 122)",darkseagreen:"rgb(143, 188, 143)",darkseagreen1:"rgb(193, 255, 193)",darkseagreen2:"rgb(180, 238, 180)",darkseagreen3:"rgb(155, 205, 155)",darkseagreen4:"rgb(105, 139, 105)",darkslateblue:"rgb(72, 61, 139)",darkslategray:"rgb(47, 79, 79)",darkslategray1:"rgb(151, 255, 255)",darkslategray2:"rgb(141, 238, 238)",darkslategray3:"rgb(121, 205, 205)",darkslategray4:"rgb(82, 139, 139)",darkslategrey:"rgb(47, 79, 79)",darkturquoise:"rgb(0, 206, 209)",darkviolet:"rgb(148, 0, 211)",debianred:"rgb(215, 7, 81)",deeppink:"rgb(255, 20, 147)",deeppink1:"rgb(255, 20, 147)",deeppink2:"rgb(238, 18, 137)",deeppink3:"rgb(205, 16, 118)",deeppink4:"rgb(139, 10, 80)",deepskyblue:"rgb(0, 191, 255)",deepskyblue1:"rgb(0, 191, 255)",deepskyblue2:"rgb(0, 178, 238)",deepskyblue3:"rgb(0, 154, 205)",deepskyblue4:"rgb(0, 104, 139)",dimgray:"rgb(105, 105, 105)",dimgrey:"rgb(105, 105, 105)",dodgerblue:"rgb(30, 144, 255)",dodgerblue1:"rgb(30, 144, 255)",dodgerblue2:"rgb(28, 134, 238)",dodgerblue3:"rgb(24, 116, 205)",dodgerblue4:"rgb(16, 78, 139)",firebrick:"rgb(178, 34, 34)",firebrick1:"rgb(255, 48, 48)",firebrick2:"rgb(238, 44, 44)",firebrick3:"rgb(205, 38, 38)",firebrick4:"rgb(139, 26, 26)",floralwhite:"rgb(255, 250, 240)",forestgreen:"rgb(34, 139, 34)",gainsboro:"rgb(220, 220, 220)",ghostwhite:"rgb(248, 248, 255)",gold:"rgb(255, 215, 0)",gold1:"rgb(255, 215, 0)",gold2:"rgb(238, 201, 0)",gold3:"rgb(205, 173, 0)",gold4:"rgb(139, 117, 0)",goldenrod:"rgb(218, 165, 32)",goldenrod1:"rgb(255, 193, 37)",goldenrod2:"rgb(238, 180, 34)",goldenrod3:"rgb(205, 155, 29)",goldenrod4:"rgb(139, 105, 20)",gray:"rgb(190, 190, 190)",gray0:"rgb(0, 0, 0)",gray1:"rgb(3, 3, 3)",gray10:"rgb(26, 26, 26)",gray100:"rgb(255, 255, 255)",gray11:"rgb(28, 28, 28)",gray12:"rgb(31, 31, 31)",gray13:"rgb(33, 33, 33)",gray14:"rgb(36, 36, 36)",gray15:"rgb(38, 38, 38)",gray16:"rgb(41, 41, 41)",gray17:"rgb(43, 43, 43)",gray18:"rgb(46, 46, 46)",gray19:"rgb(48, 48, 48)",gray2:"rgb(5, 5, 5)",gray20:"rgb(51, 51, 51)",gray21:"rgb(54, 54, 54)",gray22:"rgb(56, 56, 56)",gray23:"rgb(59, 59, 59)",gray24:"rgb(61, 61, 61)",gray25:"rgb(64, 64, 64)",gray26:"rgb(66, 66, 66)",gray27:"rgb(69, 69, 69)",gray28:"rgb(71, 71, 71)",gray29:"rgb(74, 74, 74)",gray3:"rgb(8, 8, 8)",gray30:"rgb(77, 77, 77)",gray31:"rgb(79, 79, 79)",gray32:"rgb(82, 82, 82)",gray33:"rgb(84, 84, 84)",gray34:"rgb(87, 87, 87)",gray35:"rgb(89, 89, 89)",gray36:"rgb(92, 92, 92)",gray37:"rgb(94, 94, 94)",gray38:"rgb(97, 97, 97)",gray39:"rgb(99, 99, 99)",gray4:"rgb(10, 10, 10)",gray40:"rgb(102, 102, 102)",gray41:"rgb(105, 105, 105)",gray42:"rgb(107, 107, 107)",gray43:"rgb(110, 110, 110)",gray44:"rgb(112, 112, 112)",gray45:"rgb(115, 115, 115)",gray46:"rgb(117, 117, 117)",gray47:"rgb(120, 120, 120)",gray48:"rgb(122, 122, 122)",gray49:"rgb(125, 125, 125)",gray5:"rgb(13, 13, 13)",gray50:"rgb(127, 127, 127)",gray51:"rgb(130, 130, 130)",gray52:"rgb(133, 133, 133)",gray53:"rgb(135, 135, 135)",gray54:"rgb(138, 138, 138)",gray55:"rgb(140, 140, 140)",gray56:"rgb(143, 143, 143)",gray57:"rgb(145, 145, 145)",gray58:"rgb(148, 148, 148)",gray59:"rgb(150, 150, 150)",gray6:"rgb(15, 15, 15)",gray60:"rgb(153, 153, 153)",gray61:"rgb(156, 156, 156)",gray62:"rgb(158, 158, 158)",gray63:"rgb(161, 161, 161)",gray64:"rgb(163, 163, 163)",gray65:"rgb(166, 166, 166)",gray66:"rgb(168, 168, 168)",gray67:"rgb(171, 171, 171)",gray68:"rgb(173, 173, 173)",gray69:"rgb(176, 176, 176)",gray7:"rgb(18, 18, 18)",gray70:"rgb(179, 179, 179)",gray71:"rgb(181, 181, 181)",gray72:"rgb(184, 184, 184)",gray73:"rgb(186, 186, 186)",gray74:"rgb(189, 189, 189)",gray75:"rgb(191, 191, 191)",gray76:"rgb(194, 194, 194)",gray77:"rgb(196, 196, 196)",gray78:"rgb(199, 199, 199)",gray79:"rgb(201, 201, 201)",gray8:"rgb(20, 20, 20)",gray80:"rgb(204, 204, 204)",gray81:"rgb(207, 207, 207)",gray82:"rgb(209, 209, 209)",gray83:"rgb(212, 212, 212)",gray84:"rgb(214, 214, 214)",gray85:"rgb(217, 217, 217)",gray86:"rgb(219, 219, 219)",gray87:"rgb(222, 222, 222)",gray88:"rgb(224, 224, 224)",gray89:"rgb(227, 227, 227)",gray9:"rgb(23, 23, 23)",gray90:"rgb(229, 229, 229)",gray91:"rgb(232, 232, 232)",gray92:"rgb(235, 235, 235)",gray93:"rgb(237, 237, 237)",gray94:"rgb(240, 240, 240)",gray95:"rgb(242, 242, 242)",gray96:"rgb(245, 245, 245)",gray97:"rgb(247, 247, 247)",gray98:"rgb(250, 250, 250)",gray99:"rgb(252, 252, 252)",green:"rgb(0, 255, 0)",green1:"rgb(0, 255, 0)",green2:"rgb(0, 238, 0)",green3:"rgb(0, 205, 0)",green4:"rgb(0, 139, 0)",greenyellow:"rgb(173, 255, 47)",grey:"rgb(190, 190, 190)",grey0:"rgb(0, 0, 0)",grey1:"rgb(3, 3, 3)",grey10:"rgb(26, 26, 26)",grey100:"rgb(255, 255, 255)",grey11:"rgb(28, 28, 28)",grey12:"rgb(31, 31, 31)",grey13:"rgb(33, 33, 33)",grey14:"rgb(36, 36, 36)",grey15:"rgb(38, 38, 38)",grey16:"rgb(41, 41, 41)",grey17:"rgb(43, 43, 43)",grey18:"rgb(46, 46, 46)",grey19:"rgb(48, 48, 48)",grey2:"rgb(5, 5, 5)",grey20:"rgb(51, 51, 51)",grey21:"rgb(54, 54, 54)",grey22:"rgb(56, 56, 56)",grey23:"rgb(59, 59, 59)",grey24:"rgb(61, 61, 61)",grey25:"rgb(64, 64, 64)",grey26:"rgb(66, 66, 66)",grey27:"rgb(69, 69, 69)",grey28:"rgb(71, 71, 71)",grey29:"rgb(74, 74, 74)",grey3:"rgb(8, 8, 8)",grey30:"rgb(77, 77, 77)",grey31:"rgb(79, 79, 79)",grey32:"rgb(82, 82, 82)",grey33:"rgb(84, 84, 84)",grey34:"rgb(87, 87, 87)",grey35:"rgb(89, 89, 89)",grey36:"rgb(92, 92, 92)",grey37:"rgb(94, 94, 94)",grey38:"rgb(97, 97, 97)",grey39:"rgb(99, 99, 99)",grey4:"rgb(10, 10, 10)",grey40:"rgb(102, 102, 102)",grey41:"rgb(105, 105, 105)",grey42:"rgb(107, 107, 107)",grey43:"rgb(110, 110, 110)",grey44:"rgb(112, 112, 112)",grey45:"rgb(115, 115, 115)",grey46:"rgb(117, 117, 117)",grey47:"rgb(120, 120, 120)",grey48:"rgb(122, 122, 122)",grey49:"rgb(125, 125, 125)",grey5:"rgb(13, 13, 13)",grey50:"rgb(127, 127, 127)",grey51:"rgb(130, 130, 130)",grey52:"rgb(133, 133, 133)",grey53:"rgb(135, 135, 135)",grey54:"rgb(138, 138, 138)",grey55:"rgb(140, 140, 140)",grey56:"rgb(143, 143, 143)",grey57:"rgb(145, 145, 145)",grey58:"rgb(148, 148, 148)",grey59:"rgb(150, 150, 150)",grey6:"rgb(15, 15, 15)",grey60:"rgb(153, 153, 153)",grey61:"rgb(156, 156, 156)",grey62:"rgb(158, 158, 158)",grey63:"rgb(161, 161, 161)",grey64:"rgb(163, 163, 163)",grey65:"rgb(166, 166, 166)",grey66:"rgb(168, 168, 168)",grey67:"rgb(171, 171, 171)",grey68:"rgb(173, 173, 173)",grey69:"rgb(176, 176, 176)",grey7:"rgb(18, 18, 18)",grey70:"rgb(179, 179, 179)",grey71:"rgb(181, 181, 181)",grey72:"rgb(184, 184, 184)",grey73:"rgb(186, 186, 186)",grey74:"rgb(189, 189, 189)",grey75:"rgb(191, 191, 191)",grey76:"rgb(194, 194, 194)",grey77:"rgb(196, 196, 196)",grey78:"rgb(199, 199, 199)",grey79:"rgb(201, 201, 201)",grey8:"rgb(20, 20, 20)",grey80:"rgb(204, 204, 204)",grey81:"rgb(207, 207, 207)",grey82:"rgb(209, 209, 209)",grey83:"rgb(212, 212, 212)",grey84:"rgb(214, 214, 214)",grey85:"rgb(217, 217, 217)",grey86:"rgb(219, 219, 219)",grey87:"rgb(222, 222, 222)",grey88:"rgb(224, 224, 224)",grey89:"rgb(227, 227, 227)",grey9:"rgb(23, 23, 23)",grey90:"rgb(229, 229, 229)",grey91:"rgb(232, 232, 232)",grey92:"rgb(235, 235, 235)",grey93:"rgb(237, 237, 237)",grey94:"rgb(240, 240, 240)",grey95:"rgb(242, 242, 242)",grey96:"rgb(245, 245, 245)",grey97:"rgb(247, 247, 247)",grey98:"rgb(250, 250, 250)",grey99:"rgb(252, 252, 252)",honeydew:"rgb(240, 255, 240)",honeydew1:"rgb(240, 255, 240)",honeydew2:"rgb(224, 238, 224)",honeydew3:"rgb(193, 205, 193)",honeydew4:"rgb(131, 139, 131)",hotpink:"rgb(255, 105, 180)",hotpink1:"rgb(255, 110, 180)",hotpink2:"rgb(238, 106, 167)",hotpink3:"rgb(205, 96, 144)",hotpink4:"rgb(139, 58, 98)",indianred:"rgb(205, 92, 92)",indianred1:"rgb(255, 106, 106)",indianred2:"rgb(238, 99, 99)",indianred3:"rgb(205, 85, 85)",indianred4:"rgb(139, 58, 58)",ivory:"rgb(255, 255, 240)",ivory1:"rgb(255, 255, 240)",ivory2:"rgb(238, 238, 224)",ivory3:"rgb(205, 205, 193)",ivory4:"rgb(139, 139, 131)",khaki:"rgb(240, 230, 140)",khaki1:"rgb(255, 246, 143)",khaki2:"rgb(238, 230, 133)",khaki3:"rgb(205, 198, 115)",khaki4:"rgb(139, 134, 78)",lavender:"rgb(230, 230, 250)",lavenderblush:"rgb(255, 240, 245)",lavenderblush1:"rgb(255, 240, 245)",lavenderblush2:"rgb(238, 224, 229)",lavenderblush3:"rgb(205, 193, 197)",lavenderblush4:"rgb(139, 131, 134)",lawngreen:"rgb(124, 252, 0)",lemonchiffon:"rgb(255, 250, 205)",lemonchiffon1:"rgb(255, 250, 205)",lemonchiffon2:"rgb(238, 233, 191)",lemonchiffon3:"rgb(205, 201, 165)",lemonchiffon4:"rgb(139, 137, 112)",lightblue:"rgb(173, 216, 230)",lightblue1:"rgb(191, 239, 255)",lightblue2:"rgb(178, 223, 238)",lightblue3:"rgb(154, 192, 205)",lightblue4:"rgb(104, 131, 139)",lightcoral:"rgb(240, 128, 128)",lightcyan:"rgb(224, 255, 255)",lightcyan1:"rgb(224, 255, 255)",lightcyan2:"rgb(209, 238, 238)",lightcyan3:"rgb(180, 205, 205)",lightcyan4:"rgb(122, 139, 139)",lightgoldenrod:"rgb(238, 221, 130)",lightgoldenrod1:"rgb(255, 236, 139)",lightgoldenrod2:"rgb(238, 220, 130)",lightgoldenrod3:"rgb(205, 190, 112)",lightgoldenrod4:"rgb(139, 129, 76)",lightgoldenrodyellow:"rgb(250, 250, 210)",lightgray:"rgb(211, 211, 211)",lightgreen:"rgb(144, 238, 144)",lightgrey:"rgb(211, 211, 211)",lightpink:"rgb(255, 182, 193)",lightpink1:"rgb(255, 174, 185)",lightpink2:"rgb(238, 162, 173)",lightpink3:"rgb(205, 140, 149)",lightpink4:"rgb(139, 95, 101)",lightsalmon:"rgb(255, 160, 122)",lightsalmon1:"rgb(255, 160, 122)",lightsalmon2:"rgb(238, 149, 114)",lightsalmon3:"rgb(205, 129, 98)",lightsalmon4:"rgb(139, 87, 66)",lightseagreen:"rgb(32, 178, 170)",lightskyblue:"rgb(135, 206, 250)",lightskyblue1:"rgb(176, 226, 255)",lightskyblue2:"rgb(164, 211, 238)",lightskyblue3:"rgb(141, 182, 205)",lightskyblue4:"rgb(96, 123, 139)",lightslateblue:"rgb(132, 112, 255)",lightslategray:"rgb(119, 136, 153)",lightslategrey:"rgb(119, 136, 153)",lightsteelblue:"rgb(176, 196, 222)",lightsteelblue1:"rgb(202, 225, 255)",lightsteelblue2:"rgb(188, 210, 238)",lightsteelblue3:"rgb(162, 181, 205)",lightsteelblue4:"rgb(110, 123, 139)",lightyellow:"rgb(255, 255, 224)",lightyellow1:"rgb(255, 255, 224)",lightyellow2:"rgb(238, 238, 209)",lightyellow3:"rgb(205, 205, 180)",lightyellow4:"rgb(139, 139, 122)",limegreen:"rgb(50, 205, 50)",linen:"rgb(250, 240, 230)",magenta:"rgb(255, 0, 255)",magenta1:"rgb(255, 0, 255)",magenta2:"rgb(238, 0, 238)",magenta3:"rgb(205, 0, 205)",magenta4:"rgb(139, 0, 139)",maroon:"rgb(176, 48, 96)",maroon1:"rgb(255, 52, 179)",maroon2:"rgb(238, 48, 167)",maroon3:"rgb(205, 41, 144)",maroon4:"rgb(139, 28, 98)",mediumaquamarine:"rgb(102, 205, 170)",mediumblue:"rgb(0, 0, 205)",mediumorchid:"rgb(186, 85, 211)",mediumorchid1:"rgb(224, 102, 255)",mediumorchid2:"rgb(209, 95, 238)",mediumorchid3:"rgb(180, 82, 205)",mediumorchid4:"rgb(122, 55, 139)",mediumpurple:"rgb(147, 112, 219)",mediumpurple1:"rgb(171, 130, 255)",mediumpurple2:"rgb(159, 121, 238)",mediumpurple3:"rgb(137, 104, 205)",mediumpurple4:"rgb(93, 71, 139)",mediumseagreen:"rgb(60, 179, 113)",mediumslateblue:"rgb(123, 104, 238)",mediumspringgreen:"rgb(0, 250, 154)",mediumturquoise:"rgb(72, 209, 204)",mediumvioletred:"rgb(199, 21, 133)",midnightblue:"rgb(25, 25, 112)",mintcream:"rgb(245, 255, 250)",mistyrose:"rgb(255, 228, 225)",mistyrose1:"rgb(255, 228, 225)",mistyrose2:"rgb(238, 213, 210)",mistyrose3:"rgb(205, 183, 181)",mistyrose4:"rgb(139, 125, 123)",moccasin:"rgb(255, 228, 181)",navajowhite:"rgb(255, 222, 173)",navajowhite1:"rgb(255, 222, 173)",navajowhite2:"rgb(238, 207, 161)",navajowhite3:"rgb(205, 179, 139)",navajowhite4:"rgb(139, 121, 94)",navy:"rgb(0, 0, 128)",navyblue:"rgb(0, 0, 128)",oldlace:"rgb(253, 245, 230)",olivedrab:"rgb(107, 142, 35)",olivedrab1:"rgb(192, 255, 62)",olivedrab2:"rgb(179, 238, 58)",olivedrab3:"rgb(154, 205, 50)",olivedrab4:"rgb(105, 139, 34)",orange:"rgb(255, 165, 0)",orange1:"rgb(255, 165, 0)",orange2:"rgb(238, 154, 0)",orange3:"rgb(205, 133, 0)",orange4:"rgb(139, 90, 0)",orangered:"rgb(255, 69, 0)",orangered1:"rgb(255, 69, 0)",orangered2:"rgb(238, 64, 0)",orangered3:"rgb(205, 55, 0)",orangered4:"rgb(139, 37, 0)",orchid:"rgb(218, 112, 214)",orchid1:"rgb(255, 131, 250)",orchid2:"rgb(238, 122, 233)",orchid3:"rgb(205, 105, 201)",orchid4:"rgb(139, 71, 137)",palegoldenrod:"rgb(238, 232, 170)",palegreen:"rgb(152, 251, 152)",palegreen1:"rgb(154, 255, 154)",palegreen2:"rgb(144, 238, 144)",palegreen3:"rgb(124, 205, 124)",palegreen4:"rgb(84, 139, 84)",paleturquoise:"rgb(175, 238, 238)",paleturquoise1:"rgb(187, 255, 255)",paleturquoise2:"rgb(174, 238, 238)",paleturquoise3:"rgb(150, 205, 205)",paleturquoise4:"rgb(102, 139, 139)",palevioletred:"rgb(219, 112, 147)",palevioletred1:"rgb(255, 130, 171)",palevioletred2:"rgb(238, 121, 159)",palevioletred3:"rgb(205, 104, 137)",palevioletred4:"rgb(139, 71, 93)",papayawhip:"rgb(255, 239, 213)",peachpuff:"rgb(255, 218, 185)",peachpuff1:"rgb(255, 218, 185)",peachpuff2:"rgb(238, 203, 173)",peachpuff3:"rgb(205, 175, 149)",peachpuff4:"rgb(139, 119, 101)",peru:"rgb(205, 133, 63)",pink:"rgb(255, 192, 203)",pink1:"rgb(255, 181, 197)",pink2:"rgb(238, 169, 184)",pink3:"rgb(205, 145, 158)",pink4:"rgb(139, 99, 108)",plum:"rgb(221, 160, 221)",plum1:"rgb(255, 187, 255)",plum2:"rgb(238, 174, 238)",plum3:"rgb(205, 150, 205)",plum4:"rgb(139, 102, 139)",powderblue:"rgb(176, 224, 230)",purple:"rgb(160, 32, 240)",purple1:"rgb(155, 48, 255)",purple2:"rgb(145, 44, 238)",purple3:"rgb(125, 38, 205)",purple4:"rgb(85, 26, 139)",red:"rgb(255, 0, 0)",red1:"rgb(255, 0, 0)",red2:"rgb(238, 0, 0)",red3:"rgb(205, 0, 0)",red4:"rgb(139, 0, 0)",rosybrown:"rgb(188, 143, 143)",rosybrown1:"rgb(255, 193, 193)",rosybrown2:"rgb(238, 180, 180)",rosybrown3:"rgb(205, 155, 155)",rosybrown4:"rgb(139, 105, 105)",royalblue:"rgb(65, 105, 225)",royalblue1:"rgb(72, 118, 255)",royalblue2:"rgb(67, 110, 238)",royalblue3:"rgb(58, 95, 205)",royalblue4:"rgb(39, 64, 139)",saddlebrown:"rgb(139, 69, 19)",salmon:"rgb(250, 128, 114)",salmon1:"rgb(255, 140, 105)",salmon2:"rgb(238, 130, 98)",salmon3:"rgb(205, 112, 84)",salmon4:"rgb(139, 76, 57)",sandybrown:"rgb(244, 164, 96)",seagreen:"rgb(46, 139, 87)",seagreen1:"rgb(84, 255, 159)",seagreen2:"rgb(78, 238, 148)",seagreen3:"rgb(67, 205, 128)",seagreen4:"rgb(46, 139, 87)",seashell:"rgb(255, 245, 238)",seashell1:"rgb(255, 245, 238)",seashell2:"rgb(238, 229, 222)",seashell3:"rgb(205, 197, 191)",seashell4:"rgb(139, 134, 130)",sienna:"rgb(160, 82, 45)",sienna1:"rgb(255, 130, 71)",sienna2:"rgb(238, 121, 66)",sienna3:"rgb(205, 104, 57)",sienna4:"rgb(139, 71, 38)",skyblue:"rgb(135, 206, 235)",skyblue1:"rgb(135, 206, 255)",skyblue2:"rgb(126, 192, 238)",skyblue3:"rgb(108, 166, 205)",skyblue4:"rgb(74, 112, 139)",slateblue:"rgb(106, 90, 205)",slateblue1:"rgb(131, 111, 255)",slateblue2:"rgb(122, 103, 238)",slateblue3:"rgb(105, 89, 205)",slateblue4:"rgb(71, 60, 139)",slategray:"rgb(112, 128, 144)",slategray1:"rgb(198, 226, 255)",slategray2:"rgb(185, 211, 238)",slategray3:"rgb(159, 182, 205)",slategray4:"rgb(108, 123, 139)",slategrey:"rgb(112, 128, 144)",snow:"rgb(255, 250, 250)",snow1:"rgb(255, 250, 250)",snow2:"rgb(238, 233, 233)",snow3:"rgb(205, 201, 201)",snow4:"rgb(139, 137, 137)",springgreen:"rgb(0, 255, 127)",springgreen1:"rgb(0, 255, 127)",springgreen2:"rgb(0, 238, 118)",springgreen3:"rgb(0, 205, 102)",springgreen4:"rgb(0, 139, 69)",steelblue:"rgb(70, 130, 180)",steelblue1:"rgb(99, 184, 255)",steelblue2:"rgb(92, 172, 238)",steelblue3:"rgb(79, 148, 205)",steelblue4:"rgb(54, 100, 139)",tan:"rgb(210, 180, 140)",tan1:"rgb(255, 165, 79)",tan2:"rgb(238, 154, 73)",tan3:"rgb(205, 133, 63)",tan4:"rgb(139, 90, 43)",thistle:"rgb(216, 191, 216)",thistle1:"rgb(255, 225, 255)",thistle2:"rgb(238, 210, 238)",thistle3:"rgb(205, 181, 205)",thistle4:"rgb(139, 123, 139)",tomato:"rgb(255, 99, 71)",tomato1:"rgb(255, 99, 71)",tomato2:"rgb(238, 92, 66)",tomato3:"rgb(205, 79, 57)",tomato4:"rgb(139, 54, 38)",turquoise:"rgb(64, 224, 208)",turquoise1:"rgb(0, 245, 255)",turquoise2:"rgb(0, 229, 238)",turquoise3:"rgb(0, 197, 205)",turquoise4:"rgb(0, 134, 139)",violet:"rgb(238, 130, 238)",violetred:"rgb(208, 32, 144)",violetred1:"rgb(255, 62, 150)",violetred2:"rgb(238, 58, 140)",violetred3:"rgb(205, 50, 120)",violetred4:"rgb(139, 34, 82)",wheat:"rgb(245, 222, 179)",wheat1:"rgb(255, 231, 186)",wheat2:"rgb(238, 216, 174)",wheat3:"rgb(205, 186, 150)",wheat4:"rgb(139, 126, 102)",white:"rgb(255, 255, 255)",whitesmoke:"rgb(245, 245, 245)",yellow:"rgb(255, 255, 0)",yellow1:"rgb(255, 255, 0)",yellow2:"rgb(238, 238, 0)",yellow3:"rgb(205, 205, 0)",yellow4:"rgb(139, 139, 0)",yellowgreen:"rgb(154, 205, 50)"},t.f={},t.f.createEnum=function(e){return new String(e)},t.f.replaceVars=function(e,r){return e.replace(/%([a-z]*)\(([^\)]+)\)/gi,(function(e,i,o){if(void 0===r[o])throw"Unknown variable: "+o;var n=r[o];if(i in t.f.replaceVars.functions)n=t.f.replaceVars.functions[i](n);else if(i)throw"Unknown escape function: "+i;return n}))},t.f.replaceVars.functions={encodeURI,encodeURIComponent,escapeHTML:function(e){var t={"<":"<",">":">","&":"&",'"':""","'":"'"};return e.replace(/[<>&\"\']/g,(function(e){return t[e]}))}},t.f.getAcceptLanguages=function(e){t.f.getAcceptLanguages.chromeSupported()?chrome.i18n.getAcceptLanguages(e):setTimeout((function(){e([navigator.language.replace(/-/g,"_")])}),0)},t.f.getAcceptLanguages.chromeSupported=function(){return window.chrome&&chrome.i18n},t.f.parseQuery=function(e){e.startsWith("?")&&(e=e.substr(1));for(var t={},r=e.split("&"),i=0;ir?r:e},t.f.zpad=function(e,t){return String(e).padStart(t,"0")},t.f.getWhitespace=function(e){if(e<=0)return"";var t=this.getWhitespace;for(t.whitespace||(t.whitespace=" ");e>t.whitespace.length;)t.whitespace+=t.whitespace;return t.whitespace.substr(0,e)},t.f.alarm=function(e,r){var i,o,n=r||5e3,s=t.f.getStack(1);return i=setTimeout((function(){var t="string"==typeof e?t:e.name;t=t?": "+t:"",console.warn("lib.f.alarm: timeout expired: "+n/1e3+"s"+t),console.log(s),i=null}),n),o=function(e){return function(){return i&&(clearTimeout(i),i=null),e.apply(null,arguments)}},"string"==typeof e?o:o(e)},t.f.getStack=function(e){var t,r=e?e+2:2;try{throw new Error}catch(e){t=e.stack.split("\n")}for(var i={},o=r;o=0&&this.observers.splice(t,1)},t.PreferenceManager.Record.prototype.get=function(){return this.currentValue===this.DEFAULT_VALUE?/^(string|number)$/.test(typeof this.defaultValue)?this.defaultValue:"object"==typeof this.defaultValue?JSON.parse(JSON.stringify(this.defaultValue)):this.defaultValue:this.currentValue},t.PreferenceManager.prototype.deactivate=function(){if(!this.isActive_)throw new Error("Not activated");this.isActive_=!1,this.storage.removeObserver(this.storageObserver_)},t.PreferenceManager.prototype.activate=function(){if(this.isActive_)throw new Error("Already activated");this.isActive_=!0,this.storage.addObserver(this.storageObserver_)},t.PreferenceManager.prototype.readStorage=function(e){var t=0;function r(){0==--t&&e&&e()}var i=Object.keys(this.prefRecords_).map(function(e){return this.prefix+e}.bind(this));this.trace&&console.log("Preferences read: "+this.prefix),this.storage.getItems(i,function(i){var o=this.prefix.length;for(var n in i){var s=i[n],a=n.substr(o),c=a in this.childLists_&&JSON.stringify(s)!=JSON.stringify(this.prefRecords_[a].currentValue);this.prefRecords_[a].currentValue=s,c&&(t++,this.syncChildList(a,r))}0==t&&e&&setTimeout(e)}.bind(this))},t.PreferenceManager.prototype.definePreference=function(e,r,i){var o=this.prefRecords_[e];o?this.changeDefault(e,r):o=this.prefRecords_[e]=new t.PreferenceManager.Record(e,r),i&&o.addObserver(i)},t.PreferenceManager.prototype.definePreferences=function(e){for(var t=0;t=0&&s.splice(l,1),!this.childLists_[e][c]){var h=this.childFactories_[e](this,c);if(!h){console.warn("Unable to restore child: "+e+": "+c);continue}h.trace=this.trace,this.childLists_[e][c]=h,i++,h.readStorage(o)}}for(a=0;a=0;i--){var o=e[i],n=this.storage_.getItem(o);if("string"==typeof n)try{r[o]=JSON.parse(n)}catch(e){r[o]=n}else e.splice(i,1)}setTimeout(t.bind(null,r),0)},t.Storage.Local.prototype.setItem=function(e,t,r){this.storage_.setItem(e,JSON.stringify(t)),r&&setTimeout(r,0)},t.Storage.Local.prototype.setItems=function(e,t){for(var r in e)this.storage_.setItem(r,JSON.stringify(e[r]));t&&setTimeout(t,0)},t.Storage.Local.prototype.removeItem=function(e,t){this.storage_.removeItem(e),t&&setTimeout(t,0)},t.Storage.Local.prototype.removeItems=function(e,t){for(var r=0;r=0;i--){var o=e[i],n=this.storage_[o];if("string"==typeof n)try{r[o]=JSON.parse(n)}catch(e){r[o]=n}else e.splice(i,1)}setTimeout(t.bind(null,r),0)},t.Storage.Memory.prototype.setItem=function(e,t,r){var i=this.storage_[e];this.storage_[e]=JSON.stringify(t);var o={};o[e]={oldValue:i,newValue:t},setTimeout(function(){for(var e=0;e{let t="";switch(e){case"debug":case"warn":case"error":t=e.toUpperCase()+": "}const r=this.console_[e];this[e]=this.console_[e]=(...e)=>{this.save&&(this.data+=this.prefix_+t+e.join(" ")+"\n"),r.apply(this.console_,e)}})),["group","groupCollapsed"].forEach((e=>{const t=this.console_[e];this[e]=this.console_[e]=(e="")=>{t(e),this.save&&(this.data+=this.prefix_+e+"\n"),this.prefix_=" ".repeat(++this.prefixStack_)}}));const t=this.console_.groupEnd;this.groupEnd=this.console_.groupEnd=()=>{t(),this.prefix_=" ".repeat(--this.prefixStack_)}},t.TestManager.Suite=function(e){function r(t,r){this.testManager_=t,this.suiteName=e,this.setup(r)}return r.suiteName=e,r.addTest=t.TestManager.Suite.addTest,r.disableTest=t.TestManager.Suite.disableTest,r.getTest=t.TestManager.Suite.getTest,r.getTestList=t.TestManager.Suite.getTestList,r.testList_=[],r.testMap_={},r.prototype=Object.create(t.TestManager.Suite.prototype),r.constructor=t.TestManager.Suite,t.TestManager.Suite.subclasses.push(r),r},t.TestManager.Suite.subclasses=[],t.TestManager.Suite.addTest=function(e,r){if(e in this.testMap_)throw"Duplicate test name: "+e;var i=new t.TestManager.Test(this,e,r);this.testMap_[e]=i,this.testList_.push(i)},t.TestManager.Suite.disableTest=function(e,r){if(e in this.testMap_)throw"Duplicate test name: "+e;var i=new t.TestManager.Test(this,e,r);console.log("Disabled test: "+i.fullName)},t.TestManager.Suite.getTest=function(e){return this.testMap_[e]},t.TestManager.Suite.getTestList=function(){return this.testList_},t.TestManager.Suite.prototype.setDefaults=function(e,t){for(var r in t)this[r]=r in e?e[r]:t[r]},t.TestManager.Suite.prototype.setup=function(e){},t.TestManager.Suite.prototype.preamble=function(e,t){},t.TestManager.Suite.prototype.postamble=function(e,t){},t.TestManager.Test=function(e,t,r){this.suiteClass=e,this.testName=t,this.fullName=e.suiteName+"["+t+"]",this.testFunction_=r},t.TestManager.Test.prototype.run=function(e){try{this.testFunction_.apply(e.suite,[e,e.testRun.cx])}catch(r){if(r instanceof t.TestManager.Result.TestComplete)return;e.println("Test raised an exception: "+r),r.stack&&(r.stack instanceof Array?e.println(r.stack.join("\n")):e.println(r.stack)),e.completeTest_(e.FAILED,!1)}},t.TestManager.TestRun=function(e,t){this.testManager=e,this.log=e.log,this.cx=t||{},this.failures=[],this.passes=[],this.startDate=null,this.duration=null,this.currentResult=null,this.maxFailures=0,this.panic=!1,this.testQueue_=[]},t.TestManager.TestRun.prototype.ALL_TESTS=t.f.createEnum(""),t.TestManager.TestRun.prototype.selectTest=function(e){this.testQueue_.push(e)},t.TestManager.TestRun.prototype.selectSuite=function(e,t){for(var r=t||this.ALL_TESTS,i=0,o=e.getTestList(),n=0;n500&&this.log.warn("Slow test took "+this.msToSeconds_(e.duration)),this.log.groupEnd(),e.status==e.FAILED)this.failures.push(e),this.currentSuite=null;else{if(e.status!=e.PASSED)return this.log.error("Unknown result status: "+e.test.fullName+": "+e.status),this.panic=!0;this.passes.push(e)}this.runNextTest_()},t.TestManager.TestRun.prototype.onResultReComplete=function(e,t){this.log.error("Late complete for test: "+e.test.fullName+": "+t);var r=this.passes.indexOf(e);r>=0&&(this.passes.splice(r,1),this.failures.push(e))},t.TestManager.TestRun.prototype.runNextTest_=function(){if(this.panic||!this.testQueue_.length)return this.onTestRunComplete_();if(this.maxFailures&&this.failures.length>=this.maxFailures)return this.log.error("Maximum failure count reached, aborting test run."),this.onTestRunComplete_();var e=this.testQueue_[0],r=this.currentResult?this.currentResult.suite:null;try{r&&r instanceof e.suiteClass||(r&&this.log.groupEnd(),this.log.group(e.suiteClass.suiteName),r=new e.suiteClass(this.testManager,this.cx))}catch(e){return this.log.error("Exception during setup: "+(e.stack?e.stack:e)),this.panic=!0,void this.onTestRunComplete_()}try{this.log.group(e.testName),this.currentResult=new t.TestManager.Result(this,r,e),this.testManager.testPreamble(this.currentResult,this.cx),r.preamble(this.currentResult,this.cx),this.testQueue_.shift()}catch(e){return this.log.error("Unexpected exception during test preamble: "+(e.stack?e.stack:e)),this.log.groupEnd(),this.panic=!0,void this.onTestRunComplete_()}try{this.currentResult.run()}catch(e){this.log.error("Unexpected exception during test run: "+(e.stack?e.stack:e)),this.panic=!0}},t.TestManager.TestRun.prototype.run=function(){this.log.info("Running "+this.testQueue_.length+" test(s)"),window.onerror=this.onUncaughtException_.bind(this),this.startDate=new Date,this.runNextTest_()},t.TestManager.TestRun.prototype.msToSeconds_=function(e){return(e/1e3).toFixed(2)+"s"},t.TestManager.TestRun.prototype.summarize=function(){if(this.failures.length)for(var e=0;e1?"\n"+t.join("\n"):t.join("\n")}if(e!==t&&!(t instanceof Array&&this.arrayEQ_(e,t))){var o=r?"["+r+"]":"";this.fail("assertEQ"+o+": "+this.getCallerLocation_(1)+": "+i(e)+" !== "+i(t))}},t.TestManager.Result.prototype.assert=function(e,t){if(!0!==e){var r=t?"["+t+"]":"";this.fail("assert"+r+": "+this.getCallerLocation_(1)+": "+String(e))}},t.TestManager.Result.prototype.getCallerLocation_=function(e){try{throw new Error}catch(r){var t=r.stack.split("\n")[e+2].match(/([^/]+:\d+):\d+\)?$/);return t?t[1]:"???"}},t.TestManager.Result.prototype.println=function(e){this.testRun.log.info(e)},t.TestManager.Result.prototype.fail=function(e){arguments.length&&this.println(e),this.completeTest_(this.FAILED,!0)},t.TestManager.Result.prototype.pass=function(){this.completeTest_(this.PASSED,!0)},t.UTF8Decoder=function(){this.bytesLeft=0,this.codePoint=0,this.lowerBound=0},t.UTF8Decoder.prototype.decode=function(e){for(var t="",r=0;r1114111?t+="�":o<65536?t+=String.fromCharCode(o):(o-=65536,t+=String.fromCharCode(55296+(o>>>10&1023),56320+(1023&o)))}}else t+="�",this.bytesLeft=0,r--}return t},t.decodeUTF8=function(e){return(new t.UTF8Decoder).decode(e)},t.encodeUTF8=function(e){for(var t="",r=0;r>>6),i=1):o<=65535?(t+=String.fromCharCode(224|o>>>12),i=2):(t+=String.fromCharCode(240|o>>>18),i=3);i>0;)i--,t+=String.fromCharCode(128|o>>>6*i&63)}return t},t.wc={},t.wc.nulWidth=0,t.wc.controlWidth=0,t.wc.regardCjkAmbiguous=!1,t.wc.cjkAmbiguousWidth=2,t.wc.combining=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531],[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],t.wc.ambiguous=[[161,161],[164,164],[167,168],[170,170],[174,174],[176,180],[182,186],[188,191],[198,198],[208,208],[215,216],[222,225],[230,230],[232,234],[236,237],[240,240],[242,243],[247,250],[252,252],[254,254],[257,257],[273,273],[275,275],[283,283],[294,295],[299,299],[305,307],[312,312],[319,322],[324,324],[328,331],[333,333],[338,339],[358,359],[363,363],[462,462],[464,464],[466,466],[468,468],[470,470],[472,472],[474,474],[476,476],[593,593],[609,609],[708,708],[711,711],[713,715],[717,717],[720,720],[728,731],[733,733],[735,735],[913,929],[931,937],[945,961],[963,969],[1025,1025],[1040,1103],[1105,1105],[8208,8208],[8211,8214],[8216,8217],[8220,8221],[8224,8226],[8228,8231],[8240,8240],[8242,8243],[8245,8245],[8251,8251],[8254,8254],[8308,8308],[8319,8319],[8321,8324],[8364,8364],[8451,8451],[8453,8453],[8457,8457],[8467,8467],[8470,8470],[8481,8482],[8486,8486],[8491,8491],[8531,8532],[8539,8542],[8544,8555],[8560,8569],[8592,8601],[8632,8633],[8658,8658],[8660,8660],[8679,8679],[8704,8704],[8706,8707],[8711,8712],[8715,8715],[8719,8719],[8721,8721],[8725,8725],[8730,8730],[8733,8736],[8739,8739],[8741,8741],[8743,8748],[8750,8750],[8756,8759],[8764,8765],[8776,8776],[8780,8780],[8786,8786],[8800,8801],[8804,8807],[8810,8811],[8814,8815],[8834,8835],[8838,8839],[8853,8853],[8857,8857],[8869,8869],[8895,8895],[8978,8978],[9312,9449],[9451,9547],[9552,9587],[9600,9615],[9618,9621],[9632,9633],[9635,9641],[9650,9651],[9654,9655],[9660,9661],[9664,9665],[9670,9672],[9675,9675],[9678,9681],[9698,9701],[9711,9711],[9733,9734],[9737,9737],[9742,9743],[9748,9749],[9756,9756],[9758,9758],[9792,9792],[9794,9794],[9824,9825],[9827,9829],[9831,9834],[9836,9837],[9839,9839],[10045,10045],[10102,10111],[57344,63743],[65533,65533],[983040,1048573],[1048576,1114109]],t.wc.isSpace=function(e){var r,i=0,o=t.wc.combining.length-1;if(et.wc.combining[o][1])return!1;for(;o>=i;)if(r=Math.floor((i+o)/2),e>t.wc.combining[r][1])i=r+1;else{if(!(et.wc.ambiguous[o][1])return!1;for(;o>=i;)if(r=Math.floor((i+o)/2),e>t.wc.ambiguous[r][1])i=r+1;else{if(!(e=127&&e<160?t.wc.controlWidth:e<127?1:t.wc.isSpace(e)?0:1+(e>=4352&&(e<=4447||9001==e||9002==e||e>=11904&&e<=42191&&12351!=e||e>=44032&&e<=55203||e>=63744&&e<=64255||e>=65040&&e<=65049||e>=65072&&e<=65135||e>=65280&&e<=65376||e>=65504&&e<=65510||e>=131072&&e<=196605||e>=196608&&e<=262141))},t.wc.charWidthRegardAmbiguous=function(e){return t.wc.isCjkAmbiguous(e)?t.wc.cjkAmbiguousWidth:t.wc.charWidthDisregardAmbiguous(e)},t.wc.strWidth=function(e){for(var r,i=0,o=0;or);o++);if(null!=i){for(n=o,s=0;ni&&n--,e.substring(o,n)}return e.substr(o)},t.wc.substring=function(e,r,i){return t.wc.substr(e,r,i-r)},t.resource.add("libdot/changelog/version","text/plain","1.16"),t.resource.add("libdot/changelog/date","text/plain","2017-08-16"),t.rtdep("lib.Storage");var r={windowType:null,zoomWarningMessage:"ZOOM != 100%",notifyCopyMessage:"✂",desktopNotificationTitle:"♪ %(title) ♪",testDeps:["hterm.ScrollPort.Tests","hterm.Screen.Tests","hterm.Terminal.Tests","hterm.VT.Tests","hterm.VT.CannedTests"]};t.registerInit("hterm",(function(e){function i(t){r.windowType=t.type,setTimeout(e,0)}r.defaultStorage||(window.chrome&&chrome.storage&&chrome.storage.sync?r.defaultStorage=new t.Storage.Chrome(chrome.storage.sync):r.defaultStorage=new t.Storage.Local);var o=!1;if(window.chrome&&chrome.runtime&&chrome.runtime.getManifest){var n=chrome.runtime.getManifest();o=n.app&&n.app.background}o?setTimeout(i.bind(null,{type:"popup"}),0):window.chrome&&chrome.tabs?chrome.tabs.getCurrent((function(t){t&&window.chrome?chrome.windows.get(t.windowId,null,i):(r.windowType="normal",setTimeout(e,0))})):setTimeout(i.bind(null,{type:"normal"}),0)})),r.getClientSize=function(e){return e.getBoundingClientRect()},r.getClientWidth=function(e){return e.getBoundingClientRect().width},r.getClientHeight=function(e){return e.getBoundingClientRect().height},r.copySelectionToClipboard=function(e){try{e.execCommand("copy")}catch(e){}},r.pasteFromClipboard=function(e){try{return e.execCommand("paste")}catch(e){return!1}},r.notify=function(e){var i=(e,t)=>void 0!==e?e:t;null==e&&(e={});var o={body:e.body,icon:i(e.icon,t.resource.getDataUrl("hterm/images/icon-96"))},n=i(e.title,window.document.title);n||(n="hterm"),n=t.f.replaceVars(r.desktopNotificationTitle,{title:n});var s=new Notification(n,o);return s.onclick=function(){window.focus(),this.close()},s},r.Size=function(e,t){this.width=e,this.height=t},r.Size.prototype.resize=function(e,t){this.width=e,this.height=t},r.Size.prototype.clone=function(){return new r.Size(this.width,this.height)},r.Size.prototype.setTo=function(e){this.width=e.width,this.height=e.height},r.Size.prototype.equals=function(e){return this.width==e.width&&this.height==e.height},r.Size.prototype.toString=function(){return"[hterm.Size: "+this.width+", "+this.height+"]"},r.RowCol=function(e,t,r){this.row=e,this.column=t,this.overflow=!!r},r.RowCol.prototype.move=function(e,t,r){this.row=e,this.column=t,this.overflow=!!r},r.RowCol.prototype.clone=function(){return new r.RowCol(this.row,this.column,this.overflow)},r.RowCol.prototype.setTo=function(e){this.row=e.row,this.column=e.column,this.overflow=e.overflow},r.RowCol.prototype.equals=function(e){return this.row==e.row&&this.column==e.column&&this.overflow==e.overflow},r.RowCol.prototype.toString=function(){return"[hterm.RowCol: "+this.row+", "+this.column+", "+this.overflow+"]"},t.rtdep("lib.f"),r.Frame=function(e,t,r){this.terminal_=e,this.div_=e.div_,this.url=t,this.options=r||{},this.iframe_=null,this.container_=null,this.messageChannel_=null},r.Frame.prototype.onMessage_=function(e){switch(e.data.name){case"ipc-init-ok":return void this.sendTerminalInfo_();case"terminal-info-ok":return this.container_.style.display="flex",this.messageChannel_.port1.onmessage=this.onMessage.bind(this),void this.onLoad();default:return void console.log("Unknown message from frame:",e.data)}},r.Frame.prototype.onMessage=function(){},r.Frame.prototype.onLoad_=function(){this.messageChannel_=new MessageChannel,this.messageChannel_.port1.onmessage=this.onMessage_.bind(this),this.messageChannel_.port1.start(),this.iframe_.contentWindow.postMessage({name:"ipc-init",argv:[{messagePort:this.messageChannel_.port2}]},this.url,[this.messageChannel_.port2])},r.Frame.prototype.onLoad=function(){},r.Frame.prototype.sendTerminalInfo_=function(){t.f.getAcceptLanguages(function(e){this.postMessage("terminal-info",[{acceptLanguages:e,foregroundColor:this.terminal_.getForegroundColor(),backgroundColor:this.terminal_.getBackgroundColor(),cursorColor:this.terminal_.getCursorColor(),fontSize:this.terminal_.getFontSize(),fontFamily:this.terminal_.getFontFamily(),baseURL:t.f.getURL("/")}])}.bind(this))},r.Frame.prototype.onCloseClicked_=function(){this.close()},r.Frame.prototype.close=function(){this.container_&&this.container_.parentNode&&(this.container_.parentNode.removeChild(this.container_),this.onClose())},r.Frame.prototype.onClose=function(){},r.Frame.prototype.postMessage=function(e,t){if(!this.messageChannel_)throw new Error("Message channel is not set up.");this.messageChannel_.port1.postMessage({name:e,argv:t})},r.Frame.prototype.show=function(){var e=this;function t(t,r){return t in e.options?e.options[t]:r}if(e=this,this.container_&&this.container_.parentNode)console.error("Frame already visible");else{var i=r.getClientSize(this.div_),o=(t("width",640),t("height",480),i.width,i.height,this.terminal_.document_),n=this.container_=o.createElement("div");n.style.cssText="position: absolute;display: none;flex-direction: column;top: 10%;left: 4%;width: 90%;height: 80%;min-height: 20%;max-height: 80%;box-shadow: 0 0 2px "+this.terminal_.getForegroundColor()+";border: 2px "+this.terminal_.getForegroundColor()+" solid;";var s=this.iframe_=o.createElement("iframe");s.onload=this.onLoad_.bind(this),s.style.cssText="display: flex;flex: 1;width: 100%",s.setAttribute("src",this.url),s.setAttribute("seamless",!0),n.appendChild(s),this.div_.appendChild(n)}},t.rtdep("hterm.Keyboard.KeyMap"),r.Keyboard=function(e){this.terminal=e,this.keyboardElement_=null,this.handlers_=[["focusout",this.onFocusOut_.bind(this)],["keydown",this.onKeyDown_.bind(this)],["keypress",this.onKeyPress_.bind(this)],["keyup",this.onKeyUp_.bind(this)],["textInput",this.onTextInput_.bind(this)]],this.keyMap=new r.Keyboard.KeyMap(this),this.bindings=new r.Keyboard.Bindings(this),this.altGrMode="none",this.shiftInsertPaste=!0,this.homeKeysScroll=!1,this.pageKeysScroll=!1,this.ctrlPlusMinusZeroZoom=!0,this.ctrlCCopy=!1,this.ctrlVPaste=!1,this.applicationKeypad=!1,this.applicationCursor=!1,this.backspaceSendsBackspace=!1,this.characterEncoding="utf-8",this.metaSendsEscape=!0,this.passMetaV=!0,this.altSendsWhat="escape",this.altIsMeta=!1,this.altBackspaceIsMetaBackspace=!1,this.altKeyPressed=0,this.mediaKeysAreFKeys=!1,this.previousAltSendsWhat_=null},r.Keyboard.KeyActions={CANCEL:t.f.createEnum("CANCEL"),DEFAULT:t.f.createEnum("DEFAULT"),PASS:t.f.createEnum("PASS"),STRIP:t.f.createEnum("STRIP")},r.Keyboard.prototype.encode=function(e){return"utf-8"==this.characterEncoding?this.terminal.vt.encodeUTF8(e):e},r.Keyboard.prototype.installKeyboard=function(e){if(e!=this.keyboardElement_){e&&this.keyboardElement_&&this.installKeyboard(null);for(var t=0;t=32&&(r=e.charCode);r&&this.terminal.onVTKeystroke(String.fromCharCode(r)),e.preventDefault(),e.stopPropagation()}},r.Keyboard.prototype.preventChromeAppNonCtrlShiftDefault_=function(e){window.chrome&&window.chrome.app&&window.chrome.app.window&&(e.ctrlKey&&e.shiftKey||e.preventDefault())},r.Keyboard.prototype.onFocusOut_=function(e){this.altKeyPressed=0},r.Keyboard.prototype.onKeyUp_=function(e){18==e.keyCode&&(this.altKeyPressed=this.altKeyPressed&~(1<=64&&b<=95&&(i=String.fromCharCode(b-64))),u&&"8-bit"==this.altSendsWhat&&1==i.length){var b=i.charCodeAt(0)+128;i=String.fromCharCode(b)}(u&&"escape"==this.altSendsWhat||d&&this.metaSendsEscape)&&(i=""+i)}this.terminal.onVTKeystroke(i)}else console.warn("Invalid action: "+JSON.stringify(i))}else console.warn("No definition for keyCode: "+e.keyCode)},r.Keyboard.Bindings=function(){this.bindings_={}},r.Keyboard.Bindings.prototype.clear=function(){this.bindings_={}},r.Keyboard.Bindings.prototype.addBinding_=function(e,t){var i=null,o=this.bindings_[e.keyCode];if(o)for(var n=0;n",d,s(p,f),d,d],[191,"/?",d,n(c("_"),c("?")),d,d],[17,"[CTRL]",f,f,f,f],[18,"[ALT]",f,f,f,f],[91,"[LAPL]",f,f,f,f],[32," ",d,c("@"),d,d],[92,"[RAPL]",f,f,f,f],[93,"[RMENU]",f,f,f,f],[42,"[PRTSCR]",f,f,f,f],[145,"[SCRLK]",f,f,f,f],[19,"[BREAK]",f,f,f,f],[45,"[INSERT]",l("onKeyInsert_"),d,d,d],[36,"[HOME]",l("onKeyHome_"),d,d,d],[33,"[PGUP]",l("onKeyPageUp_"),d,d,d],[46,"[DEL]",l("onKeyDel_"),d,d,d],[35,"[END]",l("onKeyEnd_"),d,d,d],[34,"[PGDOWN]",l("onKeyPageDown_"),d,d,d],[38,"[UP]",l("onKeyArrowUp_"),d,d,d],[40,"[DOWN]",l("onKeyArrowDown_"),d,d,d],[39,"[RIGHT]",i("","OC"),d,d,d],[37,"[LEFT]",i("","OD"),d,d,d],[144,"[NUMLOCK]",f,f,f,f],[96,"[KP0]",d,d,d,d],[97,"[KP1]",d,d,d,d],[98,"[KP2]",d,d,d,d],[99,"[KP3]",d,d,d,d],[100,"[KP4]",d,d,d,d],[101,"[KP5]",d,d,d,d],[102,"[KP6]",d,d,d,d],[103,"[KP7]",d,d,d,d],[104,"[KP8]",d,d,d,d],[105,"[KP9]",d,d,d,d],[107,"[KP+]",d,l("onPlusMinusZero_"),d,l("onPlusMinusZero_")],[109,"[KP-]",d,l("onPlusMinusZero_"),d,l("onPlusMinusZero_")],[106,"[KP*]",d,d,d,d],[111,"[KP/]",d,d,d,d],[110,"[KP.]",d,d,d,d],[166,"[BACK]",h(a("OP","")),d,"[23~",d],[167,"[FWD]",h(a("OQ","")),d,"[24~",d],[168,"[RELOAD]",h(a("OR","")),d,"[25~",d],[183,"[FSCR]",h(a("OS","")),d,"[26~",d],[182,"[WINS]",h("[15~"),d,"[28~",d],[216,"[BRIT-]",h("[17~"),d,"[29~",d],[217,"[BRIT+]",h("[18~"),d,"[31~",d])},r.Keyboard.KeyMap.prototype.onKeyInsert_=function(e){return this.keyboard.shiftInsertPaste&&e.shiftKey?r.Keyboard.KeyActions.PASS:"[2~"},r.Keyboard.KeyMap.prototype.onKeyHome_=function(e){return!this.keyboard.homeKeysScroll^e.shiftKey?e.altey||e.ctrlKey||e.shiftKey||!this.keyboard.applicationCursor?"":"OH":(this.keyboard.terminal.scrollHome(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyEnd_=function(e){return!this.keyboard.homeKeysScroll^e.shiftKey?e.altKey||e.ctrlKey||e.shiftKey||!this.keyboard.applicationCursor?"":"OF":(this.keyboard.terminal.scrollEnd(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyPageUp_=function(e){return!this.keyboard.pageKeysScroll^e.shiftKey?"[5~":(this.keyboard.terminal.scrollPageUp(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyDel_=function(e){return this.keyboard.altBackspaceIsMetaBackspace&&this.keyboard.altKeyPressed&&!e.altKey?"":"[3~"},r.Keyboard.KeyMap.prototype.onKeyPageDown_=function(e){return!this.keyboard.pageKeysScroll^e.shiftKey?"[6~":(this.keyboard.terminal.scrollPageDown(),r.Keyboard.KeyActions.CANCEL)},r.Keyboard.KeyMap.prototype.onKeyArrowUp_=function(e){return!this.keyboard.applicationCursor&&e.shiftKey?(this.keyboard.terminal.scrollLineUp(),r.Keyboard.KeyActions.CANCEL):e.shiftKey||e.ctrlKey||e.altKey||e.metaKey||!this.keyboard.applicationCursor?"":"OA"},r.Keyboard.KeyMap.prototype.onKeyArrowDown_=function(e){return!this.keyboard.applicationCursor&&e.shiftKey?(this.keyboard.terminal.scrollLineDown(),r.Keyboard.KeyActions.CANCEL):e.shiftKey||e.ctrlKey||e.altKey||e.metaKey||!this.keyboard.applicationCursor?"":"OB"},r.Keyboard.KeyMap.prototype.onClear_=function(e,t){return this.keyboard.terminal.wipeContents(),r.Keyboard.KeyActions.CANCEL},r.Keyboard.KeyMap.prototype.onCtrlNum_=function(e,t){function i(e){return String.fromCharCode(e.charCodeAt(0)-64)}if(this.keyboard.terminal.passCtrlNumber&&!e.shiftKey)return r.Keyboard.KeyActions.PASS;switch(t.keyCap.substr(0,1)){case"1":return"1";case"2":return i("@");case"3":return i("[");case"4":return i("\\");case"5":return i("]");case"6":return i("^");case"7":return i("_");case"8":return"";case"9":return"9"}},r.Keyboard.KeyMap.prototype.onAltNum_=function(e,t){return this.keyboard.terminal.passAltNumber&&!e.shiftKey?r.Keyboard.KeyActions.PASS:r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onMetaNum_=function(e,t){return this.keyboard.terminal.passMetaNumber&&!e.shiftKey?r.Keyboard.KeyActions.PASS:r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onCtrlC_=function(e,t){var i=this.keyboard.terminal.getDocument().getSelection();if(!i.isCollapsed){if(this.keyboard.ctrlCCopy&&!e.shiftKey)return this.keyboard.terminal.clearSelectionAfterCopy&&setTimeout(i.collapseToEnd.bind(i),50),r.Keyboard.KeyActions.PASS;if(!this.keyboard.ctrlCCopy&&e.shiftKey)return this.keyboard.terminal.clearSelectionAfterCopy&&setTimeout(i.collapseToEnd.bind(i),50),this.keyboard.terminal.copySelectionToClipboard(),r.Keyboard.KeyActions.CANCEL}return""},r.Keyboard.KeyMap.prototype.onCtrlN_=function(e,t){return e.shiftKey?(window.open(document.location.href,"","chrome=no,close=yes,resize=yes,scrollbars=yes,minimizable=yes,width="+window.innerWidth+",height="+window.innerHeight),r.Keyboard.KeyActions.CANCEL):""},r.Keyboard.KeyMap.prototype.onCtrlV_=function(e,t){return!e.shiftKey&&this.keyboard.ctrlVPaste||e.shiftKey&&!this.keyboard.ctrlVPaste?this.keyboard.terminal.paste()?r.Keyboard.KeyActions.CANCEL:r.Keyboard.KeyActions.PASS:""},r.Keyboard.KeyMap.prototype.onMetaN_=function(e,t){return e.shiftKey?(window.open(document.location.href,"","chrome=no,close=yes,resize=yes,scrollbars=yes,minimizable=yes,width="+window.outerWidth+",height="+window.outerHeight),r.Keyboard.KeyActions.CANCEL):r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onMetaC_=function(e,t){var i=this.keyboard.terminal.getDocument();return e.shiftKey||i.getSelection().isCollapsed?t.keyCap.substr(e.shiftKey?1:0,1):(this.keyboard.terminal.clearSelectionAfterCopy&&setTimeout((function(){i.getSelection().collapseToEnd()}),50),r.Keyboard.KeyActions.PASS)},r.Keyboard.KeyMap.prototype.onMetaV_=function(e,t){return e.shiftKey||this.keyboard.passMetaV?r.Keyboard.KeyActions.PASS:r.Keyboard.KeyActions.DEFAULT},r.Keyboard.KeyMap.prototype.onPlusMinusZero_=function(e,t){if(!(this.keyboard.ctrlPlusMinusZeroZoom^e.shiftKey))return"-_"==t.keyCap?"":r.Keyboard.KeyActions.CANCEL;if(1!=this.keyboard.terminal.getZoomFactor())return r.Keyboard.KeyActions.PASS;var i=t.keyCap.substr(0,1);if("0"==i)this.keyboard.terminal.setFontSize(0);else{var o=this.keyboard.terminal.getFontSize();"-"==i||"[KP-]"==t.keyCap?o-=1:o+=1,this.keyboard.terminal.setFontSize(o)}return r.Keyboard.KeyActions.CANCEL},r.Keyboard.KeyPattern=function(e){this.wildcardCount=0,this.keyCode=e.keyCode,r.Keyboard.KeyPattern.modifiers.forEach(function(t){this[t]=e[t]||!1,"*"==this[t]&&this.wildcardCount++}.bind(this))},r.Keyboard.KeyPattern.modifiers=["shift","ctrl","alt","meta"],r.Keyboard.KeyPattern.sortCompare=function(e,t){return e.wildcardCountt.wildcardCount?1:0},r.Keyboard.KeyPattern.prototype.match_=function(e,t){if(this.keyCode!=e.keyCode)return!1;var i=!0;return r.Keyboard.KeyPattern.modifiers.forEach(function(r){var o=r in e&&e[r];i&&(t||"*"!=this[r])&&this[r]!=o&&(i=!1)}.bind(this)),i},r.Keyboard.KeyPattern.prototype.matchKeyDown=function(e){return this.match_(e,!1)},r.Keyboard.KeyPattern.prototype.matchKeyPattern=function(e){return this.match_(e,!0)},r.Options=function(e){this.wraparound=!e||e.wraparound,this.reverseWraparound=!!e&&e.reverseWraparound,this.originMode=!!e&&e.originMode,this.autoCarriageReturn=!!e&&e.autoCarriageReturn,this.cursorVisible=!!e&&e.cursorVisible,this.cursorBlink=!!e&&e.cursorBlink,this.insertMode=!!e&&e.insertMode,this.reverseVideo=!!e&&e.reverseVideo,this.bracketedPaste=!!e&&e.bracketedPaste},t.rtdep("hterm.Keyboard.KeyActions"),r.Parser=function(){this.source="",this.pos=0,this.ch=null},r.Parser.prototype.error=function(e){return new Error("Parse error at "+this.pos+": "+e)},r.Parser.prototype.isComplete=function(){return this.pos==this.source.length},r.Parser.prototype.reset=function(e,t){this.source=e,this.pos=t||0,this.ch=e.substr(0,1)},r.Parser.prototype.parseKeySequence=function(){var e={keyCode:null};for(var t in r.Parser.identifiers.modifierKeys)e[r.Parser.identifiers.modifierKeys[t]]=!1;for(;this.pos 'none', else => 'right-alt'\n'none': Disable any AltGr related munging.\n'ctrl-alt': Assume Ctrl+Alt means AltGr.\n'left-alt': Assume left Alt means AltGr.\n'right-alt': Assume right Alt means AltGr.\n"],"alt-backspace-is-meta-backspace":[r.PreferenceManager.categories.Keyboard,!1,"bool","If set, undoes the Chrome OS Alt-Backspace->DEL remap, so that alt-backspace indeed is alt-backspace."],"alt-is-meta":[r.PreferenceManager.categories.Keyboard,!1,"bool","Set whether the alt key acts as a meta key or as a distinct alt key."],"alt-sends-what":[r.PreferenceManager.categories.Keyboard,"escape",["escape","8-bit","browser-key"],"Controls how the alt key is handled.\n\n escape....... Send an ESC prefix.\n 8-bit........ Add 128 to the unshifted character as in xterm.\n browser-key.. Wait for the keypress event and see what the browser \n says. (This won't work well on platforms where the \n browser performs a default action for some alt sequences.)"],"audible-bell-sound":[r.PreferenceManager.categories.Sounds,"lib-resource:hterm/audio/bell","url","URL of the terminal bell sound. Empty string for no audible bell."],"desktop-notification-bell":[r.PreferenceManager.categories.Sounds,!1,"bool",'If true, terminal bells in the background will create a Web Notification. https://www.w3.org/TR/notifications/\n\nDisplaying notifications requires permission from the user. When this option is set to true, hterm will attempt to ask the user for permission if necessary. Note browsers may not show this permission request if it did not originate from a user action.\n\nChrome extensions with the "notifications" permission have permission to display notifications.'],"background-color":[r.PreferenceManager.categories.Appearance,"rgb(16, 16, 16)","color","The background color for text with no other color attributes."],"background-image":[r.PreferenceManager.categories.Appearance,"","string","CSS value of the background image. Empty string for no image.\n\nFor example:\n url(https://goo.gl/anedTK)\n linear-gradient(top bottom, blue, red)"],"background-size":[r.PreferenceManager.categories.Appearance,"","string","CSS value of the background image size. Defaults to none."],"background-position":[r.PreferenceManager.categories.Appearance,"","string","CSS value of the background image position.\n\nFor example:\n 10% 10%\n center"],"backspace-sends-backspace":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, the backspace should send BS ('\\x08', aka ^H). Otherwise the backspace key should send '\\x7f'."],"character-map-overrides":[r.PreferenceManager.categories.Appearance,null,"value",'This is specified as an object. It is a sparse array, where each property is the character set code and the value is an object that is a sparse array itself. In that sparse array, each property is the received character and the value is the displayed character.\n\nFor example:\n {"0":{"+":"\\u2192",",":"\\u2190","-":"\\u2191",".":"\\u2193", "0":"\\u2588"}}'],"close-on-exit":[r.PreferenceManager.categories.Miscellaneous,!0,"bool","Whether or not to close the window when the command exits."],"cursor-blink":[r.PreferenceManager.categories.Appearance,!1,"bool","Whether or not to blink the cursor by default."],"cursor-blink-cycle":[r.PreferenceManager.categories.Appearance,[1e3,500],"value","The cursor blink rate in milliseconds.\n\nA two element array, the first of which is how long the cursor should be on, second is how long it should be off."],"cursor-color":[r.PreferenceManager.categories.Appearance,"rgba(255, 0, 0, 0.5)","color","The color of the visible cursor."],"color-palette-overrides":[r.PreferenceManager.categories.Appearance,null,"value","Override colors in the default palette.\n\nThis can be specified as an array or an object. If specified as an object it is assumed to be a sparse array, where each property is a numeric index into the color palette.\n\nValues can be specified as almost any css color value. This includes #RGB, #RRGGBB, rgb(...), rgba(...), and any color names that are also part of the stock X11 rgb.txt file.\n\nYou can use 'null' to specify that the default value should be not be changed. This is useful for skipping a small number of indices when the value is specified as an array."],"copy-on-select":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Automatically copy mouse selection to the clipboard."],"use-default-window-copy":[r.PreferenceManager.categories.CopyPaste,!1,"bool","Whether to use the default window copy behavior"],"clear-selection-after-copy":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Whether to clear the selection after copying."],"ctrl-plus-minus-zero-zoom":[r.PreferenceManager.categories.Keyboard,!0,"bool","If true, Ctrl-Plus/Minus/Zero controls zoom.\nIf false, Ctrl-Shift-Plus/Minus/Zero controls zoom, Ctrl-Minus sends ^_, Ctrl-Plus/Zero do nothing."],"ctrl-c-copy":[r.PreferenceManager.categories.Keyboard,!1,"bool","Ctrl+C copies if true, send ^C to host if false.\nCtrl+Shift+C sends ^C to host if true, copies if false."],"ctrl-v-paste":[r.PreferenceManager.categories.Keyboard,!1,"bool","Ctrl+V pastes if true, send ^V to host if false.\nCtrl+Shift+V sends ^V to host if true, pastes if false."],"east-asian-ambiguous-as-two-column":[r.PreferenceManager.categories.Keyboard,!1,"bool","Set whether East Asian Ambiguous characters have two column width."],"enable-8-bit-control":[r.PreferenceManager.categories.Keyboard,!1,"bool","True to enable 8-bit control characters, false to ignore them.\n\nWe'll respect the two-byte versions of these control characters regardless of this setting."],"enable-bold":[r.PreferenceManager.categories.Appearance,null,"tristate","True if we should use bold weight font for text with the bold/bright attribute. False to use the normal weight font. Null to autodetect."],"enable-bold-as-bright":[r.PreferenceManager.categories.Appearance,!0,"bool","True if we should use bright colors (8-15 on a 16 color palette) for any text with the bold attribute. False otherwise."],"enable-blink":[r.PreferenceManager.categories.Appearance,!0,"bool","True if we should respect the blink attribute. False to ignore it. "],"enable-clipboard-notice":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Show a message in the terminal when the host writes to the clipboard."],"enable-clipboard-write":[r.PreferenceManager.categories.CopyPaste,!0,"bool","Allow the host to write directly to the system clipboard."],"enable-dec12":[r.PreferenceManager.categories.Miscellaneous,!1,"bool","Respect the host's attempt to change the cursor blink status using DEC Private Mode 12."],environment:[r.PreferenceManager.categories.Miscellaneous,{TERM:"xterm-256color"},"value","The default environment variables, as an object."],"font-family":[r.PreferenceManager.categories.Appearance,'"DejaVu Sans Mono", "Everson Mono", FreeMono, "Menlo", "Terminal", monospace',"string","Default font family for the terminal text."],"font-size":[r.PreferenceManager.categories.Appearance,15,"int","The default font size in pixels."],"font-smoothing":[r.PreferenceManager.categories.Appearance,"antialiased","string","CSS font-smoothing property."],"foreground-color":[r.PreferenceManager.categories.Appearance,"rgb(240, 240, 240)","color","The foreground color for text with no other color attributes."],"home-keys-scroll":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, home/end will control the terminal scrollbar and shift home/end will send the VT keycodes. If false then home/end sends VT codes and shift home/end scrolls."],keybindings:[r.PreferenceManager.categories.Keyboard,null,"value",'A map of key sequence to key actions. Key sequences include zero or more modifier keys followed by a key code. Key codes can be decimal or hexadecimal numbers, or a key identifier. Key actions can be specified a string to send to the host, or an action identifier. For a full explanation of the format, see https://goo.gl/LWRndr.\n\nSample keybindings:\n{\n "Ctrl-Alt-K": "clearScrollback",\n "Ctrl-Shift-L": "PASS",\n "Ctrl-H": "\'HELLO\\n\'"\n}'],"max-string-sequence":[r.PreferenceManager.categories.Encoding,1e5,"int","Max length of a DCS, OSC, PM, or APS sequence before we give up and ignore the code."],"media-keys-are-fkeys":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, convert media keys to their Fkey equivalent. If false, let the browser handle the keys."],"meta-sends-escape":[r.PreferenceManager.categories.Keyboard,!0,"bool","Set whether the meta key sends a leading escape or not."],"mouse-right-click-paste":[r.PreferenceManager.categories.CopyPaste,!0,"bool",'Paste on right mouse button clicks.\n\nThis option is activate independent of the "mouse-paste-button" setting.\n\nNote: This will handle left & right handed mice correctly.'],"mouse-paste-button":[r.PreferenceManager.categories.CopyPaste,null,[null,0,1,2,3,4,5,6],"Mouse paste button, or null to autodetect.\n\nFor autodetect, we'll use the middle mouse button for non-X11 platforms (including Chrome OS). On X11, we'll use the right mouse button (since the native window manager should paste via the middle mouse button).\n\n0 == left (primary) button.\n1 == middle (auxiliary) button.\n2 == right (secondary) button.\n\nThis option is activate independent of the \"mouse-right-click-paste\" setting.\n\nNote: This will handle left & right handed mice correctly."],"word-break-match-left":[r.PreferenceManager.categories.CopyPaste,"[^\\s\\[\\](){}<>\"'\\^!@#$%&*,;:`]","string",'Regular expression to halt matching to the left (start) of a selection.\n\nNormally this is a character class to reject specific characters.\nWe allow "~" and "." by default as paths frequently start with those.'],"word-break-match-right":[r.PreferenceManager.categories.CopyPaste,"[^\\s\\[\\](){}<>\"'\\^!@#$%&*,;:~.`]","string","Regular expression to halt matching to the right (end) of a selection.\n\nNormally this is a character class to reject specific characters."],"word-break-match-middle":[r.PreferenceManager.categories.CopyPaste,"[^\\s\\[\\](){}<>\"'\\^]*","string","Regular expression to match all the characters in the middle.\n\nNormally this is a character class to reject specific characters.\n\nUsed to expand the selection surrounding the starting point."],"page-keys-scroll":[r.PreferenceManager.categories.Keyboard,!1,"bool","If true, page up/down will control the terminal scrollbar and shift page up/down will send the VT keycodes. If false then page up/down sends VT codes and shift page up/down scrolls."],"pass-alt-number":[r.PreferenceManager.categories.Keyboard,null,"tristate","Set whether we should pass Alt-1..9 to the browser.\n\nThis is handy when running hterm in a browser tab, so that you don't lose Chrome's \"switch to tab\" keyboard accelerators. When not running in a tab it's better to send these keys to the host so they can be used in vim or emacs.\n\nIf true, Alt-1..9 will be handled by the browser. If false, Alt-1..9 will be sent to the host. If null, autodetect based on browser platform and window type."],"pass-ctrl-number":[r.PreferenceManager.categories.Keyboard,null,"tristate","Set whether we should pass Ctrl-1..9 to the browser.\n\nThis is handy when running hterm in a browser tab, so that you don't lose Chrome's \"switch to tab\" keyboard accelerators. When not running in a tab it's better to send these keys to the host so they can be used in vim or emacs.\n\nIf true, Ctrl-1..9 will be handled by the browser. If false, Ctrl-1..9 will be sent to the host. If null, autodetect based on browser platform and window type."],"pass-meta-number":[r.PreferenceManager.categories.Keyboard,null,"tristate","Set whether we should pass Meta-1..9 to the browser.\n\nThis is handy when running hterm in a browser tab, so that you don't lose Chrome's \"switch to tab\" keyboard accelerators. When not running in a tab it's better to send these keys to the host so they can be used in vim or emacs.\n\nIf true, Meta-1..9 will be handled by the browser. If false, Meta-1..9 will be sent to the host. If null, autodetect based on browser platform and window type."],"pass-meta-v":[r.PreferenceManager.categories.Keyboard,!0,"bool","Set whether meta-V gets passed to host."],"receive-encoding":[r.PreferenceManager.categories.Encoding,"utf-8",["utf-8","raw"],"Set the expected encoding for data received from the host.\n\nValid values are 'utf-8' and 'raw'."],"scroll-on-keystroke":[r.PreferenceManager.categories.Scrolling,!0,"bool","If true, scroll to the bottom on any keystroke."],"scroll-on-output":[r.PreferenceManager.categories.Scrolling,!1,"bool","If true, scroll to the bottom on terminal output."],"scrollbar-visible":[r.PreferenceManager.categories.Scrolling,!0,"bool","The vertical scrollbar mode."],"scroll-wheel-may-send-arrow-keys":[r.PreferenceManager.categories.Scrolling,!1,"bool","When using the alternative screen buffer, and DECCKM (Application Cursor Keys) is active, mouse wheel scroll events will emulate arrow keys.\n\nIt can be temporarily disabled by holding the shift key.\n\nThis frequently comes up when using pagers (less) or reading man pages or text editors (vi/nano) or using screen/tmux."],"scroll-wheel-move-multiplier":[r.PreferenceManager.categories.Scrolling,1,"int","The multiplier for the pixel delta in wheel events caused by the scroll wheel. Alters how fast the page scrolls."],"send-encoding":[r.PreferenceManager.categories.Encoding,"utf-8",["utf-8","raw"],"Set the encoding for data sent to host."],"terminal-encoding":[r.PreferenceManager.categories.Encoding,"iso-2022",["iso-2022","utf-8","utf-8-locked"],"The default terminal encoding (DOCS).\n\nISO-2022 enables character map translations (like graphics maps).\nUTF-8 disables support for those.\n\nThe locked variant means the encoding cannot be changed at runtime via terminal escape sequences.\n\nYou should stick with UTF-8 unless you notice broken rendering with legacy applications."],"shift-insert-paste":[r.PreferenceManager.categories.Keyboard,!0,"bool","Shift + Insert pastes if true, sent to host if false."],"user-css":[r.PreferenceManager.categories.Appearance,"","url","URL of user stylesheet to include in the terminal document."],"user-css-text":[r.PreferenceManager.categories.Appearance,"","multiline-string","Custom CSS text for styling the terminal."]},r.PreferenceManager.prototype=Object.create(t.PreferenceManager.prototype),r.PreferenceManager.constructor=r.PreferenceManager,r.PubSub=function(){this.observers_={}},r.PubSub.addBehavior=function(e){var t=new r.PubSub;for(var i in r.PubSub.prototype)e[i]=r.PubSub.prototype[i].bind(t)},r.PubSub.prototype.subscribe=function(e,t){e in this.observers_||(this.observers_[e]=[]),this.observers_[e].push(t)},r.PubSub.prototype.unsubscribe=function(e,t){var r=this.observers_[e];if(!r)throw"Invalid subject: "+e;var i=r.indexOf(t);if(i<0)throw"Not subscribed: "+e;r.splice(i,1)},r.PubSub.prototype.publish=function(e,t,r){var i=this.observers_[e];i&&(i=[].concat(i)),r&&(i?i.push(r):i=[r]),i&&setTimeout((function e(r){r=e&&this.setCursorPosition(this.cursorPosition.row,e-1)},r.Screen.prototype.shiftRow=function(){return this.shiftRows(1)[0]},r.Screen.prototype.shiftRows=function(e){return this.rowsArray.splice(0,e)},r.Screen.prototype.unshiftRow=function(e){this.rowsArray.splice(0,0,e)},r.Screen.prototype.unshiftRows=function(e){this.rowsArray.unshift.apply(this.rowsArray,e)},r.Screen.prototype.popRow=function(){return this.popRows(1)[0]},r.Screen.prototype.popRows=function(e){return this.rowsArray.splice(this.rowsArray.length-e,e)},r.Screen.prototype.pushRow=function(e){this.rowsArray.push(e)},r.Screen.prototype.pushRows=function(e){e.push.apply(this.rowsArray,e)},r.Screen.prototype.insertRow=function(e,t){this.rowsArray.splice(e,0,t)},r.Screen.prototype.insertRows=function(e,t){for(var r=0;r=this.rowsArray.length?(console.error("Row out of bounds: "+e),e=this.rowsArray.length-1):e<0&&(console.error("Row out of bounds: "+e),e=0),t>=this.columnCount_?(console.error("Column out of bounds: "+t),t=this.columnCount_-1):t<0&&(console.error("Column out of bounds: "+t),t=0),this.cursorPosition.overflow=!1;var i=this.rowsArray[e],o=i.firstChild;o||(o=i.ownerDocument.createTextNode(""),i.appendChild(o));var n=0;for(i==this.cursorRowNode_?t>=this.cursorPosition.column-this.cursorOffset_&&(o=this.cursorNode_,n=this.cursorPosition.column-this.cursorOffset_):this.cursorRowNode_=i,this.cursorPosition.move(e,t);o;){var s=t-n,a=r.TextAttributes.nodeWidth(o);if(!o.nextSibling||a>s)return this.cursorNode_=o,void(this.cursorOffset_=s);n+=a,o=o.nextSibling}}else console.warn("Attempt to set cursor position on empty screen.")},r.Screen.prototype.syncSelectionCaret=function(e){try{e.collapse(this.cursorNode_,this.cursorOffset_)}catch(e){}},r.Screen.prototype.splitNode_=function(e,i){var o=e.cloneNode(!1),n=e.textContent;e.textContent=r.TextAttributes.nodeSubstr(e,0,i),o.textContent=t.wc.substr(n,i),o.textContent&&e.parentNode.insertBefore(o,e.nextSibling),e.textContent||e.parentNode.removeChild(e)},r.Screen.prototype.maybeClipCurrentRow=function(){var e=r.TextAttributes.nodeWidth(this.cursorRowNode_);if(e<=this.columnCount_)this.cursorPosition.column>=this.columnCount_&&(this.setCursorPosition(this.cursorPosition.row,this.columnCount_-1),this.cursorPosition.overflow=!0);else{var t=this.cursorPosition.column;this.setCursorPosition(this.cursorPosition.row,this.columnCount_-1),e=r.TextAttributes.nodeWidth(this.cursorNode_),this.cursorOffset_r.TextAttributes.nodeWidth(e);){if(!e.hasAttribute("line-overflow")||!e.nextSibling)return-1;t-=r.TextAttributes.nodeWidth(e),e=e.nextSibling}return this.getNodeAndOffsetWithinRow_(e,t)},r.Screen.prototype.getNodeAndOffsetWithinRow_=function(e,t){for(var i=0;io)){var f=t.wc.substring(l,o,t.wc.strWidth(l)),p=new RegExp("^"+c+a),_=f.match(p);if(_){var g=o+t.wc.strWidth(_[0]);-1==g||gn.rowIndex)r();else if(i.focusNode==i.anchorNode)i.anchorOffset=this.lastRowCount_},r.ScrollPort.prototype.drawTopFold_=function(e){if(!this.selection.startRow||this.selection.startRow.rowIndex>=e)this.rowNodes_.firstChild!=this.topFold_&&this.rowNodes_.insertBefore(this.topFold_,this.rowNodes_.firstChild);else{if(!this.selection.isMultiline||this.selection.endRow.rowIndex>=e)this.selection.startRow.nextSibling!=this.topFold_&&this.rowNodes_.insertBefore(this.topFold_,this.selection.startRow.nextSibling);else for(this.selection.endRow.nextSibling!=this.topFold_&&this.rowNodes_.insertBefore(this.topFold_,this.selection.endRow.nextSibling);this.selection.startRow.nextSibling!=this.selection.endRow;)this.rowNodes_.removeChild(this.selection.startRow.nextSibling);for(;this.rowNodes_.firstChild!=this.selection.startRow;)this.rowNodes_.removeChild(this.rowNodes_.firstChild)}},r.ScrollPort.prototype.drawBottomFold_=function(e){if(!this.selection.endRow||this.selection.endRow.rowIndex<=e)this.rowNodes_.lastChild!=this.bottomFold_&&this.rowNodes_.appendChild(this.bottomFold_);else{if(!this.selection.isMultiline||this.selection.startRow.rowIndex<=e)this.bottomFold_.nextSibling!=this.selection.endRow&&this.rowNodes_.insertBefore(this.bottomFold_,this.selection.endRow);else for(this.bottomFold_.nextSibling!=this.selection.startRow&&this.rowNodes_.insertBefore(this.bottomFold_,this.selection.startRow);this.selection.startRow.nextSibling!=this.selection.endRow;)this.rowNodes_.removeChild(this.selection.startRow.nextSibling);for(;this.rowNodes_.lastChild!=this.selection.endRow;)this.rowNodes_.removeChild(this.rowNodes_.lastChild)}},r.ScrollPort.prototype.drawVisibleRows_=function(e,t){var r=this;function i(e,t){for(;e!=t;){if(!e)throw"Did not encounter target node";if(e==r.bottomFold_)throw"Encountered bottom fold before target node";var i=e;e=e.nextSibling,i.parentNode.removeChild(i)}}for(var o=this.selection.startRow,n=this.selection.endRow,s=this.bottomFold_,a=this.topFold_.nextSibling,c=Math.min(this.visibleRowCount,this.rowProvider_.getRowCount()),l=0;l=this.lastRowCount_;var t=e*this.characterSize.height+this.visibleRowTopMargin,r=this.getScrollMax_();t>r&&(t=r),this.screen_.scrollTop!=t&&(this.screen_.scrollTop=t,this.scheduleRedraw())},r.ScrollPort.prototype.scrollRowToBottom=function(e){this.syncScrollHeight(),this.isScrolledEnd=e+this.visibleRowCount>=this.lastRowCount_;var t=e*this.characterSize.height+this.visibleRowTopMargin+this.visibleRowBottomMargin;(t-=this.visibleRowCount*this.characterSize.height)<0&&(t=0),this.screen_.scrollTop!=t&&(this.screen_.scrollTop=t)},r.ScrollPort.prototype.getTopRowIndex=function(){return Math.round(this.screen_.scrollTop/this.characterSize.height)},r.ScrollPort.prototype.getBottomRowIndex=function(e){return e+this.visibleRowCount-1},r.ScrollPort.prototype.onScroll_=function(e){var t=this.getScreenSize();t.width==this.lastScreenWidth_&&t.height==this.lastScreenHeight_?(this.redraw_(),this.publish("scroll",{scrollPort:this})):this.resize()},r.ScrollPort.prototype.onScrollWheel=function(e){},r.ScrollPort.prototype.onScrollWheel_=function(e){if(this.onScrollWheel(e),!e.defaultPrevented){var t=this.scrollWheelDelta(e),r=this.screen_.scrollTop-t;r<0&&(r=0);var i=this.getScrollMax_();r>i&&(r=i),r!=this.screen_.scrollTop&&(this.screen_.scrollTop=r,e.preventDefault())}},r.ScrollPort.prototype.scrollWheelDelta=function(e){var t;switch(e.deltaMode){case WheelEvent.DOM_DELTA_PIXEL:t=e.deltaY*this.scrollWheelMultiplier_;break;case WheelEvent.DOM_DELTA_LINE:t=e.deltaY*this.characterSize.height;break;case WheelEvent.DOM_DELTA_PAGE:t=e.deltaY*this.characterSize.height*this.screen_.getHeight()}return-1*t},r.ScrollPort.prototype.onTouch=function(e){},r.ScrollPort.prototype.onTouch_=function(e){if(this.onTouch(e),!e.defaultPrevented){var t,r,i=function(e){return{id:e.identifier,y:e.clientY,x:e.clientX}};switch(e.type){case"touchstart":for(t=0;ts&&(n=s),n!=this.screen_.scrollTop&&(this.screen_.scrollTop=n)}e.preventDefault()}},r.ScrollPort.prototype.onResize_=function(e){this.syncCharacterSize(),this.resize()},r.ScrollPort.prototype.onCopy=function(e){},r.ScrollPort.prototype.onCopy_=function(e){if(this.onCopy(e),!e.defaultPrevented&&(this.resetSelectBags_(),this.selection.sync(),this.selection.startRow&&!(this.selection.endRow.rowIndex-this.selection.startRow.rowIndex<2))){var t,r,i=this.getTopRowIndex(),o=this.getBottomRowIndex(i);this.selection.startRow.rowIndexo&&(r=this.selection.startRow.rowIndex>o?this.selection.startRow.rowIndex+1:this.bottomFold_.previousSibling.rowIndex+1,this.bottomSelectBag_.textContent=this.rowProvider_.getRowsText(r,this.selection.endRow.rowIndex),this.rowNodes_.insertBefore(this.bottomSelectBag_,this.selection.endRow))}},r.ScrollPort.prototype.onBodyKeyDown_=function(e){if(this.ctrlVPaste){var t=String.fromCharCode(e.which).toLowerCase();(e.ctrlKey||e.metaKey)&&"v"==t&&this.pasteTarget_.focus()}},r.ScrollPort.prototype.onPaste_=function(e){this.pasteTarget_.focus();var t=this;setTimeout((function(){t.publish("paste",{text:t.pasteTarget_.value}),t.pasteTarget_.value="",t.screen_.focus()}),0)},r.ScrollPort.prototype.handlePasteTargetTextInput_=function(e){e.stopPropagation()},r.ScrollPort.prototype.setScrollbarVisible=function(e){this.screen_.style.overflowY=e?"scroll":"hidden"},r.ScrollPort.prototype.setScrollWheelMoveMultipler=function(e){this.scrollWheelMultiplier_=e},t.rtdep("lib.colors","lib.PreferenceManager","lib.resource","lib.wc","lib.f","hterm.Keyboard","hterm.Options","hterm.PreferenceManager","hterm.Screen","hterm.ScrollPort","hterm.Size","hterm.TextAttributes","hterm.VT"),r.Terminal=function(e){this.profileId_=null,this.primaryScreen_=new r.Screen,this.alternateScreen_=new r.Screen,this.screen_=this.primaryScreen_,this.screenSize=new r.Size(0,0),this.scrollPort_=new r.ScrollPort(this),this.scrollPort_.subscribe("resize",this.onResize_.bind(this)),this.scrollPort_.subscribe("scroll",this.onScroll_.bind(this)),this.scrollPort_.subscribe("paste",this.onPaste_.bind(this)),this.scrollPort_.onCopy=this.onCopy_.bind(this),this.div_=null,this.document_=window.document,this.scrollbackRows_=[],this.tabStops_=[],this.defaultTabStops=!0,this.vtScrollTop_=null,this.vtScrollBottom_=null,this.cursorNode_=null,this.cursorShape_=r.Terminal.cursorShape.BLOCK,this.cursorColor_=null,this.cursorBlinkCycle_=[100,100],this.myOnCursorBlink_=this.onCursorBlink_.bind(this),this.backgroundColor_=null,this.foregroundColor_=null,this.scrollOnOutput_=null,this.scrollOnKeystroke_=null,this.scrollWheelArrowKeys_=null,this.defeatMouseReports_=!1,this.bellAudio_=this.document_.createElement("audio"),this.bellAudio_.id="hterm:bell-audio",this.bellAudio_.setAttribute("preload","auto"),this.bellNotificationList_=[],this.desktopNotificationBell_=!1,this.savedOptions_={},this.options_=new r.Options,this.timeouts_={},this.vt=new r.VT(this),this.keyboard=new r.Keyboard(this),this.io=new r.Terminal.IO(this),this.enableMouseDragScroll=!0,this.copyOnSelect=null,this.mouseRightClickPaste=null,this.mousePasteButton=null,this.useDefaultWindowCopy=!1,this.clearSelectionAfterCopy=!0,this.realizeSize_(80,24),this.setDefaultTabStops(),this.setProfile(e||"default",function(){this.onTerminalReady()}.bind(this))},r.Terminal.cursorShape={BLOCK:"BLOCK",BEAM:"BEAM",UNDERLINE:"UNDERLINE"},r.Terminal.prototype.onTerminalReady=function(){},r.Terminal.prototype.tabWidth=8,r.Terminal.prototype.setProfile=function(e,i){this.profileId_=e.replace(/\//g,"");var o=this;this.prefs_&&this.prefs_.deactivate(),this.prefs_=new r.PreferenceManager(this.profileId_),this.prefs_.addObservers(null,{"alt-gr-mode":function(e){e=null==e?"en-us"==navigator.language.toLowerCase()?"none":"right-alt":"string"==typeof e?e.toLowerCase():"none",/^(none|ctrl-alt|left-alt|right-alt)$/.test(e)||(e="none"),o.keyboard.altGrMode=e},"alt-backspace-is-meta-backspace":function(e){o.keyboard.altBackspaceIsMetaBackspace=e},"alt-is-meta":function(e){o.keyboard.altIsMeta=e},"alt-sends-what":function(e){/^(escape|8-bit|browser-key)$/.test(e)||(e="escape"),o.keyboard.altSendsWhat=e},"audible-bell-sound":function(e){var r=e.match(/^lib-resource:(\S+)/);r?o.bellAudio_.setAttribute("src",t.resource.getDataUrl(r[1])):o.bellAudio_.setAttribute("src",e)},"desktop-notification-bell":function(e){e&&Notification?(o.desktopNotificationBell_="granted"===Notification.permission,o.desktopNotificationBell_||console.warn("desktop-notification-bell is true but we do not have permission to display notifications.")):o.desktopNotificationBell_=!1},"background-color":function(e){o.setBackgroundColor(e)},"background-image":function(e){o.scrollPort_.setBackgroundImage(e)},"background-size":function(e){o.scrollPort_.setBackgroundSize(e)},"background-position":function(e){o.scrollPort_.setBackgroundPosition(e)},"backspace-sends-backspace":function(e){o.keyboard.backspaceSendsBackspace=e},"character-map-overrides":function(e){null==e||e instanceof Object?(o.vt.characterMaps.reset(),o.vt.characterMaps.setOverrides(e)):console.warn("Preference character-map-modifications is not an object: "+e)},"cursor-blink":function(e){o.setCursorBlink(!!e)},"cursor-blink-cycle":function(e){e instanceof Array&&"number"==typeof e[0]&&"number"==typeof e[1]?o.cursorBlinkCycle_=e:o.cursorBlinkCycle_="number"==typeof e?[e,e]:[100,100]},"cursor-color":function(e){o.setCursorColor(e)},"color-palette-overrides":function(e){if(null==e||e instanceof Object||e instanceof Array){if(t.colors.colorPalette=t.colors.stockColorPalette.concat(),e)for(var r in e){var i=parseInt(r);if(isNaN(i)||i<0||i>255)console.log("Invalid value in palette: "+r+": "+e[r]);else if(e[i]){var n=t.colors.normalizeCSS(e[i]);n&&(t.colors.colorPalette[i]=n)}}o.primaryScreen_.textAttributes.resetColorPalette(),o.alternateScreen_.textAttributes.resetColorPalette()}else console.warn("Preference color-palette-overrides is not an array or object: "+e)},"copy-on-select":function(e){o.copyOnSelect=!!e},"use-default-window-copy":function(e){o.useDefaultWindowCopy=!!e},"clear-selection-after-copy":function(e){o.clearSelectionAfterCopy=!!e},"ctrl-plus-minus-zero-zoom":function(e){o.keyboard.ctrlPlusMinusZeroZoom=e},"ctrl-c-copy":function(e){o.keyboard.ctrlCCopy=e},"ctrl-v-paste":function(e){o.keyboard.ctrlVPaste=e,o.scrollPort_.setCtrlVPaste(e)},"east-asian-ambiguous-as-two-column":function(e){t.wc.regardCjkAmbiguous=e},"enable-8-bit-control":function(e){o.vt.enable8BitControl=!!e},"enable-bold":function(e){o.syncBoldSafeState()},"enable-bold-as-bright":function(e){o.primaryScreen_.textAttributes.enableBoldAsBright=!!e,o.alternateScreen_.textAttributes.enableBoldAsBright=!!e},"enable-blink":function(e){o.syncBlinkState()},"enable-clipboard-write":function(e){o.vt.enableClipboardWrite=!!e},"enable-dec12":function(e){o.vt.enableDec12=!!e},"font-family":function(e){o.syncFontFamily()},"font-size":function(e){o.setFontSize(e)},"font-smoothing":function(e){o.syncFontFamily()},"foreground-color":function(e){o.setForegroundColor(e)},"home-keys-scroll":function(e){o.keyboard.homeKeysScroll=e},keybindings:function(e){if(o.keyboard.bindings.clear(),e)if(e instanceof Object)try{o.keyboard.bindings.addBindings(e)}catch(e){console.error("Error in keybindings preference: "+e)}else console.error("Error in keybindings preference: Expected object")},"max-string-sequence":function(e){o.vt.maxStringSequence=e},"media-keys-are-fkeys":function(e){o.keyboard.mediaKeysAreFKeys=e},"meta-sends-escape":function(e){o.keyboard.metaSendsEscape=e},"mouse-right-click-paste":function(e){o.mouseRightClickPaste=e},"mouse-paste-button":function(e){o.syncMousePasteButton()},"page-keys-scroll":function(e){o.keyboard.pageKeysScroll=e},"pass-alt-number":function(e){null==e&&(e=!window.navigator.userAgent.match(/Mac OS X/)&&"popup"!=r.windowType),o.passAltNumber=e},"pass-ctrl-number":function(e){null==e&&(e=!window.navigator.userAgent.match(/Mac OS X/)&&"popup"!=r.windowType),o.passCtrlNumber=e},"pass-meta-number":function(e){null==e&&(e=window.navigator.userAgent.match(/Mac OS X/)&&"popup"!=r.windowType),o.passMetaNumber=e},"pass-meta-v":function(e){o.keyboard.passMetaV=e},"receive-encoding":function(e){/^(utf-8|raw)$/.test(e)||(console.warn('Invalid value for "receive-encoding": '+e),e="utf-8"),o.vt.characterEncoding=e},"scroll-on-keystroke":function(e){o.scrollOnKeystroke_=e},"scroll-on-output":function(e){o.scrollOnOutput_=e},"scrollbar-visible":function(e){o.setScrollbarVisible(e)},"scroll-wheel-may-send-arrow-keys":function(e){o.scrollWheelArrowKeys_=e},"scroll-wheel-move-multiplier":function(e){o.setScrollWheelMoveMultipler(e)},"send-encoding":function(e){/^(utf-8|raw)$/.test(e)||(console.warn('Invalid value for "send-encoding": '+e),e="utf-8"),o.keyboard.characterEncoding=e},"shift-insert-paste":function(e){o.keyboard.shiftInsertPaste=e},"terminal-encoding":function(e){o.vt.setEncoding(e)},"user-css":function(e){o.scrollPort_.setUserCssUrl(e)},"user-css-text":function(e){o.scrollPort_.setUserCssText(e)},"word-break-match-left":function(e){o.primaryScreen_.wordBreakMatchLeft=e,o.alternateScreen_.wordBreakMatchLeft=e},"word-break-match-right":function(e){o.primaryScreen_.wordBreakMatchRight=e,o.alternateScreen_.wordBreakMatchRight=e},"word-break-match-middle":function(e){o.primaryScreen_.wordBreakMatchMiddle=e,o.alternateScreen_.wordBreakMatchMiddle=e}}),this.prefs_.readStorage(function(){this.prefs_.notifyAll(),i&&i()}.bind(this))},r.Terminal.prototype.getPrefs=function(){return this.prefs_},r.Terminal.prototype.setBracketedPaste=function(e){this.options_.bracketedPaste=e},r.Terminal.prototype.setCursorColor=function(e){this.cursorColor_=e,this.cursorNode_.style.backgroundColor=e,this.cursorNode_.style.borderColor=e},r.Terminal.prototype.getCursorColor=function(){return this.cursorColor_},r.Terminal.prototype.setSelectionEnabled=function(e){this.enableMouseDragScroll=e},r.Terminal.prototype.setBackgroundColor=function(e){this.backgroundColor_=t.colors.normalizeCSS(e),this.primaryScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.alternateScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.scrollPort_.setBackgroundColor(e)},r.Terminal.prototype.getBackgroundColor=function(){return this.backgroundColor_},r.Terminal.prototype.setForegroundColor=function(e){this.foregroundColor_=t.colors.normalizeCSS(e),this.primaryScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.alternateScreen_.textAttributes.setDefaults(this.foregroundColor_,this.backgroundColor_),this.scrollPort_.setForegroundColor(e)},r.Terminal.prototype.getForegroundColor=function(){return this.foregroundColor_},r.Terminal.prototype.runCommandClass=function(e,t){var r=this.prefs_.get("environment");"object"==typeof r&&null!=r||(r={});var i=this;this.command=new e({argString:t||"",io:this.io.push(),environment:r,onExit:function(e){i.io.pop(),i.uninstallKeyboard(),i.prefs_.get("close-on-exit")&&window.close()}}),this.installKeyboard(),this.command.run()},r.Terminal.prototype.isPrimaryScreen=function(){return this.screen_==this.primaryScreen_},r.Terminal.prototype.installKeyboard=function(){this.keyboard.installKeyboard(this.scrollPort_.getDocument().body)},r.Terminal.prototype.uninstallKeyboard=function(){this.keyboard.installKeyboard(null)},r.Terminal.prototype.setCssVar=function(e,t,r="--hterm-"){this.document_.documentElement.style.setProperty(`${r}${e}`,t)},r.Terminal.prototype.setFontSize=function(e){0===e&&(e=this.prefs_.get("font-size")),this.scrollPort_.setFontSize(e),this.setCssVar("charsize-width",this.scrollPort_.characterSize.width+"px"),this.setCssVar("charsize-height",this.scrollPort_.characterSize.height+"px")},r.Terminal.prototype.getFontSize=function(){return this.scrollPort_.getFontSize()},r.Terminal.prototype.getFontFamily=function(){return this.scrollPort_.getFontFamily()},r.Terminal.prototype.syncFontFamily=function(){this.scrollPort_.setFontFamily(this.prefs_.get("font-family"),this.prefs_.get("font-smoothing")),this.syncBoldSafeState()},r.Terminal.prototype.syncMousePasteButton=function(){var e=this.prefs_.get("mouse-paste-button");if("number"!=typeof e){var t=navigator.userAgent.match(/\(X11;\s+(\S+)/);t&&"CrOS"!=t[1]?this.mousePasteButton=2:this.mousePasteButton=1}else this.mousePasteButton=e},r.Terminal.prototype.syncBoldSafeState=function(){var e=this.prefs_.get("enable-bold");if(null!==e)return this.primaryScreen_.textAttributes.enableBold=e,void(this.alternateScreen_.textAttributes.enableBold=e);var t=this.scrollPort_.measureCharacterSize(),r=this.scrollPort_.measureCharacterSize("bold"),i=t.equals(r);i||console.warn("Bold characters disabled: Size of bold weight differs from normal. Font family is: "+this.scrollPort_.getFontFamily()),this.primaryScreen_.textAttributes.enableBold=i,this.alternateScreen_.textAttributes.enableBold=i},r.Terminal.prototype.syncBlinkState=function(){this.setCssVar("node-duration",this.prefs_.get("enable-blink")?"0.7s":"0")},r.Terminal.prototype.syncMouseStyle=function(){this.setCssVar("mouse-cursor-style",this.vt.mouseReport==this.vt.MOUSE_REPORT_DISABLED?"var(--hterm-mouse-cursor-text)":"var(--hterm-mouse-cursor-pointer)")},r.Terminal.prototype.saveCursor=function(){return this.screen_.cursorPosition.clone()},r.Terminal.prototype.getTextAttributes=function(){return this.screen_.textAttributes},r.Terminal.prototype.setTextAttributes=function(e){this.screen_.textAttributes=e},r.Terminal.prototype.getZoomFactor=function(){return this.scrollPort_.characterSize.zoomFactor},r.Terminal.prototype.setWindowTitle=function(e){window.document.title=e},r.Terminal.prototype.restoreCursor=function(e){var r=t.f.clamp(e.row,0,this.screenSize.height-1),i=t.f.clamp(e.column,0,this.screenSize.width-1);this.screen_.setCursorPosition(r,i),(e.column>i||e.column==i&&e.overflow)&&(this.screen_.cursorPosition.overflow=!0)},r.Terminal.prototype.clearCursorOverflow=function(){this.screen_.cursorPosition.overflow=!1},r.Terminal.prototype.setCursorShape=function(e){this.cursorShape_=e,this.restyleCursor_()},r.Terminal.prototype.getCursorShape=function(){return this.cursorShape_},r.Terminal.prototype.setWidth=function(e){null!=e?(this.div_.style.width=Math.ceil(this.scrollPort_.characterSize.width*e+this.scrollPort_.currentScrollbarWidthPx)+"px",this.realizeSize_(e,this.screenSize.height),this.scheduleSyncCursorPosition_()):this.div_.style.width="100%"},r.Terminal.prototype.setHeight=function(e){null!=e?(this.div_.style.height=this.scrollPort_.characterSize.height*e+"px",this.realizeSize_(this.screenSize.width,e),this.scheduleSyncCursorPosition_()):this.div_.style.height="100%"},r.Terminal.prototype.realizeSize_=function(e,t){e!=this.screenSize.width&&this.realizeWidth_(e),t!=this.screenSize.height&&this.realizeHeight_(t),this.io.onTerminalResize_(e,t)},r.Terminal.prototype.realizeWidth_=function(e){if(e<=0)throw new Error("Attempt to realize bad width: "+e);var t=e-this.screen_.getWidth();if(this.screenSize.width=e,this.screen_.setColumnCount(e),t>0)this.defaultTabStops&&this.setDefaultTabStops(this.screenSize.width-t);else for(var r=this.tabStops_.length-1;r>=0&&!(this.tabStops_[r]0){if(t<=this.scrollbackRows_.length){var n=Math.min(t,this.scrollbackRows_.length),s=this.scrollbackRows_.splice(this.scrollbackRows_.length-n,n);this.screen_.unshiftRows(s),t-=n,r.row+=n}t&&this.appendRows_(t)}this.setVTScrollRegion(null,null),this.restoreCursor(r)},r.Terminal.prototype.scrollHome=function(){this.scrollPort_.scrollRowToTop(0)},r.Terminal.prototype.scrollEnd=function(){this.scrollPort_.scrollRowToBottom(this.getRowCount())},r.Terminal.prototype.scrollPageUp=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e-this.screenSize.height+1)},r.Terminal.prototype.scrollPageDown=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e+this.screenSize.height-1)},r.Terminal.prototype.scrollLineUp=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e-1)},r.Terminal.prototype.scrollLineDown=function(){var e=this.scrollPort_.getTopRowIndex();this.scrollPort_.scrollRowToTop(e+1)},r.Terminal.prototype.wipeContents=function(){this.scrollbackRows_.length=0,this.scrollPort_.resetCache(),[this.primaryScreen_,this.alternateScreen_].forEach(function(e){var t=e.getHeight();t>0&&(this.renumberRows_(0,t),this.clearHome(e))}.bind(this)),this.syncCursorPosition_(),this.scrollPort_.invalidate()},r.Terminal.prototype.reset=function(){this.clearAllTabStops(),this.setDefaultTabStops(),this.clearHome(this.primaryScreen_),this.primaryScreen_.textAttributes.reset(),this.clearHome(this.alternateScreen_),this.alternateScreen_.textAttributes.reset(),this.setCursorBlink(!!this.prefs_.get("cursor-blink")),this.vt.reset(),this.softReset()},r.Terminal.prototype.softReset=function(){this.options_=new r.Options,this.options_.cursorBlink=!!this.timeouts_.cursorBlink,this.primaryScreen_.textAttributes.resetColorPalette(),this.alternateScreen_.textAttributes.resetColorPalette(),this.setVTScrollRegion(null,null),this.setCursorVisible(!0)},r.Terminal.prototype.forwardTabStop=function(){for(var e=this.screen_.cursorPosition.column,t=0;te)return void this.setCursorColumn(this.tabStops_[t]);var r=this.screen_.cursorPosition.overflow;this.setCursorColumn(this.screenSize.width-1),this.screen_.cursorPosition.overflow=r},r.Terminal.prototype.backwardTabStop=function(){for(var e=this.screen_.cursorPosition.column,t=this.tabStops_.length-1;t>=0;t--)if(this.tabStops_[t]=0;t--){if(this.tabStops_[t]==e)return;if(this.tabStops_[t]0){var s=this.screen_.shiftRows(n);Array.prototype.push.apply(this.scrollbackRows_,s),this.scrollPort_.isScrolledEnd&&this.scheduleScrollDown_()}t>=this.screen_.rowsArray.length&&(t=this.screen_.rowsArray.length-1),this.setAbsoluteCursorPosition(t,0)},r.Terminal.prototype.moveRows_=function(e,t,r){var i,o,n=this.screen_.removeRows(e,t);this.screen_.insertRows(r,n),e=this.screenSize.width&&(a=!0,s=this.screenSize.width-this.screen_.cursorPosition.column),a&&!this.options_.wraparound?(n=t.wc.substr(e,i,s-1)+t.wc.substr(e,o-1),s=o):n=t.wc.substr(e,i,s);for(var c=r.TextAttributes.splitWidecharString(n),l=0;l=0;o--)this.setAbsoluteCursorPosition(t+o,0),this.screen_.clearCursorRow()},r.Terminal.prototype.deleteLines=function(e){var t=this.saveCursor(),r=t.row,i=this.getVTScrollBottom(),o=i-r+1,n=i-(e=Math.min(e,o))+1;e!=o&&this.moveRows_(r,e,n);for(var s=0;st)this.setCssVar("cursor-offset-row","-1");else{this.options_.cursorVisible&&"none"==this.cursorNode_.style.display&&(this.cursorNode_.style.display=""),this.setCssVar("cursor-offset-row",r-e+" + "+`${this.scrollPort_.visibleRowTopMargin}px`),this.setCssVar("cursor-offset-col",this.screen_.cursorPosition.column),this.cursorNode_.setAttribute("title","("+this.screen_.cursorPosition.column+", "+this.screen_.cursorPosition.row+")");var i=this.document_.getSelection();i&&i.isCollapsed&&this.screen_.syncSelectionCaret(i)}},r.Terminal.prototype.restyleCursor_=function(){var e=this.cursorShape_;"false"==this.cursorNode_.getAttribute("focus")&&(e=r.Terminal.cursorShape.BLOCK);var t=this.cursorNode_.style;switch(e){case r.Terminal.cursorShape.BEAM:t.height="var(--hterm-charsize-height)",t.backgroundColor="transparent",t.borderBottomStyle=null,t.borderLeftStyle="solid";break;case r.Terminal.cursorShape.UNDERLINE:t.height=this.scrollPort_.characterSize.baseline+"px",t.backgroundColor="transparent",t.borderBottomStyle="solid",t.borderLeftStyle=null;break;default:t.height="var(--hterm-charsize-height)",t.backgroundColor=this.cursorColor_,t.borderBottomStyle=null,t.borderLeftStyle=null}},r.Terminal.prototype.scheduleSyncCursorPosition_=function(){if(!this.timeouts_.syncCursor){var e=this;this.timeouts_.syncCursor=setTimeout((function(){e.syncCursorPosition_(),delete e.timeouts_.syncCursor}),0)}},r.Terminal.prototype.showZoomWarning_=function(e){if(!this.zoomWarningNode_){if(!e)return;this.zoomWarningNode_=this.document_.createElement("div"),this.zoomWarningNode_.id="hterm:zoom-warning",this.zoomWarningNode_.style.cssText="color: black;background-color: #ff2222;font-size: large;border-radius: 8px;opacity: 0.75;padding: 0.2em 0.5em 0.2em 0.5em;top: 0.5em;right: 1.2em;position: absolute;-webkit-text-size-adjust: none;-webkit-user-select: none;-moz-text-size-adjust: none;-moz-user-select: none;",this.zoomWarningNode_.addEventListener("click",(function(e){this.parentNode.removeChild(this)}))}this.zoomWarningNode_.textContent=t.MessageManager.replaceReferences(r.zoomWarningMessage,[parseInt(100*this.scrollPort_.characterSize.zoomFactor)]),this.zoomWarningNode_.style.fontFamily=this.prefs_.get("font-family"),e?this.zoomWarningNode_.parentNode||this.div_.parentNode.appendChild(this.zoomWarningNode_):this.zoomWarningNode_.parentNode&&this.zoomWarningNode_.parentNode.removeChild(this.zoomWarningNode_)},r.Terminal.prototype.showOverlay=function(e,t){if(!this.overlayNode_){if(!this.div_)return;this.overlayNode_=this.document_.createElement("div"),this.overlayNode_.style.cssText="border-radius: 15px;font-size: xx-large;opacity: 0.75;padding: 0.2em 0.5em 0.2em 0.5em;position: absolute;-webkit-user-select: none;-webkit-transition: opacity 180ms ease-in;-moz-user-select: none;-moz-transition: opacity 180ms ease-in;",this.overlayNode_.addEventListener("mousedown",(function(e){e.preventDefault(),e.stopPropagation()}),!0)}this.overlayNode_.style.color=this.prefs_.get("background-color"),this.overlayNode_.style.backgroundColor=this.prefs_.get("foreground-color"),this.overlayNode_.style.fontFamily=this.prefs_.get("font-family"),this.overlayNode_.textContent=e,this.overlayNode_.style.opacity="0.75",this.overlayNode_.parentNode||this.div_.appendChild(this.overlayNode_);var i=r.getClientSize(this.div_),o=r.getClientSize(this.overlayNode_);this.overlayNode_.style.top=(i.height-o.height)/2+"px",this.overlayNode_.style.left=(i.width-o.width-this.scrollPort_.currentScrollbarWidthPx)/2+"px";var n=this;this.overlayTimeout_&&clearTimeout(this.overlayTimeout_),null!==t&&(this.overlayTimeout_=setTimeout((function(){n.overlayNode_.style.opacity="0",n.overlayTimeout_=setTimeout((function(){n.overlayNode_.parentNode&&n.overlayNode_.parentNode.removeChild(n.overlayNode_),n.overlayTimeout_=null,n.overlayNode_.style.opacity="0.75"}),200)}),t||1500))},r.Terminal.prototype.paste=function(){return r.pasteFromClipboard(this.document_)},r.Terminal.prototype.copyStringToClipboard=function(e){this.prefs_.get("enable-clipboard-notice")&&setTimeout(this.showOverlay.bind(this,r.notifyCopyMessage,500),200);var t=this.document_.createElement("pre");t.id="hterm:copy-to-clipboard-source",t.textContent=e,t.style.cssText="-webkit-user-select: text;-moz-user-select: text;position: absolute;top: -99px",this.document_.body.appendChild(t);var i=this.document_.getSelection(),o=i.anchorNode,n=i.anchorOffset,s=i.focusNode,a=i.focusOffset;i.selectAllChildren(t),r.copySelectionToClipboard(this.document_),i.extend&&(i.collapse(o,n),i.extend(s,a)),t.parentNode.removeChild(t)},r.Terminal.prototype.getSelectionText=function(){var e=this.scrollPort_.selection;if(e.sync(),e.isCollapsed)return null;var i=e.startOffset,o=e.startNode;if("X-ROW"!=o.nodeName)for("#text"==o.nodeName&&"SPAN"==o.parentNode.nodeName&&(o=o.parentNode);o.previousSibling;)o=o.previousSibling,i+=r.TextAttributes.nodeWidth(o);var n=r.TextAttributes.nodeWidth(e.endNode)-e.endOffset;if("X-ROW"!=(o=e.endNode).nodeName)for("#text"==o.nodeName&&"SPAN"==o.parentNode.nodeName&&(o=o.parentNode);o.nextSibling;)o=o.nextSibling,n+=r.TextAttributes.nodeWidth(o);var s=this.getRowsText(e.startRow.rowIndex,e.endRow.rowIndex+1);return t.wc.substring(s,i,t.wc.strWidth(s)-n)},r.Terminal.prototype.copySelectionToClipboard=function(){var e=this.getSelectionText();null!=e&&this.copyStringToClipboard(e)},r.Terminal.prototype.overlaySize=function(){this.showOverlay(this.screenSize.width+"x"+this.screenSize.height)},r.Terminal.prototype.onVTKeystroke=function(e){this.scrollOnKeystroke_&&this.scrollPort_.scrollRowToBottom(this.getRowCount()),this.io.onVTKeystroke(this.keyboard.encode(e))},r.Terminal.prototype.openUrl=function(e){window.chrome&&window.chrome.browser?chrome.browser.openTab({url:e}):window.open(e,"_blank").focus()},r.Terminal.prototype.openSelectedUrl_=function(){var e=this.getSelectionText();if((null!=e||(this.screen_.expandSelection(this.document_.getSelection()),null!=(e=this.getSelectionText())))&&!(e.length>2048||e.search(/[\s\[\](){}<>"'\\^`]/)>=0)){if(e.search("^[a-zA-Z][a-zA-Z0-9+.-]*://")<0)switch(e.split(":",1)[0]){case"mailto":break;default:e="http://"+e}this.openUrl(e)}},r.Terminal.prototype.onMouse_=function(e){if(!e.processedByTerminalHandler_){var r=!this.defeatMouseReports_&&this.vt.mouseReport!=this.vt.MOUSE_REPORT_DISABLED;if(e.processedByTerminalHandler_=!0,e.terminalRow=parseInt((e.clientY-this.scrollPort_.visibleRowTopMargin)/this.scrollPort_.characterSize.height)+1,e.terminalColumn=parseInt(e.clientX/this.scrollPort_.characterSize.width)+1,!("mousedown"==e.type&&e.terminalColumn>this.screenSize.width)){if(this.options_.cursorVisible&&!r&&(e.terminalRow-1==this.screen_.cursorPosition.row&&e.terminalColumn-1==this.screen_.cursorPosition.column?this.cursorNode_.style.display="none":"none"==this.cursorNode_.style.display&&(this.cursorNode_.style.display="")),"mousedown"==e.type&&(e.altKey||!r?(this.defeatMouseReports_=!0,this.setSelectionEnabled(!0)):(this.defeatMouseReports_=!1,this.document_.getSelection().collapseToEnd(),this.setSelectionEnabled(!1),e.preventDefault())),r)this.scrollBlockerNode_.engaged||("mousedown"==e.type?(this.scrollBlockerNode_.engaged=!0,this.scrollBlockerNode_.style.top=e.clientY-5+"px",this.scrollBlockerNode_.style.left=e.clientX-5+"px"):"mousemove"==e.type&&(this.document_.getSelection().collapseToEnd(),e.preventDefault())),this.onMouse(e);else{if("dblclick"==e.type&&this.copyOnSelect&&(this.screen_.expandSelection(this.document_.getSelection()),this.copySelectionToClipboard(this.document_)),"click"==e.type&&!e.shiftKey&&(e.ctrlKey||e.metaKey))return clearTimeout(this.timeouts_.openUrl),void(this.timeouts_.openUrl=setTimeout(this.openSelectedUrl_.bind(this),500));if("mousedown"==e.type&&(this.mouseRightClickPaste&&2==e.button||e.button==this.mousePasteButton)&&(this.paste()||console.warning("Could not paste manually due to web restrictions")),"mouseup"==e.type&&0==e.button&&this.copyOnSelect&&!this.document_.getSelection().isCollapsed&&this.copySelectionToClipboard(this.document_),"mousemove"!=e.type&&"mouseup"!=e.type||!this.scrollBlockerNode_.engaged||(this.scrollBlockerNode_.engaged=!1,this.scrollBlockerNode_.style.top="-99px"),this.scrollWheelArrowKeys_&&!e.shiftKey&&this.keyboard.applicationCursor&&!this.isPrimaryScreen()&&"wheel"==e.type){var i=this.scrollPort_.scrollWheelDelta(e),o=t.f.smartFloorDivide(Math.abs(i),this.scrollPort_.characterSize.height),n="O"+(i<0?"B":"A");this.io.sendString(n.repeat(o)),e.preventDefault()}}"mouseup"==e.type&&this.document_.getSelection().isCollapsed&&(this.defeatMouseReports_=!1)}}},r.Terminal.prototype.onMouse=function(e){},r.Terminal.prototype.onFocusChange_=function(e){this.cursorNode_.setAttribute("focus",e),this.restyleCursor_(),!0===e&&this.closeBellNotifications_()},r.Terminal.prototype.onScroll_=function(){this.scheduleSyncCursorPosition_()},r.Terminal.prototype.onPaste_=function(e){var t=e.text.replace(/\n/gm,"\r");t=this.keyboard.encode(t),this.options_.bracketedPaste&&(t="[200~"+t+"[201~"),this.io.sendString(t)},r.Terminal.prototype.onCopy_=function(e){this.useDefaultWindowCopy||(e.preventDefault(),setTimeout(this.copySelectionToClipboard.bind(this),0))},r.Terminal.prototype.onResize_=function(){var e=Math.floor(this.scrollPort_.getScreenWidth()/this.scrollPort_.characterSize.width)||0,r=t.f.smartFloorDivide(this.scrollPort_.getScreenHeight(),this.scrollPort_.characterSize.height)||0;if(!(e<=0||r<=0)){var i=e!=this.screenSize.width||r!=this.screenSize.height;this.realizeSize_(e,r),this.showZoomWarning_(1!=this.scrollPort_.characterSize.zoomFactor),i&&this.overlaySize(),this.restyleCursor_(),this.scheduleSyncCursorPosition_()}},r.Terminal.prototype.onCursorBlink_=function(){this.options_.cursorBlink?"false"==this.cursorNode_.getAttribute("focus")||"0"==this.cursorNode_.style.opacity?(this.cursorNode_.style.opacity="1",this.timeouts_.cursorBlink=setTimeout(this.myOnCursorBlink_,this.cursorBlinkCycle_[0])):(this.cursorNode_.style.opacity="0",this.timeouts_.cursorBlink=setTimeout(this.myOnCursorBlink_,this.cursorBlinkCycle_[1])):delete this.timeouts_.cursorBlink},r.Terminal.prototype.setScrollbarVisible=function(e){this.scrollPort_.setScrollbarVisible(e)},r.Terminal.prototype.setScrollWheelMoveMultipler=function(e){this.scrollPort_.setScrollWheelMoveMultipler(e)},r.Terminal.prototype.closeBellNotifications_=function(){this.bellNotificationList_.forEach((function(e){e.close()})),this.bellNotificationList_.length=0},t.rtdep("lib.encodeUTF8"),r.Terminal.IO=function(e){this.terminal_=e,this.previousIO_=null},r.Terminal.IO.prototype.showOverlay=function(e,t){this.terminal_.showOverlay(e,t)},r.Terminal.IO.prototype.createFrame=function(e,t){return new r.Frame(this.terminal_,e,t)},r.Terminal.IO.prototype.setTerminalProfile=function(e){this.terminal_.setProfile(e)},r.Terminal.IO.prototype.push=function(){var e=new r.Terminal.IO(this.terminal_);return e.keyboardCaptured_=this.keyboardCaptured_,e.columnCount=this.columnCount,e.rowCount=this.rowCount,e.previousIO_=this.terminal_.io,this.terminal_.io=e,e},r.Terminal.IO.prototype.pop=function(){this.terminal_.io=this.previousIO_},r.Terminal.IO.prototype.sendString=function(e){console.log("Unhandled sendString: "+e)},r.Terminal.IO.prototype.onVTKeystroke=function(e){console.log("Unobserverd VT keystroke: "+JSON.stringify(e))},r.Terminal.IO.prototype.onTerminalResize_=function(e,t){for(var r=this;r;)r.columnCount=e,r.rowCount=t,r=r.previousIO_;this.onTerminalResize(e,t)},r.Terminal.IO.prototype.onTerminalResize=function(e,t){},r.Terminal.IO.prototype.writeUTF8=function(e){if(this.terminal_.io!=this)throw"Attempt to print from inactive IO object.";this.terminal_.interpret(e)},r.Terminal.IO.prototype.writelnUTF8=function(e){if(this.terminal_.io!=this)throw"Attempt to print from inactive IO object.";this.terminal_.interpret(e+"\r\n")},r.Terminal.IO.prototype.print=r.Terminal.IO.prototype.writeUTF16=function(e){this.writeUTF8(t.encodeUTF8(e))},r.Terminal.IO.prototype.println=r.Terminal.IO.prototype.writelnUTF16=function(e){this.writelnUTF8(t.encodeUTF8(e))},t.rtdep("lib.colors"),r.TextAttributes=function(e){this.document_=e,this.foregroundSource=this.SRC_DEFAULT,this.backgroundSource=this.SRC_DEFAULT,this.foreground=this.DEFAULT_COLOR,this.background=this.DEFAULT_COLOR,this.defaultForeground="rgb(255, 255, 255)",this.defaultBackground="rgb(0, 0, 0)",this.bold=!1,this.faint=!1,this.italic=!1,this.blink=!1,this.underline=!1,this.strikethrough=!1,this.inverse=!1,this.invisible=!1,this.wcNode=!1,this.asciiNode=!0,this.tileData=null,this.colorPalette=null,this.resetColorPalette()},r.TextAttributes.prototype.enableBold=!0,r.TextAttributes.prototype.enableBoldAsBright=!0,r.TextAttributes.prototype.DEFAULT_COLOR=t.f.createEnum(""),r.TextAttributes.prototype.SRC_DEFAULT="default",r.TextAttributes.prototype.SRC_RGB="rgb",r.TextAttributes.prototype.setDocument=function(e){this.document_=e},r.TextAttributes.prototype.clone=function(){var e=new r.TextAttributes(null);for(var t in this)e[t]=this[t];return e.colorPalette=this.colorPalette.concat(),e},r.TextAttributes.prototype.reset=function(){this.foregroundSource=this.SRC_DEFAULT,this.backgroundSource=this.SRC_DEFAULT,this.foreground=this.DEFAULT_COLOR,this.background=this.DEFAULT_COLOR,this.bold=!1,this.faint=!1,this.italic=!1,this.blink=!1,this.underline=!1,this.strikethrough=!1,this.inverse=!1,this.invisible=!1,this.wcNode=!1,this.asciiNode=!0},r.TextAttributes.prototype.resetColorPalette=function(){this.colorPalette=t.colors.colorPalette.concat(),this.syncColors()},r.TextAttributes.prototype.isDefault=function(){return this.foregroundSource==this.SRC_DEFAULT&&this.backgroundSource==this.SRC_DEFAULT&&!this.bold&&!this.faint&&!this.italic&&!this.blink&&!this.underline&&!this.strikethrough&&!this.inverse&&!this.invisible&&!this.wcNode&&this.asciiNode&&null==this.tileData},r.TextAttributes.prototype.createContainer=function(e){if(this.isDefault())return this.document_.createTextNode(e);var t=this.document_.createElement("span"),r=t.style,i=[];this.foreground!=this.DEFAULT_COLOR&&(r.color=this.foreground),this.background!=this.DEFAULT_COLOR&&(r.backgroundColor=this.background),this.enableBold&&this.bold&&(r.fontWeight="bold"),this.faint&&(t.faint=!0),this.italic&&(r.fontStyle="italic"),this.blink&&(i.push("blink-node"),t.blinkNode=!0);var o="";return this.underline&&(o+=" underline",t.underline=!0),this.strikethrough&&(o+=" line-through",t.strikethrough=!0),o&&(r.textDecoration=o),this.wcNode&&(i.push("wc-node"),t.wcNode=!0,t.asciiNode=!1),null!=this.tileData&&(i.push("tile"),i.push("tile_"+this.tileData),t.tileNode=!0),e&&(t.textContent=e),i.length&&(t.className=i.join(" ")),t},r.TextAttributes.prototype.matchesContainer=function(e){if("string"==typeof e||3==e.nodeType)return this.isDefault();var t=e.style;return!(this.wcNode||e.wcNode||this.asciiNode!=this.asciiNode||null!=this.tileData||e.tileNode||this.foreground!=t.color||this.background!=t.backgroundColor||(this.enableBold&&this.bold)!=!!t.fontWeight||this.blink!=e.blinkNode||this.italic!=!!t.fontStyle||!!this.underline!=!!e.underline||!!this.strikethrough!=!!e.strikethrough)},r.TextAttributes.prototype.setDefaults=function(e,t){this.defaultForeground=e,this.defaultBackground=t,this.syncColors()},r.TextAttributes.prototype.syncColors=function(){var e,r=this.foregroundSource,i=this.backgroundSource,o=this.DEFAULT_COLOR,n=this.DEFAULT_COLOR;if(this.inverse&&(r=this.backgroundSource,i=this.foregroundSource,o=this.defaultBackground,n=this.defaultForeground),this.enableBoldAsBright&&this.bold&&r!=this.SRC_DEFAULT&&r!=this.SRC_RGB&&(r=(e=r)<8?e+8:e),this.invisible&&(r=i,o=this.defaultBackground),r!=this.SRC_RGB&&(this.foreground=r==this.SRC_DEFAULT?o:this.colorPalette[r]),this.faint&&!this.invisible){var s=this.foreground==this.DEFAULT_COLOR?this.defaultForeground:this.foreground;this.foreground=t.colors.mix(s,"rgb(0, 0, 0)",.3333)}i!=this.SRC_RGB&&(this.background=i==this.SRC_DEFAULT?n:this.colorPalette[i])},r.TextAttributes.containersMatch=function(e,t){if("string"==typeof e)return r.TextAttributes.containerIsDefault(t);if(e.nodeType!=t.nodeType)return!1;if(3==e.nodeType)return!0;var i=e.style,o=t.style;return i.color==o.color&&i.backgroundColor==o.backgroundColor&&i.fontWeight==o.fontWeight&&i.fontStyle==o.fontStyle&&i.textDecoration==o.textDecoration},r.TextAttributes.containerIsDefault=function(e){return"string"==typeof e||3==e.nodeType},r.TextAttributes.nodeWidth=function(e){return e.asciiNode?e.textContent.length:t.wc.strWidth(e.textContent)},r.TextAttributes.nodeSubstr=function(e,r,i){return e.asciiNode?e.textContent.substr(r,i):t.wc.substr(e.textContent,r,i)},r.TextAttributes.nodeSubstring=function(e,r,i){return e.asciiNode?e.textContent.substring(r,i):t.wc.substring(e.textContent,r,i)},r.TextAttributes.splitWidecharString=function(e){for(var r=[],i=0,o=0,n=!0,s=0;s0?0:1),s|=i,r=""+String.fromCharCode(s)+o+n,e.preventDefault();break;case"mousedown":var s=Math.min(e.button,2)+32;s|=i,r=""+String.fromCharCode(s)+o+n;break;case"mouseup":r="#"+o+n;break;case"mousemove":this.mouseReport==this.MOUSE_REPORT_DRAG&&e.buttons&&(s=32,1&e.buttons?s+=0:4&e.buttons?s+=1:2&e.buttons?s+=2:s+=3,s+=32,s|=i,r=""+String.fromCharCode(s)+o+n);break;case"click":case"dblclick":break;default:console.error("Unknown mouse event: "+e.type,e)}r&&this.terminal.io.sendString(r)}},r.VT.prototype.interpret=function(e){for(this.parseState_.resetBuf(this.decode(e));!this.parseState_.isComplete();){var t=this.parseState_.func,r=this.parseState_.pos;if(e=this.parseState_.buf,this.parseState_.func.call(this,this.parseState_),this.parseState_.func==t&&this.parseState_.pos==r&&this.parseState_.buf==e)throw"Parser did not alter the state!"}},r.VT.prototype.decode=function(e){return"utf-8"==this.characterEncoding?this.decodeUTF8(e):e},r.VT.prototype.encodeUTF8=function(e){return t.encodeUTF8(e)},r.VT.prototype.decodeUTF8=function(e){return this.utf8Decoder_.decode(e)},r.VT.prototype.setEncoding=function(e){switch(e){default:console.warn('Invalid value for "terminal-encoding": '+e);case"iso-2022":this.codingSystemUtf8_=!1,this.codingSystemLocked_=!1;break;case"utf-8-locked":this.codingSystemUtf8_=!0,this.codingSystemLocked_=!0;break;case"utf-8":this.codingSystemUtf8_=!0,this.codingSystemLocked_=!1}this.updateEncodingState_()},r.VT.prototype.updateEncodingState_=function(){var e=Object.keys(r.VT.CC1).filter((e=>!this.codingSystemUtf8_||e.charCodeAt()<128)).map((e=>"\\x"+t.f.zpad(e.charCodeAt().toString(16),2))).join("");this.cc1Pattern_=new RegExp(`[${e}]`)},r.VT.prototype.parseUnknown_=function(e){var t=this;function r(e){!t.codingSystemUtf8_&&t[t.GL].GL&&(e=t[t.GL].GL(e)),t.terminal.print(e)}var i=e.peekRemainingBuf(),o=i.search(this.cc1Pattern_);return 0==o?(this.dispatch("CC1",i.substr(0,1),e),void e.advance(1)):-1==o?(r(i),void e.reset()):(r(i.substr(0,o)),this.dispatch("CC1",i.substr(o,1),e),void e.advance(o+1))},r.VT.prototype.parseCSI_=function(e){var t=e.peekChar(),r=e.args;t>="@"&&t<="~"?(this.dispatch("CSI",this.leadingModifier_+this.trailingModifier_+t,e),e.resetParseFunction()):";"==t?this.trailingModifier_?e.resetParseFunction():(r.length||r.push(""),r.push("")):t>="0"&&t<="9"?this.trailingModifier_?e.resetParseFunction():r.length?r[r.length-1]+=t:r[0]=t:t>=" "&&t<="?"&&":"!=t?r.length?this.trailingModifier_+=t:this.leadingModifier_+=t:this.cc1Pattern_.test(t)?this.dispatch("CC1",t,e):e.resetParseFunction(),e.advance(1)},r.VT.prototype.parseUntilStringTerminator_=function(e){var t,r=e.peekRemainingBuf(),i=r.search(/(\x1b\\|\x07)/),o=e.args;return o.length||(o[0]="",o[1]=new Date),-1==i?(o[0]+=r,o[0].length>this.maxStringSequence&&(t="too long: "+o[0].length),-1!=o[0].indexOf("")&&(t="embedded escape: "+o[0].indexOf("")),new Date-o[1]>this.oscTimeLimit_&&(t="timeout expired: "+new Date-o[1]),t?(console.log("parseUntilStringTerminator_: aborting: "+t,o[0]),e.reset(o[0]),!1):(e.advance(r.length),!0)):o[0].length+i>this.maxStringSequence?(e.reset(o[0]+r),!1):(o[0]+=r.substr(0,i),e.resetParseFunction(),e.advance(i+(""==r.substr(i,1)?2:1)),!0)},r.VT.prototype.dispatch=function(e,t,i){var o=r.VT[e][t];o?o!=r.VT.ignore?"CC1"==e&&t>""&&!this.enable8BitControl?console.warn("Ignoring 8-bit control code: 0x"+t.charCodeAt(0).toString(16)):o.apply(this,[i,t]):this.warnUnimplemented&&console.warn("Ignored "+e+" code: "+JSON.stringify(t)):this.warnUnimplemented&&console.warn("Unknown "+e+" code: "+JSON.stringify(t))},r.VT.prototype.setANSIMode=function(e,t){4==e?this.terminal.setInsertMode(t):20==e?this.terminal.setAutoCarriageReturn(t):this.warnUnimplemented&&console.warn("Unimplemented ANSI Mode: "+e)},r.VT.prototype.setDECMode=function(e,t){switch(parseInt(e,10)){case 1:this.terminal.keyboard.applicationCursor=t;break;case 3:this.allowColumnWidthChanges_&&(this.terminal.setWidth(t?132:80),this.terminal.clearHome(),this.terminal.setVTScrollRegion(null,null));break;case 5:this.terminal.setReverseVideo(t);break;case 6:this.terminal.setOriginMode(t);break;case 7:this.terminal.setWraparound(t);break;case 12:this.enableDec12&&this.terminal.setCursorBlink(t);break;case 25:this.terminal.setCursorVisible(t);break;case 30:this.terminal.setScrollbarVisible(t);break;case 40:this.terminal.allowColumnWidthChanges_=t;break;case 45:this.terminal.setReverseWraparound(t);break;case 67:this.terminal.keyboard.backspaceSendsBackspace=t;break;case 1e3:this.mouseReport=t?this.MOUSE_REPORT_CLICK:this.MOUSE_REPORT_DISABLED,this.terminal.syncMouseStyle();break;case 1002:this.mouseReport=t?this.MOUSE_REPORT_DRAG:this.MOUSE_REPORT_DISABLED,this.terminal.syncMouseStyle();break;case 1010:this.terminal.scrollOnOutput=t;break;case 1011:this.terminal.scrollOnKeystroke=t;break;case 1036:this.terminal.keyboard.metaSendsEscape=t;break;case 1039:t?this.terminal.keyboard.previousAltSendsWhat_||(this.terminal.keyboard.previousAltSendsWhat_=this.terminal.keyboard.altSendsWhat,this.terminal.keyboard.altSendsWhat="escape"):this.terminal.keyboard.previousAltSendsWhat_&&(this.terminal.keyboard.altSendsWhat=this.terminal.keyboard.previousAltSendsWhat_,this.terminal.keyboard.previousAltSendsWhat_=null);break;case 47:case 1047:this.terminal.setAlternateMode(t);break;case 1048:this.savedState_.save();case 1049:t?(this.savedState_.save(),this.terminal.setAlternateMode(t),this.terminal.clear()):(this.terminal.setAlternateMode(t),this.savedState_.restore());break;case 2004:this.terminal.setBracketedPaste(t);break;default:this.warnUnimplemented&&console.warn("Unimplemented DEC Private Mode: "+e)}},r.VT.ignore=function(){},r.VT.CC1={},r.VT.ESC={},r.VT.CSI={},r.VT.OSC={},r.VT.VT52={},r.VT.CC1["\0"]=r.VT.ignore,r.VT.CC1[""]=r.VT.ignore,r.VT.CC1[""]=function(){this.terminal.ringBell()},r.VT.CC1["\b"]=function(){this.terminal.cursorLeft(1)},r.VT.CC1["\t"]=function(){this.terminal.forwardTabStop()},r.VT.CC1["\n"]=function(){this.terminal.formFeed()},r.VT.CC1["\v"]=r.VT.CC1["\n"],r.VT.CC1["\f"]=r.VT.CC1["\n"],r.VT.CC1["\r"]=function(){this.terminal.setCursorColumn(0)},r.VT.CC1[""]=function(){this.GL="G1"},r.VT.CC1[""]=function(){this.GL="G0"},r.VT.CC1[""]=r.VT.ignore,r.VT.CC1[""]=r.VT.ignore,r.VT.CC1[""]=function(e){"G1"==this.GL&&(this.GL="G0"),e.resetParseFunction(),this.terminal.print("?")},r.VT.CC1[""]=r.VT.CC1[""],r.VT.CC1[""]=function(e){e.func=function e(t){var r=t.consumeChar();""!=r&&(this.dispatch("ESC",r,t),t.func==e&&t.resetParseFunction())}},r.VT.CC1[""]=r.VT.ignore,r.VT.CC1["„"]=r.VT.ESC.D=function(){this.terminal.lineFeed()},r.VT.CC1["…"]=r.VT.ESC.E=function(){this.terminal.setCursorColumn(0),this.terminal.cursorDown(1)},r.VT.CC1["ˆ"]=r.VT.ESC.H=function(){this.terminal.setTabStop(this.terminal.getCursorColumn())},r.VT.CC1[""]=r.VT.ESC.M=function(){this.terminal.reverseLineFeed()},r.VT.CC1["Ž"]=r.VT.ESC.N=r.VT.ignore,r.VT.CC1[""]=r.VT.ESC.O=r.VT.ignore,r.VT.CC1[""]=r.VT.ESC.P=function(e){e.resetArguments(),e.func=this.parseUntilStringTerminator_},r.VT.CC1["–"]=r.VT.ESC.V=r.VT.ignore,r.VT.CC1["—"]=r.VT.ESC.W=r.VT.ignore,r.VT.CC1["˜"]=r.VT.ESC.X=r.VT.ignore,r.VT.CC1["š"]=r.VT.ESC.Z=function(){this.terminal.io.sendString("[?1;2c")},r.VT.CC1["›"]=r.VT.ESC["["]=function(e){e.resetArguments(),this.leadingModifier_="",this.trailingModifier_="",e.func=this.parseCSI_},r.VT.CC1["œ"]=r.VT.ESC["\\"]=r.VT.ignore,r.VT.CC1[""]=r.VT.ESC["]"]=function(e){e.resetArguments(),e.func=function e(t){if(this.parseUntilStringTerminator_(t)&&t.func!=e){var r=t.args[0].match(/^(\d+);(.*)$/);r?(t.args[0]=r[2],this.dispatch("OSC",r[1],t)):console.warn("Invalid OSC: "+JSON.stringify(t.args[0]))}}},r.VT.CC1["ž"]=r.VT.ESC["^"]=function(e){e.resetArguments(),e.func=this.parseUntilStringTerminator_},r.VT.CC1["Ÿ"]=r.VT.ESC._=function(e){e.resetArguments(),e.func=this.parseUntilStringTerminator_},r.VT.ESC[" "]=function(e){e.func=function(e){var t=e.consumeChar();this.warnUnimplemented&&console.warn("Unimplemented sequence: ESC 0x20 "+t),e.resetParseFunction()}},r.VT.ESC["#"]=function(e){e.func=function(e){"8"==e.consumeChar()&&this.terminal.fill("E"),e.resetParseFunction()}},r.VT.ESC["%"]=function(e){e.func=function(e){var t=e.consumeChar();if(this.codingSystemLocked_)return"/"==t&&e.consumeChar(),void e.resetParseFunction();switch(t){case"@":this.setEncoding("iso-2022");break;case"G":this.setEncoding("utf-8");break;case"/":switch(t=e.consumeChar()){case"G":case"H":case"I":this.setEncoding("utf-8-locked");break;default:this.warnUnimplemented&&console.warn("Unknown ESC % / argument: "+JSON.stringify(t))}break;default:this.warnUnimplemented&&console.warn("Unknown ESC % argument: "+JSON.stringify(t))}e.resetParseFunction()}},r.VT.ESC["("]=r.VT.ESC[")"]=r.VT.ESC["*"]=r.VT.ESC["+"]=r.VT.ESC["-"]=r.VT.ESC["."]=r.VT.ESC["/"]=function(e,t){e.func=function(e){var r=e.consumeChar();if(""==r)return e.resetParseFunction(),void e.func();var i=this.characterMaps.getMap(r);void 0!==i?"("==t?this.G0=i:")"==t||"-"==t?this.G1=i:"*"==t||"."==t?this.G2=i:"+"!=t&&"/"!=t||(this.G3=i):this.warnUnimplemented&&console.log('Invalid character set for "'+t+'": '+r),e.resetParseFunction()}},r.VT.ESC[6]=r.VT.ignore,r.VT.ESC[7]=function(){this.savedState_.save()},r.VT.ESC[8]=function(){this.savedState_.restore()},r.VT.ESC[9]=r.VT.ignore,r.VT.ESC["="]=function(){this.terminal.keyboard.applicationKeypad=!0},r.VT.ESC[">"]=function(){this.terminal.keyboard.applicationKeypad=!1},r.VT.ESC.F=r.VT.ignore,r.VT.ESC.c=function(){this.reset(),this.terminal.reset()},r.VT.ESC.l=r.VT.ESC.m=r.VT.ignore,r.VT.ESC.n=function(){this.GL="G2"},r.VT.ESC.o=function(){this.GL="G3"},r.VT.ESC["|"]=function(){this.GR="G3"},r.VT.ESC["}"]=function(){this.GR="G2"},r.VT.ESC["~"]=function(){this.GR="G1"},r.VT.OSC[0]=function(e){this.terminal.setWindowTitle(e.args[0])},r.VT.OSC[2]=r.VT.OSC[0],r.VT.OSC[4]=function(e){for(var r=e.args[0].split(";"),i=parseInt(r.length/2),o=this.terminal.getTextAttributes().colorPalette,n=[],s=0;s=o.length||("?"!=c?(c=t.colors.x11ToCSS(c))&&(o[a]=c):(c=t.colors.rgbToX11(o[a]))&&n.push(a+";"+c))}n.length&&this.terminal.io.sendString("]4;"+n.join(";")+"")},r.VT.OSC[9]=function(e){r.notify({body:e.args[0]})},r.VT.OSC[10]=function(e){var i=e.args[0].split(";");if(i){var o=t.colors.x11ToCSS(i.shift());o&&this.terminal.setForegroundColor(o),i.length>0&&(e.args[0]=i.join(";"),r.VT.OSC[11].apply(this,[e]))}},r.VT.OSC[11]=function(e){var r=e.args[0].split(";");if(r){var i=t.colors.x11ToCSS(r.shift());i&&this.terminal.setBackgroundColor(i)}},r.VT.OSC[50]=function(e){var t=e.args[0].match(/CursorShape=(.)/i);if(t)switch(t[1]){case"1":this.terminal.setCursorShape(r.Terminal.cursorShape.BEAM);break;case"2":this.terminal.setCursorShape(r.Terminal.cursorShape.UNDERLINE);break;default:this.terminal.setCursorShape(r.Terminal.cursorShape.BLOCK)}else console.warn("Could not parse OSC 50 args: "+e.args[0])},r.VT.OSC[52]=function(e){var t=e.args[0].match(/^[cps01234567]*;(.*)/);if(t){var r=window.atob(t[1]);r&&this.terminal.copyStringToClipboard(this.decode(r))}},r.VT.OSC[777]=function(e){var t;switch(e.args[0].split(";",1)[0]){case"notify":var i,o;(t=e.args[0].match(/^[^;]+;([^;]*)(;([\s\S]*))?$/))&&(i=t[1],o=t[3]),r.notify({title:i,body:o});break;default:console.warn("Unknown urxvt module: "+e.args[0])}},r.VT.CSI["@"]=function(e){this.terminal.insertSpace(e.iarg(0,1))},r.VT.CSI.A=function(e){this.terminal.cursorUp(e.iarg(0,1))},r.VT.CSI.B=function(e){this.terminal.cursorDown(e.iarg(0,1))},r.VT.CSI.C=function(e){this.terminal.cursorRight(e.iarg(0,1))},r.VT.CSI.D=function(e){this.terminal.cursorLeft(e.iarg(0,1))},r.VT.CSI.E=function(e){this.terminal.cursorDown(e.iarg(0,1)),this.terminal.setCursorColumn(0)},r.VT.CSI.F=function(e){this.terminal.cursorUp(e.iarg(0,1)),this.terminal.setCursorColumn(0)},r.VT.CSI.G=function(e){this.terminal.setCursorColumn(e.iarg(0,1)-1)},r.VT.CSI.H=function(e){this.terminal.setCursorPosition(e.iarg(0,1)-1,e.iarg(1,1)-1)},r.VT.CSI.I=function(e){var r=e.iarg(0,1);r=t.f.clamp(r,1,this.terminal.screenSize.width);for(var i=0;iT"]=r.VT.ignore,r.VT.CSI.X=function(e){this.terminal.eraseToRight(e.iarg(0,1))},r.VT.CSI.Z=function(e){var r=e.iarg(0,1);r=t.f.clamp(r,1,this.terminal.screenSize.width);for(var i=0;ic"]=function(e){this.terminal.io.sendString("[>0;256;0c")},r.VT.CSI.d=function(e){this.terminal.setAbsoluteCursorRow(e.iarg(0,1)-1)},r.VT.CSI.f=r.VT.CSI.H,r.VT.CSI.g=function(e){e.args[0]&&0!=e.args[0]?3==e.args[0]&&this.terminal.clearAllTabStops():this.terminal.clearTabStopAtCursor(!1)},r.VT.CSI.h=function(e){for(var t=0;t=i.colorPalette.length)continue;i.foregroundSource=a}else if(39==n)i.foregroundSource=i.SRC_DEFAULT;else if(n<48)i.backgroundSource=n-40;else if(48==n){var s;if(null!=(s=r(o)))i.backgroundSource=i.SRC_RGB,i.background=s,o+=5;else{var a;if(null==(a=t(o)))break;if(o+=2,a>=i.colorPalette.length)continue;i.backgroundSource=a}}else i.backgroundSource=i.SRC_DEFAULT;else n>=90&&n<=97?i.foregroundSource=n-90+8:n>=100&&n<=107&&(i.backgroundSource=n-100+8)}i.setDefaults(this.terminal.getForegroundColor(),this.terminal.getBackgroundColor())}else i.reset()},r.VT.CSI[">m"]=r.VT.ignore,r.VT.CSI.n=function(e){if(5==e.args[0])this.terminal.io.sendString("0n");else if(6==e.args[0]){var t=this.terminal.getCursorRow()+1,r=this.terminal.getCursorColumn()+1;this.terminal.io.sendString("["+t+";"+r+"R")}},r.VT.CSI[">n"]=r.VT.ignore,r.VT.CSI["?n"]=function(e){if(6==e.args[0]){var t=this.terminal.getCursorRow()+1,r=this.terminal.getCursorColumn()+1;this.terminal.io.sendString("["+t+";"+r+"R")}else 15==e.args[0]?this.terminal.io.sendString("[?11n"):25==e.args[0]?this.terminal.io.sendString("[?21n"):26==e.args[0]?this.terminal.io.sendString("[?12;1;0;0n"):53==e.args[0]&&this.terminal.io.sendString("[?50n")},r.VT.CSI[">p"]=r.VT.ignore,r.VT.CSI["!p"]=function(){this.reset(),this.terminal.softReset()},r.VT.CSI.$p=r.VT.ignore,r.VT.CSI["?$p"]=r.VT.ignore,r.VT.CSI['"p']=r.VT.ignore,r.VT.CSI.q=r.VT.ignore,r.VT.CSI[" q"]=function(e){var t=e.args[0];0==t||1==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BLOCK),this.terminal.setCursorBlink(!0)):2==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BLOCK),this.terminal.setCursorBlink(!1)):3==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.UNDERLINE),this.terminal.setCursorBlink(!0)):4==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.UNDERLINE),this.terminal.setCursorBlink(!1)):5==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BEAM),this.terminal.setCursorBlink(!0)):6==t?(this.terminal.setCursorShape(r.Terminal.cursorShape.BEAM),this.terminal.setCursorBlink(!1)):console.warn("Unknown cursor style: "+t)},r.VT.CSI['"q']=r.VT.ignore,r.VT.CSI.r=function(e){var t=e.args,r=t[0]?parseInt(t[0],10)-1:null,i=t[1]?parseInt(t[1],10)-1:null;this.terminal.setVTScrollRegion(r,i),this.terminal.setCursorPosition(0,0)},r.VT.CSI["?r"]=r.VT.ignore,r.VT.CSI.$r=r.VT.ignore,r.VT.CSI.s=function(){this.savedState_.save()},r.VT.CSI["?s"]=r.VT.ignore,r.VT.CSI.t=r.VT.ignore,r.VT.CSI.$t=r.VT.ignore,r.VT.CSI[">t"]=r.VT.ignore,r.VT.CSI[" t"]=r.VT.ignore,r.VT.CSI.u=function(){this.savedState_.restore()},r.VT.CSI[" u"]=r.VT.ignore,r.VT.CSI.$v=r.VT.ignore,r.VT.CSI["'w"]=r.VT.ignore,r.VT.CSI.x=r.VT.ignore,r.VT.CSI["*x"]=r.VT.ignore,r.VT.CSI.$x=r.VT.ignore,r.VT.CSI.z=function(e){if(!(e.args.length<1)){var t=e.args[0];if(0==t){if(e.args.length<2)return;this.terminal.getTextAttributes().tileData=e.args[1]}else 1==t&&(this.terminal.getTextAttributes().tileData=null)}},r.VT.CSI["'z"]=r.VT.ignore,r.VT.CSI.$z=r.VT.ignore,r.VT.CSI["'{"]=r.VT.ignore,r.VT.CSI["'|"]=r.VT.ignore,r.VT.CSI["'}"]=r.VT.ignore,r.VT.CSI["'~"]=r.VT.ignore,t.rtdep("lib.f"),r.VT.CharacterMap=function(e,t){this.description=e,this.GL=null,this.glmapBase_=t,this.sync_()},r.VT.CharacterMap.prototype.sync_=function(e){if(!this.glmapBase_&&!e)return this.GL=null,delete this.glmap_,void delete this.glre_;this.glmap_=e?Object.assign({},this.glmapBase_,e):this.glmapBase_;var r=Object.keys(this.glmap_).map((e=>"\\x"+t.f.zpad(e.charCodeAt(0).toString(16))));this.glre_=new RegExp("["+r.join("")+"]","g"),this.GL=e=>e.replace(this.glre_,(e=>this.glmap_[e]))},r.VT.CharacterMap.prototype.reset=function(){this.glmap_!==this.glmapBase_&&this.sync_()},r.VT.CharacterMap.prototype.setOverrides=function(e){this.sync_(e)},r.VT.CharacterMap.prototype.clone=function(){var e=new r.VT.CharacterMap(this.description,this.glmapBase_);return this.glmap_!==this.glmapBase_&&e.setOverrides(this.glmap_),e},r.VT.CharacterMaps=function(){this.maps_=r.VT.CharacterMaps.DefaultMaps,this.mapsBase_=this.maps_},r.VT.CharacterMaps.prototype.getMap=function(e){return this.maps_.hasOwnProperty(e)?this.maps_[e]:void 0},r.VT.CharacterMaps.prototype.addMap=function(e,t){this.maps_===this.mapsBase_&&(this.maps_=Object.assign({},this.mapsBase_)),this.maps_[e]=t},r.VT.CharacterMaps.prototype.reset=function(){this.maps_!==r.VT.CharacterMaps.DefaultMaps&&(this.maps_=r.VT.CharacterMaps.DefaultMaps)},r.VT.CharacterMaps.prototype.setOverrides=function(e){for(var t in this.maps_===this.mapsBase_&&(this.maps_=Object.assign({},this.mapsBase_)),e){var i=this.getMap(t);void 0!==i?(this.maps_[t]=i.clone(),this.maps_[t].setOverrides(e[t])):this.addMap(t,new r.VT.CharacterMap("user "+t,e[t]))}},r.VT.CharacterMaps.DefaultMaps={},r.VT.CharacterMaps.DefaultMaps[0]=new r.VT.CharacterMap("graphic",{"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"}),r.VT.CharacterMaps.DefaultMaps.A=new r.VT.CharacterMap("british",{"#":"£"}),r.VT.CharacterMaps.DefaultMaps.B=new r.VT.CharacterMap("us",null),r.VT.CharacterMaps.DefaultMaps[4]=new r.VT.CharacterMap("dutch",{"#":"£","@":"¾","[":"IJ","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"}),r.VT.CharacterMaps.DefaultMaps.C=r.VT.CharacterMaps.DefaultMaps[5]=new r.VT.CharacterMap("finnish",{"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"}),r.VT.CharacterMaps.DefaultMaps.R=new r.VT.CharacterMap("french",{"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"}),r.VT.CharacterMaps.DefaultMaps.Q=new r.VT.CharacterMap("french canadian",{"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"}),r.VT.CharacterMaps.DefaultMaps.K=new r.VT.CharacterMap("german",{"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"}),r.VT.CharacterMaps.DefaultMaps.Y=new r.VT.CharacterMap("italian",{"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"}),r.VT.CharacterMaps.DefaultMaps.E=r.VT.CharacterMaps.DefaultMaps[6]=new r.VT.CharacterMap("norwegian/danish",{"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"}),r.VT.CharacterMaps.DefaultMaps.Z=new r.VT.CharacterMap("spanish",{"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"}),r.VT.CharacterMaps.DefaultMaps[7]=r.VT.CharacterMaps.DefaultMaps.H=new r.VT.CharacterMap("swedish",{"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"}),r.VT.CharacterMaps.DefaultMaps["="]=new r.VT.CharacterMap("swiss",{"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}),t.resource.add("hterm/audio/bell","audio/ogg;base64","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"),t.resource.add("hterm/images/icon-96","image/png;base64","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"),t.resource.add("hterm/concat/date","text/plain","Tue, 22 Aug 2017 06:42:31 +0000"),t.resource.add("hterm/changelog/version","text/plain","1.70"),t.resource.add("hterm/changelog/date","text/plain","2017-08-16"),t.resource.add("hterm/git/HEAD","text/plain","git rev-parse HEAD"),e.exports={hterm:r,lib:t}},881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),o=window.getComputedStyle(this._terminal.element),n=r-(parseInt(o.getPropertyValue("padding-top"))+parseInt(o.getPropertyValue("padding-bottom"))),s=i-(parseInt(o.getPropertyValue("padding-right"))+parseInt(o.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(n/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var o=t[i]={i,l:!1,exports:{}};return e[i].call(o.exports,o,o.exports,r),o.l=!0,o.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(i,o,function(t){return e[t]}.bind(null,o));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),o=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function n(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=n),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,o,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(o,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(o.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var o=function(){function e(){}return e.computeLink=function(t,r,i,o){for(var n,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(n=s.exec(c));){var d=n[1];if(!d){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(d,h+1),s.lastIndex=h+d.length,h<0)break;for(var f=h+d.length,p=l+1;f>i.cols;)f-=i.cols,p++;var _={start:{x:h+1,y:l+1},end:{x:f,y:p}};u.push({range:_,text:d,activate:o})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,o,n="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,o=a.isWrapped}while(o);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;n+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[n,s]},e}();t.LinkComputer=o}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),o=r(310),n=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,o){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=i.throwIfFalsy(i.createProgram(n,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,c),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,u),n.bufferData(n.ELEMENT_ARRAY_BUFFER,l,n.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,h,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,o,n){this._updateCell(this._vertices.attributes,e,t,r,i,o,n)},e.prototype._updateCell=function(e,t,r,i,o,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,o,s):this._atlas.getRasterizedGlyph(i,o,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):n.fill(e,0,u,u+l-1-2)):n.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,o=e.selection.endCol-i,n=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|_>>8&65280|_>>8&255;case 50331648:var g=c.AttributeData.toColorRGB(p.getBgColor());f|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;f|=v>>8&16711680|v>>8&65280|v>>8&255}f|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var b=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],n,f,b)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],n,f)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),o=r(455),n=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,o){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=i.throwIfFalsy(i.createProgram(n,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(n.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,c),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,h),n.bufferData(n.ELEMENT_ARRAY_BUFFER,l,n.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,n=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,o=0;o>24&255)/255,d=(c>>16&255)/255,f=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,d,f,1)},e.prototype._addRectangle=function(e,t,r,i,o,n,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=o,e[t+3]=n,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,o,n,s){e[t]=r,e[t+1]=i,e[t+2]=o,e[t+3]=n,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=o},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),o=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=o},666:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var n=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),d=r(855),f=r(345),p=r(782),_=function(e){function t(t,r,i){var o=e.call(this)||this;o._terminal=t,o._colors=r,o._model=new h.RenderModel,o._workCell=new p.CellData,o._onRequestRedraw=new f.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(o._gl=o._canvas.getContext("webgl2",c),!o._gl)throw new Error("WebGL2 not supported "+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new l.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var o=i+r.buffer.ydisp,n=r.buffer.lines.get(o);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=e[1]-i.buffer.active.viewportY,n=t[1]-i.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=_},381:(e,t)=>{function r(e,t,r){var o=i(e.createShader(t));if(e.shaderSource(o,r),e.compileShader(o),e.getShaderParameter(o,e.COMPILE_STATUS))return o;console.error(e.getShaderInfoLog(o)),e.deleteShader(o)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,o){var n=i(e.createProgram());if(e.attachShader(n,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(n,i(r(e,e.FRAGMENT_SHADER,o))),e.linkProgram(n),e.getProgramParameter(n,e.LINK_STATUS))return n;console.error(e.getProgramInfoLog(n)),e.deleteProgram(n)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),o=r(167),n=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),n.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,o){var n={foreground:o.foreground,background:o.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),o=r(855),n=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},f=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[r]=((e={})[o.DEFAULT_COLOR]=((t={})[o.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,o=this._cacheMapCombined[e];o||(o={},this._cacheMapCombined[e]=o);var n=o[t];return n&&(i=n[r]),i||(i=this._drawToCache(e,t,r),o[t]||(o[t]={}),o[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,o=this._cacheMap[e];o||(o={},this._cacheMap[e]=o);var n=o[t];return n&&(i=n[r]),i||(i=this._drawToCache(e,t,r),o[t]||(o[t]={}),o[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+p(i[0])+p(i[1])+p(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,o,n,c,l){var h=this._getMinimumContrastCss(e,t,r,i,o,n,c,l);if(h)return h;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var u=s.AttributeData.toColorRGB(n);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,o,n,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(o,n,s,c),d=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(d){var f=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(e,i,f),f}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var o="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),f=this._workAttributeData.getFgColorMode(),p=this._workAttributeData.getBgColor(),_=this._workAttributeData.getBgColorMode();if(s){var g=u;u=p,p=g;var v=f;f=_,_=v}var b=this._getBackgroundColor(_,p,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=b.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var y=n?this._config.fontWeightBold:this._config.fontWeight,m=h?"italic":"";this._tmpCtx.font=m+" "+y+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,_,p,r,f,u,s,n),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,o=t.rgba>>>16&255,n=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;o--){for(i=0;i=0;i--){for(o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),o=r(381),n=function(){function e(e,t,r,i,o){this._container=e,this._alpha=i,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=n},461:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var n=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,o){var n=e.call(this,t,"cursor",r,!0,i)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:"",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,o=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(o,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=e.getOption("cursorStyle");return n&&"block"!==n?this._cursorRenderers[n](e,o,i,this._cell):this._renderBlurCursor(e,o,i,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=i,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,o,i,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(n.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var n=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,o){var n=e.call(this,t,"link",r,!0,i)||this;return o.linkifier.onShowLinkUnderline((function(e){return n._onShowLinkUnderline(e)})),o.linkifier.onHideLinkUnderline((function(e){return n._onHideLinkUnderline(e)})),o.linkifier2.onShowLinkUnderline((function(e){return n._onShowLinkUnderline(e)})),o.linkifier2.onHideLinkUnderline((function(e){return n._onHideLinkUnderline(e)})),n}return o(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,o,n;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var o=t.rgba>>24&255,n=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((o-a)*i),u=c+Math.round((n-c)*i),d=l+Math.round((s-l)*i);return{css:r.toCss(h,u,d),rgba:r.toRgba(h,u,d)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=n.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return n.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=n.toChannels(t),o=i[0],s=i[1],a=i[2];return{css:r.toCss(o,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),o=n.toChannels(e.rgba),s=o[0],a=o[1],c=o[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,o=t/255,n=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(o=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u>>0}e.ensureContrastRatio=function(e,r,n){var s=o.relativeLuminance(e>>8),c=o.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(n=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var o=r;o{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var n=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return o(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",o=t;o65535?(n-=65536,i+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):i+=String.fromCharCode(n)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,o=0;this._interim&&(56320<=(a=e.charCodeAt(o++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var n=o;n=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(n))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,o,n,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var d=0,f=void 0;(f=63&this.interim[++d])&&d<4;)u<<=6,u|=f;for(var p=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,_=p-d;l<_;){if(l>=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[d++]=f,u<<=6,u|=63&f}h||(2===p?u<128?l--:t[a++]=u:3===p?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var g=r-4,v=l;v=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if((c=(31&i)<<6|63&o)<128){v--;continue}t[a++]=c}else if(224==(240&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if((c=(15&i)<<12|(63&o)<<6|63&n)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=e[v++]))){v--;continue}if((c=(7&i)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var o=t[i]={exports:{}};return e[i].call(o.exports,o,o.exports,r),o.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var n=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),d=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var o=0;oe;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=n.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),o=e;o<=t;o++){var n=r.translateBufferLineToString(r.ydisp+o,!0),s=(r.ydisp+o+1).toString(),a=this._rowElements[o];a&&(0===n.length?a.innerText=" ":a.textContent=n,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function o(e,t,o){e=i(e=r(e),o.decPrivateModes.bracketedPasteMode),o.triggerDataEvent(e,!0),t.value=""}function n(e,t,r){var i=r.getBoundingClientRect(),o=e.clientX-i.left-10,n=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=o+"px",t.style.top=n+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&o(e.clipboardData.getData("text/plain"),t,r)},t.paste=o,t.moveTextAreaUnderMouseCursor=n,t.rightClickHandler=function(e,t,r,i,o){n(e,t,r),o&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,o,n;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var o=t.rgba>>24&255,n=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((o-a)*i),u=c+Math.round((n-c)*i),d=l+Math.round((s-l)*i);return{css:r.toCss(h,u,d),rgba:r.toRgba(h,u,d)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=n.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return n.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=n.toChannels(t),o=i[0],s=i[1],a=i[2];return{css:r.toCss(o,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),o=n.toChannels(e.rgba),s=o[0],a=o[1],c=o[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,o=t/255,n=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(o=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,n=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(o.relativeLuminance2(c,h,l),o.relativeLuminance2(i,n,s));u>>0}e.ensureContrastRatio=function(e,r,n){var s=o.relativeLuminance(e>>8),c=o.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(n=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),o=r(7239),n=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var o=t[r/36%6|0],n=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(o,n,s),rgba:i.channels.toRgba(o,n,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new o.ColorContrastCache,this.colors={foreground:n,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,n),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var o=this._ctx.getImageData(0,0,1,1).data;if(255!==o[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var n=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=n[0],a=n[1],c=n[2],l=n[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(o[0],o[1],o[2],o[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var o=!1;return{dispose:function(){o||(o=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var n=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new n.EventEmitter,this._onHideLinkUnderline=new n.EventEmitter,this._onLinkTooltip=new n.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),o=this._bufferService.buffer.iterator(!1,t,r,i,i);o.hasNext();)for(var n=o.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){o._rowsTimeoutId||e&&o._addLink(l[1],l[0]-o._bufferService.buffer.ydisp,a,r,d)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,d)},c=this;null!==(i=n.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,o){var n=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){n._onShowLinkUnderline.fire(n._createLinkHoverEvent(a,l,h,u,o)),n._element.classList.add("xterm-cursor-pointer")}),(function(e){n._onLinkTooltip.fire(n._createLinkHoverEvent(a,l,h,u,o)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){n._onHideLinkUnderline.fire(n._createLinkHoverEvent(a,l,h,u,o)),n._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,o){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:o}},e._timeBeforeLatency=200,e=i([o(0,s.IBufferService),o(1,s.ILogService),o(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,o,n,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=o,this.hoverCallback=n,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return o(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){o.splice(n--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,o=this;if(!this._activeProviderReplies)return r;for(var n=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,o,n;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(n=null===(o=t._currentLink)||void 0===o?void 0:o.state)||void 0===n?void 0:n.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,o=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(o)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||o&&e.range.start.x<=t.x||i&&o)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,o){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:o}},n([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,o,n,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=o,a._selectionService=n,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return o(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],o=0;o=n.x1&&r=n.x1||i===n.y2&&rn.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var n=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return o(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=n},3236:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var n=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),d=r(9312),f=r(6114),p=r(3656),_=r(9042),g=r(357),v=r(6954),b=r(4567),y=r(1296),m=r(7399),C=r(8460),S=r(8437),w=r(5680),A=r(3230),T=r(4725),E=r(428),R=r(8934),k=r(6465),x=r(5114),P=r(8969),L=r(4774),M=r(4269),D="undefined"!=typeof window?window.document:null,O=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=f,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(k.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return o(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,o=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:o.x-33,row:o.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var o={mouseup:null,wheel:null,mousedrag:null,mousemove:null},n=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",o.mouseup),o.mousedrag&&e._document.removeEventListener("mousemove",o.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?o.mousemove||(r.addEventListener("mousemove",l),o.mousemove=l):(r.removeEventListener("mousemove",o.mousemove),o.mousemove=null),16&t?o.wheel||(r.addEventListener("wheel",s,{passive:!1}),o.wheel=s):(r.removeEventListener("wheel",o.wheel),o.wheel=null),2&t?o.mouseup||(o.mouseup=n):(e._document.removeEventListener("mouseup",o.mouseup),o.mouseup=null),4&t?o.mousedrag||(o.mousedrag=a):(e._document.removeEventListener("mousemove",o.mousedrag),o.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(p.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),o.mouseup&&e._document.addEventListener("mouseup",o.mouseup),o.mousedrag&&e._document.addEventListener("mousemove",o.mousedrag),e.cancel(t)}))),this.register(p.addDisposableDomListener(r,"wheel",(function(t){if(o.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),n="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,o,n,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=o,l._optionsService=n,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return o(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},n([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var n=r(4725),s=r(2585),a=function(){function e(e,t,r,i,o,n){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=o,this._renderService=n,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,o=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,n=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=n+"px",this._compositionView.style.top=o+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=n+"px",this._textarea.style.top=o+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([o(2,s.IBufferService),o(3,s.IOptionsService),o(4,s.ICoreService),o(5,n.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,o,n,s,a,c){if(n){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),o),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function o(e,t,r,i){var o=e-n(r,e),a=t-n(r,t);return l(Math.abs(o-a)-function(e,t,r){for(var i=0,o=e-n(r,e),a=t-n(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,o,n){for(var s=e,a=t,c="";s!==r||a!==i;)s+=o?1:-1,o&&s>n.cols-1?(c+=n.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!o&&s<0&&(c+=n.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=n.cols-1,a--);return c+n.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-n(s,i):t;var d=i,f=function(e,t,r,i,s,a){var c;return c=o(r,i,s,a).length>0?i-n(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var d=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(d-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),o=r(3236),n=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new o.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new d(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new f(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return n},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),d=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),f=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),o=r(8803),n=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,o,n,s,a){this._container=e,this._alpha=i,this._colors=o,this._rendererId=n,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=n.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var n,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(n=e.isBgDefault()?o.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?o.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),n=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),n+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&n<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=n,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var n=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&n<8&&(n+=8),this._ctx.fillStyle=this._colors.ansi[n].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=o.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),o=e.getBgColor(),n=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=o,o=l;var h=i;i=n,n=h}var u=this._resolveBackgroundRgba(n,o,s),d=this._resolveForegroundRgba(i,r,s,a),f=c.rgba.ensureContrastRatio(u,d,this._optionsService.options.minimumContrastRatio);if(f){var p={css:c.channels.toCss(f>>24&255,f>>16&255,f>>8&255),rgba:f};return this._colors.contrastCache.setColor(e.bg,e.fg,p),p}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,d=function(e){function t(t,r,i,o,n,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,o,s,a)||this;return u._onRequestRedraw=n,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return o(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new f(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=this._optionsService.options.cursorStyle;return o&&"block"!==o?this._cursorRenderers[o](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},n([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=d;var f=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,o,n,s,a,c){var l=e.call(this,t,"link",r,!0,i,o,a,c)||this;return n.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),n.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return o(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),d=r(4725),f=r(2585),p=r(1420),_=r(8460),g=1,v=function(e){function t(t,r,i,o,n,s,u,d){var f=e.call(this)||this;f._colors=t,f._screenElement=r,f._bufferService=s,f._charSizeService=u,f._optionsService=d,f._id=g++,f._onRequestRedraw=new _.EventEmitter;var p=f._optionsService.options.allowTransparency;return f._renderLayers=[n.createInstance(a.TextRenderLayer,f._screenElement,0,f._colors,p,f._id),n.createInstance(c.SelectionRenderLayer,f._screenElement,1,f._colors,f._id),n.createInstance(h.LinkRenderLayer,f._screenElement,2,f._colors,f._id,i,o),n.createInstance(l.CursorRenderLayer,f._screenElement,3,f._colors,f._id,f._onRequestRedraw)],f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._devicePixelRatio=window.devicePixelRatio,f._updateDimensions(),f.onOptionsChanged(),f}return o(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,o,n,s){var a=e.call(this,t,"selection",r,!0,i,o,n,s)||this;return a._clearState(),a}return o(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,o=t[1]-this._bufferService.buffer.ydisp,n=Math.max(i,0),s=Math.min(o,this._bufferService.rows-1);if(n>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-n+1;this._fillCells(a,n,c,l)}else{a=i===n?e[0]:0;var h=n===o?t[0]:this._bufferService.cols;this._fillCells(a,n,h-a,1);var u=Math.max(s-n-1,0);if(this._fillCells(0,n+1,this._bufferService.cols,u),n!==s){var d=o===s?t[0]:this._bufferService.cols;this._fillCells(0,s,d,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},n([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),d=r(2585),f=r(4725),p=r(4269),_=function(e){function t(t,r,i,o,n,s,c,l){var h=e.call(this,t,"text",r,o,i,n,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return o(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var o=i+this._bufferService.buffer.ydisp,n=this._bufferService.buffer.lines.get(o),s=this._characterJoinerService.getJoinedCharacters(o),a=0;a0&&a===s[0][0]){l=!0;var d=s.shift();c=new p.JoinedCellData(this._workCell,n.translateToString(!0,d[0],d[1]),d[1]-d[0]),u=d[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},n([s(5,d.IBufferService),s(6,d.IOptionsService),s(7,f.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=_},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),o=r(1906),n=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),n.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var o={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var n=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),d={css:"rgba(0, 0, 0, 0)",rgba:0};function f(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=f;var p=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var o=t.createElement("canvas");o.width=i._config.scaledCharWidth,o.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(o.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var n=i._width*i._height;return i._cacheMap=new c.LRUMap(n),i._cacheMap.prealloc(n),i}return o(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var o=f(t),n=this._cacheMap.get(o);if(null!=n)return this._drawFromCache(e,n,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,o=t.rgba>>>16&255,n=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),d=r(8460),f=r(4774),p=r(9631),_="xterm-dom-renderer-owner-",g="xterm-fg-",v="xterm-bg-",b="xterm-focus",y=1,m=function(e){function t(t,r,i,o,n,s,c,l,h,u){var d=e.call(this)||this;return d._colors=t,d._element=r,d._screenElement=i,d._viewportElement=o,d._linkifier=n,d._linkifier2=s,d._charSizeService=l,d._optionsService=h,d._bufferService=u,d._terminalClass=y++,d._rowElements=[],d._rowContainer=document.createElement("div"),d._rowContainer.classList.add("xterm-rows"),d._rowContainer.style.lineHeight="normal",d._rowContainer.setAttribute("aria-hidden","true"),d._refreshRowElements(d._bufferService.cols,d._bufferService.rows),d._selectionContainer=document.createElement("div"),d._selectionContainer.classList.add("xterm-selection"),d._selectionContainer.setAttribute("aria-hidden","true"),d.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},d._updateDimensions(),d._injectCss(),d._rowFactory=c.createInstance(a.DomRendererRowFactory,document,d._colors),d._element.classList.add(_+d._terminalClass),d._screenElement.appendChild(d._rowContainer),d._screenElement.appendChild(d._selectionContainer),d._linkifier.onShowLinkUnderline((function(e){return d._onLinkHover(e)})),d._linkifier.onHideLinkUnderline((function(e){return d._onLinkLeave(e)})),d._linkifier2.onShowLinkUnderline((function(e){return d._onLinkHover(e)})),d._linkifier2.onHideLinkUnderline((function(e){return d._onLinkLeave(e)})),d}return o(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new d.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(_+this._terminalClass),p.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(b)},t.prototype.onFocus=function(){this._rowContainer.classList.add(b)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,o=t[1]-this._bufferService.buffer.ydisp,n=Math.max(i,0),s=Math.min(o,this._bufferService.rows-1);if(!(n>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(n,e[0],t[0],s-n+1));else{var c=i===n?e[0]:0,l=n===o?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(n,c,l));var h=s-n-1;if(a.appendChild(this._createSelectionElement(n+1,0,this._bufferService.cols,h)),n!==s){var u=o===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var o=document.createElement("div");return o.style.height=i*this.dimensions.actualCellHeight+"px",o.style.top=e*this.dimensions.actualCellHeight+"px",o.style.left=t*this.dimensions.actualCellWidth+"px",o.style.width=this.dimensions.actualCellWidth*(r-t)+"px",o},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=o&&(e=0,r++)}},n([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=m},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var n=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var d=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,o,a,c,h,d){for(var p=this._document.createDocumentFragment(),_=this._characterJoinerService.getJoinedCharacters(r),g=0,v=Math.min(e.length,d)-1;v>=0;v--)if(e.loadCell(v,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&v===a){g=v+1;break}for(v=0;v0&&v===_[0][0]){y=!0;var S=_.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),m=S[1]-1,b=C.getWidth()}var w=this._document.createElement("span");if(b>1&&(w.style.width=h*b+"px"),y&&(w.style.display="inline",a>=v&&a<=m&&(a=v)),i&&v===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),o){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var A=C.getFgColor(),T=C.getFgColorMode(),E=C.getBgColor(),R=C.getBgColorMode(),k=!!C.isInverse();if(k){var x=A;A=E,E=x;var P=T;T=R,R=P}switch(T){case 16777216:case 33554432:C.isBold()&&A<8&&this._optionsService.options.drawBoldTextInBrightColors&&(A+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[A])||w.classList.add("xterm-fg-"+A);break;case 50331648:var L=l.rgba.toColor(A>>16&255,A>>8&255,255&A);this._applyMinimumContrast(w,this._colors.background,L)||this._addStyle(w,"color:#"+f(A.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||k&&w.classList.add("xterm-fg-"+n.INVERTED_DEFAULT_COLOR)}switch(R){case 16777216:case 33554432:w.classList.add("xterm-bg-"+E);break;case 50331648:this._addStyle(w,"background-color:#"+f(E.toString(16),"0",6));break;case 0:default:k&&w.classList.add("xterm-bg-"+n.INVERTED_DEFAULT_COLOR)}p.appendChild(w),v=m}}return p},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([o(2,h.ICharacterJoinerService),o(3,c.IOptionsService)],e)}();function f(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var n=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([o(2,n.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var o=e.call(this)||this;return o.content=0,o.combinedData="",o.fg=t.fg,o.bg=t.bg,o.combinedData=r,o._width=i,o}return o(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var d=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,n,t,o),d=0;d1)for(u=this._getJoinedRanges(i,s,n,t,o),d=0;d{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var n=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,o){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,o)},e.prototype.getRawByteCoords=function(e,t,r,i){var o=this.getCoords(e,t,r,i);return s.getRawByteCoords(o)},i([o(0,n.IRenderService),o(1,n.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),d=r(2585),f=r(4725),p=function(e){function t(t,r,i,o,n,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=n,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(o.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var d=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});d.observe(i),l.register({dispose:function(){return d.disconnect()}})}return l}return o(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},n([s(3,d.IOptionsService),s(4,f.ICharSizeService),s(5,d.IBufferService)],t)}(l.Disposable);t.RenderService=p},9312:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),d=r(2585),f=r(9806),p=r(9504),_=r(844),g=r(4841),v=String.fromCharCode(160),b=new RegExp(v,"g"),y=function(e){function t(t,r,i,o,n,s,a,u){var d=e.call(this)||this;return d._element=t,d._screenElement=r,d._linkifier=i,d._bufferService=o,d._coreService=n,d._mouseService=s,d._optionsService=a,d._renderService=u,d._dragScrollAmount=0,d._enabled=!0,d._workCell=new l.CellData,d._mouseDownTimeStamp=0,d._oldHasSelection=!1,d._oldSelectionStart=void 0,d._oldSelectionEnd=void 0,d._onLinuxMouseSelection=d.register(new h.EventEmitter),d._onRedrawRequest=d.register(new h.EventEmitter),d._onSelectionChange=d.register(new h.EventEmitter),d._onRequestScrollLines=d.register(new h.EventEmitter),d._mouseMoveListener=function(e){return d._onMouseMove(e)},d._mouseUpListener=function(e){return d._onMouseUp(e)},d._coreService.onUserInput((function(){d.hasSelection&&d.clearSelection()})),d._trimListener=d._bufferService.buffer.lines.onTrim((function(e){return d._onTrim(e)})),d.register(d._bufferService.buffers.onBufferActivate((function(e){return d._onBufferActivate(e)}))),d.enable(),d._model=new c.SelectionModel(d._bufferService),d._activeSelectionMode=0,d}return o(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var o=e[1];o<=t[1];o++){var n=r.translateBufferLineToString(o,!0,e[0],t[0]);i.push(n)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),o=e[1]+1;o<=t[1]-1;o++){var c=r.lines.get(o);n=r.translateBufferLineToString(o,!0),c&&c.isWrapped?i[i.length-1]+=n:i.push(n)}e[1]!==t[1]&&(c=r.lines.get(t[1]),n=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=n:i.push(n))}return i.map((function(e){return e.replace(b," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,o=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(o)return this._model.selectionStart=[o.start.x-1,o.start.y-1],this._model.selectionStartLength=g.getRangeLength(o,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var n=this._getMouseBufferCoords(e);return!!n&&(this._selectWordAt(n,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=f.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=p.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var o=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:o>1&&t[0]!==i&&(r+=o-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var o=this._bufferService.buffer,n=o.lines.get(e[1]);if(n){var s=o.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(n,e),c=a,l=e[0]-a,h=0,u=0,d=0,f=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(f+=g-1,c+=g-1);p>0&&a>0&&!this._isCharWordSeparator(n.loadCell(p-1,this._workCell));){n.loadCell(p-1,this._workCell);var v=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,p--):v>1&&(d+=v-1,a-=v-1),a--,p--}for(;_1&&(f+=b-1,c+=b-1),c++,_++}}c++;var y=a+l-h+d,m=Math.min(this._bufferService.cols,c-a+h+u-d-f);if(t||""!==s.slice(a,c).trim()){if(r&&0===y&&32!==n.getCodePoint(0)){var C=o.lines.get(e[1]-1);if(C&&n.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;y-=w,m+=w}}}if(i&&y+m===this._bufferService.cols&&32!==n.getCodePoint(this._bufferService.cols-1)){var A=o.lines.get(e[1]+1);if(A&&A.isWrapped&&32!==A.getCodePoint(0)){var T=this._getWordAt([0,e[1]+1],!1,!1,!0);T&&(m+=T.length)}}return{start:y,length:m}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},n([s(3,d.IBufferService),s(4,d.ICoreService),s(5,u.IMouseService),s(6,d.IOptionsService),s(7,u.IRenderService)],t)}(_.Disposable);t.SelectionService=y},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var n=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),o=0;o{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),o=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;o--)this._array[this._getCyclicIndex(o+r.length)]=this._array[this._getCyclicIndex(o)];for(o=0;othis._maxLength){var n=this._length+r.length-this._maxLength;this._startIndex+=n,this._length=this._maxLength,this.onTrimEmitter.fire(n)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var o=e+t+r-this._length;if(o>0)for(this._length+=o;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var o in t)i[o]=r<=1?t[o]:t[o]?e(t[o],r-1):t[o];return i}},8969:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var n=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),d=r(8460),f=r(1753),p=r(3730),_=r(1480),g=r(7994),v=r(9282),b=r(5435),y=r(5981),m=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new d.EventEmitter,r._onData=new d.EventEmitter,r._onLineFeed=new d.EventEmitter,r._onResize=new d.EventEmitter,r._onScroll=new d.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(f.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(p.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(_.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(g.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new b.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(d.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(d.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(d.forwardEvent(r._coreService.onData,r._onData)),r.register(d.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new y.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return o(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new d.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!m&&(this._logService.warn("writeSync is unreliable and will be removed soon."),m=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(v.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return v.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(n=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),A=function(e){function t(t,r,i,o,n,l,h,p,g){void 0===g&&(g=new c.EscapeSequenceParser);var v=e.call(this)||this;v._bufferService=t,v._charsetService=r,v._coreService=i,v._dirtyRowService=o,v._logService=n,v._optionsService=l,v._coreMouseService=h,v._unicodeService=p,v._parser=g,v._parseBuffer=new Uint32Array(4096),v._stringDecoder=new u.StringToUtf32,v._utf8Decoder=new u.Utf8ToUtf32,v._workCell=new _.CellData,v._windowTitle="",v._iconName="",v._windowTitleStack=[],v._iconNameStack=[],v._curAttrData=d.DEFAULT_ATTR_DATA.clone(),v._eraseAttrDataInternal=d.DEFAULT_ATTR_DATA.clone(),v._onRequestBell=new f.EventEmitter,v._onRequestRefreshRows=new f.EventEmitter,v._onRequestReset=new f.EventEmitter,v._onRequestSyncScrollBar=new f.EventEmitter,v._onRequestWindowsOptionsReport=new f.EventEmitter,v._onA11yChar=new f.EventEmitter,v._onA11yTab=new f.EventEmitter,v._onCursorMove=new f.EventEmitter,v._onLineFeed=new f.EventEmitter,v._onScroll=new f.EventEmitter,v._onTitleChange=new f.EventEmitter,v._onAnsiColorChange=new f.EventEmitter,v._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},v.register(v._parser),v._parser.setCsiHandlerFallback((function(e,t){v._logService.debug("Unknown CSI code: ",{identifier:v._parser.identToString(e),params:t.toArray()})})),v._parser.setEscHandlerFallback((function(e){v._logService.debug("Unknown ESC code: ",{identifier:v._parser.identToString(e)})})),v._parser.setExecuteHandlerFallback((function(e){v._logService.debug("Unknown EXECUTE code: ",{code:e})})),v._parser.setOscHandlerFallback((function(e,t,r){v._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),v._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),v._logService.debug("Unknown DCS code: ",{identifier:v._parser.identToString(e),action:t,payload:r})})),v._parser.setPrintHandler((function(e,t,r){return v.print(e,t,r)})),v._parser.registerCsiHandler({final:"@"},(function(e){return v.insertChars(e)})),v._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return v.scrollLeft(e)})),v._parser.registerCsiHandler({final:"A"},(function(e){return v.cursorUp(e)})),v._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return v.scrollRight(e)})),v._parser.registerCsiHandler({final:"B"},(function(e){return v.cursorDown(e)})),v._parser.registerCsiHandler({final:"C"},(function(e){return v.cursorForward(e)})),v._parser.registerCsiHandler({final:"D"},(function(e){return v.cursorBackward(e)})),v._parser.registerCsiHandler({final:"E"},(function(e){return v.cursorNextLine(e)})),v._parser.registerCsiHandler({final:"F"},(function(e){return v.cursorPrecedingLine(e)})),v._parser.registerCsiHandler({final:"G"},(function(e){return v.cursorCharAbsolute(e)})),v._parser.registerCsiHandler({final:"H"},(function(e){return v.cursorPosition(e)})),v._parser.registerCsiHandler({final:"I"},(function(e){return v.cursorForwardTab(e)})),v._parser.registerCsiHandler({final:"J"},(function(e){return v.eraseInDisplay(e)})),v._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return v.eraseInDisplay(e)})),v._parser.registerCsiHandler({final:"K"},(function(e){return v.eraseInLine(e)})),v._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return v.eraseInLine(e)})),v._parser.registerCsiHandler({final:"L"},(function(e){return v.insertLines(e)})),v._parser.registerCsiHandler({final:"M"},(function(e){return v.deleteLines(e)})),v._parser.registerCsiHandler({final:"P"},(function(e){return v.deleteChars(e)})),v._parser.registerCsiHandler({final:"S"},(function(e){return v.scrollUp(e)})),v._parser.registerCsiHandler({final:"T"},(function(e){return v.scrollDown(e)})),v._parser.registerCsiHandler({final:"X"},(function(e){return v.eraseChars(e)})),v._parser.registerCsiHandler({final:"Z"},(function(e){return v.cursorBackwardTab(e)})),v._parser.registerCsiHandler({final:"`"},(function(e){return v.charPosAbsolute(e)})),v._parser.registerCsiHandler({final:"a"},(function(e){return v.hPositionRelative(e)})),v._parser.registerCsiHandler({final:"b"},(function(e){return v.repeatPrecedingCharacter(e)})),v._parser.registerCsiHandler({final:"c"},(function(e){return v.sendDeviceAttributesPrimary(e)})),v._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return v.sendDeviceAttributesSecondary(e)})),v._parser.registerCsiHandler({final:"d"},(function(e){return v.linePosAbsolute(e)})),v._parser.registerCsiHandler({final:"e"},(function(e){return v.vPositionRelative(e)})),v._parser.registerCsiHandler({final:"f"},(function(e){return v.hVPosition(e)})),v._parser.registerCsiHandler({final:"g"},(function(e){return v.tabClear(e)})),v._parser.registerCsiHandler({final:"h"},(function(e){return v.setMode(e)})),v._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return v.setModePrivate(e)})),v._parser.registerCsiHandler({final:"l"},(function(e){return v.resetMode(e)})),v._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return v.resetModePrivate(e)})),v._parser.registerCsiHandler({final:"m"},(function(e){return v.charAttributes(e)})),v._parser.registerCsiHandler({final:"n"},(function(e){return v.deviceStatus(e)})),v._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return v.deviceStatusPrivate(e)})),v._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return v.softReset(e)})),v._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return v.setCursorStyle(e)})),v._parser.registerCsiHandler({final:"r"},(function(e){return v.setScrollRegion(e)})),v._parser.registerCsiHandler({final:"s"},(function(e){return v.saveCursor(e)})),v._parser.registerCsiHandler({final:"t"},(function(e){return v.windowOptions(e)})),v._parser.registerCsiHandler({final:"u"},(function(e){return v.restoreCursor(e)})),v._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return v.insertColumns(e)})),v._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return v.deleteColumns(e)})),v._parser.setExecuteHandler(s.C0.BEL,(function(){return v.bell()})),v._parser.setExecuteHandler(s.C0.LF,(function(){return v.lineFeed()})),v._parser.setExecuteHandler(s.C0.VT,(function(){return v.lineFeed()})),v._parser.setExecuteHandler(s.C0.FF,(function(){return v.lineFeed()})),v._parser.setExecuteHandler(s.C0.CR,(function(){return v.carriageReturn()})),v._parser.setExecuteHandler(s.C0.BS,(function(){return v.backspace()})),v._parser.setExecuteHandler(s.C0.HT,(function(){return v.tab()})),v._parser.setExecuteHandler(s.C0.SO,(function(){return v.shiftOut()})),v._parser.setExecuteHandler(s.C0.SI,(function(){return v.shiftIn()})),v._parser.setExecuteHandler(s.C1.IND,(function(){return v.index()})),v._parser.setExecuteHandler(s.C1.NEL,(function(){return v.nextLine()})),v._parser.setExecuteHandler(s.C1.HTS,(function(){return v.tabSet()})),v._parser.registerOscHandler(0,new b.OscHandler((function(e){return v.setTitle(e),v.setIconName(e),!0}))),v._parser.registerOscHandler(1,new b.OscHandler((function(e){return v.setIconName(e)}))),v._parser.registerOscHandler(2,new b.OscHandler((function(e){return v.setTitle(e)}))),v._parser.registerOscHandler(4,new b.OscHandler((function(e){return v.setAnsiColor(e)}))),v._parser.registerEscHandler({final:"7"},(function(){return v.saveCursor()})),v._parser.registerEscHandler({final:"8"},(function(){return v.restoreCursor()})),v._parser.registerEscHandler({final:"D"},(function(){return v.index()})),v._parser.registerEscHandler({final:"E"},(function(){return v.nextLine()})),v._parser.registerEscHandler({final:"H"},(function(){return v.tabSet()})),v._parser.registerEscHandler({final:"M"},(function(){return v.reverseIndex()})),v._parser.registerEscHandler({final:"="},(function(){return v.keypadApplicationMode()})),v._parser.registerEscHandler({final:">"},(function(){return v.keypadNumericMode()})),v._parser.registerEscHandler({final:"c"},(function(){return v.fullReset()})),v._parser.registerEscHandler({final:"n"},(function(){return v.setgLevel(2)})),v._parser.registerEscHandler({final:"o"},(function(){return v.setgLevel(3)})),v._parser.registerEscHandler({final:"|"},(function(){return v.setgLevel(3)})),v._parser.registerEscHandler({final:"}"},(function(){return v.setgLevel(2)})),v._parser.registerEscHandler({final:"~"},(function(){return v.setgLevel(1)})),v._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return v.selectDefaultCharset()})),v._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return v.selectDefaultCharset()}));var y=function(e){m._parser.registerEscHandler({intermediates:"(",final:e},(function(){return v.selectCharset("("+e)})),m._parser.registerEscHandler({intermediates:")",final:e},(function(){return v.selectCharset(")"+e)})),m._parser.registerEscHandler({intermediates:"*",final:e},(function(){return v.selectCharset("*"+e)})),m._parser.registerEscHandler({intermediates:"+",final:e},(function(){return v.selectCharset("+"+e)})),m._parser.registerEscHandler({intermediates:"-",final:e},(function(){return v.selectCharset("-"+e)})),m._parser.registerEscHandler({intermediates:".",final:e},(function(){return v.selectCharset("."+e)})),m._parser.registerEscHandler({intermediates:"/",final:e},(function(){return v.selectCharset("/"+e)}))},m=this;for(var C in a.CHARSETS)y(C);return v._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return v.screenAlignmentPattern()})),v._parser.setErrorHandler((function(e){return v._logService.error("Parsing error: ",e),e})),v._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(v._bufferService,v._coreService,v._logService,v._optionsService)),v}return o(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=v.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,o=i.x,n=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;o=this._parseStack.cursorStartX,n=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===f.getWidth(n.x-1)&&f.setCellFromCodePoint(n.x-1,0,1,d.fg,d.bg,d.extended);for(var _=t;_=c)if(l){for(;n.x=this._bufferService.rows&&(n.y=this._bufferService.rows-1),n.lines.get(n.ybase+n.y).isWrapped=!0),f=n.lines.get(n.ybase+n.y)}else if(n.x=c-1,2===o)continue;if(h&&(f.insertCells(n.x,o,n.getNullCell(d),d),2===f.getWidth(c-1)&&f.setCellFromCodePoint(c-1,p.NULL_CELL_CODE,p.NULL_CELL_WIDTH,d.fg,d.bg,d.extended)),f.setCellFromCodePoint(n.x++,i,o,d.fg,d.bg,d.extended),o>0)for(;--o;)f.setCellFromCodePoint(n.x++,0,0,d.fg,d.bg,d.extended)}else f.getWidth(n.x-1)?f.addCodepointToCell(n.x-1,i):f.addCodepointToCell(n.x-2,i)}r-t>0&&(f.loadCell(n.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),n.x0&&0===f.getWidth(n.x)&&!f.hasContent(n.x)&&f.setCellFromCodePoint(n.x,0,1,d.fg,d.bg,d.extended),this._dirtyRowService.markDirty(n.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new y.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new b.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var o=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);o.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(o.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&n+o>=5)break;i[1]&&(o=1)}while(++n+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=d.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=d.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,o=0;o=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=d.DEFAULT_ATTR_DATA.fg,i.bg=d.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(o)?e.getSubParams(o)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&d.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&d.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?o+=this._extractColor(e,o,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&d.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&d.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=d.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(n.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(n.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(m[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=d.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=d.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new _.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,o=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(o),t.isIpad="iPad"===o,t.isIphone="iPhone"===o,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(o),t.isLinux=o.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var o=r;o{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),o=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);o&&r&&(o.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),o=r(8437),n=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=o.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=n.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=n.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new o.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=o.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(o.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new o.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(n=0;nthis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(o.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(o.DEFAULT_ATTR_DATA),n=r;n-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+n,newLines:_}),n+=_.length),l.push.apply(l,_);var b=f.length-1,y=f[b];0===y&&(y=f[--b]);for(var m=l.length-p-1,C=d;m>=0;){var S=Math.min(C,y);if(l[b].copyCellsFrom(l[m],C-S,y-S,S,!0),0==(y-=S)&&(y=f[--b]),0==(C-=S)){m--;var w=Math.max(m,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(g=0;g0;)0===this.ybase?this.y0){var T=[],E=[];for(g=0;g=0;g--)if(P&&P.start>k+L){for(var M=P.newLines.length-1;M>=0;M--)this.lines.set(g--,P.newLines[M]);g++,T.push({index:k+1,amount:P.newLines.length}),L+=P.newLines.length,P=i[++x]}else this.lines.set(g,E[k--]);var D=0;for(g=T.length-1;g>=0;g--)T[g].index+=D,this.lines.onInsertEmitter.fire(T[g]),D+=T[g].amount;var O=Math.max(0,R+n-this.lines.maxLength);O>0&&this.lines.onTrimEmitter.fire(O)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var o=r?i.getTrimmedLength():i.length,n=0;n0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,o){return new d(this,e,t,r,i,o)},e}();t.Buffer=u;var d=function(){function e(e,t,r,i,o,n){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===o&&(o=0),void 0===n&&(n=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=o,this._endOverscan=n,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=d},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),o=r(643),n=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||n.CellData.fromCharData([0,o.NULL_CELL_CHAR,o.NULL_CELL_WIDTH,o.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[o.CHAR_DATA_ATTR_INDEX],t[o.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[o.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[o.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[o.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,o,n){268435456&o&&(this._extendedAttrs[e]=n),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=o},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,o));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[n]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,o){var n=e._data;if(o)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=n[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var n="";t>22||1}return n},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),o=2===e[t+1].getWidth(0);return i&&o?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,o,n){for(var s=[],a=0;a=a&&o0&&(m>u||0===h[m].getTrimmedLength());m--)y++;y>0&&(s.push(a+h.length-y),s.push(y)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,o=t[i],n=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;o.push(u),c+=u}return o},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var n=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return o(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new n.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new n.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var n=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return o(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var n=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new n.EventEmitter,i}return o(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),o={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,n){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!n||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=o[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",o=t;o65535?(n-=65536,i+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):i+=String.fromCharCode(n)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,o=0;this._interim&&(56320<=(a=e.charCodeAt(o++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var n=o;n=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(n))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,o,n,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var d=0,f=void 0;(f=63&this.interim[++d])&&d<4;)u<<=6,u|=f;for(var p=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,_=p-d;l<_;){if(l>=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[d++]=f,u<<=6,u|=63&f}h||(2===p?u<128?l--:t[a++]=u:3===p?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var g=r-4,v=l;v=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if((c=(31&i)<<6|63&o)<128){v--;continue}t[a++]=c}else if(224==(240&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if((c=(15&i)<<12|(63&o)<<6|63&n)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(v>=r)return this.interim[0]=i,a;if(128!=(192&(o=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,a;if(128!=(192&(n=e[v++]))){v--;continue}if(v>=r)return this.interim[0]=i,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=e[v++]))){v--;continue}if((c=(7&i)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,o=r(8273),n=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),o.fill(i,1),i[0]=0,o.fill(i,0,1,32),o.fill(i,0,127,160),o.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,o.fill(i,2,11904,42192),i[12351]=1,o.fill(i,2,44032,55204),o.fill(i,2,63744,64256),o.fill(i,2,65040,65050),o.fill(i,2,65072,65136),o.fill(i,2,65280,65377),o.fill(i,2,65504,65511);for(var e=0;et[o][1])return!1;for(;o>=i;)if(e>t[r=i+o>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var o=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var n=this._writeBuffer[this._bufferOffset],s=this._action(n,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-o>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(o,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=n.length,Date.now()-o>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),o=r(8742),n=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var o=this._active.length-1;o>=0;o--)this._active[o].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,o=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,o=this._stack.fallThrough,this._stack.paused=!1),!o&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new o.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>n.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var n=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var o=0;o1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;io||o>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=o}}if(1!==e.final.length)throw new Error("final must be a single byte");var n=e.final.charCodeAt(0);if(t[0]>n||n>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|n},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,o){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=o},r.prototype.parse=function(e,t,r){var i,o=0,n=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(o=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==o&&26!==o,r))return i;27===o&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(o=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==o&&26!==o,r))return i;27===o&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(o=e[h])<32||o>126&&o=t||(o=e[h])<32||o>126&&o=t||(o=e[h])<32||o>126&&o=t||(o=e[h])<32||o>126&&o=0&&!0!==(i=a[d](this._params));d--)if(i instanceof Promise)return this._preserveStack(3,a,d,n,l),i;d<0&&this._csiHandlerFb(this._collect<<8|o,this._params),this.precedingCodepoint=0;break;case 8:do{switch(o){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(o-48)}}while(++l47&&o<60);l--;break;case 9:this._collect<<=8,this._collect|=o;break;case 10:for(var f=this._escHandlers[this._collect<<8|o],p=f?f.length-1:-1;p>=0&&!0!==(i=f[p]());p--)if(i instanceof Promise)return this._preserveStack(4,f,p,n,l),i;p<0&&this._escHandlerFb(this._collect<<8|o),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|o,this._params);break;case 13:for(var _=l+1;;++_)if(_>=t||24===(o=e[_])||26===o||27===o||o>127&&o=t||(o=e[g])<32||o>127&&o{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),o=r(482),n=[],s=function(){function e(){this._state=0,this._active=n,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=n},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=n,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||n,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",o.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,o=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,o=this._stack.fallThrough,this._stack.paused=!1),!o&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=n,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=o.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,o=i[t-1];i[t-1]=~o?Math.min(10*o+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return o(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var o=i.ybase+i.scrollTop,n=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;n===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(n+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=n-o+1;i.lines.shiftElements(o+1,a-1,-1),i.lines.set(n,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var o=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),o!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},n([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var n=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([o(0,n.IBufferService),o(1,n.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,o=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),n=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),d=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),f=function(e){function t(t,r,i,o){var n=e.call(this)||this;return n._bufferService=r,n._logService=i,n._optionsService=o,n.isCursorInitialized=!1,n.isCursorHidden=!1,n._onData=n.register(new c.EventEmitter),n._onUserInput=n.register(new c.EventEmitter),n._onBinary=n.register(new c.EventEmitter),n._scrollToBottom=t,n.register({dispose:function(){return n._scrollToBottom=void 0}}),n.modes=l.clone(u),n.decPrivateModes=l.clone(d),n}return o(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(d)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},n([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=f},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var n=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([o(0,n.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?o[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var o,n=arguments.length,s=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(o=e[a])&&(s=(n<3?o(s):n>3?o(t,r,s):o(t,r))||s);return n>3&&s&&Object.defineProperty(t,r,s),s},o=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},n=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),o=r(6114),n=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:o.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=n.clone(t.DEFAULT_OPTIONS);for(var r=0,o=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,o){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,o)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,o=r(8343);t.IBufferService=o.createDecorator("BufferService"),t.ICoreMouseService=o.createDecorator("CoreMouseService"),t.ICoreService=o.createDecorator("CoreService"),t.ICharsetService=o.createDecorator("CharsetService"),t.IDirtyRowService=o.createDecorator("DirtyRowService"),t.IInstantiationService=o.createDecorator("InstantiationService"),t.ILogService=o.createDecorator("LogService"),t.IOptionsService=o.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=o.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),o=r(225),n=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new o.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(o);var n=e.charCodeAt(i);56320<=n&&n<=57343?o=1024*(o-55296)+n-56320+65536:t+=this.wcwidth(n)}t+=this.wcwidth(o)}return t},e}();t.UnicodeService=n}},t={};return function r(i){if(t[i])return t[i].exports;var o=t[i]={exports:{}};return e[i].call(o.exports,o,o.exports,r),o.exports}(4389)})()},114:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Hterm=void 0;var i=r(276),o=function(){function e(e){this.elem=e,i.hterm.defaultStorage=new i.lib.Storage.Memory,this.term=new i.hterm.Terminal,this.term.getPrefs().set("send-encoding","raw"),this.term.decorate(this.elem),this.io=this.term.io.push(),this.term.installKeyboard()}return e.prototype.info=function(){return{columns:this.columns,rows:this.rows}},e.prototype.output=function(e){null!=this.term.io&&this.term.io.writeUTF8(e)},e.prototype.showMessage=function(e,t){this.message=e,t>0?this.term.io.showOverlay(e,t):this.term.io.showOverlay(e,null)},e.prototype.removeMessage=function(){this.term.io.showOverlay(this.message,0)},e.prototype.setWindowTitle=function(e){this.term.setWindowTitle(e)},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"!=r&&t.term.getPrefs().set(r,e[r])}))},e.prototype.onInput=function(e){this.io.onVTKeystroke=function(t){e(t)},this.io.sendString=function(t){e(t)}},e.prototype.onResize=function(e){var t=this;this.io.onTerminalResize=function(r,i){t.columns=r,t.rows=i,e(r,i)}},e.prototype.deactivate=function(){this.io.onVTKeystroke=function(){},this.io.sendString=function(){},this.io.onTerminalResize=function(){},this.term.uninstallKeyboard()},e.prototype.reset=function(){this.removeMessage(),this.term.installKeyboard()},e.prototype.close=function(){this.term.uninstallKeyboard()},e}();t.Hterm=o},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0,t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var r=function(){function e(e,t,r,i){this.term=e,this.connectionFactory=t,this.args=r,this.authToken=i,this.reconnect=-1,this.bufSize=1024}return e.prototype.open=function(){var e,r,i=this,o=this.connectionFactory.create(),n=function(){o.onOpen((function(){var r=i.term.info();o.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var n=function(e,r){o.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(n),n(r.columns,r.rows),i.term.onInput((function(e){for(var r=i.bufSize-1,n=0;n0&&(r=setTimeout((function(){o=i.connectionFactory.create(),i.term.reset(),n()}),1e3*i.reconnect))})),o.open()};return n(),function(){clearTimeout(r),o.close()}},e}();t.WebTTY=r},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),o=r(881),n=r(962),s=r(445),a=r(276),c=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new o.FitAddon,this.term.loadAddon(new n.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()})),this.decoder=new a.lib.UTF8Decoder}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(this.decoder.decode(e))},e.prototype.showMessage=function(e,t){var r=this;this.message.textContent=e,this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),t>0&&(this.messageTimer=setTimeout((function(){r.elem.removeChild(r.message)}),t))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=c}},t={};function r(i){var o=t[i];if(void 0!==o)return o.exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(()=>{"use strict";var e=r(114),t=r(949),i=r(818),o=r(69),n=document.getElementById("terminal");if(null!==n){var s;s="hterm"==gotty_term?new e.Hterm(n):new t.Xterm(n);var a=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",c=window.location.search,l=new o.ConnectionFactory(a,i.protocols),h=new i.WebTTY(s,l,c,gotty_auth_token).open();window.addEventListener("unload",(function(){h(),s.close()}))}})()})(); +(()=>{var e={881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue("padding-top"))+parseInt(n.getPropertyValue("padding-bottom"))),s=i-(parseInt(n.getPropertyValue("padding-right"))+parseInt(n.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),n=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function o(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=o),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,n,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(n,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(n.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var n=function(){function e(){}return e.computeLink=function(t,r,i,n){for(var o,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(o=s.exec(c));){var f=o[1];if(!f){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(f,h+1),s.lastIndex=h+f.length,h<0)break;for(var _=h+f.length,d=l+1;_>i.cols;)_-=i.cols,d++;var p={start:{x:h+1,y:l+1},end:{x:_,y:d}};u.push({range:p,text:f,activate:n})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,n,o="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,n=a.isWrapped}while(n);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;o+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[o,s]},e}();t.LinkComputer=n}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),n=r(310),o=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var o=this._gl,s=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,u),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,2,o.FLOAT,!1,h,0),o.vertexAttribDivisor(2,1),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,o.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(3,1),o.enableVertexAttribArray(4),o.vertexAttribPointer(4,2,o.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(4,1),o.enableVertexAttribArray(5),o.vertexAttribPointer(5,2,o.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(5,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(o.createTexture()),o.bindTexture(o.TEXTURE_2D,this._atlasTexture),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,1,1,0,o.RGBA,o.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.enable(o.BLEND),o.blendFunc(o.SRC_ALPHA,o.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,n,o){this._updateCell(this._vertices.attributes,e,t,r,i,n,o)},e.prototype._updateCell=function(e,t,r,i,n,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,n,s):this._atlas.getRasterizedGlyph(i,n,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):o.fill(e,0,u,u+l-1-2)):o.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,n=e.selection.endCol-i,o=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var v=c.AttributeData.toColorRGB(d.getBgColor());_|=v[0]<<16|v[1]<<8|v[2]<<0;case 0:default:var g=this._colors.background.rgba;_|=g>>8&16711680|g>>8&65280|g>>8&255}_|=50331648}if(f&n.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var y=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,_,y)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,_)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),n=r(455),o=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var o=this._gl;this._program=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,h),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,o.FLOAT,!1,s,0),o.vertexAttribDivisor(0,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,4,o.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,o=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,o*this._dimensions.scaledCellHeight,this._selectionFloat),n.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else n.fill(this._vertices.selection,0,16)}else n.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,n=0;n>24&255)/255,f=(c>>16&255)/255,_=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-o)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,f,_,1)},e.prototype._addRectangle=function(e,t,r,i,n,o,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,n,o,s){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var n=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=n},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),n=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=n},666:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var o=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),f=r(855),_=r(345),d=r(782),p=function(e){function t(t,r,i){var n=e.call(this)||this;n._terminal=t,n._colors=r,n._model=new h.RenderModel,n._workCell=new d.CellData,n._onRequestRedraw=new _.EventEmitter,n._core=n._terminal._core,n._renderLayers=[new s.LinkRenderLayer(n._core.screenElement,2,n._colors,n._core),new a.CursorRenderLayer(n._core.screenElement,3,n._colors,n._onRequestRedraw)],n.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},n._devicePixelRatio=window.devicePixelRatio,n._updateDimensions(),n._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(n._gl=n._canvas.getContext("webgl2",c),!n._gl)throw new Error("WebGL2 not supported "+n._gl);return n._core.screenElement.appendChild(n._canvas),n._rectangleRenderer=new l.RectangleRenderer(n._terminal,n._colors,n._gl,n.dimensions),n._glyphRenderer=new o.GlyphRenderer(n._terminal,n._colors,n._gl,n.dimensions),n.onCharSizeChanged(),n._isAttached=document.body.contains(n._core.screenElement),n}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(n){return n.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var n=i+r.buffer.ydisp,o=r.buffer.lines.get(n);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var n=e[1]-i.buffer.active.viewportY,o=t[1]-i.buffer.active.viewportY,s=Math.max(n,0),a=Math.min(o,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=n,this._model.selection.viewportEndRow=o,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=p},381:(e,t)=>{function r(e,t,r){var n=i(e.createShader(t));if(e.shaderSource(n,r),e.compileShader(n),e.getShaderParameter(n,e.COMPILE_STATUS))return n;console.error(e.getShaderInfoLog(n)),e.deleteShader(n)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,n){var o=i(e.createProgram());if(e.attachShader(o,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(o,i(r(e,e.FRAGMENT_SHADER,n))),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS))return o;console.error(e.getProgramInfoLog(o)),e.deleteProgram(o)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),n=r(167),o=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),o.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,n){var o={foreground:n.foreground,background:n.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:n.ansi.slice(),contrastCache:n.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),n=r(855),o=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},f={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},_=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=o.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=o.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,n.DEFAULT_COLOR,n.DEFAULT_COLOR);this._cacheMap[r]=((e={})[n.DEFAULT_COLOR]=((t={})[n.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,n=this._cacheMapCombined[e];n||(n={},this._cacheMapCombined[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,n=this._cacheMap[e];n||(n={},this._cacheMap[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+d(i[0])+d(i[1])+d(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,n,o,c,l){var h=this._getMinimumContrastCss(e,t,r,i,n,o,c,l);if(h)return h;switch(n){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&o<8&&(o+=8),this._getColorFromAnsiIndex(o).css;case 50331648:var u=s.AttributeData.toColorRGB(o);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var f=this._config.colors.background.css;return 9===f.length?f.substr(0,7):f}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,n,o,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(n,o,s,c),f=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(f){var _=a.channels.toCss(f>>24&255,f>>16&255,f>>8&255);return this._config.colors.contrastCache.setCss(e,i,_),_}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var n="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return f;var o=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),_=this._workAttributeData.getFgColorMode(),d=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var v=u;u=d,d=v;var g=_;_=p,p=g}var y=this._getBackgroundColor(p,d,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var m=o?this._config.fontWeightBold:this._config.fontWeight,b=h?"italic":"";this._tmpCtx.font=b+" "+m+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,p,d,r,_,u,s,o),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(n,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;n--){for(i=0;i=0;i--){for(n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),n=r(381),o=function(){function e(e,t,r,i,n){this._container=e,this._alpha=i,this._colors=n,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=n.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=o},461:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var o=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,n){var o=e.call(this,t,"cursor",r,!0,i)||this;return o._onRequestRefreshRowsEvent=n,o._cell=new s.CellData,o._state={x:0,y:0,isFocused:!1,style:"",width:0},o._cursorRenderers={bar:o._renderBarCursor.bind(o),block:o._renderBlockCursor.bind(o),underline:o._renderUnderlineCursor.bind(o)},o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,n=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(n,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=e.getOption("cursorStyle");return o&&"block"!==o?this._cursorRenderers[o](e,n,i,this._cell):this._renderBlurCursor(e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===n&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(o.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var o=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,n){var o=e.call(this,t,"link",r,!0,i)||this;return n.linkifier.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),n.linkifier2.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier2.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=" ":a.textContent=o,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=""}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=n+"px",t.style.top=o+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData("text/plain"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add("xterm-cursor-pointer")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),m=r(1296),b=r(7399),C=r(8460),S=r(8437),w=r(5680),E=r(3230),A=r(4725),R=r(428),L=r(8934),x=r(6465),k=r(5114),T=r(8969),D=r(4774),O=r(4269),P="undefined"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(x.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.removeEventListener("mousemove",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener("mousemove",l),n.mousemove=l):(r.removeEventListener("mousemove",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener("wheel",s,{passive:!1}),n.wheel=s):(r.removeEventListener("wheel",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.addEventListener("mousemove",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,"wheel",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),o="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,n,o){for(var s=e,a=t,c="";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&"block"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,"link",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,"selection",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,"text",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:"rgba(0, 0, 0, 0)",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var n=t.createElement("canvas");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p="xterm-dom-renderer-owner-",v="xterm-fg-",g="xterm-bg-",y="xterm-focus",m=1,b=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=m++,f._rowElements=[],f._rowContainer=document.createElement("div"),f._rowContainer.classList.add("xterm-rows"),f._rowContainer.style.lineHeight="normal",f._rowContainer.setAttribute("aria-hidden","true"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement("div"),f._selectionContainer.classList.add("xterm-selection"),f._selectionContainer.setAttribute("aria-hidden","true"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement("div");return n.style.height=i*this.dimensions.actualCellHeight+"px",n.style.top=e*this.dimensions.actualCellHeight+"px",n.style.left=t*this.dimensions.actualCellWidth+"px",n.style.width=this.dimensions.actualCellWidth*(r-t)+"px",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=b},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){m=!0;var S=p.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),b=S[1]-1,y=C.getWidth()}var w=this._document.createElement("span");if(y>1&&(w.style.width=h*y+"px"),m&&(w.style.display="inline",a>=g&&a<=b&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var E=C.getFgColor(),A=C.getFgColorMode(),R=C.getBgColor(),L=C.getBgColorMode(),x=!!C.isInverse();if(x){var k=E;E=R,R=k;var T=A;A=L,L=T}switch(A){case 16777216:case 33554432:C.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add("xterm-fg-"+E);break;case 50331648:var D=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,D)||this._addStyle(w,"color:#"+_(E.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||x&&w.classList.add("xterm-fg-"+o.INVERTED_DEFAULT_COLOR)}switch(L){case 16777216:case 33554432:w.classList.add("xterm-bg-"+R);break;case 50331648:this._addStyle(w,"background-color:#"+_(R.toString(16),"0",6));break;case 0:default:x&&w.classList.add("xterm-bg-"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=b}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData="",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,"g"),m=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var m=a+l-h+f,b=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||""!==s.slice(a,c).trim()){if(r&&0===m&&32!==o.getCodePoint(0)){var C=n.lines.get(e[1]-1);if(C&&o.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;m-=w,b+=w}}}if(i&&m+b===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(b+=A.length)}}return{start:m,length:b}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=m},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),m=r(5981),b=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new m.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!b&&(this._logService.warn("writeSync is unreliable and will be removed soon."),b=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle="",g._iconName="",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug("Unknown CSI code: ",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug("Unknown ESC code: ",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug("Unknown EXECUTE code: ",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),g._logService.debug("Unknown DCS code: ",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:"@"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:"A"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:"B"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:"C"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:"D"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:"E"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:"F"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:"G"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:"H"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:"I"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:"L"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:"M"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:"P"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:"S"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:"T"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:"X"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:"Z"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:"`"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:"a"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:"b"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:"c"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:"d"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:"e"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:"f"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:"g"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:"h"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:"l"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:"m"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:"n"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:"r"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:"s"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:"t"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:"u"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:"7"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:"8"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:"D"},(function(){return g.index()})),g._parser.registerEscHandler({final:"E"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:"H"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:"M"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:"="},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:">"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:"c"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:"n"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"o"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"|"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"}"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"~"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return g.selectDefaultCharset()}));var m=function(e){b._parser.registerEscHandler({intermediates:"(",final:e},(function(){return g.selectCharset("("+e)})),b._parser.registerEscHandler({intermediates:")",final:e},(function(){return g.selectCharset(")"+e)})),b._parser.registerEscHandler({intermediates:"*",final:e},(function(){return g.selectCharset("*"+e)})),b._parser.registerEscHandler({intermediates:"+",final:e},(function(){return g.selectCharset("+"+e)})),b._parser.registerEscHandler({intermediates:"-",final:e},(function(){return g.selectCharset("-"+e)})),b._parser.registerEscHandler({intermediates:".",final:e},(function(){return g.selectCharset("."+e)})),b._parser.registerEscHandler({intermediates:"/",final:e},(function(){return g.selectCharset("/"+e)}))},b=this;for(var C in a.CHARSETS)m(C);return g._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error("Parsing error: ",e),e})),g._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new m.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(b[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,n=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(n),t.isIpad="iPad"===n,t.isIphone="iPhone"===n,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(n),t.isLinux=n.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,m=_[y];0===m&&(m=_[--y]);for(var b=l.length-d-1,C=f;b>=0;){var S=Math.min(C,m);if(l[y].copyCellsFrom(l[b],C-S,m-S,S,!0),0==(m-=S)&&(m=_[--y]),0==(C-=S)){b--;var w=Math.max(b,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var A=[],R=[];for(v=0;v=0;v--)if(T&&T.start>x+D){for(var O=T.newLines.length-1;O>=0;O--)this.lines.set(v--,T.newLines[O]);v++,A.push({index:x+1,amount:T.newLines.length}),D+=T.newLines.length,T=i[++k]}else this.lines.set(v,R[x--]);var P=0;for(v=A.length-1;v>=0;v--)A[v].index+=P,this.lines.onInsertEmitter.fire(A[v]),P+=A[v].amount;var M=Math.max(0,L+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o="";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(b>u||0===h[b].getTrimmedLength());b--)m++;m>0&&(s.push(a+h.length-m),s.push(m)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;in||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=n}}if(1!==e.final.length)throw new Error("final must be a single byte");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator("BufferService"),t.ICoreMouseService=n.createDecorator("CoreMouseService"),t.ICoreService=n.createDecorator("CoreService"),t.ICharsetService=n.createDecorator("CharsetService"),t.IDirtyRowService=n.createDecorator("DirtyRowService"),t.IInstantiationService=n.createDecorator("InstantiationService"),t.ILogService=n.createDecorator("LogService"),t.IOptionsService=n.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=n.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0,t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var r=function(){function e(e,t,r,i){this.term=e,this.connectionFactory=t,this.args=r,this.authToken=i,this.reconnect=-1,this.bufSize=1024}return e.prototype.open=function(){var e,r,i=this,n=this.connectionFactory.create(),o=function(){n.onOpen((function(){var r=i.term.info();n.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var o=function(e,r){n.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(o),o(r.columns,r.rows),i.term.onInput((function(e){for(var r=i.bufSize-1,o=0;o0&&(r=setTimeout((function(){n=i.connectionFactory.create(),i.term.reset(),o()}),1e3*i.reconnect))})),n.open()};return o(),function(){clearTimeout(r),n.close()}},e}();t.WebTTY=r},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),n=r(881),o=r(962),s=r(445),a=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new n.FitAddon,this.term.loadAddon(new o.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()}))}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(Uint8Array.from(e,(function(e){return e.charCodeAt(0)})))},e.prototype.showMessage=function(e,t){var r=this;this.message.textContent=e,this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),t>0&&(this.messageTimer=setTimeout((function(){r.elem.removeChild(r.message)}),t))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=a}},t={};function r(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(()=>{"use strict";var e=r(949),t=r(818),i=r(69),n=document.getElementById("terminal");if(null!==n){var o;o=new e.Xterm(n);var s=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",a=window.location.search,c=new i.ConnectionFactory(s,t.protocols),l=new t.WebTTY(o,c,a,gotty_auth_token).open();window.addEventListener("unload",(function(){l(),o.close()}))}})()})(); //# sourceMappingURL=gotty.js.map \ No newline at end of file diff --git a/bindata/static/js/gotty.js.LICENSE.txt b/bindata/static/js/gotty.js.LICENSE.txt index 3289046..8bebf87 100644 --- a/bindata/static/js/gotty.js.LICENSE.txt +++ b/bindata/static/js/gotty.js.LICENSE.txt @@ -1,37 +1,3 @@ -/*! - * libapps (https://npmjs.com/package/libapps) - * @license BSD-3-Clause - * @version 1.70.0 - * ==libapps/LICENSE== - * // Copyright (c) 2006-2009 The Chromium OS Authors. All rights reserved. - * // - * // Redistribution and use in source and binary forms, with or without - * // modification, are permitted provided that the following conditions are - * // met: - * // - * // * Redistributions of source code must retain the above copyright - * // notice, this list of conditions and the following disclaimer. - * // * Redistributions in binary form must reproduce the above - * // copyright notice, this list of conditions and the following disclaimer - * // in the documentation and/or other materials provided with the - * // distribution. - * // * Neither the name of Google Inc. nor the names of its - * // contributors may be used to endorse or promote products derived from - * // this software without specific prior written permission. - * // - * // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - /*! * xterm (https://npmjs.com/package/xterm) * @license MIT diff --git a/bindata/static/js/gotty.js.map b/bindata/static/js/gotty.js.map index af209b1..e847afa 100644 --- a/bindata/static/js/gotty.js.map +++ b/bindata/static/js/gotty.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://gotty/./node_modules/libapps/hterm/dist/js/hterm_module.js","webpack://gotty/./node_modules/xterm-addon-fit/lib/xterm-addon-fit.js","webpack://gotty/./node_modules/xterm-addon-web-links/lib/xterm-addon-web-links.js","webpack://gotty/./node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js","webpack://gotty/./node_modules/xterm/lib/xterm.js","webpack://gotty/./src/hterm.ts","webpack://gotty/./src/websocket.ts","webpack://gotty/./src/webtty.ts","webpack://gotty/./src/xterm.ts","webpack://gotty/webpack/bootstrap","webpack://gotty/./src/main.ts"],"names":["lib","Error","var_args","source","ex","stackArray","stack","split","length","replace","i","arguments","path","Array","rtdep","apply","ary","this","runtimeDependencies_","push","passed","sourceList","names","obj","window","self","console","warn","name","callback","initCallbacks_","onInit","opt_logFunction","initNext","rec","shift","f","alarm","ensureRuntimeDependencies_","setTimeout","String","prototype","padStart","targetLength","padString","undefined","repeat","slice","padEnd","colors","re_","hex16","hex24","rgb","RegExp","rgba","rgbx","x11rgb","rgbToX11","value","scale","v","Math","min","toString","zpad","match","x11HexToCSS","startsWith","substr","indexOf","size","r","g","b","arrayToRGBA","map","parseInt","x11ToCSS","splice","round","nameToRGB","hexToRGB","arg","convert","hex","h","rgbToHex","crackRGB","normalizeCSS","def","test","alpha","setAlpha","mix","base","tint","percent","ary1","ary2","diff","color","error","colorNames","toLowerCase","stockColorPalette","colorPalette","createEnum","replaceVars","str","vars","fn","varname","rv","functions","encodeURI","encodeURIComponent","escapeHTML","m","getAcceptLanguages","chromeSupported","chrome","i18n","navigator","language","parseQuery","queryString","pairs","pair","decodeURIComponent","getURL","runtime","clamp","max","number","getWhitespace","whitespace","opt_ms","timeout","wrapperGenerator","ms","getStack","log","clearTimeout","opt_ignoreFrames","ignoreFrames","stackObject","smartFloorDivide","numerator","denominator","val","ceiling","ceil","floor","randomInt","random","MessageManager","languages","languages_","el","unshift","messages","addMessages","defs","key","placeholders","message","content","findAndLoadMessages","pattern","onComplete","concat","loaded","failed","onLanguageComplete","state","tryNextLanguage","loadMessages","replaceReferences","bind","url","onSuccess","opt_onError","xhr","XMLHttpRequest","onloadend","status","JSON","parse","responseText","open","send","msg","args","index","get","msgname","opt_args","opt_default","getMessage","processI18nAttributes","dom","nodes","querySelectorAll","processI18nAttribute","node","getAttribute","tagName","id","attr","toUpperCase","textContent","setAttribute","PreferenceManager","storage","opt_prefix","storageObserver_","onStorageChange_","isActive_","activate","trace","prefix","endsWith","prefRecords_","globalObservers_","childFactories_","childLists_","DEFAULT_VALUE","Record","defaultValue","currentValue","observers","addObserver","observer","removeObserver","stringify","deactivate","readStorage","opt_callback","pendingChildren","onChildComplete","keys","Object","getItems","items","prefixLength","needSync","syncChildList","definePreference","opt_onChange","record","changeDefault","definePreferences","defaults","defineChildren","listName","childFactory","onChildListChange_","addObservers","global","notifyAll","notifyChange_","createChild","opt_hint","opt_id","ids","childManager","resetAll","set","removeChild","getChild","childList","diffChildLists","a","added","removed","common","onChildStorage","currentIds","oldIds","managerIndex","reset","removeItem","changed","removeItems","forEach","newValue","changeDefaults","oldValue","setItem","exportAsJson","childIds","json","importFromJson","childPrefManager","lastIndexOf","resource","resources_","add","type","data","opt_defaultValue","getData","getDataUrl","Storage","Chrome","storage_","observers_","onChanged","addListener","onChanged_","changes","areaname","clear","getItem","setItems","remove","Local","localStorage","addEventListener","onStorage_","e","storageArea","prevValue","curValue","o","Memory","TestManager","opt_log","Log","createTestRun","opt_cx","TestRun","onTestRunComplete","testRun","testPreamble","result","cx","testPostamble","opt_console","save","prefix_","prefixStack_","console_","level","msgPrefix","oLog","join","group","oGroup","label","oGroupEnd","groupEnd","Suite","suiteName","ctor","testManager","testManager_","setup","addTest","disableTest","getTest","getTestList","testList_","testMap_","create","constructor","subclasses","testName","testFunction","Test","fullName","setDefaults","k","preamble","postamble","suiteClass","testFunction_","run","suite","Result","TestComplete","println","completeTest_","FAILED","failures","passes","startDate","duration","currentResult","maxFailures","panic","testQueue_","ALL_TESTS","selectTest","selectSuite","opt_pattern","selectCount","testList","j","selectPattern","onUncaughtException_","file","line","expectedErrorMessage_","when","PENDING","onTestRunComplete_","opt_skipTimeout","Date","info","msToSeconds_","summarize","onerror","onResultComplete","ctx","PASSED","currentSuite","runNextTest_","onResultReComplete","lateStatus","toFixed","timeout_","expectErrorMessage","onTimeout_","requestTime","opt_throw","arrayEQ_","actual","expected","assertEQ","opt_name","format","fail","getCallerLocation_","assert","frameIndex","opt_message","pass","UTF8Decoder","bytesLeft","codePoint","lowerBound","decode","ret","c","charCodeAt","charAt","fromCharCode","decodeUTF8","utf8","encodeUTF8","d","wc","nulWidth","controlWidth","regardCjkAmbiguous","cjkAmbiguousWidth","combining","ambiguous","isSpace","ucs","mid","isCjkAmbiguous","charWidth","charWidthRegardAmbiguous","charWidthDisregardAmbiguous","strWidth","width","codePointAt","start","opt_width","startIndex","endIndex","substring","end","hterm","registerInit","onWindow","windowType","defaultStorage","sync","isPackagedApp","getManifest","manifest","app","background","tabs","getCurrent","tab","windows","windowId","getClientSize","getBoundingClientRect","getClientWidth","getClientHeight","height","copySelectionToClipboard","document","execCommand","firefoxException","pasteFromClipboard","notify","params","curr","fallback","options","body","icon","title","desktopNotificationTitle","n","Notification","onclick","focus","close","Size","resize","clone","setTo","that","equals","RowCol","row","column","opt_overflow","overflow","move","Frame","terminal","opt_options","terminal_","div_","iframe_","container_","messageChannel_","onMessage_","sendTerminalInfo_","style","display","port1","onmessage","onMessage","onLoad","onLoad_","MessageChannel","contentWindow","postMessage","argv","messagePort","port2","acceptLanguages","foregroundColor","getForegroundColor","backgroundColor","getBackgroundColor","cursorColor","getCursorColor","fontSize","getFontSize","fontFamily","getFontFamily","baseURL","onCloseClicked_","parentNode","onClose","show","opt","divSize","document_","container","createElement","cssText","iframe","onload","appendChild","Keyboard","keyboardElement_","handlers_","onFocusOut_","onKeyDown_","onKeyPress_","onKeyUp_","onTextInput_","keyMap","KeyMap","bindings","Bindings","altGrMode","shiftInsertPaste","homeKeysScroll","pageKeysScroll","ctrlPlusMinusZeroZoom","ctrlCCopy","ctrlVPaste","applicationKeypad","applicationCursor","backspaceSendsBackspace","characterEncoding","metaSendsEscape","passMetaV","altSendsWhat","altIsMeta","altBackspaceIsMetaBackspace","altKeyPressed","mediaKeysAreFKeys","previousAltSendsWhat_","KeyActions","CANCEL","DEFAULT","PASS","STRIP","encode","vt","installKeyboard","element","handler","removeEventListener","uninstallKeyboard","onVTKeystroke","lowerKey","which","ctrlKey","metaKey","altKey","charCode","ch","keyCode","shiftKey","preventDefault","stopPropagation","preventChromeAppNonCtrlShiftDefault_","location","keyDef","keyDefs","action","resolvedActionType","control","alt","meta","isPrintable","keyCap","keyboard","getAction","maskShiftKey","keyDown","ctrl","binding","getBinding","call","normal","mod","code","bindings_","addBinding_","keyPattern","list","matchKeyPattern","sort","KeyPattern","sortCompare","addBinding","sequence","p","Parser","parseKeySequence","isComplete","parseKeyAction","addBindings","matchKeyDown","addKeyDef","addKeyDefs","resolve","ac","bs","sh","ctl","med","SS3","CSI","onKeyInsert_","onKeyHome_","altey","scrollHome","onKeyEnd_","scrollEnd","onKeyPageUp_","scrollPageUp","onKeyDel_","onKeyPageDown_","scrollPageDown","onKeyArrowUp_","scrollLineUp","onKeyArrowDown_","scrollLineDown","onClear_","wipeContents","onCtrlNum_","passCtrlNumber","onAltNum_","passAltNumber","onMetaNum_","passMetaNumber","onCtrlC_","selection","getDocument","getSelection","isCollapsed","clearSelectionAfterCopy","collapseToEnd","onCtrlN_","href","innerWidth","innerHeight","onCtrlV_","paste","onMetaN_","outerWidth","outerHeight","onMetaC_","onMetaV_","onPlusMinusZero_","getZoomFactor","cap","setFontSize","spec","wildcardCount","modifiers","match_","exactMatch","modValue","Options","opt_copy","wraparound","reverseWraparound","originMode","autoCarriageReturn","cursorVisible","cursorBlink","insertMode","reverseVideo","bracketedPaste","pos","opt_pos","identifiers","modifierKeys","skipSpace","token","parseToken","ucValue","hasOwnProperty","keyCodes","advance","actions","peekString","peekIdentifier","peekInteger","parseIdentifier","parseString","parseInteger","parsePattern","quote","re","lastIndex","exec","parseEscape","'","count","opt_expect","SHIFT","CTRL","CONTROL","ALT","META","ESCAPE","ESC","F1","F2","F3","F4","F5","F6","F7","F8","F9","F10","F11","F12","ONE","TWO","THREE","FOUR","FIVE","SIX","SEVEN","EIGHT","NINE","ZERO","BACKSPACE","BKSP","BS","TAB","Q","W","E","R","T","Y","U","I","O","P","CAPS_LOCK","CAPSLOCK","CAPS","A","S","D","F","G","H","J","K","L","ENTER","ENT","RETURN","RET","Z","X","C","V","B","N","M","SPACE","SP","PRINT_SCREEN","PRTSC","SCROLL_LOCK","SCRLK","BREAK","BRK","INSERT","INS","HOME","PAGE_UP","PGUP","DELETE","DEL","END","PAGE_DOWN","PGDOWN","PGDN","UP","DOWN","RIGHT","LEFT","NUMLOCK","KP0","KP1","KP2","KP3","KP4","KP5","KP6","KP7","KP8","KP9","KP_PLUS","KP_ADD","KP_MINUS","KP_SUBTRACT","KP_STAR","KP_MULTIPLY","KP_DIVIDE","KP_DECIMAL","KP_PERIOD","NAVIGATE_BACK","NAVIGATE_FORWARD","RELOAD","FULL_SCREEN","WINDOW_OVERVIEW","BRIGHTNESS_UP","BRIGHTNESS_DOWN","scrollToTop","scrollToBottom","clearScrollback","profileId","defaultPreferences","categories","Appearance","CopyPaste","Sounds","Scrolling","Encoding","Miscellaneous","categoryDefinitions","text","PubSub","addBehavior","pubsub","subscribe","subject","unsubscribe","publish","opt_lastCallback","notifyList","Screen","opt_columnCount","rowsArray","columnCount_","textAttributes","TextAttributes","cursorPosition","cursorRowNode_","cursorNode_","cursorOffset_","wordBreakMatchLeft","wordBreakMatchRight","wordBreakMatchMiddle","getSize","getHeight","getWidth","setColumnCount","setCursorPosition","shiftRow","shiftRows","unshiftRow","unshiftRows","rows","popRow","popRows","pushRow","pushRows","insertRow","insertRows","removeRow","removeRows","invalidateCursorPosition","clearCursorRow","innerHTML","removeAttribute","isDefault","inverse","syncColors","createContainer","commitLineOverflow","rowNode","firstChild","ownerDocument","createTextNode","currentColumn","offset","nodeWidth","nextSibling","syncSelectionCaret","collapse","firefoxIgnoredException","splitNode_","afterNode","cloneNode","nodeSubstr","insertBefore","maybeClipCurrentRow","insertString","cursorNode","cursorNodeText","reverseOffset","ws","underline","strikethrough","wcNode","asciiNode","tileData","nodeType","tileNode","textDecoration","wsNode","matchesContainer","previousSibling","newNode","overwriteString","maxLength","deleteChars","currentCursorColumn","startLength","endLength","spaceNode","nextNode","emptyNode","getLineStartRow_","hasAttribute","getLineText_","rowText","getXRowAncestor_","nodeName","getPositionWithOverflow_","ancestorRow","position","getPositionWithinRow_","childNodes","currentNode","getNodeAndOffsetWithOverflow_","getNodeAndOffsetWithinRow_","nodeTextWidth","setRange_","range","startNodeAndOffset","endNodeAndOffset","setStart","setEnd","expandSelection","getRangeAt","startContainer","startPosition","startOffset","endPosition","endContainer","endOffset","leftMatch","rightMatch","insideMatch","lineUpToRange","leftRegularExpression","expandedStart","search","lineFromRange","rightRegularExpression","found","expandedEnd","addRange","ScrollPort","rowProvider","rowProvider_","characterSize","ruler_","Selection","currentRowNodeCache_","previousRowNodeCache_","lastScreenWidth_","lastScreenHeight_","selectionEnabled_","lastRowCount_","scrollWheelMultiplier_","lastTouch_","isScrolledEnd","currentScrollbarWidthPx","timeouts_","DEBUG_","scrollPort","scrollPort_","startRow","endRow","isMultiline","findFirstChild","parent","childAry","anchorFirst","anchorRow","startNode","anchorNode","anchorOffset","focusRow","endNode","focusNode","focusOffset","focusFirst","rowIndex","firstNode","decorate","div","src","onResize_","doc","contentDocument","paddingTop","paddingBottom","head","userCssLink_","userCssText_","screen_","onScroll_","onScrollWheel_","onTouch_","onCopy_","onPaste_","onBodyKeyDown_","rowNodes_","topSelectBag_","bottomSelectBag_","topFold_","bottomFold_","scrollArea_","xmlns","svg_","createElementNS","pasteTarget_","contentEditable","handlePasteTargetTextInput_","setFontFamily","opt_smoothing","webkitFontSmoothing","syncCharacterSize","setUserCssUrl","setUserCssText","setForegroundColor","setBackgroundColor","setBackgroundImage","image","backgroundImage","setBackgroundSize","backgroundSize","setBackgroundPosition","backgroundPosition","setCtrlVPaste","getScreenSize","getScreenWidth","getScreenHeight","getScreenNode","resetCache","setRowProvider","scheduleRedraw","invalidate","parentElement","topRowIndex","getTopRowIndex","bottomRowIndex","getBottomRowIndex","drawVisibleRows_","scheduleInvalidate","px","measureCharacterSize","opt_weight","rulerSpan_","rulerBaseline_","fontWeight","rulerSize","baseline","offsetTop","zoomFactor","currentScale","clientWidth","syncScrollHeight","syncRowNodesDimensions_","scrollRowToBottom","getRowCount","screenSize","visibleRowCount","visibleRowsHeight","visibleRowTopMargin","visibleRowBottomMargin","marginBottom","topFoldOffset","left","offsetLeft","top","redraw","redraw_","resetSelectBags_","drawTopFold_","drawBottomFold_","lastChild","removeUntilNode","targetNode","deadNode","selectionStartRow","selectionEndRow","bottomFold","targetDrawCount","drawCount","fetchRowNode_","cacheRowNode_","getRowNode","selectAll","firstRow","lastRow","lastRowIndex","extend","getScrollMax_","scrollRowToTop","scrollTop","scrollMax","onScrollWheel","defaultPrevented","delta","scrollWheelDelta","deltaMode","WheelEvent","DOM_DELTA_PIXEL","deltaY","DOM_DELTA_LINE","DOM_DELTA_PAGE","onTouch","touch","scrubTouch","t","identifier","y","clientY","x","clientX","changedTouches","onCopy","endBackfillIndex","startBackfillIndex","getRowsText","setScrollbarVisible","overflowY","setScrollWheelMoveMultipler","multiplier","Terminal","opt_profileId","profileId_","primaryScreen_","alternateScreen_","scrollbackRows_","tabStops_","defaultTabStops","vtScrollTop_","vtScrollBottom_","cursorShape_","cursorShape","BLOCK","cursorColor_","cursorBlinkCycle_","myOnCursorBlink_","onCursorBlink_","backgroundColor_","foregroundColor_","scrollOnOutput_","scrollOnKeystroke_","scrollWheelArrowKeys_","defeatMouseReports_","bellAudio_","bellNotificationList_","desktopNotificationBell_","savedOptions_","options_","VT","io","IO","enableMouseDragScroll","copyOnSelect","mouseRightClickPaste","mousePasteButton","useDefaultWindowCopy","realizeSize_","setDefaultTabStops","setProfile","onTerminalReady","BEAM","UNDERLINE","tabWidth","prefs_","permission","characterMaps","setOverrides","setCursorBlink","setCursorColor","isNaN","resetColorPalette","enable8BitControl","syncBoldSafeState","enableBoldAsBright","syncBlinkState","enableClipboardWrite","enableDec12","syncFontFamily","maxStringSequence","syncMousePasteButton","userAgent","setEncoding","getPrefs","setBracketedPaste","borderColor","setSelectionEnabled","runCommandClass","commandClass","argString","environment","command","onExit","pop","isPrimaryScreen","setCssVar","documentElement","setProperty","button","enableBold","normalSize","boldSize","isBoldSafe","syncMouseStyle","mouseReport","MOUSE_REPORT_DISABLED","saveCursor","getTextAttributes","setTextAttributes","setWindowTitle","restoreCursor","cursor","clearCursorOverflow","setCursorShape","shape","restyleCursor_","getCursorShape","setWidth","columnCount","scheduleSyncCursorPosition_","setHeight","rowCount","realizeWidth_","realizeHeight_","onTerminalResize_","deltaColumns","deltaRows","getRowText","scrollbackCount","appendRows_","setVTScrollRegion","screen","bottom","renumberRows_","clearHome","syncCursorPosition_","clearAllTabStops","softReset","setCursorVisible","forwardTabStop","setCursorColumn","backwardTabStop","setTabStop","clearTabStopAtCursor","opt_start","w","interpret","oncontextmenu","onMouse","onMouse_","screenNode","onFocusChange_","className","scrollBlockerNode_","event","setReverseVideo","screenIndex","cursorRow","extraRows","scheduleScrollDown_","setAbsoluteCursorPosition","moveRows_","fromIndex","toIndex","opt_screen","print","newLine","didOverflow","tokens","splitWidecharString","scrollBottom","getVTScrollTop","getVTScrollBottom","cursorAtEndOfScreen","vtScrollUp","lineFeed","formFeed","reverseLineFeed","currentRow","insertLines","setAbsoluteCursorRow","eraseToLeft","eraseToRight","opt_count","maxCount","DEFAULT_COLOR","eraseLine","eraseAbove","eraseBelow","fill","col","moveCount","deleteLines","moveStart","insertSpace","deleted","vtScrollDown","setRelativeCursorPosition","getCursorColumn","getCursorRow","scheduleRedraw_","scrollDown","cursorUp","cursorDown","minHeight","maxHeight","cursorLeft","newRow","newColumn","cursorRight","ringBell","bellSquelchTimeout_","play","bellSequelchTimeout_","hasFocus","closeBellNotifications_","setOriginMode","setInsertMode","setAutoCarriageReturn","setWraparound","setReverseWraparound","setAlternateMode","opacity","cursorRowIndex","borderBottomStyle","borderLeftStyle","syncCursor","showZoomWarning_","zoomWarningNode_","zoomWarningMessage","showOverlay","opt_timeout","overlayNode_","overlaySize","overlayTimeout_","copyStringToClipboard","notifyCopyMessage","copySource","selectAllChildren","getSelectionText","string","openUrl","browser","openTab","openSelectedUrl_","processedByTerminalHandler_","reportMouseEvents","terminalRow","terminalColumn","engaged","warning","lines","abs","sendString","focused","isNewSize","previousIO_","createFrame","setTerminalProfile","profileName","keyboardCaptured_","onTerminalResize","writeUTF8","writelnUTF8","writeUTF16","writelnUTF16","foregroundSource","SRC_DEFAULT","backgroundSource","foreground","defaultForeground","defaultBackground","bold","faint","italic","blink","invisible","SRC_RGB","setDocument","opt_textContent","span","classes","fontStyle","blinkNode","colorToMakeFaint","containersMatch","obj1","obj2","containerIsDefault","style1","style2","nodeSubstring","increment","onTerminalMouse_","parseState_","ParseState","parseUnknown_","leadingModifier_","trailingModifier_","allowColumnWidthChanges_","oscTimeLimit_","utf8Decoder_","warnUnimplemented","CharacterMaps","G0","G1","G2","G3","getMap","GL","GR","codingSystemUtf8_","codingSystemLocked_","cc1Pattern_","updateEncodingState_","savedState_","CursorState","MOUSE_REPORT_CLICK","MOUSE_REPORT_DRAG","defaultFunction","opt_buf","buf","func","resetParseFunction","resetBuf","resetArguments","opt_arg_zero","iarg","argnum","peekRemainingBuf","peekChar","consumeChar","vt_","restore","response","buttons","encoding","cc1","CC1","filter","parseState","nextControl","dispatch","parseCSI_","parseUntilStringTerminator_","abortReason","nextTerminator","ignore","setANSIMode","setDECMode","scrollOnOutput","scrollOnKeystroke","OSC","VT52","parseESC","parseOSC","pairCount","responseArray","pairNumber","colorIndex","colorValue","colorX11","atob","get256","getTrueColor","attrs","trueColor","CharacterMap","description","glmap","glmapBase_","sync_","opt_glmap","glmap_","glre_","assign","glchars","maps_","DefaultMaps","mapsBase_","addMap","maps","module","exports","775","defineProperty","FitAddon","_terminal","dispose","fit","proposeDimensions","_core","cols","_renderService","dimensions","actualCellWidth","actualCellHeight","getComputedStyle","getPropertyValue","viewport","scrollBarWidth","l","enumerable","Symbol","toStringTag","__esModule","default","s","WebLinksAddon","opener","_handler","_options","_useLinkProvider","matchIndex","_linkProvider","registerLinkProvider","WebLinkProvider","_linkMatcherId","registerLinkMatcher","deregisterLinkMatcher","LinkComputer","_regex","provideLinks","computeLink","flags","_translateBufferLineToStringWithWrap","u","buffer","active","getLine","isWrapped","translateToString","965","GlyphRenderer","Float32Array","BYTES_PER_ELEMENT","_","_colors","_gl","_dimensions","_activeBuffer","_vertices","attributes","attributesBuffers","selectionAttributes","throwIfFalsy","createProgram","_program","_projectionLocation","getUniformLocation","_resolutionLocation","_textureLocation","_vertexArrayObject","createVertexArray","bindVertexArray","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","enableVertexAttribArray","vertexAttribPointer","FLOAT","Uint8Array","ELEMENT_ARRAY_BUFFER","_attributesBuffer","vertexAttribDivisor","_atlasTexture","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","enable","BLEND","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","onResize","beginFrame","_atlas","updateCell","_updateCell","NULL_CELL_CODE","WHITESPACE_CELL_CODE","getRasterizedGlyphCombinedChar","getRasterizedGlyph","scaledCharLeft","scaledCharTop","scaledCanvasWidth","scaledCanvasHeight","texturePositionClipSpace","sizeClipSpace","updateSelection","selectionOpaque","columnSelectMode","startCol","endCol","viewportCappedEndRow","viewportCappedStartRow","_updateSelectionRange","viewportStartRow","viewportEndRow","viewportY","RENDER_MODEL_INDICIES_PER_CELL","cells","RENDER_MODEL_FG_OFFSET","AttributeData","fg","bg","RENDER_MODEL_BG_OFFSET","getBgColorMode","_getColorFromAnsiIndex","getBgColor","toColorRGB","COMBINED_CHAR_BIT_MASK","getCell","getChars","ansi","canvas","setColors","render","useProgram","lineLengths","subarray","STREAM_DRAW","hasCanvasChanged","uniform1i","activeTexture","TEXTURE0","cacheCanvas","generateMipmap","uniformMatrix4fv","PROJECTION_MATRIX","uniform2f","drawElementsInstanced","TRIANGLES","setAtlas","setDimensions","344","RectangleRenderer","_updateCachedColors","DYNAMIC_DRAW","_updateViewportRectangle","_bgFloat","_colorToFloat32Array","_selectionFloat","_addRectangleFloat","scaledCellWidth","scaledCellHeight","hasSelection","updateBackgrounds","_updateRectangle","expandFloat32Array","_addRectangle","310","RenderModel","Uint32Array","clearSelection","259","sliceFallback","795","WebglAddon","_preserveDrawingBuffer","_colorManager","_renderer","WebglRenderer","setRenderer","_createRenderer","textureAtlas","configurable","clearTextureAtlas","clearCharAtlas","666","__extends","setPrototypeOf","__proto__","_model","_workCell","CellData","_onRequestRedraw","EventEmitter","_renderLayers","LinkRenderLayer","screenElement","CursorRenderLayer","scaledCharWidth","scaledCharHeight","canvasWidth","canvasHeight","_devicePixelRatio","devicePixelRatio","_updateDimensions","_canvas","antialias","depth","preserveDrawingBuffer","getContext","_rectangleRenderer","_glyphRenderer","onCharSizeChanged","_isAttached","contains","_charAtlas","_refreshCharAtlas","onDevicePixelRatioChange","onBlur","onFocus","onSelectionChanged","_updateSelectionModel","fire","onCursorMove","onOptionsChanged","acquireCharAtlas","warmUp","clearTexture","_updateModel","registerCharacterJoiner","deregisterCharacterJoiner","renderRows","_charSizeService","onGridChanged","ydisp","loadCell","getCode","getOption","Disposable","381","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","deleteShader","attachShader","VERTEX_SHADER","FRAGMENT_SHADER","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","713","removeTerminalFromCache","generateConfig","ownedBy","configEquals","config","atlas","WebglCharAtlas","433","is256Color","css","cursorAccent","selectionTransparent","contrastCache","fontWeightBold","allowTransparency","drawBoldTextInBrightColors","minimumContrastRatio","167","texturePosition","_config","_didWarmUp","_cacheMap","_cacheMapCombined","_currentRowY","_currentRowX","_currentRowHeight","_workBoundingBox","right","_workAttributeData","_cacheCtx","_tmpCanvas","_tmpCtx","_doWarmUp","_drawToCache","clearRect","_getBackgroundColor","_getForegroundCss","_getMinimumContrastCss","channels","toCss","_resolveBackgroundRgba","_resolveForegroundRgba","getCss","ensureContrastRatio","setCss","isInvisible","isBold","isInverse","isDim","isItalic","getFgColor","getFgColorMode","globalCompositeOperation","fillStyle","fillRect","font","textBaseline","globalAlpha","DIM_OPACITY","fillText","getImageData","_findGlyphBoundingBox","_clipImageData","putImageData","Uint8ClampedArray","ImageData","592","BaseRenderLayer","_container","_alpha","_scaledCharWidth","_scaledCharHeight","_scaledCellWidth","_scaledCellHeight","_scaledCharLeft","_scaledCharTop","classList","zIndex","_initCanvas","_ctx","_clearAll","_setTransparency","replaceChild","_fillCells","_fillBottomLineAtCells","_fillLeftLineAtCell","_strokeRectAtCell","lineWidth","strokeRect","_clearCells","_fillCharTrueColor","_getFont","_clipRow","beginPath","rect","clip","461","_onRequestRefreshRowsEvent","_cell","_state","isFocused","_cursorRenderers","bar","_renderBarCursor","block","_renderBlockCursor","_renderUnderlineCursor","_clearCursor","_cursorBlinkStateManager","pause","cursorY","resume","_render","restartBlinkAnimation","isPaused","_coreService","isCursorInitialized","isCursorHidden","baseY","cursorX","_renderBlurCursor","isCursorVisible","strokeStyle","_renderCallback","_restartInterval","_blinkStartTimeout","_blinkInterval","clearInterval","_animationFrame","cancelAnimationFrame","_animationTimeRestarted","now","requestAnimationFrame","setInterval","activeElement","textarea","733","linkifier","onShowLinkUnderline","_onShowLinkUnderline","onHideLinkUnderline","_onHideLinkUnderline","linkifier2","_clearCurrentLink","x1","y1","y2","x2","INVERTED_DEFAULT_COLOR","742","contrastRatio","toPaddedHex","toRgba","blend","isOpaque","toColor","opaque","toChannels","pow","relativeLuminance","relativeLuminance2","reduceLuminance","increaseLuminance","499","CHAR_ATLAS_CELL_SPACING","345","forwardEvent","_listeners","_disposed","_event","859","getDisposeArrayDisposable","disposeArray","_disposables","_isDisposed","register","unregister","455","fillFallback","147","ExtendedAttrs","extended","fromColorRGB","isUnderline","isBlink","isFgRGB","isBgRGB","isFgPalette","isBgPalette","isFgDefault","isBgDefault","isAttributeDefault","hasExtendedAttrs","updateExtended","isEmpty","getUnderlineColor","underlineColor","getUnderlineColorMode","isUnderlineColorRGB","isUnderlineColorPalette","isUnderlineColorDefault","getUnderlineStyle","underlineStyle","782","combinedData","fromCharData","setFromCharData","isCombined","stringFromCodePoint","CHAR_DATA_ATTR_INDEX","CHAR_DATA_CHAR_INDEX","CHAR_DATA_WIDTH_INDEX","getAsCharData","855","WHITESPACE_CELL_WIDTH","WHITESPACE_CELL_CHAR","NULL_CELL_WIDTH","NULL_CELL_CHAR","CHAR_DATA_CODE_INDEX","DEFAULT_ATTR","133","Utf8ToUtf32","StringToUtf32","utf32ToString","_interim","interim","4567","AccessibilityManager","_liveRegionLineCount","_charsToConsume","_charsToAnnounce","_accessibilityTreeRoot","_rowContainer","_rowElements","_createAccessibilityTreeNode","_topBoundaryFocusListener","_onBoundaryFocus","_bottomBoundaryFocusListener","_refreshRowsDimensions","_renderRowsDebouncer","RenderDebouncer","_renderRows","_refreshRows","_liveRegion","insertAdjacentElement","_onResize","onRender","onScroll","onA11yChar","_onChar","onLineFeed","onA11yTab","_onTab","onKey","_onKey","_clearLiveRegion","onDimensionsChange","_screenDprMonitor","ScreenDprMonitor","setListener","addDisposableDomListener","removeElementFromParent","target","relatedTarget","scrollLines","stopImmediatePropagation","children","tabIndex","_refreshRowDimensions","tooMuchOutput","isMac","refresh","translateBufferLineToString","innerText","_announceCharacters","3614","decPrivateModes","bracketedPasteMode","triggerDataEvent","rightClickHandler","moveTextAreaUnderMouseCursor","handlePasteEvent","copyHandler","bracketTextForPaste","prepareTextForTerminal","clipboardData","setData","selectionText","rightClickSelect","select","4774","7239","ColorContrastCache","_color","_rgba","setColor","getColor","5680","ColorManager","DEFAULT_ANSI_COLORS","freeze","_litmusColor","createLinearGradient","_contrastCache","onOptionsChange","setTheme","_parseColor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","Number","9631","3656","3551","__decorate","getOwnPropertyDescriptor","Reflect","__param","MouseZone","Linkifier","_bufferService","_logService","_unicodeService","_linkMatchers","_nextLinkMatcherId","_onLinkTooltip","_rowsToLinkify","attachToDom","_element","_mouseZoneManager","linkifyRows","clearAll","_rowsTimeoutId","_linkifyRows","_timeBeforeLatency","iterator","hasNext","next","_doLinkifyRow","first","debug","regex","validationCallback","hoverTooltipCallback","tooltipCallback","hoverLeaveCallback","leaveCallback","willLinkActivate","priority","_addLinkMatcherToList","stringIndexToBufferIndex","getFg","_addLink","getStringCellWidth","_createLinkHoverEvent","IBufferService","ILogService","IUnicodeService","clickCallback","hoverCallback","6465","Linkifier2","_linkProviders","_linkCacheDisposables","_isMouseOut","_activeLine","_currentLink","_mouseService","_onMouseMove","_onClick","_lastMouseEvent","_positionFromMouseEvent","composedPath","_lastBufferCell","_onHover","_askForLink","_linkAtPosition","link","_activeProviderReplies","Map","_checkLinkProviderResult","_removeIntersectingLinks","Set","has","find","_handleNewLink","_linkLeave","decorations","pointerCursor","isHovered","_linkHover","defineProperties","toggle","_fireUnderlineEvent","onRenderedBufferChange","hover","_createLinkUnderlineEvent","leave","getCoords","9042","promptLabel","6954","MouseZoneManager","_screenElement","_selectionService","_optionsService","_zones","_areZonesActive","_lastHoverCoords","_initialSelectionLength","_onMouseDown","_mouseMoveListener","_mouseLeaveListener","_onMouseLeave","_clickListener","_deactivate","_activate","_currentZone","pageX","pageY","_findZoneEventAt","_tooltipTimeout","_onTooltip","linkTooltipHoverDuration","_getSelectionLength","IMouseService","ISelectionService","IOptionsService","6193","_rowCount","_rowStart","_rowEnd","_innerRefresh","5596","_currentDevicePixelRatio","_listener","clearListener","_outerListener","_updateDpr","_resolutionMediaMatchList","removeListener","matchMedia","3236","_keyDownHandled","_onCursorMove","_onRender","_onSelectionChange","_onTitleChange","_onBell","_onFocus","_onBlur","_onA11yCharEmitter","_onA11yTabEmitter","_setup","_instantiationService","createInstance","_inputHandler","onRequestBell","bell","onRequestRefreshRows","onRequestReset","onRequestWindowsOptionsReport","_reportWindowsOptions","onAnsiColorChange","_changeAnsiColor","onTitleChange","_afterResize","optionsService","onThemeChange","_customKeyEventHandler","write","buffers","preventScroll","_updateOptions","measure","syncScrollArea","screenReaderMode","_accessibilityManager","setupTabStops","_setTheme","theme","_onTextAreaFocus","sendFocus","C0","updateCursorStyle","_showCursor","blur","_onTextAreaBlur","_syncTextArea","isCursorInViewport","_compositionHelper","isComposing","ybase","lineHeight","_initGlobal","_bindKeys","isFirefox","rightClickSelectsWord","isLinux","_keyUp","_keyDown","_keyPress","compositionstart","compositionupdate","compositionend","updateCompositionElements","_queueLinkification","isConnected","_document","dir","createDocumentFragment","_viewportElement","_viewportScrollArea","_helperContainer","CoreBrowserService","setService","ICoreBrowserService","CharSizeService","ICharSizeService","_theme","onOptionChange","_characterJoinerService","CharacterJoinerService","ICharacterJoinerService","RenderService","IRenderService","_compositionView","CompositionHelper","_soundService","SoundService","ISoundService","MouseService","Viewport","onRequestSyncScrollBar","SelectionService","onRequestScrollLines","amount","suppressScrollEvent","onSelectionChange","onRequestRedraw","onLinuxMouseSelection","_onScroll","onMouseDown","_coreMouseService","areMouseEventsActive","disable","bindMouse","rendererType","Renderer","DomRenderer","getRawByteCoords","overrideType","triggerMouseEvent","mouseup","wheel","mousedrag","mousemove","cancel","onProtocolChange","logLevel","explainEvents","passive","activeProtocol","shouldForceSelection","hasScrollback","getLinesScrolled","applicationCursorKeys","onWheel","onTouchStart","onTouchMove","refreshRows","shouldColumnSelect","attachCustomKeyEventHandler","deregister","markers","addMarker","setSelection","getSelectionPosition","startColumn","selectionStart","endColumn","selectionEnd","selectLines","keydown","evaluateKeyboardEvent","macOptionIsMeta","_isThirdLevelShift","ETX","CR","domEvent","isWindows","_soundBell","playBellSound","hasValidSize","getBlankLine","DEFAULT_ATTR_DATA","WindowsOptionsReportType","GET_WIN_SIZE_PIXELS","GET_CELL_SIZE_PIXELS","cancelEvents","_visualBell","bellStyle","CoreTerminal","1680","_scrollLines","_scrollArea","_lastRecordedBufferLength","_lastRecordedViewportHeight","_lastRecordedBufferHeight","_lastTouchY","_lastScrollTop","_wheelPartialScroll","_refreshAnimationFrame","_ignoreNextScrollEvent","offsetWidth","_refresh","offsetHeight","offsetParent","_bubbleScroll","cancelable","_getPixelsScrolled","_applyScrollModifier","fastScrollModifier","fastScrollSensitivity","scrollSensitivity","touches","2950","_textarea","_isComposing","_isSendingComposition","_compositionPosition","_dataAlreadySent","_finalizeComposition","_handleAnyTextareaChanges","ICoreService","9806","getCoordsRelativeToElement","9504","moveToCellSequence","244","AddonManager","_addons","instance","loadAddon","isDisposed","_wrappedAddonDispose","4389","_addonManager","_checkProposedApi","allowProposedApi","onData","onBinary","onBell","_parser","_buffer","_verifyIntegers","registerMarker","scrollPages","scrollToLine","writeUtf8","writeln","setOption","init","getNullCell","_onBufferChange","_normal","_alternate","onBufferActivate","alternate","_line","registerCsiHandler","toArray","addCsiHandler","registerDcsHandler","addDcsHandler","registerEscHandler","addEscHandler","registerOscHandler","addOscHandler","unicodeService","versions","activeVersion","1546","_rendererId","_currentGlyphIdentifier","chars","dim","_drawChars","_getContrastColor","_drawUncachedChars","draw","2512","_coreBrowserService","cursorStyle","cursorWidth","3700","GridCache","cache","5098","3525","_id","TextRenderLayer","SelectionRenderLayer","_runOperation","letterSpacing","IInstantiationService","1752","4149","_clearState","_didStateChange","_areCoordinatesEqual","9596","_characterWidth","_characterFont","_characterOverlapCache","_forEachCell","getJoinedCharacters","JoinedCellData","_isOverlapping","getCodePoint","_drawBackground","_drawForeground","measureText","9616","BaseCharAtlas","1420","DynamicCharAtlas","2040","8803","1906","NoneCharAtlas","getGlyphCacheKey","_drawToCacheCount","_glyphsWaitingOnBitmap","_bitmapCommitTimeout","_bitmap","_cacheCanvas","_width","_height","LRUMap","prealloc","_canCache","_drawFromCache","capacity","peek","_toCoordinateX","_toCoordinateY","drawImage","inBitmap","_getForegroundColor","_addGlyphToBitmap","isSafari","_generateBitmap","createImageBitmap","then","7001","_map","_head","_tail","_nodePool","_unlinkNode","prev","_appendNode","peekValue","1296","_linkifier","_linkifier2","_terminalClass","_refreshRowElements","_selectionContainer","_injectCss","_rowFactory","DomRendererRowFactory","_onLinkHover","_onLinkLeave","_themeStyleElement","_dimensionsStyleElement","_terminalSelector","BOLD_CLASS","ITALIC_CLASS","CURSOR_CLASS","CURSOR_STYLE_BLOCK_CLASS","CURSOR_BLINK_CLASS","CURSOR_STYLE_BAR_CLASS","CURSOR_STYLE_UNDERLINE_CLASS","_createSelectionElement","createRow","_setCellUnderline","3787","UNDERLINE_CLASS","DIM_CLASS","_applyMinimumContrast","_addStyle","456","SelectionModel","isSelectAllActive","selectionStartLength","areSelectionValuesReversed","onTrim","428","_onCharSizeChange","_measureStrategy","_parentElement","_result","_measureElement","4269","_characterJoiners","_nextCharacterJoinerId","getBg","getTrimmedLength","_getJoinedRanges","_mergeRanges","_stringRangesToCellRanges","getString","5114","getRootNode","8934","3230","_isPaused","_needsFullRefresh","_isNextRenderRedrawOnly","_needsSelectionRefresh","_canvasWidth","_canvasHeight","_selectionState","_onDimensionsChange","_onRefreshRequest","_renderDebouncer","_fullRefresh","onCharSizeChange","IntersectionObserver","_onIntersectionChange","threshold","observe","disconnect","isIntersecting","intersectionRatio","_fireOnCanvasResize","changeOptions","9312","_dragScrollAmount","_enabled","_mouseDownTimeStamp","_oldHasSelection","_oldSelectionStart","_oldSelectionEnd","_onLinuxMouseSelection","_onRedrawRequest","_onRequestScrollLines","_mouseUpListener","_onMouseUp","onUserInput","_trimListener","_onTrim","_onBufferActivate","_activeSelectionMode","_removeMouseDownListeners","finalSelectionStart","finalSelectionEnd","_isClickInSelection","_getMouseBufferCoords","_areCoordsInSelection","_selectWordAtCursor","currentLink","getRangeLength","_selectWordAt","_getMouseEventScrollAmount","macOptionClickForcesSelection","timeStamp","_onIncrementalClick","detail","_onSingleClick","_onDoubleClick","_onTripleClick","_addMouseDownListeners","_dragScrollIntervalTimer","_dragScroll","hasWidth","_selectLineAt","_selectToWordAt","_fireEventIfSelectionChanged","_fireOnSelectionChange","activeBuffer","_convertViewportColToCharacterIndex","_getWordAt","_isCharWordSeparator","trim","wordSeparator","getWrappedRangeForLine","last","4725","createDecorator","357","_audioContext","AudioContext","webkitAudioContext","audioContext","createBufferSource","decodeAudioData","_base64ToArrayBuffer","_removeMimeType","bellSound","connect","destination","6349","CircularList","_maxLength","onDeleteEmitter","onInsertEmitter","onTrimEmitter","_array","_startIndex","_length","_getCyclicIndex","recycle","trimStart","shiftElements","1439","isArray","8969","_onBinary","_onData","_onLineFeed","InstantiationService","OptionsService","BufferService","LogService","CoreService","CoreMouseService","ICoreMouseService","_dirtyRowService","DirtyRowService","IDirtyRowService","UnicodeService","_charsetService","CharsetService","ICharsetService","InputHandler","markRangeDirty","_writeBuffer","WriteBuffer","_onScrollApi","_windowsMode","writeSync","LogLevelEnum","WARN","MINIMUM_COLS","MINIMUM_ROWS","scroll","windowsMode","_enableWindowsMode","updateWindowsModeWrappedState","final","8460","5435","setWinLines","restoreWin","minimizeWin","setWinPosition","setWinSizePixels","raiseWin","lowerWin","refreshWin","setWinSizeChars","maximizeWin","fullscreenWin","getWinState","getWinPosition","getWinSizePixels","getScreenSizePixels","getCellSizePixels","getWinSizeChars","getScreenSizeChars","getIconTitle","getWinTitle","pushTitle","popTitle","_data","hook","put","unhook","EscapeSequenceParser","_parseBuffer","_stringDecoder","_utf8Decoder","_windowTitle","_iconName","_windowTitleStack","_iconNameStack","_curAttrData","_eraseAttrDataInternal","_onRequestBell","_onRequestRefreshRows","_onRequestReset","_onRequestSyncScrollBar","_onRequestWindowsOptionsReport","_onA11yChar","_onA11yTab","_onAnsiColorChange","_parseStack","paused","cursorStartX","cursorStartY","decodedLength","setCsiHandlerFallback","identToString","setEscHandlerFallback","setExecuteHandlerFallback","setOscHandlerFallback","setDcsHandlerFallback","payload","setPrintHandler","insertChars","intermediates","scrollLeft","scrollRight","cursorForward","cursorBackward","cursorNextLine","cursorPrecedingLine","cursorCharAbsolute","cursorForwardTab","eraseInDisplay","eraseInLine","scrollUp","eraseChars","cursorBackwardTab","charPosAbsolute","hPositionRelative","repeatPrecedingCharacter","sendDeviceAttributesPrimary","sendDeviceAttributesSecondary","linePosAbsolute","vPositionRelative","hVPosition","tabClear","setMode","setModePrivate","resetMode","resetModePrivate","charAttributes","deviceStatus","deviceStatusPrivate","setCursorStyle","setScrollRegion","windowOptions","insertColumns","deleteColumns","setExecuteHandler","BEL","LF","FF","carriageReturn","backspace","HT","SO","shiftOut","SI","shiftIn","C1","IND","NEL","nextLine","HTS","tabSet","OscHandler","setTitle","setIconName","setAnsiColor","reverseIndex","keypadApplicationMode","keypadNumericMode","fullReset","setgLevel","selectDefaultCharset","selectCharset","CHARSETS","screenAlignmentPattern","setErrorHandler","_preserveStack","_logSlowResolvingAsync","Promise","race","catch","clearRange","charset","modes","markDirty","setCellFromCodePoint","wcwidth","_eraseAttrData","insertCells","addCodepointToCell","precedingCodepoint","hasContent","DcsHandler","convertEol","_restrictCursor","nextStop","origin","_setCursor","_moveCursor","prevStop","_eraseInBufferLine","replaceCells","_resetBufferLine","deleteCells","_is","termName","setgCharset","DEFAULT_CHARSET","activeEncoding","activateAltBuffer","activateNormalBuffer","_updateAttrColor","_extractColor","hasSubParams","getSubParams","_processUnderline","savedX","savedY","savedCurAttrData","savedCharset","_savedCharset","_parseAnsiColorChange","markAllDirty","844","6114","isIphone","isIpad","platform","includes","8273","9282","3734","9092","BufferStringIterator","Buffer","MAX_BUFFER_SIZE","_hasScrollback","_nullCell","_whitespaceCell","_cols","_rows","_getCorrectBufferLength","getWhitespaceCell","BufferLine","scrollback","fillViewportRows","_isReflowEnabled","_reflow","_reflowLarger","_reflowSmaller","reflowLargerGetLinesToRemove","reflowLargerCreateNewLayout","reflowLargerApplyNewLayout","layout","_reflowLargerAdjustViewport","countRemoved","reflowSmallerGetNewLineLengths","newLines","copyCellsFrom","getWrappedLineTrimmedLength","setCell","tabStopWidth","Marker","onInsert","onDelete","onDispose","_removeMarker","_trimRight","_endIndex","_startOverscan","_endOverscan","_current","8437","_combined","_extendedAttrs","copyFrom","4841","4634","reduce","5295","BufferSet","_alt","inactiveBuffer","511","643","4863","_nextId","_onDispose","7116","q","z","2584","NUL","SOH","STX","EOT","ENQ","ACK","DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM","SUB","FS","GS","RS","US","PAD","HOP","BPH","NBH","SSA","ESA","HTJ","VTS","PLD","PLU","RI","SS2","DCS","PU1","PU2","STS","CCH","MW","SPA","EPA","SOS","SGCI","SCI","ST","PM","APC","7399","48","49","50","51","52","53","54","55","56","57","186","187","188","189","190","191","192","219","220","221","222","482","225","UnicodeV6","version","5981","queueMicrotask","_action","_callbacks","_pendingData","_bufferOffset","_isSyncWriting","_syncCalls","_innerWrite","5770","PAYLOAD_LIMIT","6351","DcsParser","_handlers","_active","_ident","_handlerFb","_stack","loopPosition","fallThrough","registerHandler","clearHandler","setHandlerFallback","Params","addParam","_params","_hitLimit","2015","VT500_TRANSITION_TABLE","TransitionTable","table","setDefault","addMany","_transitions","handlers","handlerPos","transition","chunkPos","initialState","currentState","_collect","_printHandlerFb","_executeHandlerFb","_csiHandlerFb","_escHandlerFb","_errorHandlerFb","_printHandler","_executeHandlers","_csiHandlers","_escHandlers","_oscParser","OscParser","_dcsParser","_errorHandler","_identifier","reverse","clearPrintHandler","clearEscHandler","clearExecuteHandler","clearCsiHandler","clearDcsHandler","clearOscHandler","clearErrorHandler","collect","abort","addSubParam","addDigit","6242","_start","_put","8742","maxSubParamsLength","Int32Array","_subParams","_subParamsLength","_subParamsIdx","Uint16Array","_rejectDigits","_rejectSubDigits","_digitIsSub","fromArray","getSubParamsAll","744","isUserScrolling","_cachedBlankLine","isFull","7994","glevel","_charsets","1753","NONE","events","restrict","X10","VT200","DRAG","ANY","SGR","_protocols","_encodings","_activeProtocol","_activeEncoding","_onProtocolChange","_lastEvent","addProtocol","addEncoding","_compareEvents","triggerBinaryEvent","down","up","drag","6975","_onUserInput","_scrollToBottom","disableStdin","3730","_end","4348","__spreadArrays","ServiceCollection","_entries","_services","getService","getServiceDependencies","7866","DEBUG","INFO","ERROR","off","OFF","_updateLogLevel","_evalLazyOptionalParams","_log","7302","DEFAULT_OPTIONS","DEFAULT_BELL_SOUND","altClickMovesCursor","_onOptionChange","_sanitizeAndValidateOption","8343","di$target","di$dependencies","serviceRegistry","2585","1480","_providers","_onChange","_activeProvider","elem","bare","term","columns","output","showMessage","removeMessage","setPreferences","onInput","Hterm","protocols","Connection","ConnectionFactory","WebSocket","isOpen","readyState","CONNECTING","OPEN","onOpen","onopen","onReceive","onclose","msgInputUnknown","msgInput","msgPing","msgResizeTerminal","msgUnknownOutput","msgOutput","msgPong","msgSetWindowTitle","msgSetPreferences","msgSetReconnect","msgSetBufferSize","connectionFactory","authToken","reconnect","bufSize","pingTimer","reconnectTimeout","connection","termInfo","Arguments","AuthToken","resizeHandler","colmuns","input","effectiveBufferSize","inputChunk","preferences","autoReconnect","WebTTY","fitAddOn","messageTimeout","resizeListener","decoder","messageTimer","onDataHandler","onResizeHandler","Xterm","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","getElementById","gotty_term","protocol","host","pathname","factory","gotty_auth_token"],"mappings":"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,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAAU,CAAE,IAAQ,KAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAClD,CAAE,KAAQ,MAAU,CAAE,KAAQ,MAAU,CAA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KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,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","file":"gotty.js","sourcesContent":["/*!\n * libapps (https://npmjs.com/package/libapps)\n * @license BSD-3-Clause\n * @version 1.70.0\n * ==libapps/LICENSE==\n * // Copyright (c) 2006-2009 The Chromium OS Authors. All rights reserved.\n * //\n * // Redistribution and use in source and binary forms, with or without\n * // modification, are permitted provided that the following conditions are\n * // met:\n * //\n * // * Redistributions of source code must retain the above copyright\n * // notice, this list of conditions and the following disclaimer.\n * // * Redistributions in binary form must reproduce the above\n * // copyright notice, this list of conditions and the following disclaimer\n * // in the documentation and/or other materials provided with the\n * // distribution.\n * // * Neither the name of Google Inc. nor the names of its\n * // contributors may be used to endorse or promote products derived from\n * // this software without specific prior written permission.\n * //\n * // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * // \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n// This file was generated by libdot/bin/concat.sh.\n// It has been marked read-only for your safety. Rather\n// than edit it directly, please modify one of these source\n// files...\n//\n// libdot/js/lib.js\n// libdot/js/lib_polyfill.js\n// libdot/js/lib_colors.js\n// libdot/js/lib_f.js\n// libdot/js/lib_message_manager.js\n// libdot/js/lib_preference_manager.js\n// libdot/js/lib_resource.js\n// libdot/js/lib_storage.js\n// libdot/js/lib_storage_chrome.js\n// libdot/js/lib_storage_local.js\n// libdot/js/lib_storage_memory.js\n// libdot/js/lib_test_manager.js\n// libdot/js/lib_utf8.js\n// libdot/third_party/wcwidth/lib_wc.js\n// hterm/js/hterm.js\n// hterm/js/hterm_frame.js\n// hterm/js/hterm_keyboard.js\n// hterm/js/hterm_keyboard_bindings.js\n// hterm/js/hterm_keyboard_keymap.js\n// hterm/js/hterm_keyboard_keypattern.js\n// hterm/js/hterm_options.js\n// hterm/js/hterm_parser.js\n// hterm/js/hterm_parser_identifiers.js\n// hterm/js/hterm_preference_manager.js\n// hterm/js/hterm_pubsub.js\n// hterm/js/hterm_screen.js\n// hterm/js/hterm_scrollport.js\n// hterm/js/hterm_terminal.js\n// hterm/js/hterm_terminal_io.js\n// hterm/js/hterm_text_attributes.js\n// hterm/js/hterm_vt.js\n// hterm/js/hterm_vt_character_map.js\n// hterm/js/hterm_export.js\n//\n\n// SOURCE FILE: libdot/js/lib.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nif (typeof lib != 'undefined')\n throw new Error('Global \"lib\" object already exists.');\n\nvar lib = {};\n\n/**\n * Map of \"dependency\" to [\"source\", ...].\n *\n * Each dependency is a object name, like \"lib.fs\", \"source\" is the url that\n * depends on the object.\n */\nlib.runtimeDependencies_ = {};\n\n/**\n * List of functions that need to be invoked during library initialization.\n *\n * Each element in the initCallbacks_ array is itself a two-element array.\n * Element 0 is a short string describing the owner of the init routine, useful\n * for debugging. Element 1 is the callback function.\n */\nlib.initCallbacks_ = [];\n\n/**\n * Records a runtime dependency.\n *\n * This can be useful when you want to express a run-time dependency at\n * compile time. It is not intended to be a full-fledged library system or\n * dependency tracker. It's just there to make it possible to debug the\n * deps without running all the code.\n *\n * Object names are specified as strings. For example...\n *\n * lib.rtdep('lib.colors', 'lib.PreferenceManager');\n *\n * Object names need not be rooted by 'lib'. You may use this to declare a\n * dependency on any object.\n *\n * The client program may call lib.ensureRuntimeDependencies() at startup in\n * order to ensure that all runtime dependencies have been met.\n *\n * @param {string} var_args One or more objects specified as strings.\n */\nlib.rtdep = function(var_args) {\n var source;\n\n try {\n throw new Error();\n } catch (ex) {\n var stackArray = ex.stack.split('\\n');\n // In Safari, the resulting stackArray will only have 2 elements and the\n // individual strings are formatted differently.\n if (stackArray.length >= 3) {\n source = stackArray[2].replace(/^\\s*at\\s+/, '');\n } else {\n source = stackArray[1].replace(/^\\s*global code@/, '');\n }\n }\n\n for (var i = 0; i < arguments.length; i++) {\n var path = arguments[i];\n if (path instanceof Array) {\n lib.rtdep.apply(lib, path);\n } else {\n var ary = this.runtimeDependencies_[path];\n if (!ary)\n ary = this.runtimeDependencies_[path] = [];\n ary.push(source);\n }\n }\n};\n\n/**\n * Ensures that all runtime dependencies are met, or an exception is thrown.\n *\n * Every unmet runtime dependency will be logged to the JS console. If at\n * least one dependency is unmet this will raise an exception.\n */\nlib.ensureRuntimeDependencies_ = function() {\n var passed = true;\n\n for (var path in lib.runtimeDependencies_) {\n var sourceList = lib.runtimeDependencies_[path];\n var names = path.split('.');\n\n // In a document context 'window' is the global object. In a worker it's\n // called 'self'.\n var obj = (window || self);\n for (var i = 0; i < names.length; i++) {\n if (!(names[i] in obj)) {\n console.warn('Missing \"' + path + '\" is needed by', sourceList);\n passed = false;\n break;\n }\n\n obj = obj[names[i]];\n }\n }\n\n if (!passed)\n throw new Error('Failed runtime dependency check');\n};\n\n/**\n * Register an initialization function.\n *\n * The initialization functions are invoked in registration order when\n * lib.init() is invoked. Each function will receive a single parameter, which\n * is a function to be invoked when it completes its part of the initialization.\n *\n * @param {string} name A short descriptive name of the init routine useful for\n * debugging.\n * @param {function(function)} callback The initialization function to register.\n * @return {function} The callback parameter.\n */\nlib.registerInit = function(name, callback) {\n lib.initCallbacks_.push([name, callback]);\n return callback;\n};\n\n/**\n * Initialize the library.\n *\n * This will ensure that all registered runtime dependencies are met, and\n * invoke any registered initialization functions.\n *\n * Initialization is asynchronous. The library is not ready for use until\n * the onInit function is invoked.\n *\n * @param {function()} onInit The function to invoke when initialization is\n * complete.\n * @param {function(*)} opt_logFunction An optional function to send\n * initialization related log messages to.\n */\nlib.init = function(onInit, opt_logFunction) {\n var ary = lib.initCallbacks_;\n\n var initNext = function() {\n if (ary.length) {\n var rec = ary.shift();\n if (opt_logFunction)\n opt_logFunction('init: ' + rec[0]);\n rec[1](lib.f.alarm(initNext));\n } else {\n onInit();\n }\n };\n\n if (typeof onInit != 'function')\n throw new Error('Missing or invalid argument: onInit');\n\n lib.ensureRuntimeDependencies_();\n\n setTimeout(initNext, 0);\n};\n// SOURCE FILE: libdot/js/lib_polyfill.js\n// Copyright 2017 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * @fileoverview Polyfills for ES2016+ features we want to use.\n */\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padStart\nif (!String.prototype.padStart) {\n String.prototype.padStart = function(targetLength, padString) {\n // If the string is already long enough, nothing to do!\n targetLength -= this.length;\n if (targetLength <= 0)\n return String(this);\n\n if (padString === undefined)\n padString = ' ';\n\n // In case the pad is multiple chars long.\n if (targetLength > padString.length)\n padString = padString.repeat((targetLength / padString.length) + 1);\n\n return padString.slice(0, targetLength) + String(this);\n };\n}\n\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/padEnd\nif (!String.prototype.padEnd) {\n String.prototype.padEnd = function(targetLength, padString) {\n // If the string is already long enough, nothing to do!\n targetLength -= this.length;\n if (targetLength <= 0)\n return String(this);\n\n if (padString === undefined)\n padString = ' ';\n\n // In case the pad is multiple chars long.\n if (targetLength > padString.length)\n padString = padString.repeat((targetLength / padString.length) + 1);\n\n return String(this) + padString.slice(0, targetLength);\n };\n}\n// SOURCE FILE: libdot/js/lib_colors.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Namespace for color utilities.\n */\nlib.colors = {};\n\n/**\n * First, some canned regular expressions we're going to use in this file.\n *\n *\n * BRACE YOURSELF\n *\n * ,~~~~.\n * |>_< ~~\n * 3`---'-/.\n * 3:::::\\v\\\n * =o=:::::\\,\\\n * | :::::\\,,\\\n *\n * THE REGULAR EXPRESSIONS\n * ARE COMING.\n *\n * There's no way to break long RE literals in JavaScript. Fix that why don't\n * you? Oh, and also there's no way to write a string that doesn't interpret\n * escapes.\n *\n * Instead, we stoop to this .replace() trick.\n */\nlib.colors.re_ = {\n // CSS hex color, #RGB.\n hex16: /#([a-f0-9])([a-f0-9])([a-f0-9])/i,\n\n // CSS hex color, #RRGGBB.\n hex24: /#([a-f0-9]{2})([a-f0-9]{2})([a-f0-9]{2})/i,\n\n // CSS rgb color, rgb(rrr,ggg,bbb).\n rgb: new RegExp(\n ('^/s*rgb/s*/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,' +\n '/s*(/d{1,3})/s*/)/s*$'\n ).replace(/\\//g, '\\\\'), 'i'),\n\n // CSS rgb color, rgb(rrr,ggg,bbb,aaa).\n rgba: new RegExp(\n ('^/s*rgba/s*' +\n '/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*' +\n '(?:,/s*(/d+(?:/./d+)?)/s*)/)/s*$'\n ).replace(/\\//g, '\\\\'), 'i'),\n\n // Either RGB or RGBA.\n rgbx: new RegExp(\n ('^/s*rgba?/s*' +\n '/(/s*(/d{1,3})/s*,/s*(/d{1,3})/s*,/s*(/d{1,3})/s*' +\n '(?:,/s*(/d+(?:/./d+)?)/s*)?/)/s*$'\n ).replace(/\\//g, '\\\\'), 'i'),\n\n // An X11 \"rgb:dddd/dddd/dddd\" value.\n x11rgb: /^\\s*rgb:([a-f0-9]{1,4})\\/([a-f0-9]{1,4})\\/([a-f0-9]{1,4})\\s*$/i,\n\n // English color name.\n name: /[a-z][a-z0-9\\s]+/,\n};\n\n/**\n * Convert a CSS rgb(ddd,ddd,ddd) color value into an X11 color value.\n *\n * Other CSS color values are ignored to ensure sanitary data handling.\n *\n * Each 'ddd' component is a one byte value specified in decimal.\n *\n * @param {string} value The CSS color value to convert.\n * @return {string} The X11 color value or null if the value could not be\n * converted.\n */\nlib.colors.rgbToX11 = function(value) {\n function scale(v) {\n v = (Math.min(v, 255) * 257).toString(16);\n return lib.f.zpad(v, 4);\n }\n\n var ary = value.match(lib.colors.re_.rgbx);\n if (!ary)\n return null;\n\n return 'rgb:' + scale(ary[1]) + '/' + scale(ary[2]) + '/' + scale(ary[3]);\n};\n\n/**\n * Convert a legacy X11 colover value into an CSS rgb(...) color value.\n *\n * They take the form:\n * 12 bit: #RGB -> #R000G000B000\n * 24 bit: #RRGGBB -> #RR00GG00BB00\n * 36 bit: #RRRGGGBBB -> #RRR0GGG0BBB0\n * 48 bit: #RRRRGGGGBBBB\n * These are the most significant bits.\n *\n * Truncate values back down to 24 bit since that's all CSS supports.\n */\nlib.colors.x11HexToCSS = function(v) {\n if (!v.startsWith('#'))\n return null;\n // Strip the leading # off.\n v = v.substr(1);\n\n // Reject unknown sizes.\n if ([3, 6, 9, 12].indexOf(v.length) == -1)\n return null;\n\n // Reject non-hex values.\n if (v.match(/[^a-f0-9]/i))\n return null;\n\n // Split the colors out.\n var size = v.length / 3;\n var r = v.substr(0, size);\n var g = v.substr(size, size);\n var b = v.substr(size + size, size);\n\n // Normalize to 16 bits.\n function norm16(v) {\n v = parseInt(v, 16);\n return size == 2 ? v : // 16 bit\n size == 1 ? v << 4 : // 8 bit\n v >> (4 * (size - 2)); // 24 or 32 bit\n }\n return lib.colors.arrayToRGBA([r, g, b].map(norm16));\n};\n\n/**\n * Convert an X11 color value into an CSS rgb(...) color value.\n *\n * The X11 value may be an X11 color name, or an RGB value of the form\n * rgb:hhhh/hhhh/hhhh. If a component value is less than 4 digits it is\n * padded out to 4, then scaled down to fit in a single byte.\n *\n * @param {string} value The X11 color value to convert.\n * @return {string} The CSS color value or null if the value could not be\n * converted.\n */\nlib.colors.x11ToCSS = function(v) {\n function scale(v) {\n // Pad out values with less than four digits. This padding (probably)\n // matches xterm. It's difficult to say for sure since xterm seems to\n // arrive at a padded value and then perform some combination of\n // gamma correction, color space transformation, and quantization.\n\n if (v.length == 1) {\n // Single digits pad out to four by repeating the character. \"f\" becomes\n // \"ffff\". Scaling down a hex value of this pattern by 257 is the same\n // as cutting off one byte. We skip the middle step and just double\n // the character.\n return parseInt(v + v, 16);\n }\n\n if (v.length == 2) {\n // Similar deal here. X11 pads two digit values by repeating the\n // byte (or scale up by 257). Since we're going to scale it back\n // down anyway, we can just return the original value.\n return parseInt(v, 16);\n }\n\n if (v.length == 3) {\n // Three digit values seem to be padded by repeating the final digit.\n // e.g. 10f becomes 10ff.\n v = v + v.substr(2);\n }\n\n // Scale down the 2 byte value.\n return Math.round(parseInt(v, 16) / 257);\n }\n\n var ary = v.match(lib.colors.re_.x11rgb);\n if (!ary) {\n // Handle the legacy format.\n if (v.startsWith('#'))\n return lib.colors.x11HexToCSS(v);\n else\n return lib.colors.nameToRGB(v);\n }\n\n ary.splice(0, 1);\n return lib.colors.arrayToRGBA(ary.map(scale));\n};\n\n/**\n * Converts one or more CSS '#RRGGBB' color values into their rgb(...)\n * form.\n *\n * Arrays are converted in place. If a value cannot be converted, it is\n * replaced with null.\n *\n * @param {string|Array.} A single RGB value or array of RGB values to\n * convert.\n * @return {string|Array.} The converted value or values.\n */\nlib.colors.hexToRGB = function(arg) {\n var hex16 = lib.colors.re_.hex16;\n var hex24 = lib.colors.re_.hex24;\n\n function convert(hex) {\n if (hex.length == 4) {\n hex = hex.replace(hex16, function(h, r, g, b) {\n return \"#\" + r + r + g + g + b + b;\n });\n }\n var ary = hex.match(hex24);\n if (!ary)\n return null;\n\n return 'rgb(' + parseInt(ary[1], 16) + ', ' +\n parseInt(ary[2], 16) + ', ' +\n parseInt(ary[3], 16) + ')';\n }\n\n if (arg instanceof Array) {\n for (var i = 0; i < arg.length; i++) {\n arg[i] = convert(arg[i]);\n }\n } else {\n arg = convert(arg);\n }\n\n return arg;\n};\n\n/**\n * Converts one or more CSS rgb(...) forms into their '#RRGGBB' color values.\n *\n * If given an rgba(...) form, the alpha field is thrown away.\n *\n * Arrays are converted in place. If a value cannot be converted, it is\n * replaced with null.\n *\n * @param {string|Array.} A single rgb(...) value or array of rgb(...)\n * values to convert.\n * @return {string|Array.} The converted value or values.\n */\nlib.colors.rgbToHex = function(arg) {\n function convert(rgb) {\n var ary = lib.colors.crackRGB(rgb);\n if (!ary)\n return null;\n return '#' + lib.f.zpad(((parseInt(ary[0]) << 16) |\n (parseInt(ary[1]) << 8) |\n (parseInt(ary[2]) << 0)).toString(16), 6);\n }\n\n if (arg instanceof Array) {\n for (var i = 0; i < arg.length; i++) {\n arg[i] = convert(arg[i]);\n }\n } else {\n arg = convert(arg);\n }\n\n return arg;\n};\n\n/**\n * Take any valid css color definition and turn it into an rgb or rgba value.\n *\n * Returns null if the value could not be normalized.\n */\nlib.colors.normalizeCSS = function(def) {\n if (def.startsWith('#'))\n return lib.colors.hexToRGB(def);\n\n if (lib.colors.re_.rgbx.test(def))\n return def;\n\n return lib.colors.nameToRGB(def);\n};\n\n/**\n * Convert a 3 or 4 element array into an rgba(...) string.\n */\nlib.colors.arrayToRGBA = function(ary) {\n var alpha = (ary.length > 3) ? ary[3] : 1;\n return 'rgba(' + ary[0] + ', ' + ary[1] + ', ' + ary[2] + ', ' + alpha + ')';\n};\n\n/**\n * Overwrite the alpha channel of an rgb/rgba color.\n */\nlib.colors.setAlpha = function(rgb, alpha) {\n var ary = lib.colors.crackRGB(rgb);\n ary[3] = alpha;\n return lib.colors.arrayToRGBA(ary);\n};\n\n/**\n * Mix a percentage of a tint color into a base color.\n */\nlib.colors.mix = function(base, tint, percent) {\n var ary1 = lib.colors.crackRGB(base);\n var ary2 = lib.colors.crackRGB(tint);\n\n for (var i = 0; i < 4; ++i) {\n var diff = ary2[i] - ary1[i];\n ary1[i] = Math.round(parseInt(ary1[i]) + diff * percent);\n }\n\n return lib.colors.arrayToRGBA(ary1);\n};\n\n/**\n * Split an rgb/rgba color into an array of its components.\n *\n * On success, a 4 element array will be returned. For rgb values, the alpha\n * will be set to 1.\n */\nlib.colors.crackRGB = function(color) {\n if (color.startsWith('rgba')) {\n var ary = color.match(lib.colors.re_.rgba);\n if (ary) {\n ary.shift();\n return ary;\n }\n } else {\n var ary = color.match(lib.colors.re_.rgb);\n if (ary) {\n ary.shift();\n ary.push(1);\n return ary;\n }\n }\n\n console.error('Couldn\\'t crack: ' + color);\n return null;\n};\n\n/**\n * Convert an X11 color name into a CSS rgb(...) value.\n *\n * Names are stripped of spaces and converted to lowercase. If the name is\n * unknown, null is returned.\n *\n * This list of color name to RGB mapping is derived from the stock X11\n * rgb.txt file.\n *\n * @param {string} name The color name to convert.\n * @return {string} The corresponding CSS rgb(...) value.\n */\nlib.colors.nameToRGB = function(name) {\n if (name in lib.colors.colorNames)\n return lib.colors.colorNames[name];\n\n name = name.toLowerCase();\n if (name in lib.colors.colorNames)\n return lib.colors.colorNames[name];\n\n name = name.replace(/\\s+/g, '');\n if (name in lib.colors.colorNames)\n return lib.colors.colorNames[name];\n\n return null;\n};\n\n/**\n * The stock color palette.\n */\nlib.colors.stockColorPalette = lib.colors.hexToRGB\n ([// The \"ANSI 16\"...\n '#000000', '#CC0000', '#4E9A06', '#C4A000',\n '#3465A4', '#75507B', '#06989A', '#D3D7CF',\n '#555753', '#EF2929', '#00BA13', '#FCE94F',\n '#729FCF', '#F200CB', '#00B5BD', '#EEEEEC',\n\n // The 6x6 color cubes...\n '#000000', '#00005F', '#000087', '#0000AF', '#0000D7', '#0000FF',\n '#005F00', '#005F5F', '#005F87', '#005FAF', '#005FD7', '#005FFF',\n '#008700', '#00875F', '#008787', '#0087AF', '#0087D7', '#0087FF',\n '#00AF00', '#00AF5F', '#00AF87', '#00AFAF', '#00AFD7', '#00AFFF',\n '#00D700', '#00D75F', '#00D787', '#00D7AF', '#00D7D7', '#00D7FF',\n '#00FF00', '#00FF5F', '#00FF87', '#00FFAF', '#00FFD7', '#00FFFF',\n\n '#5F0000', '#5F005F', '#5F0087', '#5F00AF', '#5F00D7', '#5F00FF',\n '#5F5F00', '#5F5F5F', '#5F5F87', '#5F5FAF', '#5F5FD7', '#5F5FFF',\n '#5F8700', '#5F875F', '#5F8787', '#5F87AF', '#5F87D7', '#5F87FF',\n '#5FAF00', '#5FAF5F', '#5FAF87', '#5FAFAF', '#5FAFD7', '#5FAFFF',\n '#5FD700', '#5FD75F', '#5FD787', '#5FD7AF', '#5FD7D7', '#5FD7FF',\n '#5FFF00', '#5FFF5F', '#5FFF87', '#5FFFAF', '#5FFFD7', '#5FFFFF',\n\n '#870000', '#87005F', '#870087', '#8700AF', '#8700D7', '#8700FF',\n '#875F00', '#875F5F', '#875F87', '#875FAF', '#875FD7', '#875FFF',\n '#878700', '#87875F', '#878787', '#8787AF', '#8787D7', '#8787FF',\n '#87AF00', '#87AF5F', '#87AF87', '#87AFAF', '#87AFD7', '#87AFFF',\n '#87D700', '#87D75F', '#87D787', '#87D7AF', '#87D7D7', '#87D7FF',\n '#87FF00', '#87FF5F', '#87FF87', '#87FFAF', '#87FFD7', '#87FFFF',\n\n '#AF0000', '#AF005F', '#AF0087', '#AF00AF', '#AF00D7', '#AF00FF',\n '#AF5F00', '#AF5F5F', '#AF5F87', '#AF5FAF', '#AF5FD7', '#AF5FFF',\n '#AF8700', '#AF875F', '#AF8787', '#AF87AF', '#AF87D7', '#AF87FF',\n '#AFAF00', '#AFAF5F', '#AFAF87', '#AFAFAF', '#AFAFD7', '#AFAFFF',\n '#AFD700', '#AFD75F', '#AFD787', '#AFD7AF', '#AFD7D7', '#AFD7FF',\n '#AFFF00', '#AFFF5F', '#AFFF87', '#AFFFAF', '#AFFFD7', '#AFFFFF',\n\n '#D70000', '#D7005F', '#D70087', '#D700AF', '#D700D7', '#D700FF',\n '#D75F00', '#D75F5F', '#D75F87', '#D75FAF', '#D75FD7', '#D75FFF',\n '#D78700', '#D7875F', '#D78787', '#D787AF', '#D787D7', '#D787FF',\n '#D7AF00', '#D7AF5F', '#D7AF87', '#D7AFAF', '#D7AFD7', '#D7AFFF',\n '#D7D700', '#D7D75F', '#D7D787', '#D7D7AF', '#D7D7D7', '#D7D7FF',\n '#D7FF00', '#D7FF5F', '#D7FF87', '#D7FFAF', '#D7FFD7', '#D7FFFF',\n\n '#FF0000', '#FF005F', '#FF0087', '#FF00AF', '#FF00D7', '#FF00FF',\n '#FF5F00', '#FF5F5F', '#FF5F87', '#FF5FAF', '#FF5FD7', '#FF5FFF',\n '#FF8700', '#FF875F', '#FF8787', '#FF87AF', '#FF87D7', '#FF87FF',\n '#FFAF00', '#FFAF5F', '#FFAF87', '#FFAFAF', '#FFAFD7', '#FFAFFF',\n '#FFD700', '#FFD75F', '#FFD787', '#FFD7AF', '#FFD7D7', '#FFD7FF',\n '#FFFF00', '#FFFF5F', '#FFFF87', '#FFFFAF', '#FFFFD7', '#FFFFFF',\n\n // The greyscale ramp...\n '#080808', '#121212', '#1C1C1C', '#262626', '#303030', '#3A3A3A',\n '#444444', '#4E4E4E', '#585858', '#626262', '#6C6C6C', '#767676',\n '#808080', '#8A8A8A', '#949494', '#9E9E9E', '#A8A8A8', '#B2B2B2',\n '#BCBCBC', '#C6C6C6', '#D0D0D0', '#DADADA', '#E4E4E4', '#EEEEEE'\n ]);\n\n/**\n * The current color palette, possibly with user changes.\n */\nlib.colors.colorPalette = lib.colors.stockColorPalette;\n\n/**\n * Named colors according to the stock X11 rgb.txt file.\n */\nlib.colors.colorNames = {\n \"aliceblue\": \"rgb(240, 248, 255)\",\n \"antiquewhite\": \"rgb(250, 235, 215)\",\n \"antiquewhite1\": \"rgb(255, 239, 219)\",\n \"antiquewhite2\": \"rgb(238, 223, 204)\",\n \"antiquewhite3\": \"rgb(205, 192, 176)\",\n \"antiquewhite4\": \"rgb(139, 131, 120)\",\n \"aquamarine\": \"rgb(127, 255, 212)\",\n \"aquamarine1\": \"rgb(127, 255, 212)\",\n \"aquamarine2\": \"rgb(118, 238, 198)\",\n \"aquamarine3\": \"rgb(102, 205, 170)\",\n \"aquamarine4\": \"rgb(69, 139, 116)\",\n \"azure\": \"rgb(240, 255, 255)\",\n \"azure1\": \"rgb(240, 255, 255)\",\n \"azure2\": \"rgb(224, 238, 238)\",\n \"azure3\": \"rgb(193, 205, 205)\",\n \"azure4\": \"rgb(131, 139, 139)\",\n \"beige\": \"rgb(245, 245, 220)\",\n \"bisque\": \"rgb(255, 228, 196)\",\n \"bisque1\": \"rgb(255, 228, 196)\",\n \"bisque2\": \"rgb(238, 213, 183)\",\n \"bisque3\": \"rgb(205, 183, 158)\",\n \"bisque4\": \"rgb(139, 125, 107)\",\n \"black\": \"rgb(0, 0, 0)\",\n \"blanchedalmond\": \"rgb(255, 235, 205)\",\n \"blue\": \"rgb(0, 0, 255)\",\n \"blue1\": \"rgb(0, 0, 255)\",\n \"blue2\": \"rgb(0, 0, 238)\",\n \"blue3\": \"rgb(0, 0, 205)\",\n \"blue4\": \"rgb(0, 0, 139)\",\n \"blueviolet\": \"rgb(138, 43, 226)\",\n \"brown\": \"rgb(165, 42, 42)\",\n \"brown1\": \"rgb(255, 64, 64)\",\n \"brown2\": \"rgb(238, 59, 59)\",\n \"brown3\": \"rgb(205, 51, 51)\",\n \"brown4\": \"rgb(139, 35, 35)\",\n \"burlywood\": \"rgb(222, 184, 135)\",\n \"burlywood1\": \"rgb(255, 211, 155)\",\n \"burlywood2\": \"rgb(238, 197, 145)\",\n \"burlywood3\": \"rgb(205, 170, 125)\",\n \"burlywood4\": \"rgb(139, 115, 85)\",\n \"cadetblue\": \"rgb(95, 158, 160)\",\n \"cadetblue1\": \"rgb(152, 245, 255)\",\n \"cadetblue2\": \"rgb(142, 229, 238)\",\n \"cadetblue3\": \"rgb(122, 197, 205)\",\n \"cadetblue4\": \"rgb(83, 134, 139)\",\n \"chartreuse\": \"rgb(127, 255, 0)\",\n \"chartreuse1\": \"rgb(127, 255, 0)\",\n \"chartreuse2\": \"rgb(118, 238, 0)\",\n \"chartreuse3\": \"rgb(102, 205, 0)\",\n \"chartreuse4\": \"rgb(69, 139, 0)\",\n \"chocolate\": \"rgb(210, 105, 30)\",\n \"chocolate1\": \"rgb(255, 127, 36)\",\n \"chocolate2\": \"rgb(238, 118, 33)\",\n \"chocolate3\": \"rgb(205, 102, 29)\",\n \"chocolate4\": \"rgb(139, 69, 19)\",\n \"coral\": \"rgb(255, 127, 80)\",\n \"coral1\": \"rgb(255, 114, 86)\",\n \"coral2\": \"rgb(238, 106, 80)\",\n \"coral3\": \"rgb(205, 91, 69)\",\n \"coral4\": \"rgb(139, 62, 47)\",\n \"cornflowerblue\": \"rgb(100, 149, 237)\",\n \"cornsilk\": \"rgb(255, 248, 220)\",\n \"cornsilk1\": \"rgb(255, 248, 220)\",\n \"cornsilk2\": \"rgb(238, 232, 205)\",\n \"cornsilk3\": \"rgb(205, 200, 177)\",\n \"cornsilk4\": \"rgb(139, 136, 120)\",\n \"cyan\": \"rgb(0, 255, 255)\",\n \"cyan1\": \"rgb(0, 255, 255)\",\n \"cyan2\": \"rgb(0, 238, 238)\",\n \"cyan3\": \"rgb(0, 205, 205)\",\n \"cyan4\": \"rgb(0, 139, 139)\",\n \"darkblue\": \"rgb(0, 0, 139)\",\n \"darkcyan\": \"rgb(0, 139, 139)\",\n \"darkgoldenrod\": \"rgb(184, 134, 11)\",\n \"darkgoldenrod1\": \"rgb(255, 185, 15)\",\n \"darkgoldenrod2\": \"rgb(238, 173, 14)\",\n \"darkgoldenrod3\": \"rgb(205, 149, 12)\",\n \"darkgoldenrod4\": \"rgb(139, 101, 8)\",\n \"darkgray\": \"rgb(169, 169, 169)\",\n \"darkgreen\": \"rgb(0, 100, 0)\",\n \"darkgrey\": \"rgb(169, 169, 169)\",\n \"darkkhaki\": \"rgb(189, 183, 107)\",\n \"darkmagenta\": \"rgb(139, 0, 139)\",\n \"darkolivegreen\": \"rgb(85, 107, 47)\",\n \"darkolivegreen1\": \"rgb(202, 255, 112)\",\n \"darkolivegreen2\": \"rgb(188, 238, 104)\",\n \"darkolivegreen3\": \"rgb(162, 205, 90)\",\n \"darkolivegreen4\": \"rgb(110, 139, 61)\",\n \"darkorange\": \"rgb(255, 140, 0)\",\n \"darkorange1\": \"rgb(255, 127, 0)\",\n \"darkorange2\": \"rgb(238, 118, 0)\",\n \"darkorange3\": \"rgb(205, 102, 0)\",\n \"darkorange4\": \"rgb(139, 69, 0)\",\n \"darkorchid\": \"rgb(153, 50, 204)\",\n \"darkorchid1\": \"rgb(191, 62, 255)\",\n \"darkorchid2\": \"rgb(178, 58, 238)\",\n \"darkorchid3\": \"rgb(154, 50, 205)\",\n \"darkorchid4\": \"rgb(104, 34, 139)\",\n \"darkred\": \"rgb(139, 0, 0)\",\n \"darksalmon\": \"rgb(233, 150, 122)\",\n \"darkseagreen\": \"rgb(143, 188, 143)\",\n \"darkseagreen1\": \"rgb(193, 255, 193)\",\n \"darkseagreen2\": \"rgb(180, 238, 180)\",\n \"darkseagreen3\": \"rgb(155, 205, 155)\",\n \"darkseagreen4\": \"rgb(105, 139, 105)\",\n \"darkslateblue\": \"rgb(72, 61, 139)\",\n \"darkslategray\": \"rgb(47, 79, 79)\",\n \"darkslategray1\": \"rgb(151, 255, 255)\",\n \"darkslategray2\": \"rgb(141, 238, 238)\",\n \"darkslategray3\": \"rgb(121, 205, 205)\",\n \"darkslategray4\": \"rgb(82, 139, 139)\",\n \"darkslategrey\": \"rgb(47, 79, 79)\",\n \"darkturquoise\": \"rgb(0, 206, 209)\",\n \"darkviolet\": \"rgb(148, 0, 211)\",\n \"debianred\": \"rgb(215, 7, 81)\",\n \"deeppink\": \"rgb(255, 20, 147)\",\n \"deeppink1\": \"rgb(255, 20, 147)\",\n \"deeppink2\": \"rgb(238, 18, 137)\",\n \"deeppink3\": \"rgb(205, 16, 118)\",\n \"deeppink4\": \"rgb(139, 10, 80)\",\n \"deepskyblue\": \"rgb(0, 191, 255)\",\n \"deepskyblue1\": \"rgb(0, 191, 255)\",\n \"deepskyblue2\": \"rgb(0, 178, 238)\",\n \"deepskyblue3\": \"rgb(0, 154, 205)\",\n \"deepskyblue4\": \"rgb(0, 104, 139)\",\n \"dimgray\": \"rgb(105, 105, 105)\",\n \"dimgrey\": \"rgb(105, 105, 105)\",\n \"dodgerblue\": \"rgb(30, 144, 255)\",\n \"dodgerblue1\": \"rgb(30, 144, 255)\",\n \"dodgerblue2\": \"rgb(28, 134, 238)\",\n \"dodgerblue3\": \"rgb(24, 116, 205)\",\n \"dodgerblue4\": \"rgb(16, 78, 139)\",\n \"firebrick\": \"rgb(178, 34, 34)\",\n \"firebrick1\": \"rgb(255, 48, 48)\",\n \"firebrick2\": \"rgb(238, 44, 44)\",\n \"firebrick3\": \"rgb(205, 38, 38)\",\n \"firebrick4\": \"rgb(139, 26, 26)\",\n \"floralwhite\": \"rgb(255, 250, 240)\",\n \"forestgreen\": \"rgb(34, 139, 34)\",\n \"gainsboro\": \"rgb(220, 220, 220)\",\n \"ghostwhite\": \"rgb(248, 248, 255)\",\n \"gold\": \"rgb(255, 215, 0)\",\n \"gold1\": \"rgb(255, 215, 0)\",\n \"gold2\": \"rgb(238, 201, 0)\",\n \"gold3\": \"rgb(205, 173, 0)\",\n \"gold4\": \"rgb(139, 117, 0)\",\n \"goldenrod\": \"rgb(218, 165, 32)\",\n \"goldenrod1\": \"rgb(255, 193, 37)\",\n \"goldenrod2\": \"rgb(238, 180, 34)\",\n \"goldenrod3\": \"rgb(205, 155, 29)\",\n \"goldenrod4\": \"rgb(139, 105, 20)\",\n \"gray\": \"rgb(190, 190, 190)\",\n \"gray0\": \"rgb(0, 0, 0)\",\n \"gray1\": \"rgb(3, 3, 3)\",\n \"gray10\": \"rgb(26, 26, 26)\",\n \"gray100\": \"rgb(255, 255, 255)\",\n \"gray11\": \"rgb(28, 28, 28)\",\n \"gray12\": \"rgb(31, 31, 31)\",\n \"gray13\": \"rgb(33, 33, 33)\",\n \"gray14\": \"rgb(36, 36, 36)\",\n \"gray15\": \"rgb(38, 38, 38)\",\n \"gray16\": \"rgb(41, 41, 41)\",\n \"gray17\": \"rgb(43, 43, 43)\",\n \"gray18\": \"rgb(46, 46, 46)\",\n \"gray19\": \"rgb(48, 48, 48)\",\n \"gray2\": \"rgb(5, 5, 5)\",\n \"gray20\": \"rgb(51, 51, 51)\",\n \"gray21\": \"rgb(54, 54, 54)\",\n \"gray22\": \"rgb(56, 56, 56)\",\n \"gray23\": \"rgb(59, 59, 59)\",\n \"gray24\": \"rgb(61, 61, 61)\",\n \"gray25\": \"rgb(64, 64, 64)\",\n \"gray26\": \"rgb(66, 66, 66)\",\n \"gray27\": \"rgb(69, 69, 69)\",\n \"gray28\": \"rgb(71, 71, 71)\",\n \"gray29\": \"rgb(74, 74, 74)\",\n \"gray3\": \"rgb(8, 8, 8)\",\n \"gray30\": \"rgb(77, 77, 77)\",\n \"gray31\": \"rgb(79, 79, 79)\",\n \"gray32\": \"rgb(82, 82, 82)\",\n \"gray33\": \"rgb(84, 84, 84)\",\n \"gray34\": \"rgb(87, 87, 87)\",\n \"gray35\": \"rgb(89, 89, 89)\",\n \"gray36\": \"rgb(92, 92, 92)\",\n \"gray37\": \"rgb(94, 94, 94)\",\n \"gray38\": \"rgb(97, 97, 97)\",\n \"gray39\": \"rgb(99, 99, 99)\",\n \"gray4\": \"rgb(10, 10, 10)\",\n \"gray40\": \"rgb(102, 102, 102)\",\n \"gray41\": \"rgb(105, 105, 105)\",\n \"gray42\": \"rgb(107, 107, 107)\",\n \"gray43\": \"rgb(110, 110, 110)\",\n \"gray44\": \"rgb(112, 112, 112)\",\n \"gray45\": \"rgb(115, 115, 115)\",\n \"gray46\": \"rgb(117, 117, 117)\",\n \"gray47\": \"rgb(120, 120, 120)\",\n \"gray48\": \"rgb(122, 122, 122)\",\n \"gray49\": \"rgb(125, 125, 125)\",\n \"gray5\": \"rgb(13, 13, 13)\",\n \"gray50\": \"rgb(127, 127, 127)\",\n \"gray51\": \"rgb(130, 130, 130)\",\n \"gray52\": \"rgb(133, 133, 133)\",\n \"gray53\": \"rgb(135, 135, 135)\",\n \"gray54\": \"rgb(138, 138, 138)\",\n \"gray55\": \"rgb(140, 140, 140)\",\n \"gray56\": \"rgb(143, 143, 143)\",\n \"gray57\": \"rgb(145, 145, 145)\",\n \"gray58\": \"rgb(148, 148, 148)\",\n \"gray59\": \"rgb(150, 150, 150)\",\n \"gray6\": \"rgb(15, 15, 15)\",\n \"gray60\": \"rgb(153, 153, 153)\",\n \"gray61\": \"rgb(156, 156, 156)\",\n \"gray62\": \"rgb(158, 158, 158)\",\n \"gray63\": \"rgb(161, 161, 161)\",\n \"gray64\": \"rgb(163, 163, 163)\",\n \"gray65\": \"rgb(166, 166, 166)\",\n \"gray66\": \"rgb(168, 168, 168)\",\n \"gray67\": \"rgb(171, 171, 171)\",\n \"gray68\": \"rgb(173, 173, 173)\",\n \"gray69\": \"rgb(176, 176, 176)\",\n \"gray7\": \"rgb(18, 18, 18)\",\n \"gray70\": \"rgb(179, 179, 179)\",\n \"gray71\": \"rgb(181, 181, 181)\",\n \"gray72\": \"rgb(184, 184, 184)\",\n \"gray73\": \"rgb(186, 186, 186)\",\n \"gray74\": \"rgb(189, 189, 189)\",\n \"gray75\": \"rgb(191, 191, 191)\",\n \"gray76\": \"rgb(194, 194, 194)\",\n \"gray77\": \"rgb(196, 196, 196)\",\n \"gray78\": \"rgb(199, 199, 199)\",\n \"gray79\": \"rgb(201, 201, 201)\",\n \"gray8\": \"rgb(20, 20, 20)\",\n \"gray80\": \"rgb(204, 204, 204)\",\n \"gray81\": \"rgb(207, 207, 207)\",\n \"gray82\": \"rgb(209, 209, 209)\",\n \"gray83\": \"rgb(212, 212, 212)\",\n \"gray84\": \"rgb(214, 214, 214)\",\n \"gray85\": \"rgb(217, 217, 217)\",\n \"gray86\": \"rgb(219, 219, 219)\",\n \"gray87\": \"rgb(222, 222, 222)\",\n \"gray88\": \"rgb(224, 224, 224)\",\n \"gray89\": \"rgb(227, 227, 227)\",\n \"gray9\": \"rgb(23, 23, 23)\",\n \"gray90\": \"rgb(229, 229, 229)\",\n \"gray91\": \"rgb(232, 232, 232)\",\n \"gray92\": \"rgb(235, 235, 235)\",\n \"gray93\": \"rgb(237, 237, 237)\",\n \"gray94\": \"rgb(240, 240, 240)\",\n \"gray95\": \"rgb(242, 242, 242)\",\n \"gray96\": \"rgb(245, 245, 245)\",\n \"gray97\": \"rgb(247, 247, 247)\",\n \"gray98\": \"rgb(250, 250, 250)\",\n \"gray99\": \"rgb(252, 252, 252)\",\n \"green\": \"rgb(0, 255, 0)\",\n \"green1\": \"rgb(0, 255, 0)\",\n \"green2\": \"rgb(0, 238, 0)\",\n \"green3\": \"rgb(0, 205, 0)\",\n \"green4\": \"rgb(0, 139, 0)\",\n \"greenyellow\": \"rgb(173, 255, 47)\",\n \"grey\": \"rgb(190, 190, 190)\",\n \"grey0\": \"rgb(0, 0, 0)\",\n \"grey1\": \"rgb(3, 3, 3)\",\n \"grey10\": \"rgb(26, 26, 26)\",\n \"grey100\": \"rgb(255, 255, 255)\",\n \"grey11\": \"rgb(28, 28, 28)\",\n \"grey12\": \"rgb(31, 31, 31)\",\n \"grey13\": \"rgb(33, 33, 33)\",\n \"grey14\": \"rgb(36, 36, 36)\",\n \"grey15\": \"rgb(38, 38, 38)\",\n \"grey16\": \"rgb(41, 41, 41)\",\n \"grey17\": \"rgb(43, 43, 43)\",\n \"grey18\": \"rgb(46, 46, 46)\",\n \"grey19\": \"rgb(48, 48, 48)\",\n \"grey2\": \"rgb(5, 5, 5)\",\n \"grey20\": \"rgb(51, 51, 51)\",\n \"grey21\": \"rgb(54, 54, 54)\",\n \"grey22\": \"rgb(56, 56, 56)\",\n \"grey23\": \"rgb(59, 59, 59)\",\n \"grey24\": \"rgb(61, 61, 61)\",\n \"grey25\": \"rgb(64, 64, 64)\",\n \"grey26\": \"rgb(66, 66, 66)\",\n \"grey27\": \"rgb(69, 69, 69)\",\n \"grey28\": \"rgb(71, 71, 71)\",\n \"grey29\": \"rgb(74, 74, 74)\",\n \"grey3\": \"rgb(8, 8, 8)\",\n \"grey30\": \"rgb(77, 77, 77)\",\n \"grey31\": \"rgb(79, 79, 79)\",\n \"grey32\": \"rgb(82, 82, 82)\",\n \"grey33\": \"rgb(84, 84, 84)\",\n \"grey34\": \"rgb(87, 87, 87)\",\n \"grey35\": \"rgb(89, 89, 89)\",\n \"grey36\": \"rgb(92, 92, 92)\",\n \"grey37\": \"rgb(94, 94, 94)\",\n \"grey38\": \"rgb(97, 97, 97)\",\n \"grey39\": \"rgb(99, 99, 99)\",\n \"grey4\": \"rgb(10, 10, 10)\",\n \"grey40\": \"rgb(102, 102, 102)\",\n \"grey41\": \"rgb(105, 105, 105)\",\n \"grey42\": \"rgb(107, 107, 107)\",\n \"grey43\": \"rgb(110, 110, 110)\",\n \"grey44\": \"rgb(112, 112, 112)\",\n \"grey45\": \"rgb(115, 115, 115)\",\n \"grey46\": \"rgb(117, 117, 117)\",\n \"grey47\": \"rgb(120, 120, 120)\",\n \"grey48\": \"rgb(122, 122, 122)\",\n \"grey49\": \"rgb(125, 125, 125)\",\n \"grey5\": \"rgb(13, 13, 13)\",\n \"grey50\": \"rgb(127, 127, 127)\",\n \"grey51\": \"rgb(130, 130, 130)\",\n \"grey52\": \"rgb(133, 133, 133)\",\n \"grey53\": \"rgb(135, 135, 135)\",\n \"grey54\": \"rgb(138, 138, 138)\",\n \"grey55\": \"rgb(140, 140, 140)\",\n \"grey56\": \"rgb(143, 143, 143)\",\n \"grey57\": \"rgb(145, 145, 145)\",\n \"grey58\": \"rgb(148, 148, 148)\",\n \"grey59\": \"rgb(150, 150, 150)\",\n \"grey6\": \"rgb(15, 15, 15)\",\n \"grey60\": \"rgb(153, 153, 153)\",\n \"grey61\": \"rgb(156, 156, 156)\",\n \"grey62\": \"rgb(158, 158, 158)\",\n \"grey63\": \"rgb(161, 161, 161)\",\n \"grey64\": \"rgb(163, 163, 163)\",\n \"grey65\": \"rgb(166, 166, 166)\",\n \"grey66\": \"rgb(168, 168, 168)\",\n \"grey67\": \"rgb(171, 171, 171)\",\n \"grey68\": \"rgb(173, 173, 173)\",\n \"grey69\": \"rgb(176, 176, 176)\",\n \"grey7\": \"rgb(18, 18, 18)\",\n \"grey70\": \"rgb(179, 179, 179)\",\n \"grey71\": \"rgb(181, 181, 181)\",\n \"grey72\": \"rgb(184, 184, 184)\",\n \"grey73\": \"rgb(186, 186, 186)\",\n \"grey74\": \"rgb(189, 189, 189)\",\n \"grey75\": \"rgb(191, 191, 191)\",\n \"grey76\": \"rgb(194, 194, 194)\",\n \"grey77\": \"rgb(196, 196, 196)\",\n \"grey78\": \"rgb(199, 199, 199)\",\n \"grey79\": \"rgb(201, 201, 201)\",\n \"grey8\": \"rgb(20, 20, 20)\",\n \"grey80\": \"rgb(204, 204, 204)\",\n \"grey81\": \"rgb(207, 207, 207)\",\n \"grey82\": \"rgb(209, 209, 209)\",\n \"grey83\": \"rgb(212, 212, 212)\",\n \"grey84\": \"rgb(214, 214, 214)\",\n \"grey85\": \"rgb(217, 217, 217)\",\n \"grey86\": \"rgb(219, 219, 219)\",\n \"grey87\": \"rgb(222, 222, 222)\",\n \"grey88\": \"rgb(224, 224, 224)\",\n \"grey89\": \"rgb(227, 227, 227)\",\n \"grey9\": \"rgb(23, 23, 23)\",\n \"grey90\": \"rgb(229, 229, 229)\",\n \"grey91\": \"rgb(232, 232, 232)\",\n \"grey92\": \"rgb(235, 235, 235)\",\n \"grey93\": \"rgb(237, 237, 237)\",\n \"grey94\": \"rgb(240, 240, 240)\",\n \"grey95\": \"rgb(242, 242, 242)\",\n \"grey96\": \"rgb(245, 245, 245)\",\n \"grey97\": \"rgb(247, 247, 247)\",\n \"grey98\": \"rgb(250, 250, 250)\",\n \"grey99\": \"rgb(252, 252, 252)\",\n \"honeydew\": \"rgb(240, 255, 240)\",\n \"honeydew1\": \"rgb(240, 255, 240)\",\n \"honeydew2\": \"rgb(224, 238, 224)\",\n \"honeydew3\": \"rgb(193, 205, 193)\",\n \"honeydew4\": \"rgb(131, 139, 131)\",\n \"hotpink\": \"rgb(255, 105, 180)\",\n \"hotpink1\": \"rgb(255, 110, 180)\",\n \"hotpink2\": \"rgb(238, 106, 167)\",\n \"hotpink3\": \"rgb(205, 96, 144)\",\n \"hotpink4\": \"rgb(139, 58, 98)\",\n \"indianred\": \"rgb(205, 92, 92)\",\n \"indianred1\": \"rgb(255, 106, 106)\",\n \"indianred2\": \"rgb(238, 99, 99)\",\n \"indianred3\": \"rgb(205, 85, 85)\",\n \"indianred4\": \"rgb(139, 58, 58)\",\n \"ivory\": \"rgb(255, 255, 240)\",\n \"ivory1\": \"rgb(255, 255, 240)\",\n \"ivory2\": \"rgb(238, 238, 224)\",\n \"ivory3\": \"rgb(205, 205, 193)\",\n \"ivory4\": \"rgb(139, 139, 131)\",\n \"khaki\": \"rgb(240, 230, 140)\",\n \"khaki1\": \"rgb(255, 246, 143)\",\n \"khaki2\": \"rgb(238, 230, 133)\",\n \"khaki3\": \"rgb(205, 198, 115)\",\n \"khaki4\": \"rgb(139, 134, 78)\",\n \"lavender\": \"rgb(230, 230, 250)\",\n \"lavenderblush\": \"rgb(255, 240, 245)\",\n \"lavenderblush1\": \"rgb(255, 240, 245)\",\n \"lavenderblush2\": \"rgb(238, 224, 229)\",\n \"lavenderblush3\": \"rgb(205, 193, 197)\",\n \"lavenderblush4\": \"rgb(139, 131, 134)\",\n \"lawngreen\": \"rgb(124, 252, 0)\",\n \"lemonchiffon\": \"rgb(255, 250, 205)\",\n \"lemonchiffon1\": \"rgb(255, 250, 205)\",\n \"lemonchiffon2\": \"rgb(238, 233, 191)\",\n \"lemonchiffon3\": \"rgb(205, 201, 165)\",\n \"lemonchiffon4\": \"rgb(139, 137, 112)\",\n \"lightblue\": \"rgb(173, 216, 230)\",\n \"lightblue1\": \"rgb(191, 239, 255)\",\n \"lightblue2\": \"rgb(178, 223, 238)\",\n \"lightblue3\": \"rgb(154, 192, 205)\",\n \"lightblue4\": \"rgb(104, 131, 139)\",\n \"lightcoral\": \"rgb(240, 128, 128)\",\n \"lightcyan\": \"rgb(224, 255, 255)\",\n \"lightcyan1\": \"rgb(224, 255, 255)\",\n \"lightcyan2\": \"rgb(209, 238, 238)\",\n \"lightcyan3\": \"rgb(180, 205, 205)\",\n \"lightcyan4\": \"rgb(122, 139, 139)\",\n \"lightgoldenrod\": \"rgb(238, 221, 130)\",\n \"lightgoldenrod1\": \"rgb(255, 236, 139)\",\n \"lightgoldenrod2\": \"rgb(238, 220, 130)\",\n \"lightgoldenrod3\": \"rgb(205, 190, 112)\",\n \"lightgoldenrod4\": \"rgb(139, 129, 76)\",\n \"lightgoldenrodyellow\": \"rgb(250, 250, 210)\",\n \"lightgray\": \"rgb(211, 211, 211)\",\n \"lightgreen\": \"rgb(144, 238, 144)\",\n \"lightgrey\": \"rgb(211, 211, 211)\",\n \"lightpink\": \"rgb(255, 182, 193)\",\n \"lightpink1\": \"rgb(255, 174, 185)\",\n \"lightpink2\": \"rgb(238, 162, 173)\",\n \"lightpink3\": \"rgb(205, 140, 149)\",\n \"lightpink4\": \"rgb(139, 95, 101)\",\n \"lightsalmon\": \"rgb(255, 160, 122)\",\n \"lightsalmon1\": \"rgb(255, 160, 122)\",\n \"lightsalmon2\": \"rgb(238, 149, 114)\",\n \"lightsalmon3\": \"rgb(205, 129, 98)\",\n \"lightsalmon4\": \"rgb(139, 87, 66)\",\n \"lightseagreen\": \"rgb(32, 178, 170)\",\n \"lightskyblue\": \"rgb(135, 206, 250)\",\n \"lightskyblue1\": \"rgb(176, 226, 255)\",\n \"lightskyblue2\": \"rgb(164, 211, 238)\",\n \"lightskyblue3\": \"rgb(141, 182, 205)\",\n \"lightskyblue4\": \"rgb(96, 123, 139)\",\n \"lightslateblue\": \"rgb(132, 112, 255)\",\n \"lightslategray\": \"rgb(119, 136, 153)\",\n \"lightslategrey\": \"rgb(119, 136, 153)\",\n \"lightsteelblue\": \"rgb(176, 196, 222)\",\n \"lightsteelblue1\": \"rgb(202, 225, 255)\",\n \"lightsteelblue2\": \"rgb(188, 210, 238)\",\n \"lightsteelblue3\": \"rgb(162, 181, 205)\",\n \"lightsteelblue4\": \"rgb(110, 123, 139)\",\n \"lightyellow\": \"rgb(255, 255, 224)\",\n \"lightyellow1\": \"rgb(255, 255, 224)\",\n \"lightyellow2\": \"rgb(238, 238, 209)\",\n \"lightyellow3\": \"rgb(205, 205, 180)\",\n \"lightyellow4\": \"rgb(139, 139, 122)\",\n \"limegreen\": \"rgb(50, 205, 50)\",\n \"linen\": \"rgb(250, 240, 230)\",\n \"magenta\": \"rgb(255, 0, 255)\",\n \"magenta1\": \"rgb(255, 0, 255)\",\n \"magenta2\": \"rgb(238, 0, 238)\",\n \"magenta3\": \"rgb(205, 0, 205)\",\n \"magenta4\": \"rgb(139, 0, 139)\",\n \"maroon\": \"rgb(176, 48, 96)\",\n \"maroon1\": \"rgb(255, 52, 179)\",\n \"maroon2\": \"rgb(238, 48, 167)\",\n \"maroon3\": \"rgb(205, 41, 144)\",\n \"maroon4\": \"rgb(139, 28, 98)\",\n \"mediumaquamarine\": \"rgb(102, 205, 170)\",\n \"mediumblue\": \"rgb(0, 0, 205)\",\n \"mediumorchid\": \"rgb(186, 85, 211)\",\n \"mediumorchid1\": \"rgb(224, 102, 255)\",\n \"mediumorchid2\": \"rgb(209, 95, 238)\",\n \"mediumorchid3\": \"rgb(180, 82, 205)\",\n \"mediumorchid4\": \"rgb(122, 55, 139)\",\n \"mediumpurple\": \"rgb(147, 112, 219)\",\n \"mediumpurple1\": \"rgb(171, 130, 255)\",\n \"mediumpurple2\": \"rgb(159, 121, 238)\",\n \"mediumpurple3\": \"rgb(137, 104, 205)\",\n \"mediumpurple4\": \"rgb(93, 71, 139)\",\n \"mediumseagreen\": \"rgb(60, 179, 113)\",\n \"mediumslateblue\": \"rgb(123, 104, 238)\",\n \"mediumspringgreen\": \"rgb(0, 250, 154)\",\n \"mediumturquoise\": \"rgb(72, 209, 204)\",\n \"mediumvioletred\": \"rgb(199, 21, 133)\",\n \"midnightblue\": \"rgb(25, 25, 112)\",\n \"mintcream\": \"rgb(245, 255, 250)\",\n \"mistyrose\": \"rgb(255, 228, 225)\",\n \"mistyrose1\": \"rgb(255, 228, 225)\",\n \"mistyrose2\": \"rgb(238, 213, 210)\",\n \"mistyrose3\": \"rgb(205, 183, 181)\",\n \"mistyrose4\": \"rgb(139, 125, 123)\",\n \"moccasin\": \"rgb(255, 228, 181)\",\n \"navajowhite\": \"rgb(255, 222, 173)\",\n \"navajowhite1\": \"rgb(255, 222, 173)\",\n \"navajowhite2\": \"rgb(238, 207, 161)\",\n \"navajowhite3\": \"rgb(205, 179, 139)\",\n \"navajowhite4\": \"rgb(139, 121, 94)\",\n \"navy\": \"rgb(0, 0, 128)\",\n \"navyblue\": \"rgb(0, 0, 128)\",\n \"oldlace\": \"rgb(253, 245, 230)\",\n \"olivedrab\": \"rgb(107, 142, 35)\",\n \"olivedrab1\": \"rgb(192, 255, 62)\",\n \"olivedrab2\": \"rgb(179, 238, 58)\",\n \"olivedrab3\": \"rgb(154, 205, 50)\",\n \"olivedrab4\": \"rgb(105, 139, 34)\",\n \"orange\": \"rgb(255, 165, 0)\",\n \"orange1\": \"rgb(255, 165, 0)\",\n \"orange2\": \"rgb(238, 154, 0)\",\n \"orange3\": \"rgb(205, 133, 0)\",\n \"orange4\": \"rgb(139, 90, 0)\",\n \"orangered\": \"rgb(255, 69, 0)\",\n \"orangered1\": \"rgb(255, 69, 0)\",\n \"orangered2\": \"rgb(238, 64, 0)\",\n \"orangered3\": \"rgb(205, 55, 0)\",\n \"orangered4\": \"rgb(139, 37, 0)\",\n \"orchid\": \"rgb(218, 112, 214)\",\n \"orchid1\": \"rgb(255, 131, 250)\",\n \"orchid2\": \"rgb(238, 122, 233)\",\n \"orchid3\": \"rgb(205, 105, 201)\",\n \"orchid4\": \"rgb(139, 71, 137)\",\n \"palegoldenrod\": \"rgb(238, 232, 170)\",\n \"palegreen\": \"rgb(152, 251, 152)\",\n \"palegreen1\": \"rgb(154, 255, 154)\",\n \"palegreen2\": \"rgb(144, 238, 144)\",\n \"palegreen3\": \"rgb(124, 205, 124)\",\n \"palegreen4\": \"rgb(84, 139, 84)\",\n \"paleturquoise\": \"rgb(175, 238, 238)\",\n \"paleturquoise1\": \"rgb(187, 255, 255)\",\n \"paleturquoise2\": \"rgb(174, 238, 238)\",\n \"paleturquoise3\": \"rgb(150, 205, 205)\",\n \"paleturquoise4\": \"rgb(102, 139, 139)\",\n \"palevioletred\": \"rgb(219, 112, 147)\",\n \"palevioletred1\": \"rgb(255, 130, 171)\",\n \"palevioletred2\": \"rgb(238, 121, 159)\",\n \"palevioletred3\": \"rgb(205, 104, 137)\",\n \"palevioletred4\": \"rgb(139, 71, 93)\",\n \"papayawhip\": \"rgb(255, 239, 213)\",\n \"peachpuff\": \"rgb(255, 218, 185)\",\n \"peachpuff1\": \"rgb(255, 218, 185)\",\n \"peachpuff2\": \"rgb(238, 203, 173)\",\n \"peachpuff3\": \"rgb(205, 175, 149)\",\n \"peachpuff4\": \"rgb(139, 119, 101)\",\n \"peru\": \"rgb(205, 133, 63)\",\n \"pink\": \"rgb(255, 192, 203)\",\n \"pink1\": \"rgb(255, 181, 197)\",\n \"pink2\": \"rgb(238, 169, 184)\",\n \"pink3\": \"rgb(205, 145, 158)\",\n \"pink4\": \"rgb(139, 99, 108)\",\n \"plum\": \"rgb(221, 160, 221)\",\n \"plum1\": \"rgb(255, 187, 255)\",\n \"plum2\": \"rgb(238, 174, 238)\",\n \"plum3\": \"rgb(205, 150, 205)\",\n \"plum4\": \"rgb(139, 102, 139)\",\n \"powderblue\": \"rgb(176, 224, 230)\",\n \"purple\": \"rgb(160, 32, 240)\",\n \"purple1\": \"rgb(155, 48, 255)\",\n \"purple2\": \"rgb(145, 44, 238)\",\n \"purple3\": \"rgb(125, 38, 205)\",\n \"purple4\": \"rgb(85, 26, 139)\",\n \"red\": \"rgb(255, 0, 0)\",\n \"red1\": \"rgb(255, 0, 0)\",\n \"red2\": \"rgb(238, 0, 0)\",\n \"red3\": \"rgb(205, 0, 0)\",\n \"red4\": \"rgb(139, 0, 0)\",\n \"rosybrown\": \"rgb(188, 143, 143)\",\n \"rosybrown1\": \"rgb(255, 193, 193)\",\n \"rosybrown2\": \"rgb(238, 180, 180)\",\n \"rosybrown3\": \"rgb(205, 155, 155)\",\n \"rosybrown4\": \"rgb(139, 105, 105)\",\n \"royalblue\": \"rgb(65, 105, 225)\",\n \"royalblue1\": \"rgb(72, 118, 255)\",\n \"royalblue2\": \"rgb(67, 110, 238)\",\n \"royalblue3\": \"rgb(58, 95, 205)\",\n \"royalblue4\": \"rgb(39, 64, 139)\",\n \"saddlebrown\": \"rgb(139, 69, 19)\",\n \"salmon\": \"rgb(250, 128, 114)\",\n \"salmon1\": \"rgb(255, 140, 105)\",\n \"salmon2\": \"rgb(238, 130, 98)\",\n \"salmon3\": \"rgb(205, 112, 84)\",\n \"salmon4\": \"rgb(139, 76, 57)\",\n \"sandybrown\": \"rgb(244, 164, 96)\",\n \"seagreen\": \"rgb(46, 139, 87)\",\n \"seagreen1\": \"rgb(84, 255, 159)\",\n \"seagreen2\": \"rgb(78, 238, 148)\",\n \"seagreen3\": \"rgb(67, 205, 128)\",\n \"seagreen4\": \"rgb(46, 139, 87)\",\n \"seashell\": \"rgb(255, 245, 238)\",\n \"seashell1\": \"rgb(255, 245, 238)\",\n \"seashell2\": \"rgb(238, 229, 222)\",\n \"seashell3\": \"rgb(205, 197, 191)\",\n \"seashell4\": \"rgb(139, 134, 130)\",\n \"sienna\": \"rgb(160, 82, 45)\",\n \"sienna1\": \"rgb(255, 130, 71)\",\n \"sienna2\": \"rgb(238, 121, 66)\",\n \"sienna3\": \"rgb(205, 104, 57)\",\n \"sienna4\": \"rgb(139, 71, 38)\",\n \"skyblue\": \"rgb(135, 206, 235)\",\n \"skyblue1\": \"rgb(135, 206, 255)\",\n \"skyblue2\": \"rgb(126, 192, 238)\",\n \"skyblue3\": \"rgb(108, 166, 205)\",\n \"skyblue4\": \"rgb(74, 112, 139)\",\n \"slateblue\": \"rgb(106, 90, 205)\",\n \"slateblue1\": \"rgb(131, 111, 255)\",\n \"slateblue2\": \"rgb(122, 103, 238)\",\n \"slateblue3\": \"rgb(105, 89, 205)\",\n \"slateblue4\": \"rgb(71, 60, 139)\",\n \"slategray\": \"rgb(112, 128, 144)\",\n \"slategray1\": \"rgb(198, 226, 255)\",\n \"slategray2\": \"rgb(185, 211, 238)\",\n \"slategray3\": \"rgb(159, 182, 205)\",\n \"slategray4\": \"rgb(108, 123, 139)\",\n \"slategrey\": \"rgb(112, 128, 144)\",\n \"snow\": \"rgb(255, 250, 250)\",\n \"snow1\": \"rgb(255, 250, 250)\",\n \"snow2\": \"rgb(238, 233, 233)\",\n \"snow3\": \"rgb(205, 201, 201)\",\n \"snow4\": \"rgb(139, 137, 137)\",\n \"springgreen\": \"rgb(0, 255, 127)\",\n \"springgreen1\": \"rgb(0, 255, 127)\",\n \"springgreen2\": \"rgb(0, 238, 118)\",\n \"springgreen3\": \"rgb(0, 205, 102)\",\n \"springgreen4\": \"rgb(0, 139, 69)\",\n \"steelblue\": \"rgb(70, 130, 180)\",\n \"steelblue1\": \"rgb(99, 184, 255)\",\n \"steelblue2\": \"rgb(92, 172, 238)\",\n \"steelblue3\": \"rgb(79, 148, 205)\",\n \"steelblue4\": \"rgb(54, 100, 139)\",\n \"tan\": \"rgb(210, 180, 140)\",\n \"tan1\": \"rgb(255, 165, 79)\",\n \"tan2\": \"rgb(238, 154, 73)\",\n \"tan3\": \"rgb(205, 133, 63)\",\n \"tan4\": \"rgb(139, 90, 43)\",\n \"thistle\": \"rgb(216, 191, 216)\",\n \"thistle1\": \"rgb(255, 225, 255)\",\n \"thistle2\": \"rgb(238, 210, 238)\",\n \"thistle3\": \"rgb(205, 181, 205)\",\n \"thistle4\": \"rgb(139, 123, 139)\",\n \"tomato\": \"rgb(255, 99, 71)\",\n \"tomato1\": \"rgb(255, 99, 71)\",\n \"tomato2\": \"rgb(238, 92, 66)\",\n \"tomato3\": \"rgb(205, 79, 57)\",\n \"tomato4\": \"rgb(139, 54, 38)\",\n \"turquoise\": \"rgb(64, 224, 208)\",\n \"turquoise1\": \"rgb(0, 245, 255)\",\n \"turquoise2\": \"rgb(0, 229, 238)\",\n \"turquoise3\": \"rgb(0, 197, 205)\",\n \"turquoise4\": \"rgb(0, 134, 139)\",\n \"violet\": \"rgb(238, 130, 238)\",\n \"violetred\": \"rgb(208, 32, 144)\",\n \"violetred1\": \"rgb(255, 62, 150)\",\n \"violetred2\": \"rgb(238, 58, 140)\",\n \"violetred3\": \"rgb(205, 50, 120)\",\n \"violetred4\": \"rgb(139, 34, 82)\",\n \"wheat\": \"rgb(245, 222, 179)\",\n \"wheat1\": \"rgb(255, 231, 186)\",\n \"wheat2\": \"rgb(238, 216, 174)\",\n \"wheat3\": \"rgb(205, 186, 150)\",\n \"wheat4\": \"rgb(139, 126, 102)\",\n \"white\": \"rgb(255, 255, 255)\",\n \"whitesmoke\": \"rgb(245, 245, 245)\",\n \"yellow\": \"rgb(255, 255, 0)\",\n \"yellow1\": \"rgb(255, 255, 0)\",\n \"yellow2\": \"rgb(238, 238, 0)\",\n \"yellow3\": \"rgb(205, 205, 0)\",\n \"yellow4\": \"rgb(139, 139, 0)\",\n \"yellowgreen\": \"rgb(154, 205, 50)\"\n};\n// SOURCE FILE: libdot/js/lib_f.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Grab bag of utility functions.\n */\nlib.f = {};\n\n/**\n * Create a unique enum value.\n *\n * @suppress {lintChecks}\n * @param {string} name A human friendly name for debugging.\n * @return {Object} A unique enum that won't compare equal to anything else.\n */\nlib.f.createEnum = function(name) {\n // We use a String object as nothing else should be using them -- we want to\n // use string primitives normally. But debuggers will include our name.\n return new String(name);\n};\n\n/**\n * Replace variable references in a string.\n *\n * Variables are of the form %FUNCTION(VARNAME). FUNCTION is an optional\n * escape function to apply to the value.\n *\n * For example\n * lib.f.replaceVars(\"%(greeting), %encodeURIComponent(name)\",\n * { greeting: \"Hello\",\n * name: \"Google+\" });\n *\n * Will result in \"Hello, Google%2B\".\n */\nlib.f.replaceVars = function(str, vars) {\n return str.replace(/%([a-z]*)\\(([^\\)]+)\\)/gi, function(match, fn, varname) {\n if (typeof vars[varname] == 'undefined')\n throw 'Unknown variable: ' + varname;\n\n var rv = vars[varname];\n\n if (fn in lib.f.replaceVars.functions) {\n rv = lib.f.replaceVars.functions[fn](rv);\n } else if (fn) {\n throw 'Unknown escape function: ' + fn;\n }\n\n return rv;\n });\n};\n\n/**\n * Functions that can be used with replaceVars.\n *\n * Clients can add to this list to extend lib.f.replaceVars().\n */\nlib.f.replaceVars.functions = {\n encodeURI: encodeURI,\n encodeURIComponent: encodeURIComponent,\n escapeHTML: function(str) {\n var map = {\n '<': '<',\n '>': '>',\n '&': '&',\n '\"': '"',\n \"'\": '''\n };\n\n return str.replace(/[<>&\\\"\\']/g, function(m) { return map[m] });\n }\n};\n\n/**\n * Get the list of accepted UI languages.\n *\n * @param {function(Array)} callback Function to invoke with the results. The\n * parameter is a list of locale names.\n */\nlib.f.getAcceptLanguages = function(callback) {\n if (lib.f.getAcceptLanguages.chromeSupported()) {\n chrome.i18n.getAcceptLanguages(callback);\n } else {\n setTimeout(function() {\n callback([navigator.language.replace(/-/g, '_')]);\n }, 0);\n }\n};\n\nlib.f.getAcceptLanguages.chromeSupported = function() {\n return window.chrome && chrome.i18n;\n};\n\n/**\n * Parse a query string into a hash.\n *\n * This takes a url query string in the form 'name1=value&name2=value' and\n * converts it into an object of the form { name1: 'value', name2: 'value' }.\n * If a given name appears multiple times in the query string, only the\n * last value will appear in the result.\n *\n * Names and values are passed through decodeURIComponent before being added\n * to the result object.\n *\n * @param {string} queryString The string to parse. If it starts with a\n * leading '?', the '?' will be ignored.\n */\nlib.f.parseQuery = function(queryString) {\n if (queryString.startsWith('?'))\n queryString = queryString.substr(1);\n\n var rv = {};\n\n var pairs = queryString.split('&');\n for (var i = 0; i < pairs.length; i++) {\n var pair = pairs[i].split('=');\n rv[decodeURIComponent(pair[0])] = decodeURIComponent(pair[1]);\n }\n\n return rv;\n};\n\nlib.f.getURL = function(path) {\n if (lib.f.getURL.chromeSupported())\n return chrome.runtime.getURL(path);\n\n return path;\n};\n\nlib.f.getURL.chromeSupported = function() {\n return window.chrome && chrome.runtime && chrome.runtime.getURL;\n};\n\n/**\n * Clamp a given integer to a specified range.\n *\n * @param {integer} v The value to be clamped.\n * @param {integer} min The minimum acceptable value.\n * @param {integer} max The maximum acceptable value.\n */\nlib.f.clamp = function(v, min, max) {\n if (v < min)\n return min;\n if (v > max)\n return max;\n return v;\n};\n\n/**\n * Left pad a number to a given length with leading zeros.\n *\n * @param {string|integer} number The number to pad.\n * @param {integer} length The desired length.\n * @return {string} The padded number as a string.\n */\nlib.f.zpad = function(number, length) {\n return String(number).padStart(length, '0');\n};\n\n/**\n * Return a string containing a given number of space characters.\n *\n * This method maintains a static cache of the largest amount of whitespace\n * ever requested. It shouldn't be used to generate an insanely huge amount of\n * whitespace.\n *\n * @param {integer} length The desired amount of whitespace.\n * @param {string} A string of spaces of the requested length.\n */\nlib.f.getWhitespace = function(length) {\n if (length <= 0)\n return '';\n\n var f = this.getWhitespace;\n if (!f.whitespace)\n f.whitespace = ' ';\n\n while (length > f.whitespace.length) {\n f.whitespace += f.whitespace;\n }\n\n return f.whitespace.substr(0, length);\n};\n\n /**\n * Ensure that a function is called within a certain time limit.\n *\n * Simple usage looks like this...\n *\n * lib.registerInit(lib.f.alarm(onInit));\n *\n * This will log a warning to the console if onInit() is not invoked within\n * 5 seconds.\n *\n * If you're performing some operation that may take longer than 5 seconds you\n * can pass a duration in milliseconds as the optional second parameter.\n *\n * If you pass a string identifier instead of a callback function, you'll get a\n * wrapper generator rather than a single wrapper. Each call to the\n * generator will return a wrapped version of the callback wired to\n * a shared timeout. This is for cases where you want to ensure that at least\n * one of a set of callbacks is invoked before a timeout expires.\n *\n * var alarm = lib.f.alarm('fetch object');\n * lib.foo.fetchObject(alarm(onSuccess), alarm(onFailure));\n *\n * @param {function(*)} callback The function to wrap in an alarm.\n * @param {int} opt_ms Optional number of milliseconds to wait before raising\n * an alarm. Default is 5000 (5 seconds).\n * @return {function} If callback is a function then the return value will be\n * the wrapped callback. If callback is a string then the return value will\n * be a function that generates new wrapped callbacks.\n */\nlib.f.alarm = function(callback, opt_ms) {\n var ms = opt_ms || 5 * 1000;\n var stack = lib.f.getStack(1);\n\n return (function() {\n // This outer function is called immediately. It's here to capture a new\n // scope for the timeout variable.\n\n // The 'timeout' variable is shared by this timeout function, and the\n // callback wrapper.\n var timeout = setTimeout(function() {\n var name = (typeof callback == 'string') ? name : callback.name;\n name = name ? (': ' + name) : '';\n console.warn('lib.f.alarm: timeout expired: ' + (ms / 1000) + 's' + name);\n console.log(stack);\n timeout = null;\n }, ms);\n\n var wrapperGenerator = function(callback) {\n return function() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n\n return callback.apply(null, arguments);\n }\n };\n\n if (typeof callback == 'string')\n return wrapperGenerator;\n\n return wrapperGenerator(callback);\n })();\n};\n\n/**\n * Return the current call stack after skipping a given number of frames.\n *\n * This method is intended to be used for debugging only. It returns an\n * Object instead of an Array, because the console stringifies arrays by\n * default and that's not what we want.\n *\n * A typical call might look like...\n *\n * console.log('Something wicked this way came', lib.f.getStack());\n * // Notice the comma ^\n *\n * This would print the message to the js console, followed by an object\n * which can be clicked to reveal the stack.\n *\n * @param {number} opt_ignoreFrames The optional number of stack frames to\n * ignore. The actual 'getStack' call is always ignored.\n */\nlib.f.getStack = function(opt_ignoreFrames) {\n var ignoreFrames = opt_ignoreFrames ? opt_ignoreFrames + 2 : 2;\n\n var stackArray;\n\n try {\n throw new Error();\n } catch (ex) {\n stackArray = ex.stack.split('\\n');\n }\n\n var stackObject = {};\n for (var i = ignoreFrames; i < stackArray.length; i++) {\n stackObject[i - ignoreFrames] = stackArray[i].replace(/^\\s*at\\s+/, '');\n }\n\n return stackObject;\n};\n\n/**\n * Divides the two numbers and floors the results, unless the remainder is less\n * than an incredibly small value, in which case it returns the ceiling.\n * This is useful when the number are truncated approximations of longer\n * values, and so doing division with these numbers yields a result incredibly\n * close to a whole number.\n *\n * @param {number} numerator\n * @param {number} denominator\n * @return {number}\n */\nlib.f.smartFloorDivide = function(numerator, denominator) {\n var val = numerator / denominator;\n var ceiling = Math.ceil(val);\n if (ceiling - val < .0001) {\n return ceiling;\n } else {\n return Math.floor(val);\n }\n};\n\n/**\n * Get a random integer in a range (inclusive).\n *\n * @param {number} min The lowest integer in the range.\n * @param {number} max The highest integer in the range.\n * @return {number} A random number between min & max.\n */\nlib.f.randomInt = function(min, max) {\n return Math.floor(Math.random() * (max - min + 1)) + min;\n};\n// SOURCE FILE: libdot/js/lib_message_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * MessageManager class handles internationalized strings.\n *\n * Note: chrome.i18n isn't sufficient because...\n * 1. There's a bug in chrome that makes it unavailable in iframes:\n * https://crbug.com/130200\n * 2. The client code may not be packaged in a Chrome extension.\n * 3. The client code may be part of a library packaged in a third-party\n * Chrome extension.\n *\n * @param {Array} languages List of languages to load, in the order they\n * should be loaded. Newer messages replace older ones. 'en' is\n * automatically added as the first language if it is not already present.\n */\nlib.MessageManager = function(languages) {\n this.languages_ = languages.map(\n function(el) { return el.replace(/-/g, '_') });\n\n if (this.languages_.indexOf('en') == -1)\n this.languages_.unshift('en');\n\n this.messages = {};\n};\n\n/**\n * Add message definitions to the message manager.\n *\n * This takes an object of the same format of a Chrome messages.json file. See\n * .\n */\nlib.MessageManager.prototype.addMessages = function(defs) {\n for (var key in defs) {\n var def = defs[key];\n\n if (!def.placeholders) {\n this.messages[key] = def.message;\n } else {\n // Replace \"$NAME$\" placeholders with \"$1\", etc.\n this.messages[key] = def.message.replace(\n /\\$([a-z][^\\s\\$]+)\\$/ig,\n function(m, name) {\n return defs[key].placeholders[name.toLowerCase()].content;\n });\n }\n }\n};\n\n/**\n * Load the first available language message bundle.\n *\n * @param {string} pattern A url pattern containing a \"$1\" where the locale\n * name should go.\n * @param {function(Array,Array)} onComplete Function to be called when loading\n * is complete. The two arrays are the list of successful and failed\n * locale names. If the first parameter is length 0, no locales were\n * loaded.\n */\nlib.MessageManager.prototype.findAndLoadMessages = function(\n pattern, onComplete) {\n var languages = this.languages_.concat();\n var loaded = [];\n var failed = [];\n\n function onLanguageComplete(state) {\n if (state) {\n loaded = languages.shift();\n } else {\n failed = languages.shift();\n }\n\n if (languages.length) {\n tryNextLanguage();\n } else {\n onComplete(loaded, failed);\n }\n }\n\n var tryNextLanguage = function() {\n this.loadMessages(this.replaceReferences(pattern, languages),\n onLanguageComplete.bind(this, true),\n onLanguageComplete.bind(this, false));\n }.bind(this);\n\n tryNextLanguage();\n};\n\n/**\n * Load messages from a messages.json file.\n */\nlib.MessageManager.prototype.loadMessages = function(\n url, onSuccess, opt_onError) {\n var xhr = new XMLHttpRequest();\n\n xhr.onloadend = function() {\n if (xhr.status != 200) {\n if (opt_onError)\n opt_onError(xhr.status);\n\n return;\n }\n\n this.addMessages(JSON.parse(xhr.responseText));\n onSuccess();\n }.bind(this);\n\n xhr.open('GET', url);\n xhr.send();\n};\n\n/**\n * Replace $1...$n references with the elements of the args array.\n *\n * @param {string} msg String containing the message and argument references.\n * @param {Array} args Array containing the argument values.\n */\nlib.MessageManager.replaceReferences = function(msg, args) {\n return msg.replace(/\\$(\\d+)/g, function (m, index) {\n return args[index - 1];\n });\n};\n\n/**\n * Per-instance copy of replaceReferences.\n */\nlib.MessageManager.prototype.replaceReferences =\n lib.MessageManager.replaceReferences;\n\n/**\n * Get a message by name, optionally replacing arguments too.\n *\n * @param {string} msgname String containing the name of the message to get.\n * @param {Array} opt_args Optional array containing the argument values.\n * @param {string} opt_default Optional value to return if the msgname is not\n * found. Returns the message name by default.\n */\nlib.MessageManager.prototype.get = function(msgname, opt_args, opt_default) {\n var message;\n\n if (msgname in this.messages) {\n message = this.messages[msgname];\n\n } else {\n if (window.chrome.i18n)\n message = chrome.i18n.getMessage(msgname);\n\n if (!message) {\n console.warn('Unknown message: ' + msgname);\n return (typeof opt_default == 'undefined') ? msgname : opt_default;\n }\n }\n\n if (!opt_args)\n return message;\n\n if (!(opt_args instanceof Array))\n opt_args = [opt_args];\n\n return this.replaceReferences(message, opt_args);\n};\n\n/**\n * Process all of the \"i18n\" html attributes found in a given dom fragment.\n *\n * The real work happens in processI18nAttribute.\n */\nlib.MessageManager.prototype.processI18nAttributes = function(dom) {\n var nodes = dom.querySelectorAll('[i18n]');\n\n for (var i = 0; i < nodes.length; i++)\n this.processI18nAttribute(nodes[i]);\n};\n\n/**\n * Process the \"i18n\" attribute in the specified node.\n *\n * The i18n attribute should contain a JSON object. The keys are taken to\n * be attribute names, and the values are message names.\n *\n * If the JSON object has a \"_\" (underscore) key, its value is used as the\n * textContent of the element.\n *\n * Message names can refer to other attributes on the same element with by\n * prefixing with a dollar sign. For example...\n *\n * \n *\n * The aria-label message name will be computed as \"SEND_BUTTON_ARIA_LABEL\".\n * Notice that the \"id\" attribute was appended to the target attribute, and\n * the result converted to UPPER_AND_UNDER style.\n */\nlib.MessageManager.prototype.processI18nAttribute = function(node) {\n // Convert the \"lower-and-dashes\" attribute names into\n // \"UPPER_AND_UNDER\" style.\n function thunk(str) { return str.replace(/-/g, '_').toUpperCase() }\n\n var i18n = node.getAttribute('i18n');\n if (!i18n)\n return;\n\n try {\n i18n = JSON.parse(i18n);\n } catch (ex) {\n console.error('Can\\'t parse ' + node.tagName + '#' + node.id + ': ' + i18n);\n throw ex;\n }\n\n // Load all the messages specified in the i18n attributes.\n for (var key in i18n) {\n // The node attribute we'll be setting.\n var attr = key;\n\n var msgname = i18n[key];\n // For \"=foo\", re-use the referenced message name.\n if (msgname.startsWith('=')) {\n key = msgname.substr(1);\n msgname = i18n[key];\n }\n\n // For \"$foo\", calculate the message name.\n if (msgname.startsWith('$'))\n msgname = thunk(node.getAttribute(msgname.substr(1)) + '_' + key);\n\n // Finally load the message.\n var msg = this.get(msgname);\n if (attr == '_')\n node.textContent = msg;\n else\n node.setAttribute(attr, msg);\n }\n};\n// SOURCE FILE: libdot/js/lib_preference_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Constructor for lib.PreferenceManager objects.\n *\n * These objects deal with persisting changes to stable storage and notifying\n * consumers when preferences change.\n *\n * It is intended that the backing store could be something other than HTML5\n * storage, but there aren't any use cases at the moment. In the future there\n * may be a chrome api to store sync-able name/value pairs, and we'd want\n * that.\n *\n * @param {lib.Storage.*} storage The storage object to use as a backing\n * store.\n * @param {string} opt_prefix The optional prefix to be used for all preference\n * names. The '/' character should be used to separate levels of hierarchy,\n * if you're going to have that kind of thing. If provided, the prefix\n * should start with a '/'. If not provided, it defaults to '/'.\n */\nlib.PreferenceManager = function(storage, opt_prefix) {\n this.storage = storage;\n this.storageObserver_ = this.onStorageChange_.bind(this);\n\n this.isActive_ = false;\n this.activate();\n\n this.trace = false;\n\n var prefix = opt_prefix || '/';\n if (!prefix.endsWith('/'))\n prefix += '/';\n\n this.prefix = prefix;\n\n this.prefRecords_ = {};\n this.globalObservers_ = [];\n\n this.childFactories_ = {};\n\n // Map of list-name to {map of child pref managers}\n // As in...\n //\n // this.childLists_ = {\n // 'profile-ids': {\n // 'one': PreferenceManager,\n // 'two': PreferenceManager,\n // ...\n // },\n //\n // 'frob-ids': {\n // ...\n // }\n // }\n this.childLists_ = {};\n};\n\n/**\n * Used internally to indicate that the current value of the preference should\n * be taken from the default value defined with the preference.\n *\n * Equality tests against this value MUST use '===' or '!==' to be accurate.\n */\nlib.PreferenceManager.prototype.DEFAULT_VALUE = lib.f.createEnum('DEFAULT');\n\n/**\n * An individual preference.\n *\n * These objects are managed by the PreferenceManager, you shouldn't need to\n * handle them directly.\n */\nlib.PreferenceManager.Record = function(name, defaultValue) {\n this.name = name;\n this.defaultValue = defaultValue;\n this.currentValue = this.DEFAULT_VALUE;\n this.observers = [];\n};\n\n/**\n * A local copy of the DEFAULT_VALUE constant to make it less verbose.\n */\nlib.PreferenceManager.Record.prototype.DEFAULT_VALUE =\n lib.PreferenceManager.prototype.DEFAULT_VALUE;\n\n/**\n * Register a callback to be invoked when this preference changes.\n *\n * @param {function(value, string, lib.PreferenceManager} observer The function\n * to invoke. It will receive the new value, the name of the preference,\n * and a reference to the PreferenceManager as parameters.\n */\nlib.PreferenceManager.Record.prototype.addObserver = function(observer) {\n this.observers.push(observer);\n};\n\n/**\n * Unregister an observer callback.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.PreferenceManager.Record.prototype.removeObserver = function(observer) {\n var i = this.observers.indexOf(observer);\n if (i >= 0)\n this.observers.splice(i, 1);\n};\n\n/**\n * Fetch the value of this preference.\n */\nlib.PreferenceManager.Record.prototype.get = function() {\n if (this.currentValue === this.DEFAULT_VALUE) {\n if (/^(string|number)$/.test(typeof this.defaultValue))\n return this.defaultValue;\n\n if (typeof this.defaultValue == 'object') {\n // We want to return a COPY of the default value so that users can\n // modify the array or object without changing the default value.\n return JSON.parse(JSON.stringify(this.defaultValue));\n }\n\n return this.defaultValue;\n }\n\n return this.currentValue;\n};\n\n/**\n * Stop this preference manager from tracking storage changes.\n *\n * Call this if you're going to swap out one preference manager for another so\n * that you don't get notified about irrelevant changes.\n */\nlib.PreferenceManager.prototype.deactivate = function() {\n if (!this.isActive_)\n throw new Error('Not activated');\n\n this.isActive_ = false;\n this.storage.removeObserver(this.storageObserver_);\n};\n\n/**\n * Start tracking storage changes.\n *\n * If you previously deactivated this preference manager, you can reactivate it\n * with this method. You don't need to call this at initialization time, as\n * it's automatically called as part of the constructor.\n */\nlib.PreferenceManager.prototype.activate = function() {\n if (this.isActive_)\n throw new Error('Already activated');\n\n this.isActive_ = true;\n this.storage.addObserver(this.storageObserver_);\n};\n\n/**\n * Read the backing storage for these preferences.\n *\n * You should do this once at initialization time to prime the local cache\n * of preference values. The preference manager will monitor the backing\n * storage for changes, so you should not need to call this more than once.\n *\n * This function recursively reads storage for all child preference managers as\n * well.\n *\n * This function is asynchronous, if you need to read preference values, you\n * *must* wait for the callback.\n *\n * @param {function()} opt_callback Optional function to invoke when the read\n * has completed.\n */\nlib.PreferenceManager.prototype.readStorage = function(opt_callback) {\n var pendingChildren = 0;\n\n function onChildComplete() {\n if (--pendingChildren == 0 && opt_callback)\n opt_callback();\n }\n\n var keys = Object.keys(this.prefRecords_).map(\n function(el) { return this.prefix + el }.bind(this));\n\n if (this.trace)\n console.log('Preferences read: ' + this.prefix);\n\n this.storage.getItems(keys, function(items) {\n var prefixLength = this.prefix.length;\n\n for (var key in items) {\n var value = items[key];\n var name = key.substr(prefixLength);\n var needSync = (name in this.childLists_ &&\n (JSON.stringify(value) !=\n JSON.stringify(this.prefRecords_[name].currentValue)));\n\n this.prefRecords_[name].currentValue = value;\n\n if (needSync) {\n pendingChildren++;\n this.syncChildList(name, onChildComplete);\n }\n }\n\n if (pendingChildren == 0 && opt_callback)\n setTimeout(opt_callback);\n }.bind(this));\n};\n\n/**\n * Define a preference.\n *\n * This registers a name, default value, and onChange handler for a preference.\n *\n * @param {string} name The name of the preference. This will be prefixed by\n * the prefix of this PreferenceManager before written to local storage.\n * @param {string|number|boolean|Object|Array|null} value The default value of\n * this preference. Anything that can be represented in JSON is a valid\n * default value.\n * @param {function(value, string, lib.PreferenceManager} opt_observer A\n * function to invoke when the preference changes. It will receive the new\n * value, the name of the preference, and a reference to the\n * PreferenceManager as parameters.\n */\nlib.PreferenceManager.prototype.definePreference = function(\n name, value, opt_onChange) {\n\n var record = this.prefRecords_[name];\n if (record) {\n this.changeDefault(name, value);\n } else {\n record = this.prefRecords_[name] =\n new lib.PreferenceManager.Record(name, value);\n }\n\n if (opt_onChange)\n record.addObserver(opt_onChange);\n};\n\n/**\n * Define multiple preferences with a single function call.\n *\n * @param {Array} defaults An array of 3-element arrays. Each three element\n * array should contain the [key, value, onChange] parameters for a\n * preference.\n */\nlib.PreferenceManager.prototype.definePreferences = function(defaults) {\n for (var i = 0; i < defaults.length; i++) {\n this.definePreference(defaults[i][0], defaults[i][1], defaults[i][2]);\n }\n};\n\n/**\n * Define an ordered list of child preferences.\n *\n * Child preferences are different from just storing an array of JSON objects\n * in that each child is an instance of a preference manager. This means you\n * can observe changes to individual child preferences, and get some validation\n * that you're not reading or writing to an undefined child preference value.\n *\n * @param {string} listName A name for the list of children. This must be\n * unique in this preference manager. The listName will become a\n * preference on this PreferenceManager used to store the ordered list of\n * child ids. It is also used in get/add/remove operations to identify the\n * list of children to operate on.\n * @param {function} childFactory A function that will be used to generate\n * instances of these children. The factory function will receive the\n * parent lib.PreferenceManager object and a unique id for the new child\n * preferences.\n */\nlib.PreferenceManager.prototype.defineChildren = function(\n listName, childFactory) {\n\n // Define a preference to hold the ordered list of child ids.\n this.definePreference(listName, [],\n this.onChildListChange_.bind(this, listName));\n this.childFactories_[listName] = childFactory;\n this.childLists_[listName] = {};\n};\n\n/**\n * Register to observe preference changes.\n *\n * @param {Function} global A callback that will happen for every preference.\n * Pass null if you don't need one.\n * @param {Object} map A map of preference specific callbacks. Pass null if\n * you don't need any.\n */\nlib.PreferenceManager.prototype.addObservers = function(global, map) {\n if (global && typeof global != 'function')\n throw new Error('Invalid param: globals');\n\n if (global)\n this.globalObservers_.push(global);\n\n if (!map)\n return;\n\n for (var name in map) {\n if (!(name in this.prefRecords_))\n throw new Error('Unknown preference: ' + name);\n\n this.prefRecords_[name].addObserver(map[name]);\n }\n};\n\n/**\n * Dispatch the change observers for all known preferences.\n *\n * It may be useful to call this after readStorage completes, in order to\n * get application state in sync with user preferences.\n *\n * This can be used if you've changed a preference manager out from under\n * a live object, for example when switching to a different prefix.\n */\nlib.PreferenceManager.prototype.notifyAll = function() {\n for (var name in this.prefRecords_) {\n this.notifyChange_(name);\n }\n};\n\n/**\n * Notify the change observers for a given preference.\n *\n * @param {string} name The name of the preference that changed.\n */\nlib.PreferenceManager.prototype.notifyChange_ = function(name) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n var currentValue = record.get();\n\n for (var i = 0; i < this.globalObservers_.length; i++)\n this.globalObservers_[i](name, currentValue);\n\n for (var i = 0; i < record.observers.length; i++) {\n record.observers[i](currentValue, name, this);\n }\n};\n\n/**\n * Create a new child PreferenceManager for the given child list.\n *\n * The optional hint parameter is an opaque prefix added to the auto-generated\n * unique id for this child. Your child factory can parse out the prefix\n * and use it.\n *\n * @param {string} listName The child list to create the new instance from.\n * @param {string} opt_hint Optional hint to include in the child id.\n * @param {string} opt_id Optional id to override the generated id.\n */\nlib.PreferenceManager.prototype.createChild = function(listName, opt_hint,\n opt_id) {\n var ids = this.get(listName);\n var id;\n\n if (opt_id) {\n id = opt_id;\n if (ids.indexOf(id) != -1)\n throw new Error('Duplicate child: ' + listName + ': ' + id);\n\n } else {\n // Pick a random, unique 4-digit hex identifier for the new profile.\n while (!id || ids.indexOf(id) != -1) {\n id = lib.f.randomInt(1, 0xffff).toString(16);\n id = lib.f.zpad(id, 4);\n if (opt_hint)\n id = opt_hint + ':' + id;\n }\n }\n\n var childManager = this.childFactories_[listName](this, id);\n childManager.trace = this.trace;\n childManager.resetAll();\n\n this.childLists_[listName][id] = childManager;\n\n ids.push(id);\n this.set(listName, ids);\n\n return childManager;\n};\n\n/**\n * Remove a child preferences instance.\n *\n * Removes a child preference manager and clears any preferences stored in it.\n *\n * @param {string} listName The name of the child list containing the child to\n * remove.\n * @param {string} id The child ID.\n */\nlib.PreferenceManager.prototype.removeChild = function(listName, id) {\n var prefs = this.getChild(listName, id);\n prefs.resetAll();\n\n var ids = this.get(listName);\n var i = ids.indexOf(id);\n if (i != -1) {\n ids.splice(i, 1);\n this.set(listName, ids);\n }\n\n delete this.childLists_[listName][id];\n};\n\n/**\n * Return a child PreferenceManager instance for a given id.\n *\n * If the child list or child id is not known this will return the specified\n * default value or throw an exception if no default value is provided.\n *\n * @param {string} listName The child list to look in.\n * @param {string} id The child ID.\n * @param {*} opt_default The optional default value to return if the child\n * is not found.\n */\nlib.PreferenceManager.prototype.getChild = function(listName, id, opt_default) {\n if (!(listName in this.childLists_))\n throw new Error('Unknown child list: ' + listName);\n\n var childList = this.childLists_[listName];\n if (!(id in childList)) {\n if (typeof opt_default == 'undefined')\n throw new Error('Unknown \"' + listName + '\" child: ' + id);\n\n return opt_default;\n }\n\n return childList[id];\n};\n\n/**\n * Calculate the difference between two lists of child ids.\n *\n * Given two arrays of child ids, this function will return an object\n * with \"added\", \"removed\", and \"common\" properties. Each property is\n * a map of child-id to `true`. For example, given...\n *\n * a = ['child-x', 'child-y']\n * b = ['child-y']\n *\n * diffChildLists(a, b) =>\n * { added: { 'child-x': true }, removed: {}, common: { 'child-y': true } }\n *\n * The added/removed properties assume that `a` is the current list.\n *\n * @param {Array[string]} a The most recent list of child ids.\n * @param {Array[string]} b An older list of child ids.\n * @return {Object} An object with added/removed/common properties.\n */\nlib.PreferenceManager.diffChildLists = function(a, b) {\n var rv = {\n added: {},\n removed: {},\n common: {},\n };\n\n for (var i = 0; i < a.length; i++) {\n if (b.indexOf(a[i]) != -1) {\n rv.common[a[i]] = true;\n } else {\n rv.added[a[i]] = true;\n }\n }\n\n for (var i = 0; i < b.length; i++) {\n if ((b[i] in rv.added) || (b[i] in rv.common))\n continue;\n\n rv.removed[b[i]] = true;\n }\n\n return rv;\n};\n\n/**\n * Synchronize a list of child PreferenceManagers instances with the current\n * list stored in prefs.\n *\n * This will instantiate any missing managers and read current preference values\n * from storage. Any active managers that no longer appear in preferences will\n * be deleted.\n *\n * @param {string} listName The child list to synchronize.\n * @param {function()} opt_callback Optional function to invoke when the sync\n * is complete.\n */\nlib.PreferenceManager.prototype.syncChildList = function(\n listName, opt_callback) {\n\n var pendingChildren = 0;\n function onChildStorage() {\n if (--pendingChildren == 0 && opt_callback)\n opt_callback();\n }\n\n // The list of child ids that we *should* have a manager for.\n var currentIds = this.get(listName);\n\n // The known managers at the start of the sync. Any manager still in this\n // list at the end should be discarded.\n var oldIds = Object.keys(this.childLists_[listName]);\n\n var rv = lib.PreferenceManager.diffChildLists(currentIds, oldIds);\n\n for (var i = 0; i < currentIds.length; i++) {\n var id = currentIds[i];\n\n var managerIndex = oldIds.indexOf(id);\n if (managerIndex >= 0)\n oldIds.splice(managerIndex, 1);\n\n if (!this.childLists_[listName][id]) {\n var childManager = this.childFactories_[listName](this, id);\n if (!childManager) {\n console.warn('Unable to restore child: ' + listName + ': ' + id);\n continue;\n }\n\n childManager.trace = this.trace;\n this.childLists_[listName][id] = childManager;\n pendingChildren++;\n childManager.readStorage(onChildStorage);\n }\n }\n\n for (var i = 0; i < oldIds.length; i++) {\n delete this.childLists_[listName][oldIds[i]];\n }\n\n if (!pendingChildren && opt_callback)\n setTimeout(opt_callback);\n};\n\n/**\n * Reset a preference to its default state.\n *\n * This will dispatch the onChange handler if the preference value actually\n * changes.\n *\n * @param {string} name The preference to reset.\n */\nlib.PreferenceManager.prototype.reset = function(name) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n this.storage.removeItem(this.prefix + name);\n\n if (record.currentValue !== this.DEFAULT_VALUE) {\n record.currentValue = this.DEFAULT_VALUE;\n this.notifyChange_(name);\n }\n};\n\n/**\n * Reset all preferences back to their default state.\n */\nlib.PreferenceManager.prototype.resetAll = function() {\n var changed = [];\n\n for (var listName in this.childLists_) {\n var childList = this.childLists_[listName];\n for (var id in childList) {\n childList[id].resetAll();\n }\n }\n\n for (var name in this.prefRecords_) {\n if (this.prefRecords_[name].currentValue !== this.DEFAULT_VALUE) {\n this.prefRecords_[name].currentValue = this.DEFAULT_VALUE;\n changed.push(name);\n }\n }\n\n var keys = Object.keys(this.prefRecords_).map(function(el) {\n return this.prefix + el;\n }.bind(this));\n\n this.storage.removeItems(keys);\n\n changed.forEach(this.notifyChange_.bind(this));\n};\n\n/**\n * Return true if two values should be considered not-equal.\n *\n * If both values are the same scalar type and compare equal this function\n * returns false (no difference), otherwise return true.\n *\n * This is used in places where we want to check if a preference has changed.\n * Rather than take the time to compare complex values we just consider them\n * to always be different.\n *\n * @param {*} a A value to compare.\n * @param {*} b A value to compare.\n */\nlib.PreferenceManager.prototype.diff = function(a, b) {\n // If the types are different, or the type is not a simple primitive one.\n if ((typeof a) !== (typeof b) ||\n !(/^(undefined|boolean|number|string)$/.test(typeof a))) {\n return true;\n }\n\n return a !== b;\n};\n\n/**\n * Change the default value of a preference.\n *\n * This is useful when subclassing preference managers.\n *\n * The function does not alter the current value of the preference, unless\n * it has the old default value. When that happens, the change observers\n * will be notified.\n *\n * @param {string} name The name of the parameter to change.\n * @param {*} newValue The new default value for the preference.\n */\nlib.PreferenceManager.prototype.changeDefault = function(name, newValue) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n if (!this.diff(record.defaultValue, newValue)) {\n // Default value hasn't changed.\n return;\n }\n\n if (record.currentValue !== this.DEFAULT_VALUE) {\n // This pref has a specific value, just change the default and we're done.\n record.defaultValue = newValue;\n return;\n }\n\n record.defaultValue = newValue;\n\n this.notifyChange_(name);\n};\n\n/**\n * Change the default value of multiple preferences.\n *\n * @param {Object} map A map of name -> value pairs specifying the new default\n * values.\n */\nlib.PreferenceManager.prototype.changeDefaults = function(map) {\n for (var key in map) {\n this.changeDefault(key, map[key]);\n }\n};\n\n/**\n * Set a preference to a specific value.\n *\n * This will dispatch the onChange handler if the preference value actually\n * changes.\n *\n * @param {string} key The preference to set.\n * @param {*} value The value to set. Anything that can be represented in\n * JSON is a valid value.\n */\nlib.PreferenceManager.prototype.set = function(name, newValue) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n var oldValue = record.get();\n\n if (!this.diff(oldValue, newValue))\n return;\n\n if (this.diff(record.defaultValue, newValue)) {\n record.currentValue = newValue;\n this.storage.setItem(this.prefix + name, newValue);\n } else {\n record.currentValue = this.DEFAULT_VALUE;\n this.storage.removeItem(this.prefix + name);\n }\n\n // We need to manually send out the notification on this instance. If we\n // The storage event won't fire a notification because we've already changed\n // the currentValue, so it won't see a difference. If we delayed changing\n // currentValue until the storage event, a pref read immediately after a write\n // would return the previous value.\n //\n // The notification is in a timeout so clients don't accidentally depend on\n // a synchronous notification.\n setTimeout(this.notifyChange_.bind(this, name), 0);\n};\n\n/**\n * Get the value of a preference.\n *\n * @param {string} key The preference to get.\n */\nlib.PreferenceManager.prototype.get = function(name) {\n var record = this.prefRecords_[name];\n if (!record)\n throw new Error('Unknown preference: ' + name);\n\n return record.get();\n};\n\n/**\n * Return all non-default preferences as a JSON object.\n *\n * This includes any nested preference managers as well.\n */\nlib.PreferenceManager.prototype.exportAsJson = function() {\n var rv = {};\n\n for (var name in this.prefRecords_) {\n if (name in this.childLists_) {\n rv[name] = [];\n var childIds = this.get(name);\n for (var i = 0; i < childIds.length; i++) {\n var id = childIds[i];\n rv[name].push({id: id, json: this.getChild(name, id).exportAsJson()});\n }\n\n } else {\n var record = this.prefRecords_[name];\n if (record.currentValue != this.DEFAULT_VALUE)\n rv[name] = record.currentValue;\n }\n }\n\n return rv;\n};\n\n/**\n * Import a JSON blob of preferences previously generated with exportAsJson.\n *\n * This will create nested preference managers as well.\n */\nlib.PreferenceManager.prototype.importFromJson = function(json) {\n for (var name in json) {\n if (name in this.childLists_) {\n var childList = json[name];\n for (var i = 0; i < childList.length; i++) {\n var id = childList[i].id;\n\n var childPrefManager = this.childLists_[name][id];\n if (!childPrefManager)\n childPrefManager = this.createChild(name, null, id);\n\n childPrefManager.importFromJson(childList[i].json);\n }\n\n } else {\n this.set(name, json[name]);\n }\n }\n};\n\n/**\n * Called when one of the child list preferences changes.\n */\nlib.PreferenceManager.prototype.onChildListChange_ = function(listName) {\n this.syncChildList(listName);\n};\n\n/**\n * Called when a key in the storage changes.\n */\nlib.PreferenceManager.prototype.onStorageChange_ = function(map) {\n for (var key in map) {\n if (this.prefix) {\n if (key.lastIndexOf(this.prefix, 0) != 0)\n continue;\n }\n\n var name = key.substr(this.prefix.length);\n\n if (!(name in this.prefRecords_)) {\n // Sometimes we'll get notified about prefs that are no longer defined.\n continue;\n }\n\n var record = this.prefRecords_[name];\n\n var newValue = map[key].newValue;\n var currentValue = record.currentValue;\n if (currentValue === record.DEFAULT_VALUE)\n currentValue = (void 0);\n\n if (this.diff(currentValue, newValue)) {\n if (typeof newValue == 'undefined' || newValue === null) {\n record.currentValue = record.DEFAULT_VALUE;\n } else {\n record.currentValue = newValue;\n }\n\n this.notifyChange_(name);\n }\n }\n};\n// SOURCE FILE: libdot/js/lib_resource.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Storage for canned resources.\n *\n * These are usually non-JavaScript things that are collected during a build\n * step and converted into a series of 'lib.resource.add(...)' calls. See\n * the \"@resource\" directive from libdot/bin/concat.sh for the canonical use\n * case.\n *\n * This is global storage, so you should prefix your resource names to avoid\n * collisions.\n */\nlib.resource = {\n resources_: {}\n};\n\n/**\n * Add a resource.\n *\n * @param {string} name A name for the resource. You should prefix this to\n * avoid collisions with resources from a shared library.\n * @param {string} type A mime type for the resource, or \"raw\" if not\n * applicable.\n * @param {*} data The value of the resource.\n */\nlib.resource.add = function(name, type, data) {\n lib.resource.resources_[name] = {\n type: type,\n name: name,\n data: data\n };\n};\n\n/**\n * Retrieve a resource record.\n *\n * The resource data is stored on the \"data\" property of the returned object.\n *\n * @param {string} name The name of the resource to get.\n * @param {*} opt_defaultValue The optional value to return if the resource is\n * not defined.\n * @return {object} An object with \"type\", \"name\", and \"data\" properties.\n */\nlib.resource.get = function(name, opt_defaultValue) {\n if (!(name in lib.resource.resources_)) {\n if (typeof opt_defaultValue == 'undefined')\n throw 'Unknown resource: ' + name;\n\n return opt_defaultValue;\n }\n\n return lib.resource.resources_[name];\n};\n\n/**\n * Retrieve resource data.\n *\n * @param {string} name The name of the resource to get.\n * @param {*} opt_defaultValue The optional value to return if the resource is\n * not defined.\n * @return {*} The resource data.\n */\nlib.resource.getData = function(name, opt_defaultValue) {\n if (!(name in lib.resource.resources_)) {\n if (typeof opt_defaultValue == 'undefined')\n throw 'Unknown resource: ' + name;\n\n return opt_defaultValue;\n }\n\n return lib.resource.resources_[name].data;\n};\n\n/**\n * Retrieve resource as a data: url.\n *\n * @param {string} name The name of the resource to get.\n * @param {*} opt_defaultValue The optional value to return if the resource is\n * not defined.\n * @return {*} A data: url encoded version of the resource.\n */\nlib.resource.getDataUrl = function(name, opt_defaultValue) {\n var resource = lib.resource.get(name, opt_defaultValue);\n return 'data:' + resource.type + ',' + resource.data;\n};\n// SOURCE FILE: libdot/js/lib_storage.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Namespace for implementations of persistent, possibly cloud-backed\n * storage.\n */\nlib.Storage = new Object();\n// SOURCE FILE: libdot/js/lib_storage_chrome.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * chrome.storage based class with an async interface that is interchangeable\n * with other lib.Storage.* implementations.\n */\nlib.Storage.Chrome = function(storage) {\n this.storage_ = storage;\n this.observers_ = [];\n\n chrome.storage.onChanged.addListener(this.onChanged_.bind(this));\n};\n\n/**\n * Called by the storage implementation when the storage is modified.\n */\nlib.Storage.Chrome.prototype.onChanged_ = function(changes, areaname) {\n if (chrome.storage[areaname] != this.storage_)\n return;\n\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](changes);\n }\n};\n\n/**\n * Register a function to observe storage changes.\n *\n * @param {function(map)} callback The function to invoke when the storage\n * changes.\n */\nlib.Storage.Chrome.prototype.addObserver = function(callback) {\n this.observers_.push(callback);\n};\n\n/**\n * Unregister a change observer.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.Storage.Chrome.prototype.removeObserver = function(callback) {\n var i = this.observers_.indexOf(callback);\n if (i != -1)\n this.observers_.splice(i, 1);\n};\n\n/**\n * Delete everything in this storage.\n *\n * @param {function(map)} callback The function to invoke when the delete\n * has completed.\n */\nlib.Storage.Chrome.prototype.clear = function(opt_callback) {\n this.storage_.clear();\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Return the current value of a storage item.\n *\n * @param {string} key The key to look up.\n * @param {function(value) callback The function to invoke when the value has\n * been retrieved.\n */\nlib.Storage.Chrome.prototype.getItem = function(key, callback) {\n this.storage_.get(key, callback);\n};\n/**\n * Fetch the values of multiple storage items.\n *\n * @param {Array} keys The keys to look up.\n * @param {function(map) callback The function to invoke when the values have\n * been retrieved.\n */\n\nlib.Storage.Chrome.prototype.getItems = function(keys, callback) {\n this.storage_.get(keys, callback);\n};\n\n/**\n * Set a value in storage.\n *\n * @param {string} key The key for the value to be stored.\n * @param {*} value The value to be stored. Anything that can be serialized\n * with JSON is acceptable.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.setItem = function(key, value, opt_callback) {\n var obj = {};\n obj[key] = value;\n this.storage_.set(obj, opt_callback);\n};\n\n/**\n * Set multiple values in storage.\n *\n * @param {Object} map A map of key/values to set in storage.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.setItems = function(obj, opt_callback) {\n this.storage_.set(obj, opt_callback);\n};\n\n/**\n * Remove an item from storage.\n *\n * @param {string} key The key to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.removeItem = function(key, opt_callback) {\n this.storage_.remove(key, opt_callback);\n};\n\n/**\n * Remove multiple items from storage.\n *\n * @param {Array} keys The keys to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Chrome.prototype.removeItems = function(keys, opt_callback) {\n this.storage_.remove(keys, opt_callback);\n};\n// SOURCE FILE: libdot/js/lib_storage_local.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * window.localStorage based class with an async interface that is\n * interchangeable with other lib.Storage.* implementations.\n */\nlib.Storage.Local = function() {\n this.observers_ = [];\n this.storage_ = window.localStorage;\n window.addEventListener('storage', this.onStorage_.bind(this));\n};\n\n/**\n * Called by the storage implementation when the storage is modified.\n */\nlib.Storage.Local.prototype.onStorage_ = function(e) {\n if (e.storageArea != this.storage_)\n return;\n\n // JS throws an exception if JSON.parse is given an empty string. So here we\n // only parse if the value is truthy. This mean the empty string, undefined\n // and null will not be parsed.\n var prevValue = e.oldValue ? JSON.parse(e.oldValue) : e.oldValue;\n var curValue = e.newValue ? JSON.parse(e.newValue) : e.newValue;\n var o = {};\n o[e.key] = {\n oldValue: prevValue,\n newValue: curValue\n };\n\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](o);\n }\n};\n\n/**\n * Register a function to observe storage changes.\n *\n * @param {function(map)} callback The function to invoke when the storage\n * changes.\n */\nlib.Storage.Local.prototype.addObserver = function(callback) {\n this.observers_.push(callback);\n};\n\n/**\n * Unregister a change observer.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.Storage.Local.prototype.removeObserver = function(callback) {\n var i = this.observers_.indexOf(callback);\n if (i != -1)\n this.observers_.splice(i, 1);\n};\n\n/**\n * Delete everything in this storage.\n *\n * @param {function(map)} callback The function to invoke when the delete\n * has completed.\n */\nlib.Storage.Local.prototype.clear = function(opt_callback) {\n this.storage_.clear();\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Return the current value of a storage item.\n *\n * @param {string} key The key to look up.\n * @param {function(value) callback The function to invoke when the value has\n * been retrieved.\n */\nlib.Storage.Local.prototype.getItem = function(key, callback) {\n var value = this.storage_.getItem(key);\n\n if (typeof value == 'string') {\n try {\n value = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n }\n }\n\n setTimeout(callback.bind(null, value), 0);\n};\n\n/**\n * Fetch the values of multiple storage items.\n *\n * @param {Array} keys The keys to look up.\n * @param {function(map) callback The function to invoke when the values have\n * been retrieved.\n */\nlib.Storage.Local.prototype.getItems = function(keys, callback) {\n var rv = {};\n\n for (var i = keys.length - 1; i >= 0; i--) {\n var key = keys[i];\n var value = this.storage_.getItem(key);\n if (typeof value == 'string') {\n try {\n rv[key] = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n rv[key] = value;\n }\n } else {\n keys.splice(i, 1);\n }\n }\n\n setTimeout(callback.bind(null, rv), 0);\n};\n\n/**\n * Set a value in storage.\n *\n * @param {string} key The key for the value to be stored.\n * @param {*} value The value to be stored. Anything that can be serialized\n * with JSON is acceptable.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.setItem = function(key, value, opt_callback) {\n this.storage_.setItem(key, JSON.stringify(value));\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Set multiple values in storage.\n *\n * @param {Object} map A map of key/values to set in storage.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.setItems = function(obj, opt_callback) {\n for (var key in obj) {\n this.storage_.setItem(key, JSON.stringify(obj[key]));\n }\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove an item from storage.\n *\n * @param {string} key The key to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.removeItem = function(key, opt_callback) {\n this.storage_.removeItem(key);\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove multiple items from storage.\n *\n * @param {Array} keys The keys to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Local.prototype.removeItems = function(ary, opt_callback) {\n for (var i = 0; i < ary.length; i++) {\n this.storage_.removeItem(ary[i]);\n }\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n// SOURCE FILE: libdot/js/lib_storage_memory.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * In-memory storage class with an async interface that is interchangeable with\n * other lib.Storage.* implementations.\n */\nlib.Storage.Memory = function() {\n this.observers_ = [];\n this.storage_ = {};\n};\n\n/**\n * Register a function to observe storage changes.\n *\n * @param {function(map)} callback The function to invoke when the storage\n * changes.\n */\nlib.Storage.Memory.prototype.addObserver = function(callback) {\n this.observers_.push(callback);\n};\n\n/**\n * Unregister a change observer.\n *\n * @param {function} observer A previously registered callback.\n */\nlib.Storage.Memory.prototype.removeObserver = function(callback) {\n var i = this.observers_.indexOf(callback);\n if (i != -1)\n this.observers_.splice(i, 1);\n};\n\n/**\n * Delete everything in this storage.\n *\n * @param {function(map)} callback The function to invoke when the delete\n * has completed.\n */\nlib.Storage.Memory.prototype.clear = function(opt_callback) {\n var e = {};\n for (var key in this.storage_) {\n e[key] = {oldValue: this.storage_[key], newValue: (void 0)};\n }\n\n this.storage_ = {};\n\n setTimeout(function() {\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](e);\n }\n }.bind(this), 0);\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Return the current value of a storage item.\n *\n * @param {string} key The key to look up.\n * @param {function(value) callback The function to invoke when the value has\n * been retrieved.\n */\nlib.Storage.Memory.prototype.getItem = function(key, callback) {\n var value = this.storage_[key];\n\n if (typeof value == 'string') {\n try {\n value = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n }\n }\n\n setTimeout(callback.bind(null, value), 0);\n};\n\n/**\n * Fetch the values of multiple storage items.\n *\n * @param {Array} keys The keys to look up.\n * @param {function(map) callback The function to invoke when the values have\n * been retrieved.\n */\nlib.Storage.Memory.prototype.getItems = function(keys, callback) {\n var rv = {};\n\n for (var i = keys.length - 1; i >= 0; i--) {\n var key = keys[i];\n var value = this.storage_[key];\n if (typeof value == 'string') {\n try {\n rv[key] = JSON.parse(value);\n } catch (e) {\n // If we can't parse the value, just return it unparsed.\n rv[key] = value;\n }\n } else {\n keys.splice(i, 1);\n }\n }\n\n setTimeout(callback.bind(null, rv), 0);\n};\n\n/**\n * Set a value in storage.\n *\n * @param {string} key The key for the value to be stored.\n * @param {*} value The value to be stored. Anything that can be serialized\n * with JSON is acceptable.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.setItem = function(key, value, opt_callback) {\n var oldValue = this.storage_[key];\n this.storage_[key] = JSON.stringify(value);\n\n var e = {};\n e[key] = {oldValue: oldValue, newValue: value};\n\n setTimeout(function() {\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](e);\n }\n }.bind(this), 0);\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Set multiple values in storage.\n *\n * @param {Object} map A map of key/values to set in storage.\n * @param {function()} opt_callback Optional function to invoke when the\n * set is complete. You don't have to wait for the set to complete in order\n * to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.setItems = function(obj, opt_callback) {\n var e = {};\n\n for (var key in obj) {\n e[key] = {oldValue: this.storage_[key], newValue: obj[key]};\n this.storage_[key] = JSON.stringify(obj[key]);\n }\n\n setTimeout(function() {\n for (var i = 0; i < this.observers_.length; i++) {\n this.observers_[i](e);\n }\n }.bind(this));\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove an item from storage.\n *\n * @param {string} key The key to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.removeItem = function(key, opt_callback) {\n delete this.storage_[key];\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n\n/**\n * Remove multiple items from storage.\n *\n * @param {Array} keys The keys to be removed.\n * @param {function()} opt_callback Optional function to invoke when the\n * remove is complete. You don't have to wait for the set to complete in\n * order to read the value, since the local cache is updated synchronously.\n */\nlib.Storage.Memory.prototype.removeItems = function(ary, opt_callback) {\n for (var i = 0; i < ary.length; i++) {\n delete this.storage_[ary[i]];\n }\n\n if (opt_callback)\n setTimeout(opt_callback, 0);\n};\n// SOURCE FILE: libdot/js/lib_test_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * @fileoverview JavaScript unit testing framework for synchronous and\n * asynchronous tests.\n *\n * This file contains the lib.TestManager and related classes. At the moment\n * it's all collected in a single file since it's reasonably small\n * (=~1k lines), and it's a lot easier to include one file into your test\n * harness than it is to include seven.\n *\n * The following classes are defined...\n *\n * lib.TestManager - The root class and entrypoint for creating test runs.\n * lib.TestManager.Log - Logging service.\n * lib.TestManager.Suite - A collection of tests.\n * lib.TestManager.Test - A single test.\n * lib.TestManager.TestRun - Manages the execution of a set of tests.\n * lib.TestManager.Result - A single test result.\n */\n\n/**\n * Root object in the unit test hierarchy, and keeper of the log object.\n *\n * @param {lib.TestManager.Log} opt_log Optional lib.TestManager.Log object.\n * Logs to the JavaScript console if omitted.\n */\nlib.TestManager = function(opt_log) {\n this.log = opt_log || new lib.TestManager.Log();\n}\n\n/**\n * Create a new test run object for this test manager.\n *\n * @param {Object} opt_cx An object to be passed to test suite setup(),\n * preamble(), and test cases during this test run. This object is opaque\n * to lib.TestManager.* code. It's entirely up to the test suite what it's\n * used for.\n */\nlib.TestManager.prototype.createTestRun = function(opt_cx) {\n return new lib.TestManager.TestRun(this, opt_cx);\n};\n\n/**\n * Called when a test run associated with this test manager completes.\n *\n * Clients may override this to call an appropriate function.\n */\nlib.TestManager.prototype.onTestRunComplete = function(testRun) {};\n\n/**\n * Called before a test associated with this test manager is run.\n *\n * @param {lib.TestManager.Result} result The result object for the upcoming\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.prototype.testPreamble = function(result, cx) {};\n\n/**\n * Called after a test associated with this test manager finishes.\n *\n * @param {lib.TestManager.Result} result The result object for the finished\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.prototype.testPostamble = function(result, cx) {};\n\n/**\n * Destination for test case output.\n *\n * Thw API will be the same as the console object. e.g. We support info(),\n * warn(), error(), etc... just like console.info(), etc...\n *\n * @param {Object} opt_console The console object to route all logging through.\n * Should provide saome API as the standard console API.\n */\nlib.TestManager.Log = function(opt_console=console) {\n this.save = false;\n this.data = '';\n this.prefix_ = '';\n this.prefixStack_ = 0;\n\n // Capture all the console entry points in case code at runtime calls these\n // directly. We want to be able to still see things.\n // We also expose the direct API to our callers (e.g. we provide warn()).\n this.console_ = opt_console;\n ['log', 'debug', 'info', 'warn', 'error'].forEach((level) => {\n let msgPrefix = '';\n switch (level) {\n case 'debug':\n case 'warn':\n case 'error':\n msgPrefix = level.toUpperCase() + ': ';\n break;\n }\n\n const oLog = this.console_[level];\n this[level] = this.console_[level] = (...args) => {\n if (this.save)\n this.data += this.prefix_ + msgPrefix + args.join(' ') + '\\n';\n oLog.apply(this.console_, args);\n };\n });\n\n // Wrap/bind the group functions.\n ['group', 'groupCollapsed'].forEach((group) => {\n const oGroup = this.console_[group];\n this[group] = this.console_[group] = (label='') => {\n oGroup(label);\n if (this.save)\n this.data += this.prefix_ + label + '\\n';\n this.prefix_ = ' '.repeat(++this.prefixStack_);\n };\n });\n\n const oGroupEnd = this.console_.groupEnd;\n this.groupEnd = this.console_.groupEnd = () => {\n oGroupEnd();\n this.prefix_ = ' '.repeat(--this.prefixStack_);\n };\n};\n\n/**\n * Returns a new constructor function that will inherit from\n * lib.TestManager.Suite.\n *\n * Use this function to create a new test suite subclass. It will return a\n * properly initialized constructor function for the subclass. You can then\n * override the setup() and preamble() methods if necessary and add test cases\n * to the subclass.\n *\n * var MyTests = new lib.TestManager.Suite('MyTests');\n *\n * MyTests.prototype.setup = function(cx) {\n * // Sets this.size to cx.size if it exists, or the default value of 10\n * // if not.\n * this.setDefault(cx, {size: 10});\n * };\n *\n * MyTests.prototype.preamble = function(result, cx) {\n * // Some tests (even successful ones) may side-effect this list, so\n * // recreate it before every test.\n * this.list = [];\n * for (var i = 0; i < this.size; i++) {\n * this.list[i] = i;\n * }\n * };\n *\n * // Basic synchronous test case.\n * MyTests.addTest('pop-length', function(result, cx) {\n * this.list.pop();\n *\n * // If this assertion fails, the testcase will stop here.\n * result.assertEQ(this.list.length, this.size - 1);\n *\n * // A test must indicate it has passed by calling this method.\n * result.pass();\n * });\n *\n * // Sample asynchronous test case.\n * MyTests.addTest('async-pop-length', function(result, cx) {\n * var self = this;\n *\n * var callback = function() {\n * result.assertEQ(self.list.length, self.size - 1);\n * result.pass();\n * };\n *\n * // Wait 100ms to check the array length for the sake of this example.\n * setTimeout(callback, 100);\n *\n * this.list.pop();\n *\n * // Indicate that this test needs another 200ms to complete.\n * // If the test does not report pass/fail by then, it is considered to\n * // have timed out.\n * result.requestTime(200);\n * });\n *\n * ...\n *\n * @param {string} suiteName The name of the test suite.\n */\nlib.TestManager.Suite = function(suiteName) {\n function ctor(testManager, cx) {\n this.testManager_ = testManager;\n this.suiteName = suiteName;\n\n this.setup(cx);\n }\n\n ctor.suiteName = suiteName;\n ctor.addTest = lib.TestManager.Suite.addTest;\n ctor.disableTest = lib.TestManager.Suite.disableTest;\n ctor.getTest = lib.TestManager.Suite.getTest;\n ctor.getTestList = lib.TestManager.Suite.getTestList;\n ctor.testList_ = [];\n ctor.testMap_ = {};\n ctor.prototype = Object.create(lib.TestManager.Suite.prototype);\n ctor.constructor = lib.TestManager.Suite;\n\n lib.TestManager.Suite.subclasses.push(ctor);\n\n return ctor;\n};\n\n/**\n * List of lib.TestManager.Suite subclasses, in the order they were defined.\n */\nlib.TestManager.Suite.subclasses = [];\n\n/**\n * Add a test to a lib.TestManager.Suite.\n *\n * This method is copied to new subclasses when they are created.\n */\nlib.TestManager.Suite.addTest = function(testName, testFunction) {\n if (testName in this.testMap_)\n throw 'Duplicate test name: ' + testName;\n\n var test = new lib.TestManager.Test(this, testName, testFunction);\n this.testMap_[testName] = test;\n this.testList_.push(test);\n};\n\n/**\n * Defines a disabled test.\n */\nlib.TestManager.Suite.disableTest = function(testName, testFunction) {\n if (testName in this.testMap_)\n throw 'Duplicate test name: ' + testName;\n\n var test = new lib.TestManager.Test(this, testName, testFunction);\n console.log('Disabled test: ' + test.fullName);\n};\n\n/**\n * Get a lib.TestManager.Test instance by name.\n *\n * This method is copied to new subclasses when they are created.\n *\n * @param {string} testName The name of the desired test.\n * @return {lib.TestManager.Test} The requested test, or undefined if it was not\n * found.\n */\nlib.TestManager.Suite.getTest = function(testName) {\n return this.testMap_[testName];\n};\n\n/**\n * Get an array of lib.TestManager.Tests associated with this Suite.\n *\n * This method is copied to new subclasses when they are created.\n */\nlib.TestManager.Suite.getTestList = function() {\n return this.testList_;\n};\n\n/**\n * Set properties on a test suite instance, pulling the property value from\n * the context if it exists and from the defaults dictionary if not.\n *\n * This is intended to be used in your test suite's setup() method to\n * define parameters for the test suite which may be overridden through the\n * context object. For example...\n *\n * MySuite.prototype.setup = function(cx) {\n * this.setDefaults(cx, {size: 10});\n * };\n *\n * If the context object has a 'size' property then this.size will be set to\n * the value of cx.size, otherwise this.size will get a default value of 10.\n *\n * @param {Object} cx The context object for a test run.\n * @param {Object} defaults An object containing name/value pairs to set on\n * this test suite instance. The value listed here will be used if the\n * name is not defined on the context object.\n */\nlib.TestManager.Suite.prototype.setDefaults = function(cx, defaults) {\n for (var k in defaults) {\n this[k] = (k in cx) ? cx[k] : defaults[k];\n }\n};\n\n/**\n * Subclassable method called to set up the test suite.\n *\n * The default implementation of this method is a no-op. If your test suite\n * requires some kind of suite-wide setup, this is the place to do it.\n *\n * It's fine to store state on the test suite instance, that state will be\n * accessible to all tests in the suite. If any test case fails, the entire\n * test suite object will be discarded and a new one will be created for\n * the remaining tests.\n *\n * Any side effects outside of this test suite instance must be idempotent.\n * For example, if you're adding DOM nodes to a document, make sure to first\n * test that they're not already there. If they are, remove them rather than\n * reuse them. You should not count on their state, since they were probably\n * left behind by a failed testcase.\n *\n * Any exception here will abort the remainder of the test run.\n *\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.Suite.prototype.setup = function(cx) {};\n\n/**\n * Subclassable method called to do pre-test set up.\n *\n * The default implementation of this method is a no-op. If your test suite\n * requires some kind of pre-test setup, this is the place to do it.\n *\n * This can be used to avoid a bunch of boilerplate setup/teardown code in\n * this suite's testcases.\n *\n * Any exception here will abort the remainder of the test run.\n *\n * @param {lib.TestManager.Result} result The result object for the upcoming\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.Suite.prototype.preamble = function(result, cx) {};\n\n/**\n * Subclassable method called to do post-test tear-down.\n *\n * The default implementation of this method is a no-op. If your test suite\n * requires some kind of pre-test setup, this is the place to do it.\n *\n * This can be used to avoid a bunch of boilerplate setup/teardown code in\n * this suite's testcases.\n *\n * Any exception here will abort the remainder of the test run.\n *\n * @param {lib.TestManager.Result} result The result object for the finished\n * test.\n * @param {Object} cx The context object for a test run.\n */\nlib.TestManager.Suite.prototype.postamble = function(result, cx) {};\n\n/**\n * Object representing a single test in a test suite.\n *\n * These are created as part of the lib.TestManager.Suite.addTest() method.\n * You should never have to construct one by hand.\n *\n * @param {lib.TestManager.Suite} suiteClass The test suite class containing\n * this test.\n * @param {string} testName The local name of this test case, not including the\n * test suite name.\n * @param {function(lib.TestManager.Result, Object)} testFunction The function\n * to invoke for this test case. This is passed a Result instance and the\n * context object associated with the test run.\n *\n */\nlib.TestManager.Test = function(suiteClass, testName, testFunction) {\n /**\n * The test suite class containing this function.\n */\n this.suiteClass = suiteClass;\n\n /**\n * The local name of this test, not including the test suite name.\n */\n this.testName = testName;\n\n /**\n * The global name of this test, including the test suite name.\n */\n this.fullName = suiteClass.suiteName + '[' + testName + ']';\n\n // The function to call for this test.\n this.testFunction_ = testFunction;\n};\n\n/**\n * Execute this test.\n *\n * This is called by a lib.TestManager.Result instance, as part of a\n * lib.TestManager.TestRun. You should not call it by hand.\n *\n * @param {lib.TestManager.Result} result The result object for the test.\n */\nlib.TestManager.Test.prototype.run = function(result) {\n try {\n // Tests are applied to the parent lib.TestManager.Suite subclass.\n this.testFunction_.apply(result.suite,\n [result, result.testRun.cx]);\n } catch (ex) {\n if (ex instanceof lib.TestManager.Result.TestComplete)\n return;\n\n result.println('Test raised an exception: ' + ex);\n\n if (ex.stack) {\n if (ex.stack instanceof Array) {\n result.println(ex.stack.join('\\n'));\n } else {\n result.println(ex.stack);\n }\n }\n\n result.completeTest_(result.FAILED, false);\n }\n};\n\n/**\n * Used to choose a set of tests and run them.\n *\n * It's slightly more convenient to construct one of these from\n * lib.TestManager.prototype.createTestRun().\n *\n * @param {lib.TestManager} testManager The testManager associated with this\n * TestRun.\n * @param {Object} cx A context to be passed into the tests. This can be used\n * to set parameters for the test suite or individual test cases.\n */\nlib.TestManager.TestRun = function(testManager, cx) {\n /**\n * The associated lib.TestManager instance.\n */\n this.testManager = testManager;\n\n /**\n * Shortcut to the lib.TestManager's log.\n */\n this.log = testManager.log;\n\n /**\n * The test run context. It's entirely up to the test suite and test cases\n * how this is used. It is opaque to lib.TestManager.* classes.\n */\n this.cx = cx || {};\n\n /**\n * The list of test cases that encountered failures.\n */\n this.failures = [];\n\n /**\n * The list of test cases that passed.\n */\n this.passes = [];\n\n /**\n * The time the test run started, or null if it hasn't been started yet.\n */\n this.startDate = null;\n\n /**\n * The time in milliseconds that the test run took to complete, or null if\n * it hasn't completed yet.\n */\n this.duration = null;\n\n /**\n * The most recent result object, or null if the test run hasn't started\n * yet. In order to detect late failures, this is not cleared when the test\n * completes.\n */\n this.currentResult = null;\n\n /**\n * Number of maximum failures. The test run will stop when this number is\n * reached. If 0 or omitted, the entire set of selected tests is run, even\n * if some fail.\n */\n this.maxFailures = 0;\n\n /**\n * True if this test run ended early because of an unexpected condition.\n */\n this.panic = false;\n\n // List of pending test cases.\n this.testQueue_ = [];\n\n};\n\n/**\n * This value can be passed to select() to indicate that all tests should\n * be selected.\n */\nlib.TestManager.TestRun.prototype.ALL_TESTS = lib.f.createEnum('');\n\n/**\n * Add a single test to the test run.\n */\nlib.TestManager.TestRun.prototype.selectTest = function(test) {\n this.testQueue_.push(test);\n};\n\nlib.TestManager.TestRun.prototype.selectSuite = function(\n suiteClass, opt_pattern) {\n var pattern = opt_pattern || this.ALL_TESTS;\n var selectCount = 0;\n var testList = suiteClass.getTestList();\n\n for (var j = 0; j < testList.length; j++) {\n var test = testList[j];\n // Note that we're using \"!==\" rather than \"!=\" so that we're matching\n // the ALL_TESTS String object, rather than the contents of the string.\n if (pattern !== this.ALL_TESTS) {\n if (pattern instanceof RegExp) {\n if (!pattern.test(test.testName))\n continue;\n } else if (test.testName != pattern) {\n continue;\n }\n }\n\n this.selectTest(test);\n selectCount++;\n }\n\n return selectCount;\n};\n\n/**\n * Selects one or more tests to gather results for.\n *\n * Selecting the same test more than once is allowed.\n *\n * @param {string|RegExp} pattern Pattern used to select tests.\n * If TestRun.prototype.ALL_TESTS, all tests are selected.\n * If a string, only the test that exactly matches is selected.\n * If a RegExp, only tests matching the RegExp are added.\n *\n * @return {int} The number of additional tests that have been selected into\n * this TestRun.\n */\nlib.TestManager.TestRun.prototype.selectPattern = function(pattern) {\n var selectCount = 0;\n\n for (var i = 0; i < lib.TestManager.Suite.subclasses.length; i++) {\n selectCount += this.selectSuite(lib.TestManager.Suite.subclasses[i],\n pattern);\n }\n\n if (!selectCount) {\n this.log.warn('No tests matched selection criteria: ' + pattern);\n }\n\n return selectCount;\n};\n\n/**\n * Hooked up to window.onerror during a test run in order to catch exceptions\n * that would otherwise go uncaught.\n */\nlib.TestManager.TestRun.prototype.onUncaughtException_ = function(\n message, file, line) {\n\n if (message.indexOf('Uncaught lib.TestManager.Result.TestComplete') == 0 ||\n message.indexOf('status: passed') != -1) {\n // This is a result.pass() or result.fail() call from a callback. We're\n // already going to deal with it as part of the completeTest_() call\n // that raised it. We can safely squelch this error message.\n return true;\n }\n\n if (!this.currentResult)\n return;\n\n if (message == 'Uncaught ' + this.currentResult.expectedErrorMessage_) {\n // Test cases may need to raise an unhandled exception as part of the test.\n return;\n }\n\n var when = 'during';\n\n if (this.currentResult.status != this.currentResult.PENDING)\n when = 'after';\n\n this.log.error('Uncaught exception ' + when + ' test case: ' +\n this.currentResult.test.fullName);\n this.log.error(message + ', ' + file + ':' + line);\n\n this.currentResult.completeTest_(this.currentResult.FAILED, false);\n\n return false;\n};\n\n/**\n * Called to when this test run has completed.\n *\n * This method typically re-runs itself asynchronously, in order to let the\n * DOM stabilize and short-term timeouts to complete before declaring the\n * test run complete.\n *\n * @param {boolean} opt_skipTimeout If true, the timeout is skipped and the\n * test run is completed immediately. This should only be used from within\n * this function.\n */\nlib.TestManager.TestRun.prototype.onTestRunComplete_ = function(\n opt_skipTimeout) {\n if (!opt_skipTimeout) {\n // The final test may have left a lingering setTimeout(..., 0), or maybe\n // poked at the DOM in a way that will trigger a event to fire at the end\n // of this stack, so we give things a chance to settle down before our\n // final cleanup...\n setTimeout(this.onTestRunComplete_.bind(this), 0, true);\n return;\n }\n\n this.duration = (new Date()) - this.startDate;\n\n this.log.groupEnd();\n this.log.info(this.passes.length + ' passed, ' +\n this.failures.length + ' failed, ' +\n this.msToSeconds_(this.duration));\n\n this.summarize();\n\n window.onerror = null;\n\n this.testManager.onTestRunComplete(this);\n};\n\n/**\n * Called by the lib.TestManager.Result object when a test completes.\n *\n * @param {lib.TestManager.Result} result The result object which has just\n * completed.\n */\nlib.TestManager.TestRun.prototype.onResultComplete = function(result) {\n try {\n this.testManager.testPostamble(result, this.cx);\n result.suite.postamble(result, this.ctx);\n } catch (ex) {\n this.log.error('Unexpected exception in postamble: ' +\n (ex.stack ? ex.stack : ex));\n this.panic = true;\n }\n\n if (result.status != result.PASSED)\n this.log.error(result.status);\n else if (result.duration > 500)\n this.log.warn('Slow test took ' + this.msToSeconds_(result.duration));\n this.log.groupEnd();\n\n if (result.status == result.FAILED) {\n this.failures.push(result);\n this.currentSuite = null;\n } else if (result.status == result.PASSED) {\n this.passes.push(result);\n } else {\n this.log.error('Unknown result status: ' + result.test.fullName + ': ' +\n result.status);\n return this.panic = true;\n }\n\n this.runNextTest_();\n};\n\n/**\n * Called by the lib.TestManager.Result object when a test which has already\n * completed reports another completion.\n *\n * This is usually indicative of a buggy testcase. It is probably reporting a\n * result on exit and then again from an asynchronous callback.\n *\n * It may also be the case that the last act of the testcase causes a DOM change\n * which triggers some event to run after the test returns. If the event\n * handler reports a failure or raises an uncaught exception, the test will\n * fail even though it has already completed.\n *\n * In any case, re-completing a test ALWAYS moves it into the failure pile.\n *\n * @param {lib.TestManager.Result} result The result object which has just\n * completed.\n * @param {string} lateStatus The status that the test attempted to record this\n * time around.\n */\nlib.TestManager.TestRun.prototype.onResultReComplete = function(\n result, lateStatus) {\n this.log.error('Late complete for test: ' + result.test.fullName + ': ' +\n lateStatus);\n\n // Consider any late completion a failure, even if it's a double-pass, since\n // it's a misuse of the testing API.\n var index = this.passes.indexOf(result);\n if (index >= 0) {\n this.passes.splice(index, 1);\n this.failures.push(result);\n }\n};\n\n/**\n * Run the next test in the queue.\n */\nlib.TestManager.TestRun.prototype.runNextTest_ = function() {\n if (this.panic || !this.testQueue_.length)\n return this.onTestRunComplete_();\n\n if (this.maxFailures && this.failures.length >= this.maxFailures) {\n this.log.error('Maximum failure count reached, aborting test run.');\n return this.onTestRunComplete_();\n }\n\n // Peek at the top test first. We remove it later just before it's about\n // to run, so that we don't disturb the incomplete test count in the\n // event that we fail before running it.\n var test = this.testQueue_[0];\n var suite = this.currentResult ? this.currentResult.suite : null;\n\n try {\n if (!suite || !(suite instanceof test.suiteClass)) {\n if (suite)\n this.log.groupEnd();\n this.log.group(test.suiteClass.suiteName);\n suite = new test.suiteClass(this.testManager, this.cx);\n }\n } catch (ex) {\n // If test suite setup fails we're not even going to try to run the tests.\n this.log.error('Exception during setup: ' + (ex.stack ? ex.stack : ex));\n this.panic = true;\n this.onTestRunComplete_();\n return;\n }\n\n try {\n this.log.group(test.testName);\n\n this.currentResult = new lib.TestManager.Result(this, suite, test);\n this.testManager.testPreamble(this.currentResult, this.cx);\n suite.preamble(this.currentResult, this.cx);\n\n this.testQueue_.shift();\n } catch (ex) {\n this.log.error('Unexpected exception during test preamble: ' +\n (ex.stack ? ex.stack : ex));\n this.log.groupEnd();\n\n this.panic = true;\n this.onTestRunComplete_();\n return;\n }\n\n try {\n this.currentResult.run();\n } catch (ex) {\n // Result.run() should catch test exceptions and turn them into failures.\n // If we got here, it means there is trouble in the testing framework.\n this.log.error('Unexpected exception during test run: ' +\n (ex.stack ? ex.stack : ex));\n this.panic = true;\n }\n};\n\n/**\n * Run the selected list of tests.\n *\n * Some tests may need to run asynchronously, so you cannot assume the run is\n * complete when this function returns. Instead, pass in a function to be\n * called back when the run has completed.\n *\n * This function will log the results of the test run as they happen into the\n * log defined by the associated lib.TestManager. By default this is\n * console.log, which can be viewed in the JavaScript console of most browsers.\n *\n * The browser state is determined by the last test to run. We intentionally\n * don't do any cleanup so that you can inspect the state of a failed test, or\n * leave the browser ready for manual testing.\n *\n * Any failures in lib.TestManager.* code or test suite setup or test case\n * preamble will cause the test run to abort.\n */\nlib.TestManager.TestRun.prototype.run = function() {\n this.log.info('Running ' + this.testQueue_.length + ' test(s)');\n\n window.onerror = this.onUncaughtException_.bind(this);\n this.startDate = new Date();\n this.runNextTest_();\n};\n\n/**\n * Format milliseconds as fractional seconds.\n */\nlib.TestManager.TestRun.prototype.msToSeconds_ = function(ms) {\n var secs = (ms / 1000).toFixed(2);\n return secs + 's';\n};\n\n/**\n * Log the current result summary.\n */\nlib.TestManager.TestRun.prototype.summarize = function() {\n if (this.failures.length) {\n for (var i = 0; i < this.failures.length; i++) {\n this.log.error('FAILED: ' + this.failures[i].test.fullName);\n }\n }\n\n if (this.testQueue_.length) {\n this.log.warn('Test run incomplete: ' + this.testQueue_.length +\n ' test(s) were not run.');\n }\n};\n\n/**\n * Record of the result of a single test.\n *\n * These are constructed during a test run, you shouldn't have to make one\n * on your own.\n *\n * An instance of this class is passed in to each test function. It can be\n * used to add messages to the test log, to record a test pass/fail state, to\n * test assertions, or to create exception-proof wrappers for callback\n * functions.\n *\n * @param {lib.TestManager.TestRun} testRun The TestRun instance associated with\n * this result.\n * @param {lib.TestManager.Suit} suite The Suite containing the test we're\n * collecting this result for.\n * @param {lib.TestManager.Test} test The test we're collecting this result for.\n */\nlib.TestManager.Result = function(testRun, suite, test) {\n /**\n * The TestRun instance associated with this result.\n */\n this.testRun = testRun;\n\n /**\n * The Suite containing the test we're collecting this result for.\n */\n this.suite = suite;\n\n /**\n * The test we're collecting this result for.\n */\n this.test = test;\n\n /**\n * The time we started to collect this result, or null if we haven't started.\n */\n this.startDate = null;\n\n /**\n * The time in milliseconds that the test took to complete, or null if\n * it hasn't completed yet.\n */\n this.duration = null;\n\n /**\n * The current status of this test result.\n */\n this.status = this.PENDING;\n\n // An error message that the test case is expected to generate.\n this.expectedErrorMessage_ = null;\n};\n\n/**\n * Possible values for this.status.\n */\nlib.TestManager.Result.prototype.PENDING = 'pending';\nlib.TestManager.Result.prototype.FAILED = 'FAILED';\nlib.TestManager.Result.prototype.PASSED = 'passed';\n\n/**\n * Exception thrown when a test completes (pass or fail), to ensure no more of\n * the test is run.\n */\nlib.TestManager.Result.TestComplete = function(result) {\n this.result = result;\n};\n\nlib.TestManager.Result.TestComplete.prototype.toString = function() {\n return 'lib.TestManager.Result.TestComplete: ' + this.result.test.fullName +\n ', status: ' + this.result.status;\n}\n\n/**\n * Start the test associated with this result.\n */\nlib.TestManager.Result.prototype.run = function() {\n var self = this;\n\n this.startDate = new Date();\n this.test.run(this);\n\n if (this.status == this.PENDING && !this.timeout_) {\n this.println('Test did not return a value and did not request more time.');\n this.completeTest_(this.FAILED, false);\n }\n};\n\n/**\n * Unhandled error message this test expects to generate.\n *\n * This must be the exact string that would appear in the JavaScript console,\n * minus the 'Uncaught ' prefix.\n *\n * The test case does *not* automatically fail if the error message is not\n * encountered.\n */\nlib.TestManager.Result.prototype.expectErrorMessage = function(str) {\n this.expectedErrorMessage_ = str;\n};\n\n/**\n * Function called when a test times out.\n */\nlib.TestManager.Result.prototype.onTimeout_ = function() {\n this.timeout_ = null;\n\n if (this.status != this.PENDING)\n return;\n\n this.println('Test timed out.');\n this.completeTest_(this.FAILED, false);\n};\n\n/**\n * Indicate that a test case needs more time to complete.\n *\n * Before a test case returns it must report a pass/fail result, or request more\n * time to do so.\n *\n * If a test does not report pass/fail before the time expires it will\n * be reported as a timeout failure. Any late pass/fails will be noted in the\n * test log, but will not affect the final result of the test.\n *\n * Test cases may call requestTime more than once. If you have a few layers\n * of asynchronous API to go through, you should call this once per layer with\n * an estimate of how long each callback will take to complete.\n *\n * @param {int} ms Number of milliseconds requested.\n */\nlib.TestManager.Result.prototype.requestTime = function(ms) {\n if (this.timeout_)\n clearTimeout(this.timeout_);\n\n this.timeout_ = setTimeout(this.onTimeout_.bind(this), ms);\n};\n\n/**\n * Report the completion of a test.\n *\n * @param {string} status The status of the test case.\n * @param {boolean} opt_throw Optional boolean indicating whether or not\n * to throw the TestComplete exception.\n */\nlib.TestManager.Result.prototype.completeTest_ = function(status, opt_throw) {\n if (this.status == this.PENDING) {\n this.duration = (new Date()) - this.startDate;\n this.status = status;\n\n this.testRun.onResultComplete(this);\n } else {\n this.testRun.onResultReComplete(this, status);\n }\n\n if (arguments.length < 2 || opt_throw)\n throw new lib.TestManager.Result.TestComplete(this);\n};\n\n/**\n * Check that two arrays are equal.\n */\nlib.TestManager.Result.prototype.arrayEQ_ = function(actual, expected) {\n if (!actual || !expected)\n return (!actual && !expected);\n\n if (actual.length != expected.length)\n return false;\n\n for (var i = 0; i < actual.length; ++i)\n if (actual[i] != expected[i])\n return false;\n\n return true;\n};\n\n/**\n * Assert that an actual value is exactly equal to the expected value.\n *\n * This uses the JavaScript '===' operator in order to avoid type coercion.\n *\n * If the assertion fails, the test is marked as a failure and a TestCompleted\n * exception is thrown.\n *\n * @param {*} actual The actual measured value.\n * @param {*} expected The value expected.\n * @param {string} opt_name An optional name used to identify this\n * assertion in the test log. If omitted it will be the file:line\n * of the caller.\n */\nlib.TestManager.Result.prototype.assertEQ = function(\n actual, expected, opt_name) {\n // Utility function to pretty up the log.\n function format(value) {\n if (typeof value == 'number')\n return value;\n\n var str = String(value);\n var ary = str.split('\\n').map(function (e) { return JSON.stringify(e) });\n if (ary.length > 1) {\n // If the string has newlines, start it off on its own line so that\n // it's easier to compare against another string with newlines.\n return '\\n' + ary.join('\\n');\n } else {\n return ary.join('\\n');\n }\n }\n\n if (actual === expected)\n return;\n\n // Deal with common object types since JavaScript can't.\n if (expected instanceof Array)\n if (this.arrayEQ_(actual, expected))\n return;\n\n var name = opt_name ? '[' + opt_name + ']' : '';\n\n this.fail('assertEQ' + name + ': ' + this.getCallerLocation_(1) + ': ' +\n format(actual) + ' !== ' + format(expected));\n};\n\n/**\n * Assert that a value is true.\n *\n * This uses the JavaScript '===' operator in order to avoid type coercion.\n * The must be the boolean value `true`, not just some \"truish\" value.\n *\n * If the assertion fails, the test is marked as a failure and a TestCompleted\n * exception is thrown.\n *\n * @param {boolean} actual The actual measured value.\n * @param {string} opt_name An optional name used to identify this\n * assertion in the test log. If omitted it will be the file:line\n * of the caller.\n */\nlib.TestManager.Result.prototype.assert = function(actual, opt_name) {\n if (actual === true)\n return;\n\n var name = opt_name ? '[' + opt_name + ']' : '';\n\n this.fail('assert' + name + ': ' + this.getCallerLocation_(1) + ': ' +\n String(actual));\n};\n\n/**\n * Return the filename:line of a calling stack frame.\n *\n * This uses a dirty hack. It throws an exception, catches it, and examines\n * the stack property of the caught exception.\n *\n * @param {int} frameIndex The stack frame to return. 0 is the frame that\n * called this method, 1 is its caller, and so on.\n * @return {string} A string of the format \"filename:linenumber\".\n */\nlib.TestManager.Result.prototype.getCallerLocation_ = function(frameIndex) {\n try {\n throw new Error();\n } catch (ex) {\n var frame = ex.stack.split('\\n')[frameIndex + 2];\n var ary = frame.match(/([^/]+:\\d+):\\d+\\)?$/);\n return ary ? ary[1] : '???';\n }\n};\n\n/**\n * Write a message to the result log.\n */\nlib.TestManager.Result.prototype.println = function(message) {\n this.testRun.log.info(message);\n};\n\n/**\n * Mark a failed test and exit out of the rest of the test.\n *\n * This will throw a TestCompleted exception, causing the current test to stop.\n *\n * @param {string} opt_message Optional message to add to the log.\n */\nlib.TestManager.Result.prototype.fail = function(opt_message) {\n if (arguments.length)\n this.println(opt_message);\n\n this.completeTest_(this.FAILED, true);\n};\n\n/**\n * Mark a passed test and exit out of the rest of the test.\n *\n * This will throw a TestCompleted exception, causing the current test to stop.\n */\nlib.TestManager.Result.prototype.pass = function() {\n this.completeTest_(this.PASSED, true);\n};\n// SOURCE FILE: libdot/js/lib_utf8.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n// TODO(davidben): When the string encoding API is implemented,\n// replace this with the native in-browser implementation.\n//\n// https://wiki.whatwg.org/wiki/StringEncoding\n// https://encoding.spec.whatwg.org/\n\n/**\n * A stateful UTF-8 decoder.\n */\nlib.UTF8Decoder = function() {\n // The number of bytes left in the current sequence.\n this.bytesLeft = 0;\n // The in-progress code point being decoded, if bytesLeft > 0.\n this.codePoint = 0;\n // The lower bound on the final code point, if bytesLeft > 0.\n this.lowerBound = 0;\n};\n\n/**\n * Decodes a some UTF-8 data, taking into account state from previous\n * data streamed through the encoder.\n *\n * @param {String} str data to decode, represented as a JavaScript\n * String with each code unit representing a byte between 0x00 to\n * 0xFF.\n * @return {String} The data decoded into a JavaScript UTF-16 string.\n */\nlib.UTF8Decoder.prototype.decode = function(str) {\n var ret = '';\n for (var i = 0; i < str.length; i++) {\n var c = str.charCodeAt(i);\n if (this.bytesLeft == 0) {\n if (c <= 0x7F) {\n ret += str.charAt(i);\n } else if (0xC0 <= c && c <= 0xDF) {\n this.codePoint = c - 0xC0;\n this.bytesLeft = 1;\n this.lowerBound = 0x80;\n } else if (0xE0 <= c && c <= 0xEF) {\n this.codePoint = c - 0xE0;\n this.bytesLeft = 2;\n this.lowerBound = 0x800;\n } else if (0xF0 <= c && c <= 0xF7) {\n this.codePoint = c - 0xF0;\n this.bytesLeft = 3;\n this.lowerBound = 0x10000;\n } else if (0xF8 <= c && c <= 0xFB) {\n this.codePoint = c - 0xF8;\n this.bytesLeft = 4;\n this.lowerBound = 0x200000;\n } else if (0xFC <= c && c <= 0xFD) {\n this.codePoint = c - 0xFC;\n this.bytesLeft = 5;\n this.lowerBound = 0x4000000;\n } else {\n ret += '\\ufffd';\n }\n } else {\n if (0x80 <= c && c <= 0xBF) {\n this.bytesLeft--;\n this.codePoint = (this.codePoint << 6) + (c - 0x80);\n if (this.bytesLeft == 0) {\n // Got a full sequence. Check if it's within bounds and\n // filter out surrogate pairs.\n var codePoint = this.codePoint;\n if (codePoint < this.lowerBound\n || (0xD800 <= codePoint && codePoint <= 0xDFFF)\n || codePoint > 0x10FFFF) {\n ret += '\\ufffd';\n } else {\n // Encode as UTF-16 in the output.\n if (codePoint < 0x10000) {\n ret += String.fromCharCode(codePoint);\n } else {\n // Surrogate pair.\n codePoint -= 0x10000;\n ret += String.fromCharCode(\n 0xD800 + ((codePoint >>> 10) & 0x3FF),\n 0xDC00 + (codePoint & 0x3FF));\n }\n }\n }\n } else {\n // Too few bytes in multi-byte sequence. Rewind stream so we\n // don't lose the next byte.\n ret += '\\ufffd';\n this.bytesLeft = 0;\n i--;\n }\n }\n }\n return ret;\n};\n\n/**\n * Decodes UTF-8 data. This is a convenience function for when all the\n * data is already known.\n *\n * @param {String} str data to decode, represented as a JavaScript\n * String with each code unit representing a byte between 0x00 to\n * 0xFF.\n * @return {String} The data decoded into a JavaScript UTF-16 string.\n */\nlib.decodeUTF8 = function(utf8) {\n return (new lib.UTF8Decoder()).decode(utf8);\n};\n\n/**\n * Encodes a UTF-16 string into UTF-8.\n *\n * TODO(davidben): Do we need a stateful version of this that can\n * handle a surrogate pair split in two calls? What happens if a\n * keypress event would have contained a character outside the BMP?\n *\n * @param {String} str The string to encode.\n * @return {String} The string encoded as UTF-8, as a JavaScript\n * string with bytes represented as code units from 0x00 to 0xFF.\n */\nlib.encodeUTF8 = function(str) {\n var ret = '';\n for (var i = 0; i < str.length; i++) {\n // Get a unicode code point out of str.\n var c = str.charCodeAt(i);\n if (0xDC00 <= c && c <= 0xDFFF) {\n c = 0xFFFD;\n } else if (0xD800 <= c && c <= 0xDBFF) {\n if (i+1 < str.length) {\n var d = str.charCodeAt(i+1);\n if (0xDC00 <= d && d <= 0xDFFF) {\n // Swallow a surrogate pair.\n c = 0x10000 + ((c & 0x3FF) << 10) + (d & 0x3FF);\n i++;\n } else {\n c = 0xFFFD;\n }\n } else {\n c = 0xFFFD;\n }\n }\n\n // Encode c in UTF-8.\n var bytesLeft;\n if (c <= 0x7F) {\n ret += str.charAt(i);\n continue;\n } else if (c <= 0x7FF) {\n ret += String.fromCharCode(0xC0 | (c >>> 6));\n bytesLeft = 1;\n } else if (c <= 0xFFFF) {\n ret += String.fromCharCode(0xE0 | (c >>> 12));\n bytesLeft = 2;\n } else /* if (c <= 0x10FFFF) */ {\n ret += String.fromCharCode(0xF0 | (c >>> 18));\n bytesLeft = 3;\n }\n\n while (bytesLeft > 0) {\n bytesLeft--;\n ret += String.fromCharCode(0x80 | ((c >>> (6 * bytesLeft)) & 0x3F));\n }\n }\n return ret;\n};\n// SOURCE FILE: libdot/third_party/wcwidth/lib_wc.js\n// Copyright (c) 2014 The Chromium OS Authors. All rights reserved.\n// Use of lib.wc source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * This JavaScript library is ported from the wcwidth.js module of node.js.\n * The original implementation can be found at:\n * https://npmjs.org/package/wcwidth.js\n */\n\n/**\n * JavaScript porting of Markus Kuhn's wcwidth() implementation\n *\n * The following explanation comes from the original C implementation:\n *\n * This is an implementation of wcwidth() and wcswidth() (defined in\n * IEEE Std 1002.1-2001) for Unicode.\n *\n * http://www.opengroup.org/onlinepubs/007904975/functions/wcwidth.html\n * http://www.opengroup.org/onlinepubs/007904975/functions/wcswidth.html\n *\n * In fixed-width output devices, Latin characters all occupy a single\n * \"cell\" position of equal width, whereas ideographic CJK characters\n * occupy two such cells. Interoperability between terminal-line\n * applications and (teletype-style) character terminals using the\n * UTF-8 encoding requires agreement on which character should advance\n * the cursor by how many cell positions. No established formal\n * standards exist at present on which Unicode character shall occupy\n * how many cell positions on character terminals. These routines are\n * a first attempt of defining such behavior based on simple rules\n * applied to data provided by the Unicode Consortium.\n *\n * For some graphical characters, the Unicode standard explicitly\n * defines a character-cell width via the definition of the East Asian\n * FullWidth (F), Wide (W), Half-width (H), and Narrow (Na) classes.\n * In all these cases, there is no ambiguity about which width a\n * terminal shall use. For characters in the East Asian Ambiguous (A)\n * class, the width choice depends purely on a preference of backward\n * compatibility with either historic CJK or Western practice.\n * Choosing single-width for these characters is easy to justify as\n * the appropriate long-term solution, as the CJK practice of\n * displaying these characters as double-width comes from historic\n * implementation simplicity (8-bit encoded characters were displayed\n * single-width and 16-bit ones double-width, even for Greek,\n * Cyrillic, etc.) and not any typographic considerations.\n *\n * Much less clear is the choice of width for the Not East Asian\n * (Neutral) class. Existing practice does not dictate a width for any\n * of these characters. It would nevertheless make sense\n * typographically to allocate two character cells to characters such\n * as for instance EM SPACE or VOLUME INTEGRAL, which cannot be\n * represented adequately with a single-width glyph. The following\n * routines at present merely assign a single-cell width to all\n * neutral characters, in the interest of simplicity. This is not\n * entirely satisfactory and should be reconsidered before\n * establishing a formal standard in lib.wc area. At the moment, the\n * decision which Not East Asian (Neutral) characters should be\n * represented by double-width glyphs cannot yet be answered by\n * applying a simple rule from the Unicode database content. Setting\n * up a proper standard for the behavior of UTF-8 character terminals\n * will require a careful analysis not only of each Unicode character,\n * but also of each presentation form, something the author of these\n * routines has avoided to do so far.\n *\n * http://www.unicode.org/unicode/reports/tr11/\n *\n * Markus Kuhn -- 2007-05-26 (Unicode 5.0)\n *\n * Permission to use, copy, modify, and distribute lib.wc software\n * for any purpose and without fee is hereby granted. The author\n * disclaims all warranties with regard to lib.wc software.\n *\n * Latest version: http://www.cl.cam.ac.uk/~mgk25/ucs/wcwidth.c\n */\n\n/**\n * The following function defines the column width of an ISO 10646 character\n * as follows:\n *\n * - The null character (U+0000) has a column width of 0.\n * - Other C0/C1 control characters and DEL will lead to a return value of -1.\n * - Non-spacing and enclosing combining characters (general category code Mn\n * or Me in the Unicode database) have a column width of 0.\n * - SOFT HYPHEN (U+00AD) has a column width of 1.\n * - Other format characters (general category code Cf in the Unicode database)\n * and ZERO WIDTH SPACE (U+200B) have a column width of 0.\n * - Hangul Jamo medial vowels and final consonants (U+1160-U+11FF) have a\n * column width of 0.\n * - Spacing characters in the East Asian Wide (W) or East Asian Full-width (F)\n * category as defined in Unicode Technical Report #11 have a column width of\n * 2.\n * - East Asian Ambiguous characters are taken into account if\n * regardCjkAmbiguous flag is enabled. They have a column width of 2.\n * - All remaining characters (including all printable ISO 8859-1 and WGL4\n * characters, Unicode control characters, etc.) have a column width of 1.\n *\n * This implementation assumes that characters are encoded in ISO 10646.\n */\n\nlib.wc = {};\n\n// Width of a nul character.\nlib.wc.nulWidth = 0;\n\n// Width of a control character.\nlib.wc.controlWidth = 0;\n\n// Flag whether to consider East Asian Ambiguous characters.\nlib.wc.regardCjkAmbiguous = false;\n\n// Width of an East Asian Ambiguous character.\nlib.wc.cjkAmbiguousWidth = 2;\n\n// Sorted list of non-overlapping intervals of non-spacing characters\n// generated by \"uniset +cat=Me +cat=Mn +cat=Cf -00AD +1160-11FF +200B c\"\nlib.wc.combining = [\n [ 0x0300, 0x036F ], [ 0x0483, 0x0486 ], [ 0x0488, 0x0489 ],\n [ 0x0591, 0x05BD ], [ 0x05BF, 0x05BF ], [ 0x05C1, 0x05C2 ],\n [ 0x05C4, 0x05C5 ], [ 0x05C7, 0x05C7 ], [ 0x0600, 0x0603 ],\n [ 0x0610, 0x0615 ], [ 0x064B, 0x065E ], [ 0x0670, 0x0670 ],\n [ 0x06D6, 0x06E4 ], [ 0x06E7, 0x06E8 ], [ 0x06EA, 0x06ED ],\n [ 0x070F, 0x070F ], [ 0x0711, 0x0711 ], [ 0x0730, 0x074A ],\n [ 0x07A6, 0x07B0 ], [ 0x07EB, 0x07F3 ], [ 0x0901, 0x0902 ],\n [ 0x093C, 0x093C ], [ 0x0941, 0x0948 ], [ 0x094D, 0x094D ],\n [ 0x0951, 0x0954 ], [ 0x0962, 0x0963 ], [ 0x0981, 0x0981 ],\n [ 0x09BC, 0x09BC ], [ 0x09C1, 0x09C4 ], [ 0x09CD, 0x09CD ],\n [ 0x09E2, 0x09E3 ], [ 0x0A01, 0x0A02 ], [ 0x0A3C, 0x0A3C ],\n [ 0x0A41, 0x0A42 ], [ 0x0A47, 0x0A48 ], [ 0x0A4B, 0x0A4D ],\n [ 0x0A70, 0x0A71 ], [ 0x0A81, 0x0A82 ], [ 0x0ABC, 0x0ABC ],\n [ 0x0AC1, 0x0AC5 ], [ 0x0AC7, 0x0AC8 ], [ 0x0ACD, 0x0ACD ],\n [ 0x0AE2, 0x0AE3 ], [ 0x0B01, 0x0B01 ], [ 0x0B3C, 0x0B3C ],\n [ 0x0B3F, 0x0B3F ], [ 0x0B41, 0x0B43 ], [ 0x0B4D, 0x0B4D ],\n [ 0x0B56, 0x0B56 ], [ 0x0B82, 0x0B82 ], [ 0x0BC0, 0x0BC0 ],\n [ 0x0BCD, 0x0BCD ], [ 0x0C3E, 0x0C40 ], [ 0x0C46, 0x0C48 ],\n [ 0x0C4A, 0x0C4D ], [ 0x0C55, 0x0C56 ], [ 0x0CBC, 0x0CBC ],\n [ 0x0CBF, 0x0CBF ], [ 0x0CC6, 0x0CC6 ], [ 0x0CCC, 0x0CCD ],\n [ 0x0CE2, 0x0CE3 ], [ 0x0D41, 0x0D43 ], [ 0x0D4D, 0x0D4D ],\n [ 0x0DCA, 0x0DCA ], [ 0x0DD2, 0x0DD4 ], [ 0x0DD6, 0x0DD6 ],\n [ 0x0E31, 0x0E31 ], [ 0x0E34, 0x0E3A ], [ 0x0E47, 0x0E4E ],\n [ 0x0EB1, 0x0EB1 ], [ 0x0EB4, 0x0EB9 ], [ 0x0EBB, 0x0EBC ],\n [ 0x0EC8, 0x0ECD ], [ 0x0F18, 0x0F19 ], [ 0x0F35, 0x0F35 ],\n [ 0x0F37, 0x0F37 ], [ 0x0F39, 0x0F39 ], [ 0x0F71, 0x0F7E ],\n [ 0x0F80, 0x0F84 ], [ 0x0F86, 0x0F87 ], [ 0x0F90, 0x0F97 ],\n [ 0x0F99, 0x0FBC ], [ 0x0FC6, 0x0FC6 ], [ 0x102D, 0x1030 ],\n [ 0x1032, 0x1032 ], [ 0x1036, 0x1037 ], [ 0x1039, 0x1039 ],\n [ 0x1058, 0x1059 ], [ 0x1160, 0x11FF ], [ 0x135F, 0x135F ],\n [ 0x1712, 0x1714 ], [ 0x1732, 0x1734 ], [ 0x1752, 0x1753 ],\n [ 0x1772, 0x1773 ], [ 0x17B4, 0x17B5 ], [ 0x17B7, 0x17BD ],\n [ 0x17C6, 0x17C6 ], [ 0x17C9, 0x17D3 ], [ 0x17DD, 0x17DD ],\n [ 0x180B, 0x180D ], [ 0x18A9, 0x18A9 ], [ 0x1920, 0x1922 ],\n [ 0x1927, 0x1928 ], [ 0x1932, 0x1932 ], [ 0x1939, 0x193B ],\n [ 0x1A17, 0x1A18 ], [ 0x1B00, 0x1B03 ], [ 0x1B34, 0x1B34 ],\n [ 0x1B36, 0x1B3A ], [ 0x1B3C, 0x1B3C ], [ 0x1B42, 0x1B42 ],\n [ 0x1B6B, 0x1B73 ], [ 0x1DC0, 0x1DCA ], [ 0x1DFE, 0x1DFF ],\n [ 0x200B, 0x200F ], [ 0x202A, 0x202E ], [ 0x2060, 0x2063 ],\n [ 0x206A, 0x206F ], [ 0x20D0, 0x20EF ], [ 0x302A, 0x302F ],\n [ 0x3099, 0x309A ], [ 0xA806, 0xA806 ], [ 0xA80B, 0xA80B ],\n [ 0xA825, 0xA826 ], [ 0xFB1E, 0xFB1E ], [ 0xFE00, 0xFE0F ],\n [ 0xFE20, 0xFE23 ], [ 0xFEFF, 0xFEFF ], [ 0xFFF9, 0xFFFB ],\n [ 0x10A01, 0x10A03 ], [ 0x10A05, 0x10A06 ], [ 0x10A0C, 0x10A0F ],\n [ 0x10A38, 0x10A3A ], [ 0x10A3F, 0x10A3F ], [ 0x1D167, 0x1D169 ],\n [ 0x1D173, 0x1D182 ], [ 0x1D185, 0x1D18B ], [ 0x1D1AA, 0x1D1AD ],\n [ 0x1D242, 0x1D244 ], [ 0xE0001, 0xE0001 ], [ 0xE0020, 0xE007F ],\n [ 0xE0100, 0xE01EF ]\n];\n\n// Sorted list of non-overlapping intervals of East Asian Ambiguous characters\n// generated by \"uniset +WIDTH-A -cat=Me -cat=Mn -cat=Cf c\"\nlib.wc.ambiguous = [\n [ 0x00A1, 0x00A1 ], [ 0x00A4, 0x00A4 ], [ 0x00A7, 0x00A8 ],\n [ 0x00AA, 0x00AA ], [ 0x00AE, 0x00AE ], [ 0x00B0, 0x00B4 ],\n [ 0x00B6, 0x00BA ], [ 0x00BC, 0x00BF ], [ 0x00C6, 0x00C6 ],\n [ 0x00D0, 0x00D0 ], [ 0x00D7, 0x00D8 ], [ 0x00DE, 0x00E1 ],\n [ 0x00E6, 0x00E6 ], [ 0x00E8, 0x00EA ], [ 0x00EC, 0x00ED ],\n [ 0x00F0, 0x00F0 ], [ 0x00F2, 0x00F3 ], [ 0x00F7, 0x00FA ],\n [ 0x00FC, 0x00FC ], [ 0x00FE, 0x00FE ], [ 0x0101, 0x0101 ],\n [ 0x0111, 0x0111 ], [ 0x0113, 0x0113 ], [ 0x011B, 0x011B ],\n [ 0x0126, 0x0127 ], [ 0x012B, 0x012B ], [ 0x0131, 0x0133 ],\n [ 0x0138, 0x0138 ], [ 0x013F, 0x0142 ], [ 0x0144, 0x0144 ],\n [ 0x0148, 0x014B ], [ 0x014D, 0x014D ], [ 0x0152, 0x0153 ],\n [ 0x0166, 0x0167 ], [ 0x016B, 0x016B ], [ 0x01CE, 0x01CE ],\n [ 0x01D0, 0x01D0 ], [ 0x01D2, 0x01D2 ], [ 0x01D4, 0x01D4 ],\n [ 0x01D6, 0x01D6 ], [ 0x01D8, 0x01D8 ], [ 0x01DA, 0x01DA ],\n [ 0x01DC, 0x01DC ], [ 0x0251, 0x0251 ], [ 0x0261, 0x0261 ],\n [ 0x02C4, 0x02C4 ], [ 0x02C7, 0x02C7 ], [ 0x02C9, 0x02CB ],\n [ 0x02CD, 0x02CD ], [ 0x02D0, 0x02D0 ], [ 0x02D8, 0x02DB ],\n [ 0x02DD, 0x02DD ], [ 0x02DF, 0x02DF ], [ 0x0391, 0x03A1 ],\n [ 0x03A3, 0x03A9 ], [ 0x03B1, 0x03C1 ], [ 0x03C3, 0x03C9 ],\n [ 0x0401, 0x0401 ], [ 0x0410, 0x044F ], [ 0x0451, 0x0451 ],\n [ 0x2010, 0x2010 ], [ 0x2013, 0x2016 ], [ 0x2018, 0x2019 ],\n [ 0x201C, 0x201D ], [ 0x2020, 0x2022 ], [ 0x2024, 0x2027 ],\n [ 0x2030, 0x2030 ], [ 0x2032, 0x2033 ], [ 0x2035, 0x2035 ],\n [ 0x203B, 0x203B ], [ 0x203E, 0x203E ], [ 0x2074, 0x2074 ],\n [ 0x207F, 0x207F ], [ 0x2081, 0x2084 ], [ 0x20AC, 0x20AC ],\n [ 0x2103, 0x2103 ], [ 0x2105, 0x2105 ], [ 0x2109, 0x2109 ],\n [ 0x2113, 0x2113 ], [ 0x2116, 0x2116 ], [ 0x2121, 0x2122 ],\n [ 0x2126, 0x2126 ], [ 0x212B, 0x212B ], [ 0x2153, 0x2154 ],\n [ 0x215B, 0x215E ], [ 0x2160, 0x216B ], [ 0x2170, 0x2179 ],\n [ 0x2190, 0x2199 ], [ 0x21B8, 0x21B9 ], [ 0x21D2, 0x21D2 ],\n [ 0x21D4, 0x21D4 ], [ 0x21E7, 0x21E7 ], [ 0x2200, 0x2200 ],\n [ 0x2202, 0x2203 ], [ 0x2207, 0x2208 ], [ 0x220B, 0x220B ],\n [ 0x220F, 0x220F ], [ 0x2211, 0x2211 ], [ 0x2215, 0x2215 ],\n [ 0x221A, 0x221A ], [ 0x221D, 0x2220 ], [ 0x2223, 0x2223 ],\n [ 0x2225, 0x2225 ], [ 0x2227, 0x222C ], [ 0x222E, 0x222E ],\n [ 0x2234, 0x2237 ], [ 0x223C, 0x223D ], [ 0x2248, 0x2248 ],\n [ 0x224C, 0x224C ], [ 0x2252, 0x2252 ], [ 0x2260, 0x2261 ],\n [ 0x2264, 0x2267 ], [ 0x226A, 0x226B ], [ 0x226E, 0x226F ],\n [ 0x2282, 0x2283 ], [ 0x2286, 0x2287 ], [ 0x2295, 0x2295 ],\n [ 0x2299, 0x2299 ], [ 0x22A5, 0x22A5 ], [ 0x22BF, 0x22BF ],\n [ 0x2312, 0x2312 ], [ 0x2460, 0x24E9 ], [ 0x24EB, 0x254B ],\n [ 0x2550, 0x2573 ], [ 0x2580, 0x258F ], [ 0x2592, 0x2595 ],\n [ 0x25A0, 0x25A1 ], [ 0x25A3, 0x25A9 ], [ 0x25B2, 0x25B3 ],\n [ 0x25B6, 0x25B7 ], [ 0x25BC, 0x25BD ], [ 0x25C0, 0x25C1 ],\n [ 0x25C6, 0x25C8 ], [ 0x25CB, 0x25CB ], [ 0x25CE, 0x25D1 ],\n [ 0x25E2, 0x25E5 ], [ 0x25EF, 0x25EF ], [ 0x2605, 0x2606 ],\n [ 0x2609, 0x2609 ], [ 0x260E, 0x260F ], [ 0x2614, 0x2615 ],\n [ 0x261C, 0x261C ], [ 0x261E, 0x261E ], [ 0x2640, 0x2640 ],\n [ 0x2642, 0x2642 ], [ 0x2660, 0x2661 ], [ 0x2663, 0x2665 ],\n [ 0x2667, 0x266A ], [ 0x266C, 0x266D ], [ 0x266F, 0x266F ],\n [ 0x273D, 0x273D ], [ 0x2776, 0x277F ], [ 0xE000, 0xF8FF ],\n [ 0xFFFD, 0xFFFD ], [ 0xF0000, 0xFFFFD ], [ 0x100000, 0x10FFFD ]\n];\n\n/**\n * Binary search to check if the given unicode character is a space character.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {boolean} True if the given character is a space character; false\n * otherwise.\n */\nlib.wc.isSpace = function(ucs) {\n // Auxiliary function for binary search in interval table.\n var min = 0, max = lib.wc.combining.length - 1;\n var mid;\n\n if (ucs < lib.wc.combining[0][0] || ucs > lib.wc.combining[max][1])\n return false;\n while (max >= min) {\n mid = Math.floor((min + max) / 2);\n if (ucs > lib.wc.combining[mid][1]) {\n min = mid + 1;\n } else if (ucs < lib.wc.combining[mid][0]) {\n max = mid - 1;\n } else {\n return true;\n }\n }\n\n return false;\n};\n\n/**\n * Auxiliary function for checking if the given unicode character is a East\n * Asian Ambiguous character.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {boolean} True if the given character is a East Asian Ambiguous\n * character.\n */\nlib.wc.isCjkAmbiguous = function(ucs) {\n var min = 0, max = lib.wc.ambiguous.length - 1;\n var mid;\n\n if (ucs < lib.wc.ambiguous[0][0] || ucs > lib.wc.ambiguous[max][1])\n return false;\n while (max >= min) {\n mid = Math.floor((min + max) / 2);\n if (ucs > lib.wc.ambiguous[mid][1]) {\n min = mid + 1;\n } else if (ucs < lib.wc.ambiguous[mid][0]) {\n max = mid - 1;\n } else {\n return true;\n }\n }\n\n return false;\n};\n\n/**\n * Determine the column width of the given character.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {integer} The column width of the given character.\n */\nlib.wc.charWidth = function(ucs) {\n if (lib.wc.regardCjkAmbiguous) {\n return lib.wc.charWidthRegardAmbiguous(ucs);\n } else {\n return lib.wc.charWidthDisregardAmbiguous(ucs);\n }\n};\n\n/**\n * Determine the column width of the given character without considering East\n * Asian Ambiguous characters.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {integer} The column width of the given character.\n */\nlib.wc.charWidthDisregardAmbiguous = function(ucs) {\n // Test for 8-bit control characters.\n if (ucs === 0)\n return lib.wc.nulWidth;\n if (ucs < 32 || (ucs >= 0x7f && ucs < 0xa0))\n return lib.wc.controlWidth;\n\n // Optimize for ASCII characters.\n if (ucs < 0x7f)\n return 1;\n\n // Binary search in table of non-spacing characters.\n if (lib.wc.isSpace(ucs))\n return 0;\n\n // If we arrive here, ucs is not a combining or C0/C1 control character.\n return 1 +\n (ucs >= 0x1100 &&\n (ucs <= 0x115f || // Hangul Jamo init. consonants\n ucs == 0x2329 || ucs == 0x232a ||\n (ucs >= 0x2e80 && ucs <= 0xa4cf &&\n ucs != 0x303f) || // CJK ... Yi\n (ucs >= 0xac00 && ucs <= 0xd7a3) || // Hangul Syllables\n (ucs >= 0xf900 && ucs <= 0xfaff) || // CJK Compatibility Ideographs\n (ucs >= 0xfe10 && ucs <= 0xfe19) || // Vertical forms\n (ucs >= 0xfe30 && ucs <= 0xfe6f) || // CJK Compatibility Forms\n (ucs >= 0xff00 && ucs <= 0xff60) || // Fullwidth Forms\n (ucs >= 0xffe0 && ucs <= 0xffe6) ||\n (ucs >= 0x20000 && ucs <= 0x2fffd) ||\n (ucs >= 0x30000 && ucs <= 0x3fffd)));\n // TODO: emoji characters usually require space for wide characters although\n // East Asian width spec says nothing. Should we add special cases for them?\n};\n\n/**\n * Determine the column width of the given character considering East Asian\n * Ambiguous characters.\n *\n * @param {integer} ucs A unicode character code.\n *\n * @return {integer} The column width of the given character.\n */\nlib.wc.charWidthRegardAmbiguous = function(ucs) {\n if (lib.wc.isCjkAmbiguous(ucs))\n return lib.wc.cjkAmbiguousWidth;\n\n return lib.wc.charWidthDisregardAmbiguous(ucs);\n};\n\n/**\n * Determine the column width of the given string.\n *\n * @param {string} str A string.\n *\n * @return {integer} The column width of the given string.\n */\nlib.wc.strWidth = function(str) {\n var width, rv = 0;\n\n for (var i = 0; i < str.length;) {\n var codePoint = str.codePointAt(i);\n width = lib.wc.charWidth(codePoint);\n if (width < 0)\n return -1;\n rv += width;\n i += (codePoint <= 0xffff) ? 1 : 2;\n }\n\n return rv;\n};\n\n/**\n * Get the substring at the given column offset of the given column width.\n *\n * @param {string} str The string to get substring from.\n * @param {integer} start The starting column offset to get substring.\n * @param {integer} opt_width The column width of the substring.\n *\n * @return {string} The substring.\n */\nlib.wc.substr = function(str, start, opt_width) {\n var startIndex, endIndex, width;\n\n for (startIndex = 0, width = 0; startIndex < str.length; startIndex++) {\n width += lib.wc.charWidth(str.charCodeAt(startIndex));\n if (width > start)\n break;\n }\n\n if (opt_width != undefined) {\n for (endIndex = startIndex, width = 0;\n endIndex < str.length && width <= opt_width;\n width += lib.wc.charWidth(str.charCodeAt(endIndex)), endIndex++);\n if (width > opt_width)\n endIndex--;\n return str.substring(startIndex, endIndex);\n }\n\n return str.substr(startIndex);\n};\n\n/**\n * Get substring at the given start and end column offset.\n *\n * @param {string} str The string to get substring from.\n * @param {integer} start The starting column offset.\n * @param {integer} end The ending column offset.\n *\n * @return {string} The substring.\n */\nlib.wc.substring = function(str, start, end) {\n return lib.wc.substr(str, start, end - start);\n};\nlib.resource.add('libdot/changelog/version', 'text/plain',\n'1.16' +\n''\n);\n\nlib.resource.add('libdot/changelog/date', 'text/plain',\n'2017-08-16' +\n''\n);\n\n// SOURCE FILE: hterm/js/hterm.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.Storage');\n\n/**\n * @fileoverview Declares the hterm.* namespace and some basic shared utilities\n * that are too small to deserve dedicated files.\n */\nvar hterm = {};\n\n/**\n * The type of window hosting hterm.\n *\n * This is set as part of hterm.init(). The value is invalid until\n * initialization completes.\n */\nhterm.windowType = null;\n\n/**\n * Warning message to display in the terminal when browser zoom is enabled.\n *\n * You can replace it with your own localized message.\n */\nhterm.zoomWarningMessage = 'ZOOM != 100%';\n\n/**\n * Brief overlay message displayed when text is copied to the clipboard.\n *\n * By default it is the unicode BLACK SCISSORS character, but you can\n * replace it with your own localized message.\n *\n * This is only displayed when the 'enable-clipboard-notice' preference\n * is enabled.\n */\nhterm.notifyCopyMessage = '\\u2702';\n\n\n/**\n * Text shown in a desktop notification for the terminal\n * bell. \\u226a is a unicode EIGHTH NOTE, %(title) will\n * be replaced by the terminal title.\n */\nhterm.desktopNotificationTitle = '\\u266A %(title) \\u266A';\n\n/**\n * List of known hterm test suites.\n *\n * A test harness should ensure that they all exist before running.\n */\nhterm.testDeps = ['hterm.ScrollPort.Tests', 'hterm.Screen.Tests',\n 'hterm.Terminal.Tests', 'hterm.VT.Tests',\n 'hterm.VT.CannedTests'];\n\n/**\n * The hterm init function, registered with lib.registerInit().\n *\n * This is called during lib.init().\n *\n * @param {function} onInit The function lib.init() wants us to invoke when\n * initialization is complete.\n */\nlib.registerInit('hterm', function(onInit) {\n function onWindow(window) {\n hterm.windowType = window.type;\n setTimeout(onInit, 0);\n }\n\n function onTab(tab) {\n if (tab && window.chrome) {\n chrome.windows.get(tab.windowId, null, onWindow);\n } else {\n // TODO(rginda): This is where we end up for a v1 app's background page.\n // Maybe windowType = 'none' would be more appropriate, or something.\n hterm.windowType = 'normal';\n setTimeout(onInit, 0);\n }\n }\n\n if (!hterm.defaultStorage) {\n if (window.chrome && chrome.storage && chrome.storage.sync) {\n hterm.defaultStorage = new lib.Storage.Chrome(chrome.storage.sync);\n } else {\n hterm.defaultStorage = new lib.Storage.Local();\n }\n }\n\n // The chrome.tabs API is not supported in packaged apps, and detecting if\n // you're a packaged app is a little awkward.\n var isPackagedApp = false;\n if (window.chrome && chrome.runtime && chrome.runtime.getManifest) {\n var manifest = chrome.runtime.getManifest();\n isPackagedApp = manifest.app && manifest.app.background;\n }\n\n if (isPackagedApp) {\n // Packaged apps are never displayed in browser tabs.\n setTimeout(onWindow.bind(null, {type: 'popup'}), 0);\n } else {\n if (window.chrome && chrome.tabs) {\n // The getCurrent method gets the tab that is \"currently running\", not the\n // topmost or focused tab.\n chrome.tabs.getCurrent(onTab);\n } else {\n setTimeout(onWindow.bind(null, {type: 'normal'}), 0);\n }\n }\n});\n\n/**\n * Return decimal { width, height } for a given dom node.\n */\nhterm.getClientSize = function(dom) {\n return dom.getBoundingClientRect();\n};\n\n/**\n * Return decimal width for a given dom node.\n */\nhterm.getClientWidth = function(dom) {\n return dom.getBoundingClientRect().width;\n};\n\n/**\n * Return decimal height for a given dom node.\n */\nhterm.getClientHeight = function(dom) {\n return dom.getBoundingClientRect().height;\n};\n\n/**\n * Copy the current selection to the system clipboard.\n *\n * @param {HTMLDocument} The document with the selection to copy.\n */\nhterm.copySelectionToClipboard = function(document) {\n try {\n document.execCommand('copy');\n } catch (firefoxException) {\n // Ignore this. FF throws an exception if there was an error, even though\n // the spec says just return false.\n }\n};\n\n/**\n * Paste the system clipboard into the element with focus.\n *\n * Note: In Chrome/Firefox app/extension environments, you'll need the\n * \"clipboardRead\" permission. In other environments, this might always\n * fail as the browser frequently blocks access for security reasons.\n *\n * @param {HTMLDocument} The document to paste into.\n * @return {boolean} True if the paste succeeded.\n */\nhterm.pasteFromClipboard = function(document) {\n try {\n return document.execCommand('paste');\n } catch (firefoxException) {\n // Ignore this. FF 40 and older would incorrectly throw an exception if\n // there was an error instead of returning false.\n return false;\n }\n};\n\n/**\n * Create a new notification.\n *\n * @param {Object} params Various parameters for the notification.\n * @param {string} params.title The title (defaults to the window's title).\n * @param {string} params.body The message body (main text).\n */\nhterm.notify = function(params) {\n var def = (curr, fallback) => curr !== undefined ? curr : fallback;\n if (params === undefined || params === null)\n params = {};\n\n // Merge the user's choices with the default settings. We don't take it\n // directly in case it was stuffed with excess junk.\n var options = {\n 'body': params.body,\n 'icon': def(params.icon, lib.resource.getDataUrl('hterm/images/icon-96')),\n }\n\n var title = def(params.title, window.document.title);\n if (!title)\n title = 'hterm';\n title = lib.f.replaceVars(hterm.desktopNotificationTitle, {'title': title});\n\n var n = new Notification(title, options);\n n.onclick = function() {\n window.focus();\n this.close();\n };\n return n;\n};\n\n/**\n * Constructor for a hterm.Size record.\n *\n * Instances of this class have public read/write members for width and height.\n *\n * @param {integer} width The width of this record.\n * @param {integer} height The height of this record.\n */\nhterm.Size = function(width, height) {\n this.width = width;\n this.height = height;\n};\n\n/**\n * Adjust the width and height of this record.\n *\n * @param {integer} width The new width of this record.\n * @param {integer} height The new height of this record.\n */\nhterm.Size.prototype.resize = function(width, height) {\n this.width = width;\n this.height = height;\n};\n\n/**\n * Return a copy of this record.\n *\n * @return {hterm.Size} A new hterm.Size instance with the same width and\n * height.\n */\nhterm.Size.prototype.clone = function() {\n return new hterm.Size(this.width, this.height);\n};\n\n/**\n * Set the height and width of this instance based on another hterm.Size.\n *\n * @param {hterm.Size} that The object to copy from.\n */\nhterm.Size.prototype.setTo = function(that) {\n this.width = that.width;\n this.height = that.height;\n};\n\n/**\n * Test if another hterm.Size instance is equal to this one.\n *\n * @param {hterm.Size} that The other hterm.Size instance.\n * @return {boolean} True if both instances have the same width/height, false\n * otherwise.\n */\nhterm.Size.prototype.equals = function(that) {\n return this.width == that.width && this.height == that.height;\n};\n\n/**\n * Return a string representation of this instance.\n *\n * @return {string} A string that identifies the width and height of this\n * instance.\n */\nhterm.Size.prototype.toString = function() {\n return '[hterm.Size: ' + this.width + ', ' + this.height + ']';\n};\n\n/**\n * Constructor for a hterm.RowCol record.\n *\n * Instances of this class have public read/write members for row and column.\n *\n * This class includes an 'overflow' bit which is use to indicate that an\n * attempt has been made to move the cursor column passed the end of the\n * screen. When this happens we leave the cursor column set to the last column\n * of the screen but set the overflow bit. In this state cursor movement\n * happens normally, but any attempt to print new characters causes a cr/lf\n * first.\n *\n * @param {integer} row The row of this record.\n * @param {integer} column The column of this record.\n * @param {boolean} opt_overflow Optional boolean indicating that the RowCol\n * has overflowed.\n */\nhterm.RowCol = function(row, column, opt_overflow) {\n this.row = row;\n this.column = column;\n this.overflow = !!opt_overflow;\n};\n\n/**\n * Adjust the row and column of this record.\n *\n * @param {integer} row The new row of this record.\n * @param {integer} column The new column of this record.\n * @param {boolean} opt_overflow Optional boolean indicating that the RowCol\n * has overflowed.\n */\nhterm.RowCol.prototype.move = function(row, column, opt_overflow) {\n this.row = row;\n this.column = column;\n this.overflow = !!opt_overflow;\n};\n\n/**\n * Return a copy of this record.\n *\n * @return {hterm.RowCol} A new hterm.RowCol instance with the same row and\n * column.\n */\nhterm.RowCol.prototype.clone = function() {\n return new hterm.RowCol(this.row, this.column, this.overflow);\n};\n\n/**\n * Set the row and column of this instance based on another hterm.RowCol.\n *\n * @param {hterm.RowCol} that The object to copy from.\n */\nhterm.RowCol.prototype.setTo = function(that) {\n this.row = that.row;\n this.column = that.column;\n this.overflow = that.overflow;\n};\n\n/**\n * Test if another hterm.RowCol instance is equal to this one.\n *\n * @param {hterm.RowCol} that The other hterm.RowCol instance.\n * @return {boolean} True if both instances have the same row/column, false\n * otherwise.\n */\nhterm.RowCol.prototype.equals = function(that) {\n return (this.row == that.row && this.column == that.column &&\n this.overflow == that.overflow);\n};\n\n/**\n * Return a string representation of this instance.\n *\n * @return {string} A string that identifies the row and column of this\n * instance.\n */\nhterm.RowCol.prototype.toString = function() {\n return ('[hterm.RowCol: ' + this.row + ', ' + this.column + ', ' +\n this.overflow + ']');\n};\n// SOURCE FILE: hterm/js/hterm_frame.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f');\n\n/**\n * First draft of the interface between the terminal and a third party dialog.\n *\n * This is rough. It's just the terminal->dialog layer. To complete things\n * we'll also need a command->terminal layer. That will have to facilitate\n * command->terminal->dialog or direct command->dialog communication.\n *\n * I imagine this class will change significantly when that happens.\n */\n\n/**\n * Construct a new frame for the given terminal.\n *\n * @param terminal {hterm.Terminal} The parent terminal object.\n * @param url {String} The url to load in the frame.\n * @param opt_options {Object} Optional options for the frame. Not implemented.\n */\nhterm.Frame = function(terminal, url, opt_options) {\n this.terminal_ = terminal;\n this.div_ = terminal.div_;\n this.url = url;\n this.options = opt_options || {};\n this.iframe_ = null;\n this.container_ = null;\n this.messageChannel_ = null;\n};\n\n/**\n * Handle messages from the iframe.\n */\nhterm.Frame.prototype.onMessage_ = function(e) {\n switch (e.data.name) {\n case 'ipc-init-ok':\n // We get this response after we send them ipc-init and they finish.\n this.sendTerminalInfo_();\n return;\n case 'terminal-info-ok':\n // We get this response after we send them terminal-info and they finish.\n // Show the finished frame, and then rebind our message handler to the\n // callback below.\n this.container_.style.display = 'flex';\n this.messageChannel_.port1.onmessage = this.onMessage.bind(this);\n this.onLoad();\n return;\n default:\n console.log('Unknown message from frame:', e.data);\n return;\n }\n};\n\n/**\n * Clients could override this, I guess.\n *\n * It doesn't support multiple listeners, but I'm not sure that would make sense\n * here. It's probably better to speak directly to our parents.\n */\nhterm.Frame.prototype.onMessage = function() {};\n\n/**\n * Handle iframe onLoad event.\n */\nhterm.Frame.prototype.onLoad_ = function() {\n this.messageChannel_ = new MessageChannel();\n this.messageChannel_.port1.onmessage = this.onMessage_.bind(this);\n this.messageChannel_.port1.start();\n this.iframe_.contentWindow.postMessage(\n {name: 'ipc-init', argv: [{messagePort: this.messageChannel_.port2}]},\n this.url, [this.messageChannel_.port2]);\n};\n\n/**\n * Clients may override this.\n */\nhterm.Frame.prototype.onLoad = function() {};\n\n/**\n * Sends the terminal-info message to the iframe.\n */\nhterm.Frame.prototype.sendTerminalInfo_ = function() {\n lib.f.getAcceptLanguages(function(languages) {\n this.postMessage('terminal-info', [{\n acceptLanguages: languages,\n foregroundColor: this.terminal_.getForegroundColor(),\n backgroundColor: this.terminal_.getBackgroundColor(),\n cursorColor: this.terminal_.getCursorColor(),\n fontSize: this.terminal_.getFontSize(),\n fontFamily: this.terminal_.getFontFamily(),\n baseURL: lib.f.getURL('/')\n }]\n );\n }.bind(this));\n};\n\n/**\n * User clicked the close button on the frame decoration.\n */\nhterm.Frame.prototype.onCloseClicked_ = function() {\n this.close();\n};\n\n/**\n * Close this frame.\n */\nhterm.Frame.prototype.close = function() {\n if (!this.container_ || !this.container_.parentNode)\n return;\n\n this.container_.parentNode.removeChild(this.container_);\n this.onClose();\n};\n\n\n/**\n * Clients may override this.\n */\nhterm.Frame.prototype.onClose = function() {};\n\n/**\n * Send a message to the iframe.\n */\nhterm.Frame.prototype.postMessage = function(name, argv) {\n if (!this.messageChannel_)\n throw new Error('Message channel is not set up.');\n\n this.messageChannel_.port1.postMessage({name: name, argv: argv});\n};\n\n/**\n * Show the UI for this frame.\n *\n * The iframe src is not loaded until this method is called.\n */\nhterm.Frame.prototype.show = function() {\n var self = this;\n\n function opt(name, defaultValue) {\n if (name in self.options)\n return self.options[name];\n\n return defaultValue;\n }\n\n var self = this;\n\n if (this.container_ && this.container_.parentNode) {\n console.error('Frame already visible');\n return;\n }\n\n var headerHeight = '16px';\n\n var divSize = hterm.getClientSize(this.div_);\n\n var width = opt('width', 640);\n var height = opt('height', 480);\n var left = (divSize.width - width) / 2;\n var top = (divSize.height - height) / 2;\n\n var document = this.terminal_.document_;\n\n var container = this.container_ = document.createElement('div');\n container.style.cssText = (\n 'position: absolute;' +\n 'display: none;' +\n 'flex-direction: column;' +\n 'top: 10%;' +\n 'left: 4%;' +\n 'width: 90%;' +\n 'height: 80%;' +\n 'min-height: 20%;' +\n 'max-height: 80%;' +\n 'box-shadow: 0 0 2px ' + this.terminal_.getForegroundColor() + ';' +\n 'border: 2px ' + this.terminal_.getForegroundColor() + ' solid;');\n\n if (false) {\n // No use for the close button, so no use for the window header either.\n var header = document.createElement('div');\n header.style.cssText = (\n 'display: flex;' +\n 'justify-content: flex-end;' +\n 'height: ' + headerHeight + ';' +\n 'background-color: ' + this.terminal_.getForegroundColor() + ';' +\n 'color: ' + this.terminal_.getBackgroundColor() + ';' +\n 'font-size: 16px;' +\n 'font-family: ' + this.terminal_.getFontFamily());\n container.appendChild(header);\n\n var button = document.createElement('div');\n button.setAttribute('role', 'button');\n button.style.cssText = (\n 'margin-top: -3px;' +\n 'margin-right: 3px;' +\n 'cursor: pointer;');\n button.textContent = '\\u2a2f';\n button.addEventListener('click', this.onCloseClicked_.bind(this));\n header.appendChild(button);\n }\n\n var iframe = this.iframe_ = document.createElement('iframe');\n iframe.onload = this.onLoad_.bind(this);\n iframe.style.cssText = (\n 'display: flex;' +\n 'flex: 1;' +\n 'width: 100%');\n iframe.setAttribute('src', this.url);\n iframe.setAttribute('seamless', true);\n container.appendChild(iframe);\n\n this.div_.appendChild(container);\n};\n// SOURCE FILE: hterm/js/hterm_keyboard.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('hterm.Keyboard.KeyMap');\n\n/**\n * Keyboard handler.\n *\n * Consumes onKey* events and invokes onVTKeystroke on the associated\n * hterm.Terminal object.\n *\n * See also: [XTERM] as referenced in vt.js.\n *\n * @param {hterm.Terminal} The Terminal object associated with this keyboard.\n */\nhterm.Keyboard = function(terminal) {\n // The parent vt interpreter.\n this.terminal = terminal;\n\n // The element we're currently capturing keyboard events for.\n this.keyboardElement_ = null;\n\n // The event handlers we are interested in, and their bound callbacks, saved\n // so they can be uninstalled with removeEventListener, when required.\n this.handlers_ = [\n ['focusout', this.onFocusOut_.bind(this)],\n ['keydown', this.onKeyDown_.bind(this)],\n ['keypress', this.onKeyPress_.bind(this)],\n ['keyup', this.onKeyUp_.bind(this)],\n ['textInput', this.onTextInput_.bind(this)]\n ];\n\n /**\n * The current key map.\n */\n this.keyMap = new hterm.Keyboard.KeyMap(this);\n\n this.bindings = new hterm.Keyboard.Bindings(this);\n\n /**\n * none: Disable any AltGr related munging.\n * ctrl-alt: Assume Ctrl+Alt means AltGr.\n * left-alt: Assume left Alt means AltGr.\n * right-alt: Assume right Alt means AltGr.\n */\n this.altGrMode = 'none';\n\n /**\n * If true, Shift-Insert will fall through to the browser as a paste.\n * If false, the keystroke will be sent to the host.\n */\n this.shiftInsertPaste = true;\n\n /**\n * If true, home/end will control the terminal scrollbar and shift home/end\n * will send the VT keycodes. If false then home/end sends VT codes and\n * shift home/end scrolls.\n */\n this.homeKeysScroll = false;\n\n /**\n * Same as above, except for page up/page down.\n */\n this.pageKeysScroll = false;\n\n /**\n * If true, Ctrl-Plus/Minus/Zero controls zoom.\n * If false, Ctrl-Shift-Plus/Minus/Zero controls zoom, Ctrl-Minus sends ^_,\n * Ctrl-Plus/Zero do nothing.\n */\n this.ctrlPlusMinusZeroZoom = true;\n\n /**\n * Ctrl+C copies if true, sends ^C to host if false.\n * Ctrl+Shift+C sends ^C to host if true, copies if false.\n */\n this.ctrlCCopy = false;\n\n /**\n * Ctrl+V pastes if true, sends ^V to host if false.\n * Ctrl+Shift+V sends ^V to host if true, pastes if false.\n */\n this.ctrlVPaste = false;\n\n /**\n * Enable/disable application keypad.\n *\n * This changes the way numeric keys are sent from the keyboard.\n */\n this.applicationKeypad = false;\n\n /**\n * Enable/disable the application cursor mode.\n *\n * This changes the way cursor keys are sent from the keyboard.\n */\n this.applicationCursor = false;\n\n /**\n * If true, the backspace should send BS ('\\x08', aka ^H). Otherwise\n * the backspace key should send '\\x7f'.\n */\n this.backspaceSendsBackspace = false;\n\n /**\n * The encoding method for data sent to the host.\n */\n this.characterEncoding = 'utf-8';\n\n /**\n * Set whether the meta key sends a leading escape or not.\n */\n this.metaSendsEscape = true;\n\n /**\n * Set whether meta-V gets passed to host.\n */\n this.passMetaV = true;\n\n /**\n * Controls how the alt key is handled.\n *\n * escape....... Send an ESC prefix.\n * 8-bit........ Add 128 to the unshifted character as in xterm.\n * browser-key.. Wait for the keypress event and see what the browser says.\n * (This won't work well on platforms where the browser\n * performs a default action for some alt sequences.)\n *\n * This setting only matters when alt is distinct from meta (altIsMeta is\n * false.)\n */\n this.altSendsWhat = 'escape';\n\n /**\n * Set whether the alt key acts as a meta key, instead of producing 8-bit\n * characters.\n *\n * True to enable, false to disable, null to autodetect based on platform.\n */\n this.altIsMeta = false;\n\n /**\n * If true, tries to detect DEL key events that are from alt-backspace on\n * Chrome OS vs from a true DEL key press.\n *\n * Background: At the time of writing, on Chrome OS, alt-backspace is mapped\n * to DEL. Some users may be happy with this, but others may be frustrated\n * that it's impossible to do meta-backspace. If the user enables this pref,\n * we use a trick to tell a true DEL keypress from alt-backspace: on\n * alt-backspace, we will see the alt key go down, then get a DEL keystroke\n * that indicates that alt is not pressed. See https://crbug.com/174410 .\n */\n this.altBackspaceIsMetaBackspace = false;\n\n /**\n * Used to keep track of the current alt-key state, which is necessary for\n * the altBackspaceIsMetaBackspace preference above and for the altGrMode\n * preference. This is a bitmap with where bit positions correspond to the\n * \"location\" property of the key event.\n */\n this.altKeyPressed = 0;\n\n /**\n * If true, Chrome OS media keys will be mapped to their F-key equivalent.\n * E.g. \"Back\" will be mapped to F1. If false, Chrome will handle the keys.\n */\n this.mediaKeysAreFKeys = false;\n\n /**\n * Holds the previous setting of altSendsWhat when DECSET 1039 is used. When\n * DECRST 1039 is used, altSendsWhat is changed back to this and this is\n * nulled out.\n */\n this.previousAltSendsWhat_ = null;\n};\n\n/**\n * Special handling for keyCodes in a keyboard layout.\n */\nhterm.Keyboard.KeyActions = {\n /**\n * Call preventDefault and stopPropagation for this key event and nothing\n * else.\n */\n CANCEL: lib.f.createEnum('CANCEL'),\n\n /**\n * This performs the default terminal action for the key. If used in the\n * 'normal' action and the the keystroke represents a printable key, the\n * character will be sent to the host. If used in one of the modifier\n * actions, the terminal will perform the normal action after (possibly)\n * altering it.\n *\n * - If the normal sequence starts with CSI, the sequence will be adjusted\n * to include the modifier parameter as described in [XTERM] in the final\n * table of the \"PC-Style Function Keys\" section.\n *\n * - If the control key is down and the key represents a printable character,\n * and the uppercase version of the unshifted keycap is between\n * 64 (ASCII '@') and 95 (ASCII '_'), then the uppercase version of the\n * unshifted keycap minus 64 is sent. This makes '^@' send '\\x00' and\n * '^_' send '\\x1f'. (Note that one higher that 0x1f is 0x20, which is\n * the first printable ASCII value.)\n *\n * - If the alt key is down and the key represents a printable character then\n * the value of the character is shifted up by 128.\n *\n * - If meta is down and configured to send an escape, '\\x1b' will be sent\n * before the normal action is performed.\n */\n DEFAULT: lib.f.createEnum('DEFAULT'),\n\n /**\n * Causes the terminal to opt out of handling the key event, instead letting\n * the browser deal with it.\n */\n PASS: lib.f.createEnum('PASS'),\n\n /**\n * Insert the first or second character of the keyCap, based on e.shiftKey.\n * The key will be handled in onKeyDown, and e.preventDefault() will be\n * called.\n *\n * It is useful for a modified key action, where it essentially strips the\n * modifier while preventing the browser from reacting to the key.\n */\n STRIP: lib.f.createEnum('STRIP')\n};\n\n/**\n * Encode a string according to the 'send-encoding' preference.\n */\nhterm.Keyboard.prototype.encode = function(str) {\n if (this.characterEncoding == 'utf-8')\n return this.terminal.vt.encodeUTF8(str);\n\n return str;\n};\n\n/**\n * Capture keyboard events sent to the associated element.\n *\n * This enables the keyboard. Captured events are consumed by this class\n * and will not perform their default action or bubble to other elements.\n *\n * Passing a null element will uninstall the keyboard handlers.\n *\n * @param {HTMLElement} element The element whose events should be captured, or\n * null to disable the keyboard.\n */\nhterm.Keyboard.prototype.installKeyboard = function(element) {\n if (element == this.keyboardElement_)\n return;\n\n if (element && this.keyboardElement_)\n this.installKeyboard(null);\n\n for (var i = 0; i < this.handlers_.length; i++) {\n var handler = this.handlers_[i];\n if (element) {\n element.addEventListener(handler[0], handler[1]);\n } else {\n this.keyboardElement_.removeEventListener(handler[0], handler[1]);\n }\n }\n\n this.keyboardElement_ = element;\n};\n\n/**\n * Disable keyboard event capture.\n *\n * This will allow the browser to process key events normally.\n */\nhterm.Keyboard.prototype.uninstallKeyboard = function() {\n this.installKeyboard(null);\n};\n\n/**\n * Handle onTextInput events.\n *\n * We're not actually supposed to get these, but we do on the Mac in the case\n * where a third party app sends synthetic keystrokes to Chrome.\n */\nhterm.Keyboard.prototype.onTextInput_ = function(e) {\n if (!e.data)\n return;\n\n e.data.split('').forEach(this.terminal.onVTKeystroke.bind(this.terminal));\n};\n\n/**\n * Handle onKeyPress events.\n */\nhterm.Keyboard.prototype.onKeyPress_ = function(e) {\n var code;\n\n var key = String.fromCharCode(e.which);\n var lowerKey = key.toLowerCase();\n if ((e.ctrlKey || e.metaKey) && (lowerKey == 'c' || lowerKey == 'v')) {\n // On FF the key press (not key down) event gets fired for copy/paste.\n // Let it fall through for the default browser behavior.\n return;\n }\n\n if (e.altKey && this.altSendsWhat == 'browser-key' && e.charCode == 0) {\n // If we got here because we were expecting the browser to handle an\n // alt sequence but it didn't do it, then we might be on an OS without\n // an enabled IME system. In that case we fall back to xterm-like\n // behavior.\n //\n // This happens here only as a fallback. Typically these platforms should\n // set altSendsWhat to either 'escape' or '8-bit'.\n var ch = String.fromCharCode(e.keyCode);\n if (!e.shiftKey)\n ch = ch.toLowerCase();\n code = ch.charCodeAt(0) + 128;\n\n } else if (e.charCode >= 32) {\n ch = e.charCode;\n }\n\n if (ch)\n this.terminal.onVTKeystroke(String.fromCharCode(ch));\n\n e.preventDefault();\n e.stopPropagation();\n};\n\n/**\n * Prevent default handling for non-ctrl-shifted event.\n *\n * When combined with Chrome permission 'app.window.fullscreen.overrideEsc',\n * and called for both key down and key up events,\n * the ESC key remains usable within fullscreen Chrome app windows.\n */\nhterm.Keyboard.prototype.preventChromeAppNonCtrlShiftDefault_ = function(e) {\n if (!window.chrome || !window.chrome.app || !window.chrome.app.window)\n return;\n if (!e.ctrlKey || !e.shiftKey)\n e.preventDefault();\n};\n\nhterm.Keyboard.prototype.onFocusOut_ = function(e) {\n this.altKeyPressed = 0;\n};\n\nhterm.Keyboard.prototype.onKeyUp_ = function(e) {\n if (e.keyCode == 18)\n this.altKeyPressed = this.altKeyPressed & ~(1 << (e.location - 1));\n\n if (e.keyCode == 27)\n this.preventChromeAppNonCtrlShiftDefault_(e);\n};\n\n/**\n * Handle onKeyDown events.\n */\nhterm.Keyboard.prototype.onKeyDown_ = function(e) {\n if (e.keyCode == 18)\n this.altKeyPressed = this.altKeyPressed | (1 << (e.location - 1));\n\n if (e.keyCode == 27)\n this.preventChromeAppNonCtrlShiftDefault_(e);\n\n var keyDef = this.keyMap.keyDefs[e.keyCode];\n if (!keyDef) {\n console.warn('No definition for keyCode: ' + e.keyCode);\n return;\n }\n\n // The type of action we're going to use.\n var resolvedActionType = null;\n\n var self = this;\n function getAction(name) {\n // Get the key action for the given action name. If the action is a\n // function, dispatch it. If the action defers to the normal action,\n // resolve that instead.\n\n resolvedActionType = name;\n\n var action = keyDef[name];\n if (typeof action == 'function')\n action = action.apply(self.keyMap, [e, keyDef]);\n\n if (action === DEFAULT && name != 'normal')\n action = getAction('normal');\n\n return action;\n }\n\n // Note that we use the triple-equals ('===') operator to test equality for\n // these constants, in order to distinguish usage of the constant from usage\n // of a literal string that happens to contain the same bytes.\n var CANCEL = hterm.Keyboard.KeyActions.CANCEL;\n var DEFAULT = hterm.Keyboard.KeyActions.DEFAULT;\n var PASS = hterm.Keyboard.KeyActions.PASS;\n var STRIP = hterm.Keyboard.KeyActions.STRIP;\n\n var control = e.ctrlKey;\n var alt = this.altIsMeta ? false : e.altKey;\n var meta = this.altIsMeta ? (e.altKey || e.metaKey) : e.metaKey;\n\n // In the key-map, we surround the keyCap for non-printables in \"[...]\"\n var isPrintable = !(/^\\[\\w+\\]$/.test(keyDef.keyCap));\n\n switch (this.altGrMode) {\n case 'ctrl-alt':\n if (isPrintable && control && alt) {\n // ctrl-alt-printable means altGr. We clear out the control and\n // alt modifiers and wait to see the charCode in the keydown event.\n control = false;\n alt = false;\n }\n break;\n\n case 'right-alt':\n if (isPrintable && (this.terminal.keyboard.altKeyPressed & 2)) {\n control = false;\n alt = false;\n }\n break;\n\n case 'left-alt':\n if (isPrintable && (this.terminal.keyboard.altKeyPressed & 1)) {\n control = false;\n alt = false;\n }\n break;\n }\n\n var action;\n\n if (control) {\n action = getAction('control');\n } else if (alt) {\n action = getAction('alt');\n } else if (meta) {\n action = getAction('meta');\n } else {\n action = getAction('normal');\n }\n\n // If e.maskShiftKey was set (during getAction) it means the shift key is\n // already accounted for in the action, and we should not act on it any\n // further. This is currently only used for Ctrl-Shift-Tab, which should send\n // \"CSI Z\", not \"CSI 1 ; 2 Z\".\n var shift = !e.maskShiftKey && e.shiftKey;\n\n var keyDown = {\n keyCode: e.keyCode,\n shift: e.shiftKey, // not `var shift` from above.\n ctrl: control,\n alt: alt,\n meta: meta\n };\n\n var binding = this.bindings.getBinding(keyDown);\n\n if (binding) {\n // Clear out the modifier bits so we don't try to munge the sequence\n // further.\n shift = control = alt = meta = false;\n resolvedActionType = 'normal';\n action = binding.action;\n\n if (typeof action == 'function')\n action = action.call(this, this.terminal, keyDown);\n }\n\n if (alt && this.altSendsWhat == 'browser-key' && action == DEFAULT) {\n // When altSendsWhat is 'browser-key', we wait for the keypress event.\n // In keypress, the browser should have set the event.charCode to the\n // appropriate character.\n // TODO(rginda): Character compositions will need some black magic.\n action = PASS;\n }\n\n if (action === PASS || (action === DEFAULT && !(control || alt || meta))) {\n // If this key is supposed to be handled by the browser, or it is an\n // unmodified key with the default action, then exit this event handler.\n // If it's an unmodified key, it'll be handled in onKeyPress where we\n // can tell for sure which ASCII code to insert.\n //\n // This block needs to come before the STRIP test, otherwise we'll strip\n // the modifier and think it's ok to let the browser handle the keypress.\n // The browser won't know we're trying to ignore the modifiers and might\n // perform some default action.\n return;\n }\n\n if (action === STRIP) {\n alt = control = false;\n action = keyDef.normal;\n if (typeof action == 'function')\n action = action.apply(this.keyMap, [e, keyDef]);\n\n if (action == DEFAULT && keyDef.keyCap.length == 2)\n action = keyDef.keyCap.substr((shift ? 1 : 0), 1);\n }\n\n e.preventDefault();\n e.stopPropagation();\n\n if (action === CANCEL)\n return;\n\n if (action !== DEFAULT && typeof action != 'string') {\n console.warn('Invalid action: ' + JSON.stringify(action));\n return;\n }\n\n // Strip the modifier that is associated with the action, since we assume that\n // modifier has already been accounted for in the action.\n if (resolvedActionType == 'control') {\n control = false;\n } else if (resolvedActionType == 'alt') {\n alt = false;\n } else if (resolvedActionType == 'meta') {\n meta = false;\n }\n\n if (action.substr(0, 2) == '\\x1b[' && (alt || control || shift)) {\n // The action is an escape sequence that and it was triggered in the\n // presence of a keyboard modifier, we may need to alter the action to\n // include the modifier before sending it.\n\n var mod;\n\n if (shift && !(alt || control)) {\n mod = ';2';\n } else if (alt && !(shift || control)) {\n mod = ';3';\n } else if (shift && alt && !control) {\n mod = ';4';\n } else if (control && !(shift || alt)) {\n mod = ';5';\n } else if (shift && control && !alt) {\n mod = ';6';\n } else if (alt && control && !shift) {\n mod = ';7';\n } else if (shift && alt && control) {\n mod = ';8';\n }\n\n if (action.length == 3) {\n // Some of the CSI sequences have zero parameters unless modified.\n action = '\\x1b[1' + mod + action.substr(2, 1);\n } else {\n // Others always have at least one parameter.\n action = action.substr(0, action.length - 1) + mod +\n action.substr(action.length - 1);\n }\n\n } else {\n if (action === DEFAULT) {\n action = keyDef.keyCap.substr((shift ? 1 : 0), 1);\n\n if (control) {\n var unshifted = keyDef.keyCap.substr(0, 1);\n var code = unshifted.charCodeAt(0);\n if (code >= 64 && code <= 95) {\n action = String.fromCharCode(code - 64);\n }\n }\n }\n\n if (alt && this.altSendsWhat == '8-bit' && action.length == 1) {\n var code = action.charCodeAt(0) + 128;\n action = String.fromCharCode(code);\n }\n\n // We respect alt/metaSendsEscape even if the keymap action was a literal\n // string. Otherwise, every overridden alt/meta action would have to\n // check alt/metaSendsEscape.\n if ((alt && this.altSendsWhat == 'escape') ||\n (meta && this.metaSendsEscape)) {\n action = '\\x1b' + action;\n }\n }\n\n this.terminal.onVTKeystroke(action);\n};\n// SOURCE FILE: hterm/js/hterm_keyboard_bindings.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * A mapping from hterm.Keyboard.KeyPattern to an action.\n *\n * TODO(rginda): For now this bindings code is only used for user overrides.\n * hterm.Keyboard.KeyMap still handles all of the built-in key mappings.\n * It'd be nice if we migrated that over to be hterm.Keyboard.Bindings based.\n */\nhterm.Keyboard.Bindings = function() {\n this.bindings_ = {};\n};\n\n/**\n * Remove all bindings.\n */\nhterm.Keyboard.Bindings.prototype.clear = function () {\n this.bindings_ = {};\n};\n\n/**\n * Add a new binding.\n *\n * Internal API that assumes parsed objects as inputs.\n * See the public addBinding for more details.\n *\n * @param {hterm.Keyboard.KeyPattern} keyPattern\n * @param {string|function|hterm.Keyboard.KeyAction} action\n */\nhterm.Keyboard.Bindings.prototype.addBinding_ = function(keyPattern, action) {\n var binding = null;\n var list = this.bindings_[keyPattern.keyCode];\n if (list) {\n for (var i = 0; i < list.length; i++) {\n if (list[i].keyPattern.matchKeyPattern(keyPattern)) {\n binding = list[i];\n break;\n }\n }\n }\n\n if (binding) {\n binding.action = action;\n } else {\n binding = {keyPattern: keyPattern, action: action};\n\n if (!list) {\n this.bindings_[keyPattern.keyCode] = [binding];\n } else {\n this.bindings_[keyPattern.keyCode].push(binding);\n\n list.sort(function(a, b) {\n return hterm.Keyboard.KeyPattern.sortCompare(\n a.keyPattern, b.keyPattern);\n });\n }\n }\n};\n\n/**\n * Add a new binding.\n *\n * If a binding for the keyPattern already exists it will be overridden.\n *\n * More specific keyPatterns take precedence over those with wildcards. Given\n * bindings for \"Ctrl-A\" and \"Ctrl-*-A\", and a \"Ctrl-A\" keydown, the \"Ctrl-A\"\n * binding will match even if \"Ctrl-*-A\" was created last.\n *\n * If action is a string, it will be passed through hterm.Parser.parseKeyAction.\n *\n * For example:\n * // Will replace Ctrl-P keystrokes with the string \"hiya!\".\n * addBinding('Ctrl-P', \"'hiya!'\");\n * // Will cancel the keystroke entirely (make it do nothing).\n * addBinding('Alt-D', hterm.Keyboard.KeyActions.CANCEL);\n * // Will execute the code and return the action.\n * addBinding('Ctrl-T', function() {\n * console.log('Got a T!');\n * return hterm.Keyboard.KeyActions.PASS;\n * });\n *\n * @param {string|hterm.Keyboard.KeyPattern} keyPattern\n * @param {string|function|hterm.Keyboard.KeyAction} action\n */\nhterm.Keyboard.Bindings.prototype.addBinding = function(key, action) {\n // If we're given a hterm.Keyboard.KeyPattern object, pass it down.\n if (typeof key != 'string') {\n this.addBinding_(key, action);\n return;\n }\n\n // Here we treat key as a string.\n var p = new hterm.Parser();\n\n p.reset(key);\n var sequence;\n\n try {\n sequence = p.parseKeySequence();\n } catch (ex) {\n console.error(ex);\n return;\n }\n\n if (!p.isComplete()) {\n console.error(p.error('Expected end of sequence: ' + sequence));\n return;\n }\n\n // If action is a string, parse it. Otherwise assume it's callable.\n if (typeof action == 'string') {\n p.reset(action);\n try {\n action = p.parseKeyAction();\n } catch (ex) {\n console.error(ex);\n return;\n }\n }\n\n if (!p.isComplete()) {\n console.error(p.error('Expected end of sequence: ' + sequence));\n return;\n }\n\n this.addBinding_(new hterm.Keyboard.KeyPattern(sequence), action);\n};\n\n/**\n * Add multiple bindings at a time using a map of {string: string, ...}\n *\n * This uses hterm.Parser to parse the maps key into KeyPatterns, and the\n * map values into {string|function|KeyAction}.\n *\n * For example:\n * {\n * // Will replace Ctrl-P keystrokes with the string \"hiya!\".\n * 'Ctrl-P': \"'hiya!'\",\n * // Will cancel the keystroke entirely (make it do nothing).\n * 'Alt-D': hterm.Keyboard.KeyActions.CANCEL,\n * }\n *\n * @param {Object} map\n */\nhterm.Keyboard.Bindings.prototype.addBindings = function(map) {\n for (var key in map) {\n this.addBinding(key, map[key]);\n }\n};\n\n/**\n * Return the binding that is the best match for the given keyDown record,\n * or null if there is no match.\n *\n * @param {Object} keyDown An object with a keyCode property and zero or\n * more boolean properties representing key modifiers. These property names\n * must match those defined in hterm.Keyboard.KeyPattern.modifiers.\n */\nhterm.Keyboard.Bindings.prototype.getBinding = function(keyDown) {\n var list = this.bindings_[keyDown.keyCode];\n if (!list)\n return null;\n\n for (var i = 0; i < list.length; i++) {\n var binding = list[i];\n if (binding.keyPattern.matchKeyDown(keyDown))\n return binding;\n }\n\n return null;\n};\n// SOURCE FILE: hterm/js/hterm_keyboard_keymap.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('hterm.Keyboard.KeyActions');\n\n/**\n * The default key map for hterm.\n *\n * Contains a mapping of keyCodes to keyDefs (aka key definitions). The key\n * definition tells the hterm.Keyboard class how to handle keycodes.\n *\n * This should work for most cases, as the printable characters get handled\n * in the keypress event. In that case, even if the keycap is wrong in the\n * key map, the correct character should be sent.\n *\n * Different layouts, such as Dvorak should work with this keymap, as those\n * layouts typically move keycodes around on the keyboard without disturbing\n * the actual keycaps.\n *\n * There may be issues with control keys on non-US keyboards or with keyboards\n * that very significantly from the expectations here, in which case we may\n * have to invent new key maps.\n *\n * The sequences defined in this key map come from [XTERM] as referenced in\n * vt.js, starting with the section titled \"Alt and Meta Keys\".\n */\nhterm.Keyboard.KeyMap = function(keyboard) {\n this.keyboard = keyboard;\n this.keyDefs = {};\n this.reset();\n};\n\n/**\n * Add a single key definition.\n *\n * The definition is a hash containing the following keys: 'keyCap', 'normal',\n * 'control', and 'alt'.\n *\n * - keyCap is a string identifying the key. For printable\n * keys, the key cap should be exactly two characters, starting with the\n * unshifted version. For example, 'aA', 'bB', '1!' and '=+'. For\n * non-printable the key cap should be surrounded in square braces, as in\n * '[INS]', '[LEFT]'. By convention, non-printable keycaps are in uppercase\n * but this is not a strict requirement.\n *\n * - Normal is the action that should be performed when they key is pressed\n * in the absence of any modifier. See below for the supported actions.\n *\n * - Control is the action that should be performed when they key is pressed\n * along with the control modifier. See below for the supported actions.\n *\n * - Alt is the action that should be performed when they key is pressed\n * along with the alt modifier. See below for the supported actions.\n *\n * - Meta is the action that should be performed when they key is pressed\n * along with the meta modifier. See below for the supported actions.\n *\n * Actions can be one of the hterm.Keyboard.KeyActions as documented below,\n * a literal string, or an array. If the action is a literal string then\n * the string is sent directly to the host. If the action is an array it\n * is taken to be an escape sequence that may be altered by modifier keys.\n * The second-to-last element of the array will be overwritten with the\n * state of the modifier keys, as specified in the final table of \"PC-Style\n * Function Keys\" from [XTERM].\n */\nhterm.Keyboard.KeyMap.prototype.addKeyDef = function(keyCode, def) {\n if (keyCode in this.keyDefs)\n console.warn('Duplicate keyCode: ' + keyCode);\n\n this.keyDefs[keyCode] = def;\n};\n\n/**\n * Add multiple key definitions in a single call.\n *\n * This function takes the key definitions as variable argument list. Each\n * argument is the key definition specified as an array.\n *\n * (If the function took everything as one big hash we couldn't detect\n * duplicates, and there would be a lot more typing involved.)\n *\n * Each key definition should have 6 elements: (keyCode, keyCap, normal action,\n * control action, alt action and meta action). See KeyMap.addKeyDef for the\n * meaning of these elements.\n */\nhterm.Keyboard.KeyMap.prototype.addKeyDefs = function(var_args) {\n for (var i = 0; i < arguments.length; i++) {\n this.addKeyDef(arguments[i][0],\n { keyCap: arguments[i][1],\n normal: arguments[i][2],\n control: arguments[i][3],\n alt: arguments[i][4],\n meta: arguments[i][5]\n });\n }\n};\n\n/**\n * Set up the default state for this keymap.\n */\nhterm.Keyboard.KeyMap.prototype.reset = function() {\n this.keyDefs = {};\n\n var self = this;\n\n // This function is used by the \"macro\" functions below. It makes it\n // possible to use the call() macro as an argument to any other macro.\n function resolve(action, e, k) {\n if (typeof action == 'function')\n return action.apply(self, [e, k]);\n\n return action;\n }\n\n // If not application keypad a, else b. The keys that care about\n // application keypad ignore it when the key is modified.\n function ak(a, b) {\n return function(e, k) {\n var action = (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !self.keyboard.applicationKeypad) ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If mod or not application cursor a, else b. The keys that care about\n // application cursor ignore it when the key is modified.\n function ac(a, b) {\n return function(e, k) {\n var action = (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !self.keyboard.applicationCursor) ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If not backspace-sends-backspace keypad a, else b.\n function bs(a, b) {\n return function(e, k) {\n var action = !self.keyboard.backspaceSendsBackspace ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If not e.shiftKey a, else b.\n function sh(a, b) {\n return function(e, k) {\n var action = !e.shiftKey ? a : b;\n e.maskShiftKey = true;\n return resolve(action, e, k);\n };\n }\n\n // If not e.altKey a, else b.\n function alt(a, b) {\n return function(e, k) {\n var action = !e.altKey ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // If no modifiers a, else b.\n function mod(a, b) {\n return function(e, k) {\n var action = !(e.shiftKey || e.ctrlKey || e.altKey || e.metaKey) ? a : b;\n return resolve(action, e, k);\n };\n }\n\n // Compute a control character for a given character.\n function ctl(ch) { return String.fromCharCode(ch.charCodeAt(0) - 64) }\n\n // Call a method on the keymap instance.\n function c(m) { return function (e, k) { return this[m](e, k) } }\n\n // Ignore if not trapping media keys.\n function med(fn) {\n return function(e, k) {\n if (!self.keyboard.mediaKeysAreFKeys) {\n // Block Back, Forward, and Reload keys to avoid navigating away from\n // the current page.\n return (e.keyCode == 166 || e.keyCode == 167 || e.keyCode == 168) ?\n hterm.Keyboard.KeyActions.CANCEL :\n hterm.Keyboard.KeyActions.PASS;\n }\n return resolve(fn, e, k);\n };\n }\n\n var ESC = '\\x1b';\n var CSI = '\\x1b[';\n var SS3 = '\\x1bO';\n\n var CANCEL = hterm.Keyboard.KeyActions.CANCEL;\n var DEFAULT = hterm.Keyboard.KeyActions.DEFAULT;\n var PASS = hterm.Keyboard.KeyActions.PASS;\n var STRIP = hterm.Keyboard.KeyActions.STRIP;\n\n this.addKeyDefs(\n // These fields are: [keycode, keycap, normal, control, alt, meta]\n\n // The browser sends the keycode 0 for some keys. We'll just assume it's\n // going to do the right thing by default for those keys.\n [0, '[UNKNOWN]', PASS, PASS, PASS, PASS],\n\n // First row.\n [27, '[ESC]', ESC, DEFAULT, DEFAULT, DEFAULT],\n [112, '[F1]', mod(SS3 + 'P', CSI + 'P'), DEFAULT, CSI + \"23~\", DEFAULT],\n [113, '[F2]', mod(SS3 + 'Q', CSI + 'Q'), DEFAULT, CSI + \"24~\", DEFAULT],\n [114, '[F3]', mod(SS3 + 'R', CSI + 'R'), DEFAULT, CSI + \"25~\", DEFAULT],\n [115, '[F4]', mod(SS3 + 'S', CSI + 'S'), DEFAULT, CSI + \"26~\", DEFAULT],\n [116, '[F5]', CSI + '15~', DEFAULT, CSI + \"28~\", DEFAULT],\n [117, '[F6]', CSI + '17~', DEFAULT, CSI + \"29~\", DEFAULT],\n [118, '[F7]', CSI + '18~', DEFAULT, CSI + \"31~\", DEFAULT],\n [119, '[F8]', CSI + '19~', DEFAULT, CSI + \"32~\", DEFAULT],\n [120, '[F9]', CSI + '20~', DEFAULT, CSI + \"33~\", DEFAULT],\n [121, '[F10]', CSI + '21~', DEFAULT, CSI + \"34~\", DEFAULT],\n [122, '[F11]', CSI + '23~', DEFAULT, CSI + \"42~\", DEFAULT],\n [123, '[F12]', CSI + '24~', DEFAULT, CSI + \"43~\", DEFAULT],\n\n // Second row.\n [192, '`~', DEFAULT, sh(ctl('@'), ctl('^')), DEFAULT, PASS],\n [49, '1!', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [50, '2@', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [51, '3#', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [52, '4$', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [53, '5%', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [54, '6^', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [55, '7&', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [56, '8*', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [57, '9(', DEFAULT, c('onCtrlNum_'), c('onAltNum_'), c('onMetaNum_')],\n [48, '0)', DEFAULT, c('onPlusMinusZero_'),c('onAltNum_'),c('onPlusMinusZero_')],\n [189, '-_', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [187, '=+', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n // Firefox -_ and =+\n [173, '-_', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [61, '=+', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n // Firefox Italian +*\n [171, '+*', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n\n [8, '[BKSP]', bs('\\x7f', '\\b'), bs('\\b', '\\x7f'), DEFAULT, DEFAULT],\n\n // Third row.\n [9, '[TAB]', sh('\\t', CSI + 'Z'), STRIP, PASS, DEFAULT],\n [81, 'qQ', DEFAULT, ctl('Q'), DEFAULT, DEFAULT],\n [87, 'wW', DEFAULT, ctl('W'), DEFAULT, DEFAULT],\n [69, 'eE', DEFAULT, ctl('E'), DEFAULT, DEFAULT],\n [82, 'rR', DEFAULT, ctl('R'), DEFAULT, DEFAULT],\n [84, 'tT', DEFAULT, ctl('T'), DEFAULT, DEFAULT],\n [89, 'yY', DEFAULT, ctl('Y'), DEFAULT, DEFAULT],\n [85, 'uU', DEFAULT, ctl('U'), DEFAULT, DEFAULT],\n [73, 'iI', DEFAULT, ctl('I'), DEFAULT, DEFAULT],\n [79, 'oO', DEFAULT, ctl('O'), DEFAULT, DEFAULT],\n [80, 'pP', DEFAULT, ctl('P'), DEFAULT, DEFAULT],\n [219, '[{', DEFAULT, ctl('['), DEFAULT, DEFAULT],\n [221, ']}', DEFAULT, ctl(']'), DEFAULT, DEFAULT],\n [220, '\\\\|', DEFAULT, ctl('\\\\'), DEFAULT, DEFAULT],\n\n // Fourth row. (We let Ctrl-Shift-J pass for Chrome DevTools.)\n [20, '[CAPS]', PASS, PASS, PASS, DEFAULT],\n [65, 'aA', DEFAULT, ctl('A'), DEFAULT, DEFAULT],\n [83, 'sS', DEFAULT, ctl('S'), DEFAULT, DEFAULT],\n [68, 'dD', DEFAULT, ctl('D'), DEFAULT, DEFAULT],\n [70, 'fF', DEFAULT, ctl('F'), DEFAULT, DEFAULT],\n [71, 'gG', DEFAULT, ctl('G'), DEFAULT, DEFAULT],\n [72, 'hH', DEFAULT, ctl('H'), DEFAULT, DEFAULT],\n [74, 'jJ', DEFAULT, sh(ctl('J'), PASS), DEFAULT, DEFAULT],\n [75, 'kK', DEFAULT, sh(ctl('K'), c('onClear_')), DEFAULT, DEFAULT],\n [76, 'lL', DEFAULT, sh(ctl('L'), PASS), DEFAULT, DEFAULT],\n [186, ';:', DEFAULT, STRIP, DEFAULT, DEFAULT],\n [222, '\\'\"', DEFAULT, STRIP, DEFAULT, DEFAULT],\n [13, '[ENTER]', '\\r', CANCEL, CANCEL, DEFAULT],\n\n // Fifth row. This includes the copy/paste shortcuts. On some\n // platforms it's Ctrl-C/V, on others it's Meta-C/V. We assume either\n // Ctrl-C/Meta-C should pass to the browser when there is a selection,\n // and Ctrl-Shift-V/Meta-*-V should always pass to the browser (since\n // these seem to be recognized as paste too).\n [16, '[SHIFT]', PASS, PASS, PASS, DEFAULT],\n [90, 'zZ', DEFAULT, ctl('Z'), DEFAULT, DEFAULT],\n [88, 'xX', DEFAULT, ctl('X'), DEFAULT, DEFAULT],\n [67, 'cC', DEFAULT, c('onCtrlC_'), DEFAULT, c('onMetaC_')],\n [86, 'vV', DEFAULT, c('onCtrlV_'), DEFAULT, c('onMetaV_')],\n [66, 'bB', DEFAULT, sh(ctl('B'), PASS), DEFAULT, sh(DEFAULT, PASS)],\n [78, 'nN', DEFAULT, c('onCtrlN_'), DEFAULT, c('onMetaN_')],\n [77, 'mM', DEFAULT, ctl('M'), DEFAULT, DEFAULT],\n [188, ',<', DEFAULT, alt(STRIP, PASS), DEFAULT, DEFAULT],\n [190, '.>', DEFAULT, alt(STRIP, PASS), DEFAULT, DEFAULT],\n [191, '/?', DEFAULT, sh(ctl('_'), ctl('?')), DEFAULT, DEFAULT],\n\n // Sixth and final row.\n [17, '[CTRL]', PASS, PASS, PASS, PASS],\n [18, '[ALT]', PASS, PASS, PASS, PASS],\n [91, '[LAPL]', PASS, PASS, PASS, PASS],\n [32, ' ', DEFAULT, ctl('@'), DEFAULT, DEFAULT],\n [92, '[RAPL]', PASS, PASS, PASS, PASS],\n [93, '[RMENU]', PASS, PASS, PASS, PASS],\n\n // These things.\n [42, '[PRTSCR]', PASS, PASS, PASS, PASS],\n [145, '[SCRLK]', PASS, PASS, PASS, PASS],\n [19, '[BREAK]', PASS, PASS, PASS, PASS],\n\n // The block of six keys above the arrows.\n [45, '[INSERT]', c('onKeyInsert_'), DEFAULT, DEFAULT, DEFAULT],\n [36, '[HOME]', c('onKeyHome_'), DEFAULT, DEFAULT, DEFAULT],\n [33, '[PGUP]', c('onKeyPageUp_'), DEFAULT, DEFAULT, DEFAULT],\n [46, '[DEL]', c('onKeyDel_'), DEFAULT, DEFAULT, DEFAULT],\n [35, '[END]', c('onKeyEnd_'), DEFAULT, DEFAULT, DEFAULT],\n [34, '[PGDOWN]', c('onKeyPageDown_'), DEFAULT, DEFAULT, DEFAULT],\n\n // Arrow keys. When unmodified they respect the application cursor state,\n // otherwise they always send the CSI codes.\n [38, '[UP]', c('onKeyArrowUp_'), DEFAULT, DEFAULT, DEFAULT],\n [40, '[DOWN]', c('onKeyArrowDown_'), DEFAULT, DEFAULT, DEFAULT],\n [39, '[RIGHT]', ac(CSI + 'C', SS3 + 'C'), DEFAULT, DEFAULT, DEFAULT],\n [37, '[LEFT]', ac(CSI + 'D', SS3 + 'D'), DEFAULT, DEFAULT, DEFAULT],\n\n [144, '[NUMLOCK]', PASS, PASS, PASS, PASS],\n\n // With numlock off, the keypad generates the same key codes as the arrows\n // and 'block of six' for some keys, and null key codes for the rest.\n\n // Keypad with numlock on generates unique key codes...\n [96, '[KP0]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [97, '[KP1]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [98, '[KP2]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [99, '[KP3]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [100, '[KP4]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [101, '[KP5]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [102, '[KP6]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [103, '[KP7]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [104, '[KP8]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [105, '[KP9]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [107, '[KP+]', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [109, '[KP-]', DEFAULT, c('onPlusMinusZero_'), DEFAULT, c('onPlusMinusZero_')],\n [106, '[KP*]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [111, '[KP/]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n [110, '[KP.]', DEFAULT, DEFAULT, DEFAULT, DEFAULT],\n\n // Chrome OS keyboard top row.\n [166, '[BACK]', med(mod(SS3+'P', CSI+'P')), DEFAULT, CSI+\"23~\", DEFAULT],\n [167, '[FWD]', med(mod(SS3+'Q', CSI+'Q')), DEFAULT, CSI+\"24~\", DEFAULT],\n [168, '[RELOAD]', med(mod(SS3+'R', CSI+'R')), DEFAULT, CSI+\"25~\", DEFAULT],\n [183, '[FSCR]', med(mod(SS3+'S', CSI+'S')), DEFAULT, CSI+\"26~\", DEFAULT],\n [182, '[WINS]', med(CSI + '15~'), DEFAULT, CSI+\"28~\", DEFAULT],\n [216, '[BRIT-]', med(CSI + '17~'), DEFAULT, CSI+\"29~\", DEFAULT],\n [217, '[BRIT+]', med(CSI + '18~'), DEFAULT, CSI+\"31~\", DEFAULT]\n\n // 173 [MUTE], 174 [VOL-] and 175 [VOL+] are trapped by the Chrome OS\n // window manager, so we'll never see them. Note that 173 is also\n // Firefox's -_ keycode.\n );\n};\n\n/**\n * Either allow the paste or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyInsert_ = function(e) {\n if (this.keyboard.shiftInsertPaste && e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return '\\x1b[2~';\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyHome_ = function(e) {\n if (!this.keyboard.homeKeysScroll ^ e.shiftKey) {\n if ((e.altey || e.ctrlKey || e.shiftKey) ||\n !this.keyboard.applicationCursor) {\n return '\\x1b[H';\n }\n\n return '\\x1bOH';\n }\n\n this.keyboard.terminal.scrollHome();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyEnd_ = function(e) {\n if (!this.keyboard.homeKeysScroll ^ e.shiftKey) {\n if ((e.altKey || e.ctrlKey || e.shiftKey) ||\n !this.keyboard.applicationCursor) {\n return '\\x1b[F';\n }\n\n return '\\x1bOF';\n }\n\n this.keyboard.terminal.scrollEnd();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyPageUp_ = function(e) {\n if (!this.keyboard.pageKeysScroll ^ e.shiftKey)\n return '\\x1b[5~';\n\n this.keyboard.terminal.scrollPageUp();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either send a true DEL, or sub in meta-backspace.\n *\n * On Chrome OS, if we know the alt key is down, but we get a DEL event that\n * claims that the alt key is not pressed, we know the DEL was a synthetic\n * one from a user that hit alt-backspace. Based on a user pref, we can sub\n * in meta-backspace in this case.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyDel_ = function(e) {\n if (this.keyboard.altBackspaceIsMetaBackspace &&\n this.keyboard.altKeyPressed && !e.altKey)\n return '\\x1b\\x7f';\n return '\\x1b[3~';\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyPageDown_ = function(e) {\n if (!this.keyboard.pageKeysScroll ^ e.shiftKey)\n return '\\x1b[6~';\n\n this.keyboard.terminal.scrollPageDown();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyArrowUp_ = function(e) {\n if (!this.keyboard.applicationCursor && e.shiftKey) {\n this.keyboard.terminal.scrollLineUp();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !this.keyboard.applicationCursor) ? '\\x1b[A' : '\\x1bOA';\n};\n\n/**\n * Either scroll the scrollback buffer or send a key sequence.\n */\nhterm.Keyboard.KeyMap.prototype.onKeyArrowDown_ = function(e) {\n if (!this.keyboard.applicationCursor && e.shiftKey) {\n this.keyboard.terminal.scrollLineDown();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return (e.shiftKey || e.ctrlKey || e.altKey || e.metaKey ||\n !this.keyboard.applicationCursor) ? '\\x1b[B' : '\\x1bOB';\n};\n\n/**\n * Clear the primary/alternate screens and the scrollback buffer.\n */\nhterm.Keyboard.KeyMap.prototype.onClear_ = function(e, keyDef) {\n this.keyboard.terminal.wipeContents();\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n\n/**\n * Either pass Ctrl-1..9 to the browser or send them to the host.\n *\n * Note that Ctrl-1 and Ctrl-9 don't actually have special sequences mapped\n * to them in xterm or gnome-terminal. The range is really Ctrl-2..8, but\n * we handle 1..9 since Chrome treats the whole range special.\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlNum_ = function(e, keyDef) {\n // Compute a control character for a given character.\n function ctl(ch) { return String.fromCharCode(ch.charCodeAt(0) - 64) }\n\n if (this.keyboard.terminal.passCtrlNumber && !e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n switch (keyDef.keyCap.substr(0, 1)) {\n case '1': return '1';\n case '2': return ctl('@');\n case '3': return ctl('[');\n case '4': return ctl('\\\\');\n case '5': return ctl(']');\n case '6': return ctl('^');\n case '7': return ctl('_');\n case '8': return '\\x7f';\n case '9': return '9';\n }\n};\n\n/**\n * Either pass Alt-1..9 to the browser or send them to the host.\n */\nhterm.Keyboard.KeyMap.prototype.onAltNum_ = function(e, keyDef) {\n if (this.keyboard.terminal.passAltNumber && !e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Either pass Meta-1..9 to the browser or send them to the host.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaNum_ = function(e, keyDef) {\n if (this.keyboard.terminal.passMetaNumber && !e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Either send a ^C or interpret the keystroke as a copy command.\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlC_ = function(e, keyDef) {\n var selection = this.keyboard.terminal.getDocument().getSelection();\n\n if (!selection.isCollapsed) {\n if (this.keyboard.ctrlCCopy && !e.shiftKey) {\n // Ctrl-C should copy if there is a selection, send ^C otherwise.\n // Perform the copy by letting the browser handle Ctrl-C. On most\n // browsers, this is the *only* way to place text on the clipboard from\n // the 'drive-by' web.\n if (this.keyboard.terminal.clearSelectionAfterCopy) {\n setTimeout(selection.collapseToEnd.bind(selection), 50);\n }\n return hterm.Keyboard.KeyActions.PASS;\n }\n\n if (!this.keyboard.ctrlCCopy && e.shiftKey) {\n // Ctrl-Shift-C should copy if there is a selection, send ^C otherwise.\n // Perform the copy manually. This only works in situations where\n // document.execCommand('copy') is allowed.\n if (this.keyboard.terminal.clearSelectionAfterCopy) {\n setTimeout(selection.collapseToEnd.bind(selection), 50);\n }\n this.keyboard.terminal.copySelectionToClipboard();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n }\n\n return '\\x03';\n};\n\n/**\n * Either send a ^N or open a new window to the same location.\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlN_ = function(e, keyDef) {\n if (e.shiftKey) {\n window.open(document.location.href, '',\n 'chrome=no,close=yes,resize=yes,scrollbars=yes,' +\n 'minimizable=yes,width=' + window.innerWidth +\n ',height=' + window.innerHeight);\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return '\\x0e';\n};\n\n/**\n * Either send a ^V or issue a paste command.\n *\n * The default behavior is to paste if the user presses Ctrl-Shift-V, and send\n * a ^V if the user presses Ctrl-V. This can be flipped with the\n * 'ctrl-v-paste' preference.\n *\n */\nhterm.Keyboard.KeyMap.prototype.onCtrlV_ = function(e, keyDef) {\n if ((!e.shiftKey && this.keyboard.ctrlVPaste) ||\n (e.shiftKey && !this.keyboard.ctrlVPaste)) {\n // We try to do the pasting ourselves as not all browsers/OSs bind Ctrl-V to\n // pasting. Notably, on macOS, Ctrl-V/Ctrl-Shift-V do nothing.\n // However, this might run into web restrictions, so if it fails, we still\n // fallback to the letting the native behavior (hopefully) save us.\n if (this.keyboard.terminal.paste())\n return hterm.Keyboard.KeyActions.CANCEL;\n else\n return hterm.Keyboard.KeyActions.PASS;\n }\n\n return '\\x16';\n};\n\n/**\n * Either the default action or open a new window to the same location.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaN_ = function(e, keyDef) {\n if (e.shiftKey) {\n window.open(document.location.href, '',\n 'chrome=no,close=yes,resize=yes,scrollbars=yes,' +\n 'minimizable=yes,width=' + window.outerWidth +\n ',height=' + window.outerHeight);\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n return hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Either send a Meta-C or allow the browser to interpret the keystroke as a\n * copy command.\n *\n * If there is no selection, or if the user presses Meta-Shift-C, then we'll\n * transmit an '\\x1b' (if metaSendsEscape is on) followed by 'c' or 'C'.\n *\n * If there is a selection, we defer to the browser. In this case we clear out\n * the selection so the user knows we heard them, and also to give them a\n * chance to send a Meta-C by just hitting the key again.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaC_ = function(e, keyDef) {\n var document = this.keyboard.terminal.getDocument();\n if (e.shiftKey || document.getSelection().isCollapsed) {\n // If the shift key is being held, or there is no document selection, send\n // a Meta-C. The keyboard code will add the ESC if metaSendsEscape is true,\n // we just have to decide between 'c' and 'C'.\n return keyDef.keyCap.substr(e.shiftKey ? 1 : 0, 1);\n }\n\n // Otherwise let the browser handle it as a copy command.\n if (this.keyboard.terminal.clearSelectionAfterCopy) {\n setTimeout(function() { document.getSelection().collapseToEnd() }, 50);\n }\n return hterm.Keyboard.KeyActions.PASS;\n};\n\n/**\n * Either PASS or DEFAULT Meta-V, depending on preference.\n *\n * Always PASS Meta-Shift-V to allow browser to interpret the keystroke as\n * a paste command.\n */\nhterm.Keyboard.KeyMap.prototype.onMetaV_ = function(e, keyDef) {\n if (e.shiftKey)\n return hterm.Keyboard.KeyActions.PASS;\n\n return this.keyboard.passMetaV ?\n hterm.Keyboard.KeyActions.PASS :\n hterm.Keyboard.KeyActions.DEFAULT;\n};\n\n/**\n * Handle font zooming.\n *\n * The browser's built-in zoom has a bit of an issue at certain zoom levels.\n * At some magnifications, the measured height of a row of text differs from\n * the height that was explicitly set.\n *\n * We override the browser zoom keys to change the ScrollPort's font size to\n * avoid the issue.\n */\nhterm.Keyboard.KeyMap.prototype.onPlusMinusZero_ = function(e, keyDef) {\n if (!(this.keyboard.ctrlPlusMinusZeroZoom ^ e.shiftKey)) {\n // If ctrl-PMZ controls zoom and the shift key is pressed, or\n // ctrl-shift-PMZ controls zoom and this shift key is not pressed,\n // then we want to send the control code instead of affecting zoom.\n if (keyDef.keyCap == '-_')\n return '\\x1f'; // ^_\n\n // Only ^_ is valid, the other sequences have no meaning.\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n\n if (this.keyboard.terminal.getZoomFactor() != 1) {\n // If we're not at 1:1 zoom factor, let the Ctrl +/-/0 keys control the\n // browser zoom, so it's easier to for the user to get back to 100%.\n return hterm.Keyboard.KeyActions.PASS;\n }\n\n var cap = keyDef.keyCap.substr(0, 1);\n if (cap == '0') {\n this.keyboard.terminal.setFontSize(0);\n } else {\n var size = this.keyboard.terminal.getFontSize();\n\n if (cap == '-' || keyDef.keyCap == '[KP-]') {\n size -= 1;\n } else {\n size += 1;\n }\n\n this.keyboard.terminal.setFontSize(size);\n }\n\n return hterm.Keyboard.KeyActions.CANCEL;\n};\n// SOURCE FILE: hterm/js/hterm_keyboard_keypattern.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * A record of modifier bits and keycode used to define a key binding.\n *\n * The modifier names are enumerated in the static KeyPattern.modifiers\n * property below. Each modifier can be true, false, or \"*\". True means\n * the modifier key must be present, false means it must not, and \"*\" means\n * it doesn't matter.\n */\nhterm.Keyboard.KeyPattern = function(spec) {\n this.wildcardCount = 0;\n this.keyCode = spec.keyCode;\n\n hterm.Keyboard.KeyPattern.modifiers.forEach(function(mod) {\n this[mod] = spec[mod] || false;\n if (this[mod] == '*')\n this.wildcardCount++;\n }.bind(this));\n};\n\n/**\n * Valid modifier names.\n */\nhterm.Keyboard.KeyPattern.modifiers = [\n 'shift', 'ctrl', 'alt', 'meta'\n];\n\n/**\n * A compare callback for Array.prototype.sort().\n *\n * The bindings code wants to be sure to search through the strictest key\n * patterns first, so that loosely defined patterns have a lower priority than\n * exact patterns.\n *\n * @param {hterm.Keyboard.KeyPattern} a\n * @param {hterm.Keyboard.KeyPattern} b\n */\nhterm.Keyboard.KeyPattern.sortCompare = function(a, b) {\n if (a.wildcardCount < b.wildcardCount)\n return -1;\n\n if (a.wildcardCount > b.wildcardCount)\n return 1;\n\n return 0;\n};\n\n/**\n * Private method used to match this key pattern against other key patterns\n * or key down events.\n *\n * @param {Object} The object to match.\n * @param {boolean} True if we should ignore wildcards. Useful when you want\n * to perform and exact match against another key pattern.\n */\nhterm.Keyboard.KeyPattern.prototype.match_ = function(obj, exactMatch) {\n if (this.keyCode != obj.keyCode)\n return false;\n\n var rv = true;\n\n hterm.Keyboard.KeyPattern.modifiers.forEach(function(mod) {\n var modValue = (mod in obj) ? obj[mod] : false;\n if (!rv || (!exactMatch && this[mod] == '*') || this[mod] == modValue)\n return;\n\n rv = false;\n }.bind(this));\n\n return rv;\n};\n\n/**\n * Return true if the given keyDown object is a match for this key pattern.\n *\n * @param {Object} keyDown An object with a keyCode property and zero or\n * more boolean properties representing key modifiers. These property names\n * must match those defined in hterm.Keyboard.KeyPattern.modifiers.\n */\nhterm.Keyboard.KeyPattern.prototype.matchKeyDown = function(keyDown) {\n return this.match_(keyDown, false);\n};\n\n/**\n * Return true if the given hterm.Keyboard.KeyPattern is exactly the same as\n * this one.\n *\n * @param {hterm.Keyboard.KeyPattern}\n */\nhterm.Keyboard.KeyPattern.prototype.matchKeyPattern = function(keyPattern) {\n return this.match_(keyPattern, true);\n};\n// SOURCE FILE: hterm/js/hterm_options.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * @fileoverview This file implements the hterm.Options class,\n * which stores current operating conditions for the terminal. This object is\n * used instead of a series of parameters to allow saving/restoring of cursor\n * conditions easily, and to provide an easy place for common configuration\n * options.\n *\n * Original code by Cory Maccarrone.\n */\n\n/**\n * Constructor for the hterm.Options class, optionally acting as a copy\n * constructor.\n *\n * The defaults are as defined in http://www.vt100.net/docs/vt510-rm/DECSTR\n * except that we enable autowrap (wraparound) by default since that seems to\n * be what xterm does.\n *\n * @param {hterm.Options=} opt_copy Optional instance to copy.\n * @constructor\n */\nhterm.Options = function(opt_copy) {\n // All attributes in this class are public to allow easy access by the\n // terminal.\n\n this.wraparound = opt_copy ? opt_copy.wraparound : true;\n this.reverseWraparound = opt_copy ? opt_copy.reverseWraparound : false;\n this.originMode = opt_copy ? opt_copy.originMode : false;\n this.autoCarriageReturn = opt_copy ? opt_copy.autoCarriageReturn : false;\n this.cursorVisible = opt_copy ? opt_copy.cursorVisible : false;\n this.cursorBlink = opt_copy ? opt_copy.cursorBlink : false;\n this.insertMode = opt_copy ? opt_copy.insertMode : false;\n this.reverseVideo = opt_copy ? opt_copy.reverseVideo : false;\n this.bracketedPaste = opt_copy ? opt_copy.bracketedPaste : false;\n};\n// SOURCE FILE: hterm/js/hterm_parser.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('hterm.Keyboard.KeyActions');\n\n/**\n * @constructor\n * Parses the key definition syntax used for user keyboard customizations.\n */\nhterm.Parser = function() {\n /**\n * @type {string} The source string.\n */\n this.source = '';\n\n /**\n * @type {number} The current position.\n */\n this.pos = 0;\n\n /**\n * @type {string?} The character at the current position.\n */\n this.ch = null;\n};\n\nhterm.Parser.prototype.error = function(message) {\n return new Error('Parse error at ' + this.pos + ': ' + message);\n};\n\nhterm.Parser.prototype.isComplete = function() {\n return this.pos == this.source.length;\n};\n\nhterm.Parser.prototype.reset = function(source, opt_pos) {\n this.source = source;\n this.pos = opt_pos || 0;\n this.ch = source.substr(0, 1);\n};\n\n/**\n * Parse a key sequence.\n *\n * A key sequence is zero or more of the key modifiers defined in\n * hterm.Parser.identifiers.modifierKeys followed by a key code. Key\n * codes can be an integer or an identifier from\n * hterm.Parser.identifiers.keyCodes. Modifiers and keyCodes should be joined\n * by the dash character.\n *\n * An asterisk \"*\" can be used to indicate that the unspecified modifiers\n * are optional.\n *\n * For example:\n * A: Matches only an unmodified \"A\" character.\n * 65: Same as above.\n * 0x41: Same as above.\n * Ctrl-A: Matches only Ctrl-A.\n * Ctrl-65: Same as above.\n * Ctrl-0x41: Same as above.\n * Ctrl-Shift-A: Matches only Ctrl-Shift-A.\n * Ctrl-*-A: Matches Ctrl-A, as well as any other key sequence that includes\n * at least the Ctrl and A keys.\n *\n * @return {Object} An object with shift, ctrl, alt, meta, keyCode\n * properties.\n */\nhterm.Parser.prototype.parseKeySequence = function() {\n var rv = {\n keyCode: null\n };\n\n for (var k in hterm.Parser.identifiers.modifierKeys) {\n rv[hterm.Parser.identifiers.modifierKeys[k]] = false;\n }\n\n while (this.pos < this.source.length) {\n this.skipSpace();\n\n var token = this.parseToken();\n if (token.type == 'integer') {\n rv.keyCode = token.value;\n\n } else if (token.type == 'identifier') {\n var ucValue = token.value.toUpperCase();\n if (ucValue in hterm.Parser.identifiers.modifierKeys &&\n hterm.Parser.identifiers.modifierKeys.hasOwnProperty(ucValue)) {\n var mod = hterm.Parser.identifiers.modifierKeys[ucValue];\n if (rv[mod] && rv[mod] != '*')\n throw this.error('Duplicate modifier: ' + token.value);\n rv[mod] = true;\n\n } else if (ucValue in hterm.Parser.identifiers.keyCodes &&\n hterm.Parser.identifiers.keyCodes.hasOwnProperty(ucValue)) {\n rv.keyCode = hterm.Parser.identifiers.keyCodes[ucValue];\n\n } else {\n throw this.error('Unknown key: ' + token.value);\n }\n\n } else if (token.type == 'symbol') {\n if (token.value == '*') {\n for (var id in hterm.Parser.identifiers.modifierKeys) {\n var p = hterm.Parser.identifiers.modifierKeys[id];\n if (!rv[p])\n rv[p] = '*';\n }\n } else {\n throw this.error('Unexpected symbol: ' + token.value);\n }\n } else {\n throw this.error('Expected integer or identifier');\n }\n\n this.skipSpace();\n\n if (this.ch != '-')\n break;\n\n if (rv.keyCode != null)\n throw this.error('Extra definition after target key');\n\n this.advance(1);\n }\n\n if (rv.keyCode == null)\n throw this.error('Missing target key');\n\n return rv;\n};\n\nhterm.Parser.prototype.parseKeyAction = function() {\n this.skipSpace();\n\n var token = this.parseToken();\n\n if (token.type == 'string')\n return token.value;\n\n if (token.type == 'identifier') {\n if (token.value in hterm.Parser.identifiers.actions &&\n hterm.Parser.identifiers.actions.hasOwnProperty(token.value))\n return hterm.Parser.identifiers.actions[token.value];\n\n throw this.error('Unknown key action: ' + token.value);\n }\n\n throw this.error('Expected string or identifier');\n\n};\n\nhterm.Parser.prototype.peekString = function() {\n return this.ch == '\\'' || this.ch == '\"';\n};\n\nhterm.Parser.prototype.peekIdentifier = function() {\n return this.ch.match(/[a-z_]/i);\n};\n\nhterm.Parser.prototype.peekInteger = function() {\n return this.ch.match(/[0-9]/);\n};\n\nhterm.Parser.prototype.parseToken = function() {\n if (this.ch == '*') {\n var rv = {type: 'symbol', value: this.ch};\n this.advance(1);\n return rv;\n }\n\n if (this.peekIdentifier())\n return {type: 'identifier', value: this.parseIdentifier()};\n\n if (this.peekString())\n return {type: 'string', value: this.parseString()};\n\n if (this.peekInteger())\n return {type: 'integer', value: this.parseInteger()};\n\n\n throw this.error('Unexpected token');\n};\n\nhterm.Parser.prototype.parseIdentifier = function() {\n if (!this.peekIdentifier())\n throw this.error('Expected identifier');\n\n return this.parsePattern(/[a-z0-9_]+/ig);\n};\n\nhterm.Parser.prototype.parseInteger = function() {\n var base = 10;\n\n if (this.ch == '0' && this.pos < this.source.length - 1 &&\n this.source.substr(this.pos + 1, 1) == 'x') {\n return parseInt(this.parsePattern(/0x[0-9a-f]+/gi));\n }\n\n return parseInt(this.parsePattern(/\\d+/g));\n};\n\n/**\n * Parse a single or double quoted string.\n *\n * The current position should point at the initial quote character. Single\n * quoted strings will be treated literally, double quoted will process escapes.\n *\n * TODO(rginda): Variable interpolation.\n *\n * @param {ParseState} parseState\n * @param {string} quote A single or double-quote character.\n * @return {string}\n */\nhterm.Parser.prototype.parseString = function() {\n var result = '';\n\n var quote = this.ch;\n if (quote != '\"' && quote != '\\'')\n throw this.error('String expected');\n\n this.advance(1);\n\n var re = new RegExp('[\\\\\\\\' + quote + ']', 'g');\n\n while (this.pos < this.source.length) {\n re.lastIndex = this.pos;\n if (!re.exec(this.source))\n throw this.error('Unterminated string literal');\n\n result += this.source.substring(this.pos, re.lastIndex - 1);\n\n this.advance(re.lastIndex - this.pos - 1);\n\n if (quote == '\"' && this.ch == '\\\\') {\n this.advance(1);\n result += this.parseEscape();\n continue;\n }\n\n if (quote == '\\'' && this.ch == '\\\\') {\n result += this.ch;\n this.advance(1);\n continue;\n }\n\n if (this.ch == quote) {\n this.advance(1);\n return result;\n }\n }\n\n throw this.error('Unterminated string literal');\n};\n\n\n/**\n * Parse an escape code from the current position (which should point to\n * the first character AFTER the leading backslash.)\n *\n * @return {string}\n */\nhterm.Parser.prototype.parseEscape = function() {\n var map = {\n '\"': '\"',\n '\\'': '\\'',\n '\\\\': '\\\\',\n 'a': '\\x07',\n 'b': '\\x08',\n 'e': '\\x1b',\n 'f': '\\x0c',\n 'n': '\\x0a',\n 'r': '\\x0d',\n 't': '\\x09',\n 'v': '\\x0b',\n 'x': function() {\n var value = this.parsePattern(/[a-z0-9]{2}/ig);\n return String.fromCharCode(parseInt(value, 16));\n },\n 'u': function() {\n var value = this.parsePattern(/[a-z0-9]{4}/ig);\n return String.fromCharCode(parseInt(value, 16));\n }\n };\n\n if (!(this.ch in map && map.hasOwnProperty(this.ch)))\n throw this.error('Unknown escape: ' + this.ch);\n\n var value = map[this.ch];\n this.advance(1);\n\n if (typeof value == 'function')\n value = value.call(this);\n\n return value;\n};\n\n/**\n * Parse the given pattern starting from the current position.\n *\n * @param {RegExp} pattern A pattern representing the characters to span. MUST\n * include the \"global\" RegExp flag.\n * @return {string}\n */\nhterm.Parser.prototype.parsePattern = function(pattern) {\n if (!pattern.global)\n throw this.error('Internal error: Span patterns must be global');\n\n pattern.lastIndex = this.pos;\n var ary = pattern.exec(this.source);\n\n if (!ary || pattern.lastIndex - ary[0].length != this.pos)\n throw this.error('Expected match for: ' + pattern);\n\n this.pos = pattern.lastIndex - 1;\n this.advance(1);\n\n return ary[0];\n};\n\n\n/**\n * Advance the current position.\n *\n * @param {number} count\n */\nhterm.Parser.prototype.advance = function(count) {\n this.pos += count;\n this.ch = this.source.substr(this.pos, 1);\n};\n\n/**\n * @param {string=} opt_expect A list of valid non-whitespace characters to\n * terminate on.\n * @return {void}\n */\nhterm.Parser.prototype.skipSpace = function(opt_expect) {\n if (!/\\s/.test(this.ch))\n return;\n\n var re = /\\s+/gm;\n re.lastIndex = this.pos;\n\n var source = this.source;\n if (re.exec(source))\n this.pos = re.lastIndex;\n\n this.ch = this.source.substr(this.pos, 1);\n\n if (opt_expect) {\n if (this.ch.indexOf(opt_expect) == -1) {\n throw this.error('Expected one of ' + opt_expect + ', found: ' +\n this.ch);\n }\n }\n};\n// SOURCE FILE: hterm/js/hterm_parser_identifiers.js\n// Copyright (c) 2015 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Collections of identifier for hterm.Parser.\n */\nhterm.Parser.identifiers = {};\n\n/**\n * Modifier key names used when defining key sequences.\n *\n * These are upper case so we can normalize the user input and be forgiving.\n * \"CTRL-A\" and \"Ctrl-A\" and \"ctrl-a\" are all accepted.\n *\n * Note: Names here cannot overlap with hterm.Parser.identifiers.keyCodes.\n */\nhterm.Parser.identifiers.modifierKeys = {\n SHIFT: 'shift',\n CTRL: 'ctrl',\n // Common alias.\n CONTROL: 'ctrl',\n ALT: 'alt',\n META: 'meta'\n};\n\n/**\n * Key codes useful when defining key sequences.\n *\n * Punctuation is mostly left out of this list because they can move around\n * based on keyboard locale and browser.\n *\n * In a key sequence like \"Ctrl-ESC\", the ESC comes from this list of\n * identifiers. It is equivalent to \"Ctrl-27\" and \"Ctrl-0x1b\".\n *\n * These are upper case so we can normalize the user input and be forgiving.\n * \"Ctrl-ESC\" and \"Ctrl-Esc\" an \"Ctrl-esc\" are all accepted.\n *\n * We also include common aliases for the same key. \"Esc\" and \"Escape\" are the\n * same key.\n *\n * Note: Names here cannot overlap with hterm.Parser.identifiers.modifierKeys.\n */\nhterm.Parser.identifiers.keyCodes = {\n // Top row.\n ESCAPE: 27,\n ESC: 27,\n F1: 112,\n F2: 113,\n F3: 114,\n F4: 115,\n F5: 116,\n F6: 117,\n F7: 118,\n F8: 119,\n F9: 120,\n F10: 121,\n F11: 122,\n F12: 123,\n\n // Row two.\n ONE: 49,\n TWO: 50,\n THREE: 51,\n FOUR: 52,\n FIVE: 53,\n SIX: 54,\n SEVEN: 55,\n EIGHT: 56,\n NINE: 57,\n ZERO: 48,\n BACKSPACE: 8,\n BKSP: 8,\n BS: 8,\n\n // Row three.\n TAB: 9,\n Q: 81,\n W: 87,\n E: 69,\n R: 82,\n T: 84,\n Y: 89,\n U: 85,\n I: 73,\n O: 79,\n P: 80,\n\n // Row four.\n CAPS_LOCK: 20,\n CAPSLOCK: 20,\n CAPS: 20,\n A: 65,\n S: 83,\n D: 68,\n F: 70,\n G: 71,\n H: 72,\n J: 74,\n K: 75,\n L: 76,\n // We map enter and return together even though enter should really be 10\n // because most people don't know or care about the history here. Plus,\n // most keyboards/programs map them together already. If they really want\n // to bind them differently, they can also use the numeric value.\n ENTER: 13,\n ENT: 13,\n RETURN: 13,\n RET: 13,\n\n // Row five.\n Z: 90,\n X: 88,\n C: 67,\n V: 86,\n B: 66,\n N: 78,\n M: 77,\n\n // Etc.\n SPACE: 32,\n SP: 32,\n PRINT_SCREEN: 42,\n PRTSC: 42,\n SCROLL_LOCK: 145,\n SCRLK: 145,\n BREAK: 19,\n BRK: 19,\n INSERT: 45,\n INS: 45,\n HOME: 36,\n PAGE_UP: 33,\n PGUP: 33,\n DELETE: 46,\n DEL: 46,\n END: 35,\n PAGE_DOWN: 34,\n PGDOWN: 34,\n PGDN: 34,\n UP: 38,\n DOWN: 40,\n RIGHT: 39,\n LEFT: 37,\n NUMLOCK: 144,\n\n // Keypad\n KP0: 96,\n KP1: 97,\n KP2: 98,\n KP3: 99,\n KP4: 100,\n KP5: 101,\n KP6: 102,\n KP7: 103,\n KP8: 104,\n KP9: 105,\n KP_PLUS: 107,\n KP_ADD: 107,\n KP_MINUS: 109,\n KP_SUBTRACT: 109,\n KP_STAR: 106,\n KP_MULTIPLY: 106,\n KP_DIVIDE: 111,\n KP_DECIMAL: 110,\n KP_PERIOD: 110,\n\n // Chrome OS media keys\n NAVIGATE_BACK: 166,\n NAVIGATE_FORWARD: 167,\n RELOAD: 168,\n FULL_SCREEN: 183,\n WINDOW_OVERVIEW: 182,\n BRIGHTNESS_UP: 216,\n BRIGHTNESS_DOWN: 217\n};\n\n/**\n * Identifiers for use in key actions.\n */\nhterm.Parser.identifiers.actions = {\n /**\n * Prevent the browser and operating system from handling the event.\n */\n CANCEL: hterm.Keyboard.KeyActions.CANCEL,\n\n /**\n * Wait for a \"keypress\" event, send the keypress charCode to the host.\n */\n DEFAULT: hterm.Keyboard.KeyActions.DEFAULT,\n\n /**\n * Let the browser or operating system handle the key.\n */\n PASS: hterm.Keyboard.KeyActions.PASS,\n\n /**\n * Scroll the terminal one page up.\n */\n scrollPageUp: function(terminal) {\n terminal.scrollPageUp();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Scroll the terminal one page down.\n */\n scrollPageDown: function(terminal) {\n terminal.scrollPageDown();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Scroll the terminal to the top.\n */\n scrollToTop: function(terminal) {\n terminal.scrollEnd();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Scroll the terminal to the bottom.\n */\n scrollToBottom: function(terminal) {\n terminal.scrollEnd();\n return hterm.Keyboard.KeyActions.CANCEL;\n },\n\n /**\n * Clear the terminal and scrollback buffer.\n */\n clearScrollback: function(terminal) {\n terminal.wipeContents();\n return hterm.Keyboard.KeyActions.CANCEL;\n }\n};\n// SOURCE FILE: hterm/js/hterm_preference_manager.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f', 'lib.Storage');\n\n/**\n * PreferenceManager subclass managing global NaSSH preferences.\n *\n * This is currently just an ordered list of known connection profiles.\n */\nhterm.PreferenceManager = function(profileId) {\n lib.PreferenceManager.call(this, hterm.defaultStorage,\n '/hterm/profiles/' + profileId);\n var defs = hterm.PreferenceManager.defaultPreferences;\n Object.keys(defs).forEach(function(key) {\n this.definePreference(key, defs[key][1]);\n }.bind(this));\n};\n\nhterm.PreferenceManager.categories = {};\nhterm.PreferenceManager.categories.Keyboard = 'Keyboard';\nhterm.PreferenceManager.categories.Appearance = 'Appearance';\nhterm.PreferenceManager.categories.CopyPaste = 'CopyPaste';\nhterm.PreferenceManager.categories.Sounds = 'Sounds';\nhterm.PreferenceManager.categories.Scrolling = 'Scrolling';\nhterm.PreferenceManager.categories.Encoding = 'Encoding';\nhterm.PreferenceManager.categories.Miscellaneous = 'Miscellaneous';\n\n/**\n * List of categories, ordered by display order (top to bottom)\n */\nhterm.PreferenceManager.categoryDefinitions = [\n { id: hterm.PreferenceManager.categories.Appearance,\n text: 'Appearance (fonts, colors, images)'},\n { id: hterm.PreferenceManager.categories.CopyPaste,\n text: 'Copy & Paste'},\n { id: hterm.PreferenceManager.categories.Encoding,\n text: 'Encoding'},\n { id: hterm.PreferenceManager.categories.Keyboard,\n text: 'Keyboard'},\n { id: hterm.PreferenceManager.categories.Scrolling,\n text: 'Scrolling'},\n { id: hterm.PreferenceManager.categories.Sounds,\n text: 'Sounds'},\n { id: hterm.PreferenceManager.categories.Miscellaneous,\n text: 'Misc.'}\n];\n\n\nhterm.PreferenceManager.defaultPreferences = {\n 'alt-gr-mode':\n [hterm.PreferenceManager.categories.Keyboard, null,\n [null, 'none', 'ctrl-alt', 'left-alt', 'right-alt'],\n 'Select an AltGr detection hack^Wheuristic.\\n' +\n '\\n' +\n '\\'null\\': Autodetect based on navigator.language:\\n' +\n ' \\'en-us\\' => \\'none\\', else => \\'right-alt\\'\\n' +\n '\\'none\\': Disable any AltGr related munging.\\n' +\n '\\'ctrl-alt\\': Assume Ctrl+Alt means AltGr.\\n' +\n '\\'left-alt\\': Assume left Alt means AltGr.\\n' +\n '\\'right-alt\\': Assume right Alt means AltGr.\\n'],\n\n 'alt-backspace-is-meta-backspace':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If set, undoes the Chrome OS Alt-Backspace->DEL remap, so that ' +\n 'alt-backspace indeed is alt-backspace.'],\n\n 'alt-is-meta':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Set whether the alt key acts as a meta key or as a distinct alt key.'],\n\n 'alt-sends-what':\n [hterm.PreferenceManager.categories.Keyboard, 'escape',\n ['escape', '8-bit', 'browser-key'],\n 'Controls how the alt key is handled.\\n' +\n '\\n' +\n ' escape....... Send an ESC prefix.\\n' +\n ' 8-bit........ Add 128 to the unshifted character as in xterm.\\n' +\n ' browser-key.. Wait for the keypress event and see what the browser \\n' +\n ' says. (This won\\'t work well on platforms where the \\n' +\n ' browser performs a default action for some alt sequences.)'\n ],\n\n 'audible-bell-sound':\n [hterm.PreferenceManager.categories.Sounds, 'lib-resource:hterm/audio/bell',\n 'url',\n 'URL of the terminal bell sound. Empty string for no audible bell.'],\n\n 'desktop-notification-bell':\n [hterm.PreferenceManager.categories.Sounds, false, 'bool',\n 'If true, terminal bells in the background will create a Web ' +\n 'Notification. https://www.w3.org/TR/notifications/\\n' +\n '\\n'+\n 'Displaying notifications requires permission from the user. When this ' +\n 'option is set to true, hterm will attempt to ask the user for permission ' +\n 'if necessary. Note browsers may not show this permission request if it ' +\n 'did not originate from a user action.\\n' +\n '\\n' +\n 'Chrome extensions with the \"notifications\" permission have permission to ' +\n 'display notifications.'],\n\n 'background-color':\n [hterm.PreferenceManager.categories.Appearance, 'rgb(16, 16, 16)', 'color',\n 'The background color for text with no other color attributes.'],\n\n 'background-image':\n [hterm.PreferenceManager.categories.Appearance, '', 'string',\n 'CSS value of the background image. Empty string for no image.\\n' +\n '\\n' +\n 'For example:\\n' +\n ' url(https://goo.gl/anedTK)\\n' +\n ' linear-gradient(top bottom, blue, red)'],\n\n 'background-size':\n [hterm.PreferenceManager.categories.Appearance, '', 'string',\n 'CSS value of the background image size. Defaults to none.'],\n\n 'background-position':\n [hterm.PreferenceManager.categories.Appearance, '', 'string',\n 'CSS value of the background image position.\\n' +\n '\\n' +\n 'For example:\\n' +\n ' 10% 10%\\n' +\n ' center'],\n\n 'backspace-sends-backspace':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, the backspace should send BS (\\'\\\\x08\\', aka ^H). Otherwise ' +\n 'the backspace key should send \\'\\\\x7f\\'.'],\n\n 'character-map-overrides':\n [hterm.PreferenceManager.categories.Appearance, null, 'value',\n 'This is specified as an object. It is a sparse array, where each ' +\n 'property is the character set code and the value is an object that is ' +\n 'a sparse array itself. In that sparse array, each property is the ' +\n 'received character and the value is the displayed character.\\n' +\n '\\n' +\n 'For example:\\n' +\n ' {\"0\":{\"+\":\"\\\\u2192\",\",\":\"\\\\u2190\",\"-\":\"\\\\u2191\",\".\":\"\\\\u2193\", ' +\n '\"0\":\"\\\\u2588\"}}'\n ],\n\n 'close-on-exit':\n [hterm.PreferenceManager.categories.Miscellaneous, true, 'bool',\n 'Whether or not to close the window when the command exits.'],\n\n 'cursor-blink':\n [hterm.PreferenceManager.categories.Appearance, false, 'bool',\n 'Whether or not to blink the cursor by default.'],\n\n 'cursor-blink-cycle':\n [hterm.PreferenceManager.categories.Appearance, [1000, 500], 'value',\n 'The cursor blink rate in milliseconds.\\n' +\n '\\n' +\n 'A two element array, the first of which is how long the cursor should be ' +\n 'on, second is how long it should be off.'],\n\n 'cursor-color':\n [hterm.PreferenceManager.categories.Appearance, 'rgba(255, 0, 0, 0.5)',\n 'color',\n 'The color of the visible cursor.'],\n\n 'color-palette-overrides':\n [hterm.PreferenceManager.categories.Appearance, null, 'value',\n 'Override colors in the default palette.\\n' +\n '\\n' +\n 'This can be specified as an array or an object. If specified as an ' +\n 'object it is assumed to be a sparse array, where each property ' +\n 'is a numeric index into the color palette.\\n' +\n '\\n' +\n 'Values can be specified as almost any css color value. This ' +\n 'includes #RGB, #RRGGBB, rgb(...), rgba(...), and any color names ' +\n 'that are also part of the stock X11 rgb.txt file.\\n' +\n '\\n' +\n 'You can use \\'null\\' to specify that the default value should be not ' +\n 'be changed. This is useful for skipping a small number of indices ' +\n 'when the value is specified as an array.'],\n\n 'copy-on-select':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Automatically copy mouse selection to the clipboard.'],\n\n 'use-default-window-copy':\n [hterm.PreferenceManager.categories.CopyPaste, false, 'bool',\n 'Whether to use the default window copy behavior'],\n\n 'clear-selection-after-copy':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Whether to clear the selection after copying.'],\n\n 'ctrl-plus-minus-zero-zoom':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'If true, Ctrl-Plus/Minus/Zero controls zoom.\\n' +\n 'If false, Ctrl-Shift-Plus/Minus/Zero controls zoom, Ctrl-Minus sends ^_, ' +\n 'Ctrl-Plus/Zero do nothing.'],\n\n 'ctrl-c-copy':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Ctrl+C copies if true, send ^C to host if false.\\n' +\n 'Ctrl+Shift+C sends ^C to host if true, copies if false.'],\n\n 'ctrl-v-paste':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Ctrl+V pastes if true, send ^V to host if false.\\n' +\n 'Ctrl+Shift+V sends ^V to host if true, pastes if false.'],\n\n 'east-asian-ambiguous-as-two-column':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'Set whether East Asian Ambiguous characters have two column width.'],\n\n 'enable-8-bit-control':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'True to enable 8-bit control characters, false to ignore them.\\n' +\n '\\n' +\n 'We\\'ll respect the two-byte versions of these control characters ' +\n 'regardless of this setting.'],\n\n 'enable-bold':\n [hterm.PreferenceManager.categories.Appearance, null, 'tristate',\n 'True if we should use bold weight font for text with the bold/bright ' +\n 'attribute. False to use the normal weight font. Null to autodetect.'],\n\n 'enable-bold-as-bright':\n [hterm.PreferenceManager.categories.Appearance, true, 'bool',\n 'True if we should use bright colors (8-15 on a 16 color palette) ' +\n 'for any text with the bold attribute. False otherwise.'],\n\n 'enable-blink':\n [hterm.PreferenceManager.categories.Appearance, true, 'bool',\n 'True if we should respect the blink attribute. False to ignore it. '],\n\n 'enable-clipboard-notice':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Show a message in the terminal when the host writes to the clipboard.'],\n\n 'enable-clipboard-write':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Allow the host to write directly to the system clipboard.'],\n\n 'enable-dec12':\n [hterm.PreferenceManager.categories.Miscellaneous, false, 'bool',\n 'Respect the host\\'s attempt to change the cursor blink status using ' +\n 'DEC Private Mode 12.'],\n\n 'environment':\n [hterm.PreferenceManager.categories.Miscellaneous, {'TERM': 'xterm-256color'},\n 'value',\n 'The default environment variables, as an object.'],\n\n 'font-family':\n [hterm.PreferenceManager.categories.Appearance,\n '\"DejaVu Sans Mono\", \"Everson Mono\", FreeMono, \"Menlo\", \"Terminal\", ' +\n 'monospace', 'string',\n 'Default font family for the terminal text.'],\n\n 'font-size':\n [hterm.PreferenceManager.categories.Appearance, 15, 'int',\n 'The default font size in pixels.'],\n\n 'font-smoothing':\n [hterm.PreferenceManager.categories.Appearance, 'antialiased', 'string',\n 'CSS font-smoothing property.'],\n\n 'foreground-color':\n [hterm.PreferenceManager.categories.Appearance, 'rgb(240, 240, 240)', 'color',\n 'The foreground color for text with no other color attributes.'],\n\n 'home-keys-scroll':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, home/end will control the terminal scrollbar and shift home/end ' +\n 'will send the VT keycodes. If false then home/end sends VT codes and ' +\n 'shift home/end scrolls.'],\n\n 'keybindings':\n [hterm.PreferenceManager.categories.Keyboard, null, 'value',\n 'A map of key sequence to key actions. Key sequences include zero or ' +\n 'more modifier keys followed by a key code. Key codes can be decimal or ' +\n 'hexadecimal numbers, or a key identifier. Key actions can be specified ' +\n 'a string to send to the host, or an action identifier. For a full ' +\n 'explanation of the format, see https://goo.gl/LWRndr.\\n' +\n '\\n' +\n 'Sample keybindings:\\n' +\n '{\\n' +\n ' \"Ctrl-Alt-K\": \"clearScrollback\",\\n' +\n ' \"Ctrl-Shift-L\": \"PASS\",\\n' +\n ' \"Ctrl-H\": \"\\'HELLO\\\\n\\'\"\\n' +\n '}'],\n\n 'max-string-sequence':\n [hterm.PreferenceManager.categories.Encoding, 100000, 'int',\n 'Max length of a DCS, OSC, PM, or APS sequence before we give up and ' +\n 'ignore the code.'],\n\n 'media-keys-are-fkeys':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, convert media keys to their Fkey equivalent. If false, let ' +\n 'the browser handle the keys.'],\n\n 'meta-sends-escape':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'Set whether the meta key sends a leading escape or not.'],\n\n 'mouse-right-click-paste':\n [hterm.PreferenceManager.categories.CopyPaste, true, 'bool',\n 'Paste on right mouse button clicks.\\n' +\n '\\n' +\n 'This option is activate independent of the \"mouse-paste-button\" ' +\n 'setting.\\n' +\n '\\n' +\n 'Note: This will handle left & right handed mice correctly.'],\n\n 'mouse-paste-button':\n [hterm.PreferenceManager.categories.CopyPaste, null,\n [null, 0, 1, 2, 3, 4, 5, 6],\n 'Mouse paste button, or null to autodetect.\\n' +\n '\\n' +\n 'For autodetect, we\\'ll use the middle mouse button for non-X11 ' +\n 'platforms (including Chrome OS). On X11, we\\'ll use the right mouse ' +\n 'button (since the native window manager should paste via the middle ' +\n 'mouse button).\\n' +\n '\\n' +\n '0 == left (primary) button.\\n' +\n '1 == middle (auxiliary) button.\\n' +\n '2 == right (secondary) button.\\n' +\n '\\n' +\n 'This option is activate independent of the \"mouse-right-click-paste\" ' +\n 'setting.\\n' +\n '\\n' +\n 'Note: This will handle left & right handed mice correctly.'],\n\n 'word-break-match-left':\n [hterm.PreferenceManager.categories.CopyPaste,\n '[^\\\\s\\\\[\\\\](){}<>\"\\'\\\\^!@#$%&*,;:`]', 'string',\n 'Regular expression to halt matching to the left (start) of a selection.\\n' +\n '\\n' +\n 'Normally this is a character class to reject specific characters.\\n' +\n 'We allow \"~\" and \".\" by default as paths frequently start with those.'],\n\n 'word-break-match-right':\n [hterm.PreferenceManager.categories.CopyPaste,\n '[^\\\\s\\\\[\\\\](){}<>\"\\'\\\\^!@#$%&*,;:~.`]', 'string',\n 'Regular expression to halt matching to the right (end) of a selection.\\n' +\n '\\n' +\n 'Normally this is a character class to reject specific characters.'],\n\n 'word-break-match-middle':\n [hterm.PreferenceManager.categories.CopyPaste,\n '[^\\\\s\\\\[\\\\](){}<>\"\\'\\\\^]*', 'string',\n 'Regular expression to match all the characters in the middle.\\n' +\n '\\n' +\n 'Normally this is a character class to reject specific characters.\\n' +\n '\\n' +\n 'Used to expand the selection surrounding the starting point.'],\n\n 'page-keys-scroll':\n [hterm.PreferenceManager.categories.Keyboard, false, 'bool',\n 'If true, page up/down will control the terminal scrollbar and shift ' +\n 'page up/down will send the VT keycodes. If false then page up/down ' +\n 'sends VT codes and shift page up/down scrolls.'],\n\n 'pass-alt-number':\n [hterm.PreferenceManager.categories.Keyboard, null, 'tristate',\n 'Set whether we should pass Alt-1..9 to the browser.\\n' +\n '\\n' +\n 'This is handy when running hterm in a browser tab, so that you don\\'t ' +\n 'lose Chrome\\'s \"switch to tab\" keyboard accelerators. When not running ' +\n 'in a tab it\\'s better to send these keys to the host so they can be ' +\n 'used in vim or emacs.\\n' +\n '\\n' +\n 'If true, Alt-1..9 will be handled by the browser. If false, Alt-1..9 ' +\n 'will be sent to the host. If null, autodetect based on browser platform ' +\n 'and window type.'],\n\n 'pass-ctrl-number':\n [hterm.PreferenceManager.categories.Keyboard, null, 'tristate',\n 'Set whether we should pass Ctrl-1..9 to the browser.\\n' +\n '\\n' +\n 'This is handy when running hterm in a browser tab, so that you don\\'t ' +\n 'lose Chrome\\'s \"switch to tab\" keyboard accelerators. When not running ' +\n 'in a tab it\\'s better to send these keys to the host so they can be ' +\n 'used in vim or emacs.\\n' +\n '\\n' +\n 'If true, Ctrl-1..9 will be handled by the browser. If false, Ctrl-1..9 ' +\n 'will be sent to the host. If null, autodetect based on browser platform ' +\n 'and window type.'],\n\n 'pass-meta-number':\n [hterm.PreferenceManager.categories.Keyboard, null, 'tristate',\n 'Set whether we should pass Meta-1..9 to the browser.\\n' +\n '\\n' +\n 'This is handy when running hterm in a browser tab, so that you don\\'t ' +\n 'lose Chrome\\'s \"switch to tab\" keyboard accelerators. When not running ' +\n 'in a tab it\\'s better to send these keys to the host so they can be ' +\n 'used in vim or emacs.\\n' +\n '\\n' +\n 'If true, Meta-1..9 will be handled by the browser. If false, Meta-1..9 ' +\n 'will be sent to the host. If null, autodetect based on browser platform ' +\n 'and window type.'],\n\n 'pass-meta-v':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'Set whether meta-V gets passed to host.'],\n\n 'receive-encoding':\n [hterm.PreferenceManager.categories.Encoding, 'utf-8', ['utf-8', 'raw'],\n 'Set the expected encoding for data received from the host.\\n' +\n '\\n' +\n 'Valid values are \\'utf-8\\' and \\'raw\\'.'],\n\n 'scroll-on-keystroke':\n [hterm.PreferenceManager.categories.Scrolling, true, 'bool',\n 'If true, scroll to the bottom on any keystroke.'],\n\n 'scroll-on-output':\n [hterm.PreferenceManager.categories.Scrolling, false, 'bool',\n 'If true, scroll to the bottom on terminal output.'],\n\n 'scrollbar-visible':\n [hterm.PreferenceManager.categories.Scrolling, true, 'bool',\n 'The vertical scrollbar mode.'],\n\n 'scroll-wheel-may-send-arrow-keys':\n [hterm.PreferenceManager.categories.Scrolling, false, 'bool',\n 'When using the alternative screen buffer, and DECCKM (Application Cursor ' +\n 'Keys) is active, mouse wheel scroll events will emulate arrow keys.\\n' +\n '\\n' +\n 'It can be temporarily disabled by holding the shift key.\\n' +\n '\\n' +\n 'This frequently comes up when using pagers (less) or reading man pages ' +\n 'or text editors (vi/nano) or using screen/tmux.'],\n\n 'scroll-wheel-move-multiplier':\n [hterm.PreferenceManager.categories.Scrolling, 1, 'int',\n 'The multiplier for the pixel delta in wheel events caused by the ' +\n 'scroll wheel. Alters how fast the page scrolls.'],\n\n 'send-encoding':\n [hterm.PreferenceManager.categories.Encoding, 'utf-8', ['utf-8', 'raw'],\n 'Set the encoding for data sent to host.'],\n\n 'terminal-encoding':\n [hterm.PreferenceManager.categories.Encoding, 'iso-2022',\n ['iso-2022', 'utf-8', 'utf-8-locked'],\n 'The default terminal encoding (DOCS).\\n' +\n '\\n' +\n 'ISO-2022 enables character map translations (like graphics maps).\\n' +\n 'UTF-8 disables support for those.\\n' +\n '\\n' +\n 'The locked variant means the encoding cannot be changed at runtime ' +\n 'via terminal escape sequences.\\n' +\n '\\n' +\n 'You should stick with UTF-8 unless you notice broken rendering with ' +\n 'legacy applications.'],\n\n 'shift-insert-paste':\n [hterm.PreferenceManager.categories.Keyboard, true, 'bool',\n 'Shift + Insert pastes if true, sent to host if false.'],\n\n 'user-css':\n [hterm.PreferenceManager.categories.Appearance, '', 'url',\n 'URL of user stylesheet to include in the terminal document.'],\n\n 'user-css-text':\n [hterm.PreferenceManager.categories.Appearance, '', 'multiline-string',\n 'Custom CSS text for styling the terminal.'],\n};\n\nhterm.PreferenceManager.prototype =\n Object.create(lib.PreferenceManager.prototype);\nhterm.PreferenceManager.constructor = hterm.PreferenceManager;\n// SOURCE FILE: hterm/js/hterm_pubsub.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\n/**\n * Utility class used to add publish/subscribe/unsubscribe functionality to\n * an existing object.\n */\nhterm.PubSub = function() {\n this.observers_ = {};\n};\n\n/**\n * Add publish, subscribe, and unsubscribe methods to an existing object.\n *\n * No other properties of the object are touched, so there is no need to\n * worry about clashing private properties.\n *\n * @param {Object} obj The object to add this behavior to.\n */\nhterm.PubSub.addBehavior = function(obj) {\n var pubsub = new hterm.PubSub();\n for (var m in hterm.PubSub.prototype) {\n obj[m] = hterm.PubSub.prototype[m].bind(pubsub);\n }\n};\n\n/**\n * Subscribe to be notified of messages about a subject.\n *\n * @param {string} subject The subject to subscribe to.\n * @param {function(Object)} callback The function to invoke for notifications.\n */\nhterm.PubSub.prototype.subscribe = function(subject, callback) {\n if (!(subject in this.observers_))\n this.observers_[subject] = [];\n\n this.observers_[subject].push(callback);\n};\n\n/**\n * Unsubscribe from a subject.\n *\n * @param {string} subject The subject to unsubscribe from.\n * @param {function(Object)} callback A callback previously registered via\n * subscribe().\n */\nhterm.PubSub.prototype.unsubscribe = function(subject, callback) {\n var list = this.observers_[subject];\n if (!list)\n throw 'Invalid subject: ' + subject;\n\n var i = list.indexOf(callback);\n if (i < 0)\n throw 'Not subscribed: ' + subject;\n\n list.splice(i, 1);\n};\n\n/**\n * Publish a message about a subject.\n *\n * Subscribers (and the optional final callback) are invoked asynchronously.\n * This method will return before anyone is actually notified.\n *\n * @param {string} subject The subject to publish about.\n * @param {Object} e An arbitrary object associated with this notification.\n * @param {function(Object)} opt_lastCallback An optional function to call after\n * all subscribers have been notified.\n */\nhterm.PubSub.prototype.publish = function(subject, e, opt_lastCallback) {\n function notifyList(i) {\n // Set this timeout before invoking the callback, so we don't have to\n // concern ourselves with exceptions.\n if (i < list.length - 1)\n setTimeout(notifyList, 0, i + 1);\n\n list[i](e);\n }\n\n var list = this.observers_[subject];\n if (list) {\n // Copy the list, in case it changes while we're notifying.\n list = [].concat(list);\n }\n\n if (opt_lastCallback) {\n if (list) {\n list.push(opt_lastCallback);\n } else {\n list = [opt_lastCallback];\n }\n }\n\n if (list)\n setTimeout(notifyList, 0, 0);\n};\n// SOURCE FILE: hterm/js/hterm_screen.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f', 'lib.wc',\n 'hterm.RowCol', 'hterm.Size', 'hterm.TextAttributes');\n\n/**\n * @fileoverview This class represents a single terminal screen full of text.\n *\n * It maintains the current cursor position and has basic methods for text\n * insert and overwrite, and adding or removing rows from the screen.\n *\n * This class has no knowledge of the scrollback buffer.\n *\n * The number of rows on the screen is determined only by the number of rows\n * that the caller inserts into the screen. If a caller wants to ensure a\n * constant number of rows on the screen, it's their responsibility to remove a\n * row for each row inserted.\n *\n * The screen width, in contrast, is enforced locally.\n *\n *\n * In practice...\n * - The hterm.Terminal class holds two hterm.Screen instances. One for the\n * primary screen and one for the alternate screen.\n *\n * - The html.Screen class only cares that rows are HTMLElements. In the\n * larger context of hterm, however, the rows happen to be displayed by an\n * hterm.ScrollPort and have to follow a few rules as a result. Each\n * row must be rooted by the custom HTML tag 'x-row', and each must have a\n * rowIndex property that corresponds to the index of the row in the context\n * of the scrollback buffer. These invariants are enforced by hterm.Terminal\n * because that is the class using the hterm.Screen in the context of an\n * hterm.ScrollPort.\n */\n\n/**\n * Create a new screen instance.\n *\n * The screen initially has no rows and a maximum column count of 0.\n *\n * @param {integer} opt_columnCount The maximum number of columns for this\n * screen. See insertString() and overwriteString() for information about\n * what happens when too many characters are added too a row. Defaults to\n * 0 if not provided.\n */\nhterm.Screen = function(opt_columnCount) {\n /**\n * Public, read-only access to the rows in this screen.\n */\n this.rowsArray = [];\n\n // The max column width for this screen.\n this.columnCount_ = opt_columnCount || 80;\n\n // The current color, bold, underline and blink attributes.\n this.textAttributes = new hterm.TextAttributes(window.document);\n\n // Current zero-based cursor coordinates.\n this.cursorPosition = new hterm.RowCol(0, 0);\n\n // The node containing the row that the cursor is positioned on.\n this.cursorRowNode_ = null;\n\n // The node containing the span of text that the cursor is positioned on.\n this.cursorNode_ = null;\n\n // The offset in column width into cursorNode_ where the cursor is positioned.\n this.cursorOffset_ = null;\n\n // Regexes for expanding word selections.\n this.wordBreakMatchLeft = null;\n this.wordBreakMatchRight = null;\n this.wordBreakMatchMiddle = null;\n};\n\n/**\n * Return the screen size as an hterm.Size object.\n *\n * @return {hterm.Size} hterm.Size object representing the current number\n * of rows and columns in this screen.\n */\nhterm.Screen.prototype.getSize = function() {\n return new hterm.Size(this.columnCount_, this.rowsArray.length);\n};\n\n/**\n * Return the current number of rows in this screen.\n *\n * @return {integer} The number of rows in this screen.\n */\nhterm.Screen.prototype.getHeight = function() {\n return this.rowsArray.length;\n};\n\n/**\n * Return the current number of columns in this screen.\n *\n * @return {integer} The number of columns in this screen.\n */\nhterm.Screen.prototype.getWidth = function() {\n return this.columnCount_;\n};\n\n/**\n * Set the maximum number of columns per row.\n *\n * @param {integer} count The maximum number of columns per row.\n */\nhterm.Screen.prototype.setColumnCount = function(count) {\n this.columnCount_ = count;\n\n if (this.cursorPosition.column >= count)\n this.setCursorPosition(this.cursorPosition.row, count - 1);\n};\n\n/**\n * Remove the first row from the screen and return it.\n *\n * @return {HTMLElement} The first row in this screen.\n */\nhterm.Screen.prototype.shiftRow = function() {\n return this.shiftRows(1)[0];\n};\n\n/**\n * Remove rows from the top of the screen and return them as an array.\n *\n * @param {integer} count The number of rows to remove.\n * @return {Array.} The selected rows.\n */\nhterm.Screen.prototype.shiftRows = function(count) {\n return this.rowsArray.splice(0, count);\n};\n\n/**\n * Insert a row at the top of the screen.\n *\n * @param {HTMLElement} row The row to insert.\n */\nhterm.Screen.prototype.unshiftRow = function(row) {\n this.rowsArray.splice(0, 0, row);\n};\n\n/**\n * Insert rows at the top of the screen.\n *\n * @param {Array.} rows The rows to insert.\n */\nhterm.Screen.prototype.unshiftRows = function(rows) {\n this.rowsArray.unshift.apply(this.rowsArray, rows);\n};\n\n/**\n * Remove the last row from the screen and return it.\n *\n * @return {HTMLElement} The last row in this screen.\n */\nhterm.Screen.prototype.popRow = function() {\n return this.popRows(1)[0];\n};\n\n/**\n * Remove rows from the bottom of the screen and return them as an array.\n *\n * @param {integer} count The number of rows to remove.\n * @return {Array.} The selected rows.\n */\nhterm.Screen.prototype.popRows = function(count) {\n return this.rowsArray.splice(this.rowsArray.length - count, count);\n};\n\n/**\n * Insert a row at the bottom of the screen.\n *\n * @param {HTMLElement} row The row to insert.\n */\nhterm.Screen.prototype.pushRow = function(row) {\n this.rowsArray.push(row);\n};\n\n/**\n * Insert rows at the bottom of the screen.\n *\n * @param {Array.} rows The rows to insert.\n */\nhterm.Screen.prototype.pushRows = function(rows) {\n rows.push.apply(this.rowsArray, rows);\n};\n\n/**\n * Insert a row at the specified row of the screen.\n *\n * @param {integer} index The index to insert the row.\n * @param {HTMLElement} row The row to insert.\n */\nhterm.Screen.prototype.insertRow = function(index, row) {\n this.rowsArray.splice(index, 0, row);\n};\n\n/**\n * Insert rows at the specified row of the screen.\n *\n * @param {integer} index The index to insert the rows.\n * @param {Array.} rows The rows to insert.\n */\nhterm.Screen.prototype.insertRows = function(index, rows) {\n for (var i = 0; i < rows.length; i++) {\n this.rowsArray.splice(index + i, 0, rows[i]);\n }\n};\n\n/**\n * Remove a row from the screen and return it.\n *\n * @param {integer} index The index of the row to remove.\n * @return {HTMLElement} The selected row.\n */\nhterm.Screen.prototype.removeRow = function(index) {\n return this.rowsArray.splice(index, 1)[0];\n};\n\n/**\n * Remove rows from the bottom of the screen and return them as an array.\n *\n * @param {integer} index The index to start removing rows.\n * @param {integer} count The number of rows to remove.\n * @return {Array.} The selected rows.\n */\nhterm.Screen.prototype.removeRows = function(index, count) {\n return this.rowsArray.splice(index, count);\n};\n\n/**\n * Invalidate the current cursor position.\n *\n * This sets this.cursorPosition to (0, 0) and clears out some internal\n * data.\n *\n * Attempting to insert or overwrite text while the cursor position is invalid\n * will raise an obscure exception.\n */\nhterm.Screen.prototype.invalidateCursorPosition = function() {\n this.cursorPosition.move(0, 0);\n this.cursorRowNode_ = null;\n this.cursorNode_ = null;\n this.cursorOffset_ = null;\n};\n\n/**\n * Clear the contents of the cursor row.\n */\nhterm.Screen.prototype.clearCursorRow = function() {\n this.cursorRowNode_.innerHTML = '';\n this.cursorRowNode_.removeAttribute('line-overflow');\n this.cursorOffset_ = 0;\n this.cursorPosition.column = 0;\n this.cursorPosition.overflow = false;\n\n var text;\n if (this.textAttributes.isDefault()) {\n text = '';\n } else {\n text = lib.f.getWhitespace(this.columnCount_);\n }\n\n // We shouldn't honor inverse colors when clearing an area, to match\n // xterm's back color erase behavior.\n var inverse = this.textAttributes.inverse;\n this.textAttributes.inverse = false;\n this.textAttributes.syncColors();\n\n var node = this.textAttributes.createContainer(text);\n this.cursorRowNode_.appendChild(node);\n this.cursorNode_ = node;\n\n this.textAttributes.inverse = inverse;\n this.textAttributes.syncColors();\n};\n\n/**\n * Mark the current row as having overflowed to the next line.\n *\n * The line overflow state is used when converting a range of rows into text.\n * It makes it possible to recombine two or more overflow terminal rows into\n * a single line.\n *\n * This is distinct from the cursor being in the overflow state. Cursor\n * overflow indicates that printing at the cursor position will commit a\n * line overflow, unless it is preceded by a repositioning of the cursor\n * to a non-overflow state.\n */\nhterm.Screen.prototype.commitLineOverflow = function() {\n this.cursorRowNode_.setAttribute('line-overflow', true);\n};\n\n/**\n * Relocate the cursor to a give row and column.\n *\n * @param {integer} row The zero based row.\n * @param {integer} column The zero based column.\n */\nhterm.Screen.prototype.setCursorPosition = function(row, column) {\n if (!this.rowsArray.length) {\n console.warn('Attempt to set cursor position on empty screen.');\n return;\n }\n\n if (row >= this.rowsArray.length) {\n console.error('Row out of bounds: ' + row);\n row = this.rowsArray.length - 1;\n } else if (row < 0) {\n console.error('Row out of bounds: ' + row);\n row = 0;\n }\n\n if (column >= this.columnCount_) {\n console.error('Column out of bounds: ' + column);\n column = this.columnCount_ - 1;\n } else if (column < 0) {\n console.error('Column out of bounds: ' + column);\n column = 0;\n }\n\n this.cursorPosition.overflow = false;\n\n var rowNode = this.rowsArray[row];\n var node = rowNode.firstChild;\n\n if (!node) {\n node = rowNode.ownerDocument.createTextNode('');\n rowNode.appendChild(node);\n }\n\n var currentColumn = 0;\n\n if (rowNode == this.cursorRowNode_) {\n if (column >= this.cursorPosition.column - this.cursorOffset_) {\n node = this.cursorNode_;\n currentColumn = this.cursorPosition.column - this.cursorOffset_;\n }\n } else {\n this.cursorRowNode_ = rowNode;\n }\n\n this.cursorPosition.move(row, column);\n\n while (node) {\n var offset = column - currentColumn;\n var width = hterm.TextAttributes.nodeWidth(node);\n if (!node.nextSibling || width > offset) {\n this.cursorNode_ = node;\n this.cursorOffset_ = offset;\n return;\n }\n\n currentColumn += width;\n node = node.nextSibling;\n }\n};\n\n/**\n * Set the provided selection object to be a caret selection at the current\n * cursor position.\n */\nhterm.Screen.prototype.syncSelectionCaret = function(selection) {\n try {\n selection.collapse(this.cursorNode_, this.cursorOffset_);\n } catch (firefoxIgnoredException) {\n // FF can throw an exception if the range is off, rather than just not\n // performing the collapse.\n }\n};\n\n/**\n * Split a single node into two nodes at the given offset.\n *\n * For example:\n * Given the DOM fragment '
Hello World
', call splitNode_\n * passing the span and an offset of 6. This would modify the fragment to\n * become: '
Hello World
'. If the span\n * had any attributes they would have been copied to the new span as well.\n *\n * The to-be-split node must have a container, so that the new node can be\n * placed next to it.\n *\n * @param {HTMLNode} node The node to split.\n * @param {integer} offset The offset into the node where the split should\n * occur.\n */\nhterm.Screen.prototype.splitNode_ = function(node, offset) {\n var afterNode = node.cloneNode(false);\n\n var textContent = node.textContent;\n node.textContent = hterm.TextAttributes.nodeSubstr(node, 0, offset);\n afterNode.textContent = lib.wc.substr(textContent, offset);\n\n if (afterNode.textContent)\n node.parentNode.insertBefore(afterNode, node.nextSibling);\n if (!node.textContent)\n node.parentNode.removeChild(node);\n};\n\n/**\n * Ensure that text is clipped and the cursor is clamped to the column count.\n */\nhterm.Screen.prototype.maybeClipCurrentRow = function() {\n var width = hterm.TextAttributes.nodeWidth(this.cursorRowNode_);\n\n if (width <= this.columnCount_) {\n // Current row does not need clipping, but may need clamping.\n if (this.cursorPosition.column >= this.columnCount_) {\n this.setCursorPosition(this.cursorPosition.row, this.columnCount_ - 1);\n this.cursorPosition.overflow = true;\n }\n\n return;\n }\n\n // Save off the current column so we can maybe restore it later.\n var currentColumn = this.cursorPosition.column;\n\n // Move the cursor to the final column.\n this.setCursorPosition(this.cursorPosition.row, this.columnCount_ - 1);\n\n // Remove any text that partially overflows.\n width = hterm.TextAttributes.nodeWidth(this.cursorNode_);\n\n if (this.cursorOffset_ < width - 1) {\n this.cursorNode_.textContent = hterm.TextAttributes.nodeSubstr(\n this.cursorNode_, 0, this.cursorOffset_ + 1);\n }\n\n // Remove all nodes after the cursor.\n var rowNode = this.cursorRowNode_;\n var node = this.cursorNode_.nextSibling;\n\n while (node) {\n rowNode.removeChild(node);\n node = this.cursorNode_.nextSibling;\n }\n\n if (currentColumn < this.columnCount_) {\n // If the cursor was within the screen before we started then restore its\n // position.\n this.setCursorPosition(this.cursorPosition.row, currentColumn);\n } else {\n // Otherwise leave it at the the last column in the overflow state.\n this.cursorPosition.overflow = true;\n }\n};\n\n/**\n * Insert a string at the current character position using the current\n * text attributes.\n *\n * You must call maybeClipCurrentRow() after in order to clip overflowed\n * text and clamp the cursor.\n *\n * It is also up to the caller to properly maintain the line overflow state\n * using hterm.Screen..commitLineOverflow().\n */\nhterm.Screen.prototype.insertString = function(str) {\n var cursorNode = this.cursorNode_;\n var cursorNodeText = cursorNode.textContent;\n\n this.cursorRowNode_.removeAttribute('line-overflow');\n\n // We may alter the width of the string by prepending some missing\n // whitespaces, so we need to record the string width ahead of time.\n var strWidth = lib.wc.strWidth(str);\n\n // No matter what, before this function exits the cursor column will have\n // moved this much.\n this.cursorPosition.column += strWidth;\n\n // Local cache of the cursor offset.\n var offset = this.cursorOffset_;\n\n // Reverse offset is the offset measured from the end of the string.\n // Zero implies that the cursor is at the end of the cursor node.\n var reverseOffset = hterm.TextAttributes.nodeWidth(cursorNode) - offset;\n\n if (reverseOffset < 0) {\n // A negative reverse offset means the cursor is positioned past the end\n // of the characters on this line. We'll need to insert the missing\n // whitespace.\n var ws = lib.f.getWhitespace(-reverseOffset);\n\n // This whitespace should be completely unstyled. Underline, background\n // color, and strikethrough would be visible on whitespace, so we can't use\n // one of those spans to hold the text.\n if (!(this.textAttributes.underline ||\n this.textAttributes.strikethrough ||\n this.textAttributes.background ||\n this.textAttributes.wcNode ||\n !this.textAttributes.asciiNode ||\n this.textAttributes.tileData != null)) {\n // Best case scenario, we can just pretend the spaces were part of the\n // original string.\n str = ws + str;\n } else if (cursorNode.nodeType == 3 ||\n !(cursorNode.wcNode ||\n !cursorNode.asciiNode ||\n cursorNode.tileNode ||\n cursorNode.style.textDecoration ||\n cursorNode.style.backgroundColor)) {\n // Second best case, the current node is able to hold the whitespace.\n cursorNode.textContent = (cursorNodeText += ws);\n } else {\n // Worst case, we have to create a new node to hold the whitespace.\n var wsNode = cursorNode.ownerDocument.createTextNode(ws);\n this.cursorRowNode_.insertBefore(wsNode, cursorNode.nextSibling);\n this.cursorNode_ = cursorNode = wsNode;\n this.cursorOffset_ = offset = -reverseOffset;\n cursorNodeText = ws;\n }\n\n // We now know for sure that we're at the last character of the cursor node.\n reverseOffset = 0;\n }\n\n if (this.textAttributes.matchesContainer(cursorNode)) {\n // The new text can be placed directly in the cursor node.\n if (reverseOffset == 0) {\n cursorNode.textContent = cursorNodeText + str;\n } else if (offset == 0) {\n cursorNode.textContent = str + cursorNodeText;\n } else {\n cursorNode.textContent =\n hterm.TextAttributes.nodeSubstr(cursorNode, 0, offset) +\n str + hterm.TextAttributes.nodeSubstr(cursorNode, offset);\n }\n\n this.cursorOffset_ += strWidth;\n return;\n }\n\n // The cursor node is the wrong style for the new text. If we're at the\n // beginning or end of the cursor node, then the adjacent node is also a\n // potential candidate.\n\n if (offset == 0) {\n // At the beginning of the cursor node, the check the previous sibling.\n var previousSibling = cursorNode.previousSibling;\n if (previousSibling &&\n this.textAttributes.matchesContainer(previousSibling)) {\n previousSibling.textContent += str;\n this.cursorNode_ = previousSibling;\n this.cursorOffset_ = lib.wc.strWidth(previousSibling.textContent);\n return;\n }\n\n var newNode = this.textAttributes.createContainer(str);\n this.cursorRowNode_.insertBefore(newNode, cursorNode);\n this.cursorNode_ = newNode;\n this.cursorOffset_ = strWidth;\n return;\n }\n\n if (reverseOffset == 0) {\n // At the end of the cursor node, the check the next sibling.\n var nextSibling = cursorNode.nextSibling;\n if (nextSibling &&\n this.textAttributes.matchesContainer(nextSibling)) {\n nextSibling.textContent = str + nextSibling.textContent;\n this.cursorNode_ = nextSibling;\n this.cursorOffset_ = lib.wc.strWidth(str);\n return;\n }\n\n var newNode = this.textAttributes.createContainer(str);\n this.cursorRowNode_.insertBefore(newNode, nextSibling);\n this.cursorNode_ = newNode;\n // We specifically need to include any missing whitespace here, since it's\n // going in a new node.\n this.cursorOffset_ = hterm.TextAttributes.nodeWidth(newNode);\n return;\n }\n\n // Worst case, we're somewhere in the middle of the cursor node. We'll\n // have to split it into two nodes and insert our new container in between.\n this.splitNode_(cursorNode, offset);\n var newNode = this.textAttributes.createContainer(str);\n this.cursorRowNode_.insertBefore(newNode, cursorNode.nextSibling);\n this.cursorNode_ = newNode;\n this.cursorOffset_ = strWidth;\n};\n\n/**\n * Overwrite the text at the current cursor position.\n *\n * You must call maybeClipCurrentRow() after in order to clip overflowed\n * text and clamp the cursor.\n *\n * It is also up to the caller to properly maintain the line overflow state\n * using hterm.Screen..commitLineOverflow().\n */\nhterm.Screen.prototype.overwriteString = function(str) {\n var maxLength = this.columnCount_ - this.cursorPosition.column;\n if (!maxLength)\n return [str];\n\n var width = lib.wc.strWidth(str);\n if (this.textAttributes.matchesContainer(this.cursorNode_) &&\n this.cursorNode_.textContent.substr(this.cursorOffset_) == str) {\n // This overwrite would be a no-op, just move the cursor and return.\n this.cursorOffset_ += width;\n this.cursorPosition.column += width;\n return;\n }\n\n this.deleteChars(Math.min(width, maxLength));\n this.insertString(str);\n};\n\n/**\n * Forward-delete one or more characters at the current cursor position.\n *\n * Text to the right of the deleted characters is shifted left. Only affects\n * characters on the same row as the cursor.\n *\n * @param {integer} count The column width of characters to delete. This is\n * clamped to the column width minus the cursor column.\n * @return {integer} The column width of the characters actually deleted.\n */\nhterm.Screen.prototype.deleteChars = function(count) {\n var node = this.cursorNode_;\n var offset = this.cursorOffset_;\n\n var currentCursorColumn = this.cursorPosition.column;\n count = Math.min(count, this.columnCount_ - currentCursorColumn);\n if (!count)\n return 0;\n\n var rv = count;\n var startLength, endLength;\n\n while (node && count) {\n startLength = hterm.TextAttributes.nodeWidth(node);\n node.textContent = hterm.TextAttributes.nodeSubstr(node, 0, offset) +\n hterm.TextAttributes.nodeSubstr(node, offset + count);\n endLength = hterm.TextAttributes.nodeWidth(node);\n count -= startLength - endLength;\n if (offset < startLength && endLength && startLength == endLength) {\n // No characters were deleted when there should be. We're probably trying\n // to delete one column width from a wide character node. We remove the\n // wide character node here and replace it with a single space.\n var spaceNode = this.textAttributes.createContainer(' ');\n node.parentNode.insertBefore(spaceNode, node.nextSibling);\n node.textContent = '';\n endLength = 0;\n count -= 1;\n }\n\n var nextNode = node.nextSibling;\n if (endLength == 0 && node != this.cursorNode_) {\n node.parentNode.removeChild(node);\n }\n node = nextNode;\n offset = 0;\n }\n\n // Remove this.cursorNode_ if it is an empty non-text node.\n if (this.cursorNode_.nodeType != 3 && !this.cursorNode_.textContent) {\n var cursorNode = this.cursorNode_;\n if (cursorNode.previousSibling) {\n this.cursorNode_ = cursorNode.previousSibling;\n this.cursorOffset_ = hterm.TextAttributes.nodeWidth(\n cursorNode.previousSibling);\n } else if (cursorNode.nextSibling) {\n this.cursorNode_ = cursorNode.nextSibling;\n this.cursorOffset_ = 0;\n } else {\n var emptyNode = this.cursorRowNode_.ownerDocument.createTextNode('');\n this.cursorRowNode_.appendChild(emptyNode);\n this.cursorNode_ = emptyNode;\n this.cursorOffset_ = 0;\n }\n this.cursorRowNode_.removeChild(cursorNode);\n }\n\n return rv;\n};\n\n/**\n * Finds first X-ROW of a line containing specified X-ROW.\n * Used to support line overflow.\n *\n * @param {Node} row X-ROW to begin search for first row of line.\n * @return {Node} The X-ROW that is at the beginning of the line.\n **/\nhterm.Screen.prototype.getLineStartRow_ = function(row) {\n while (row.previousSibling &&\n row.previousSibling.hasAttribute('line-overflow')) {\n row = row.previousSibling;\n }\n return row;\n};\n\n/**\n * Gets text of a line beginning with row.\n * Supports line overflow.\n *\n * @param {Node} row First X-ROW of line.\n * @return {string} Text content of line.\n **/\nhterm.Screen.prototype.getLineText_ = function(row) {\n var rowText = \"\";\n while (row) {\n rowText += row.textContent;\n if (row.hasAttribute('line-overflow')) {\n row = row.nextSibling;\n } else {\n break;\n }\n }\n return rowText;\n};\n\n/**\n * Returns X-ROW that is ancestor of the node.\n *\n * @param {Node} node Node to get X-ROW ancestor for.\n * @return {Node} X-ROW ancestor of node, or null if not found.\n **/\nhterm.Screen.prototype.getXRowAncestor_ = function(node) {\n while (node) {\n if (node.nodeName === 'X-ROW')\n break;\n node = node.parentNode;\n }\n return node;\n};\n\n/**\n * Returns position within line of character at offset within node.\n * Supports line overflow.\n *\n * @param {Node} row X-ROW at beginning of line.\n * @param {Node} node Node to get position of.\n * @param {integer} offset Offset into node.\n *\n * @return {integer} Position within line of character at offset within node.\n **/\nhterm.Screen.prototype.getPositionWithOverflow_ = function(row, node, offset) {\n if (!node)\n return -1;\n var ancestorRow = this.getXRowAncestor_(node);\n if (!ancestorRow)\n return -1;\n var position = 0;\n while (ancestorRow != row) {\n position += hterm.TextAttributes.nodeWidth(row);\n if (row.hasAttribute('line-overflow') && row.nextSibling) {\n row = row.nextSibling;\n } else {\n return -1;\n }\n }\n return position + this.getPositionWithinRow_(row, node, offset);\n};\n\n/**\n * Returns position within row of character at offset within node.\n * Does not support line overflow.\n *\n * @param {Node} row X-ROW to get position within.\n * @param {Node} node Node to get position for.\n * @param {integer} offset Offset within node to get position for.\n * @return {integer} Position within row of character at offset within node.\n **/\nhterm.Screen.prototype.getPositionWithinRow_ = function(row, node, offset) {\n if (node.parentNode != row) {\n // If we traversed to the top node, then there's nothing to find here.\n if (node.parentNode == null)\n return -1;\n\n return this.getPositionWithinRow_(node.parentNode, node, offset) +\n this.getPositionWithinRow_(row, node.parentNode, 0);\n }\n var position = 0;\n for (var i = 0; i < row.childNodes.length; i++) {\n var currentNode = row.childNodes[i];\n if (currentNode == node)\n return position + offset;\n position += hterm.TextAttributes.nodeWidth(currentNode);\n }\n return -1;\n};\n\n/**\n * Returns the node and offset corresponding to position within line.\n * Supports line overflow.\n *\n * @param {Node} row X-ROW at beginning of line.\n * @param {integer} position Position within line to retrieve node and offset.\n * @return {Array} Two element array containing node and offset respectively.\n **/\nhterm.Screen.prototype.getNodeAndOffsetWithOverflow_ = function(row, position) {\n while (row && position > hterm.TextAttributes.nodeWidth(row)) {\n if (row.hasAttribute('line-overflow') && row.nextSibling) {\n position -= hterm.TextAttributes.nodeWidth(row);\n row = row.nextSibling;\n } else {\n return -1;\n }\n }\n return this.getNodeAndOffsetWithinRow_(row, position);\n};\n\n/**\n * Returns the node and offset corresponding to position within row.\n * Does not support line overflow.\n *\n * @param {Node} row X-ROW to get position within.\n * @param {integer} position Position within row to retrieve node and offset.\n * @return {Array} Two element array containing node and offset respectively.\n **/\nhterm.Screen.prototype.getNodeAndOffsetWithinRow_ = function(row, position) {\n for (var i = 0; i < row.childNodes.length; i++) {\n var node = row.childNodes[i];\n var nodeTextWidth = hterm.TextAttributes.nodeWidth(node);\n if (position <= nodeTextWidth) {\n if (node.nodeName === 'SPAN') {\n /** Drill down to node contained by SPAN. **/\n return this.getNodeAndOffsetWithinRow_(node, position);\n } else {\n return [node, position];\n }\n }\n position -= nodeTextWidth;\n }\n return null;\n};\n\n/**\n * Returns the node and offset corresponding to position within line.\n * Supports line overflow.\n *\n * @param {Node} row X-ROW at beginning of line.\n * @param {integer} start Start position of range within line.\n * @param {integer} end End position of range within line.\n * @param {Range} range Range to modify.\n **/\nhterm.Screen.prototype.setRange_ = function(row, start, end, range) {\n var startNodeAndOffset = this.getNodeAndOffsetWithOverflow_(row, start);\n if (startNodeAndOffset == null)\n return;\n var endNodeAndOffset = this.getNodeAndOffsetWithOverflow_(row, end);\n if (endNodeAndOffset == null)\n return;\n range.setStart(startNodeAndOffset[0], startNodeAndOffset[1]);\n range.setEnd(endNodeAndOffset[0], endNodeAndOffset[1]);\n};\n\n/**\n * Expands selection to surround URLs.\n *\n * @param {Selection} selection Selection to expand.\n **/\nhterm.Screen.prototype.expandSelection = function(selection) {\n if (!selection)\n return;\n\n var range = selection.getRangeAt(0);\n if (!range || range.toString().match(/\\s/))\n return;\n\n var row = this.getLineStartRow_(this.getXRowAncestor_(range.startContainer));\n if (!row)\n return;\n\n var startPosition = this.getPositionWithOverflow_(row,\n range.startContainer,\n range.startOffset);\n if (startPosition == -1)\n return;\n var endPosition = this.getPositionWithOverflow_(row,\n range.endContainer,\n range.endOffset);\n if (endPosition == -1)\n return;\n\n // Use the user configurable match settings.\n var leftMatch = this.wordBreakMatchLeft;\n var rightMatch = this.wordBreakMatchRight;\n var insideMatch = this.wordBreakMatchMiddle;\n\n //Move start to the left.\n var rowText = this.getLineText_(row);\n var lineUpToRange = lib.wc.substring(rowText, 0, endPosition);\n var leftRegularExpression = new RegExp(leftMatch + insideMatch + \"$\");\n var expandedStart = lineUpToRange.search(leftRegularExpression);\n if (expandedStart == -1 || expandedStart > startPosition)\n return;\n\n //Move end to the right.\n var lineFromRange = lib.wc.substring(rowText, startPosition,\n lib.wc.strWidth(rowText));\n var rightRegularExpression = new RegExp(\"^\" + insideMatch + rightMatch);\n var found = lineFromRange.match(rightRegularExpression);\n if (!found)\n return;\n var expandedEnd = startPosition + lib.wc.strWidth(found[0]);\n if (expandedEnd == -1 || expandedEnd < endPosition)\n return;\n\n this.setRange_(row, expandedStart, expandedEnd, range);\n selection.addRange(range);\n};\n// SOURCE FILE: hterm/js/hterm_scrollport.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f', 'hterm.PubSub', 'hterm.Size');\n\n/**\n * A 'viewport' view of fixed-height rows with support for selection and\n * copy-to-clipboard.\n *\n * 'Viewport' in this case means that only the visible rows are in the DOM.\n * If the rowProvider has 100,000 rows, but the ScrollPort is only 25 rows\n * tall, then only 25 dom nodes are created. The ScrollPort will ask the\n * RowProvider to create new visible rows on demand as they are scrolled in\n * to the visible area.\n *\n * This viewport is designed so that select and copy-to-clipboard still works,\n * even when all or part of the selection is scrolled off screen.\n *\n * Note that the X11 mouse clipboard does not work properly when all or part\n * of the selection is off screen. It would be difficult to fix this without\n * adding significant overhead to pathologically large selection cases.\n *\n * The RowProvider should return rows rooted by the custom tag name 'x-row'.\n * This ensures that we can quickly assign the correct display height\n * to the rows with css.\n *\n * @param {RowProvider} rowProvider An object capable of providing rows as\n * raw text or row nodes.\n */\nhterm.ScrollPort = function(rowProvider) {\n hterm.PubSub.addBehavior(this);\n\n this.rowProvider_ = rowProvider;\n\n // SWAG the character size until we can measure it.\n this.characterSize = new hterm.Size(10, 10);\n\n // DOM node used for character measurement.\n this.ruler_ = null;\n\n this.selection = new hterm.ScrollPort.Selection(this);\n\n // A map of rowIndex => rowNode for each row that is drawn as part of a\n // pending redraw_() call. Null if there is no pending redraw_ call.\n this.currentRowNodeCache_ = null;\n\n // A map of rowIndex => rowNode for each row that was drawn as part of the\n // previous redraw_() call.\n this.previousRowNodeCache_ = {};\n\n // Used during scroll events to detect when the underlying cause is a resize.\n this.lastScreenWidth_ = null;\n this.lastScreenHeight_ = null;\n\n // True if the user should be allowed to select text in the terminal.\n // This is disabled when the host requests mouse drag events so that we don't\n // end up with two notions of selection.\n this.selectionEnabled_ = true;\n\n // The last row count returned by the row provider, re-populated during\n // syncScrollHeight().\n this.lastRowCount_ = 0;\n\n // The scroll wheel pixel delta multiplier to increase/decrease\n // the scroll speed of mouse wheel events. See: https://goo.gl/sXelnq\n this.scrollWheelMultiplier_ = 1;\n\n // The last touch events we saw to support touch based scrolling. Indexed\n // by touch identifier since we can have more than one touch active.\n this.lastTouch_ = {};\n\n /**\n * True if the last scroll caused the scrollport to show the final row.\n */\n this.isScrolledEnd = true;\n\n /**\n * A guess at the current scrollbar width, fixed in resize().\n */\n this.currentScrollbarWidthPx = 16;\n\n /**\n * Whether the ctrl-v key on the screen should paste.\n */\n this.ctrlVPaste = false;\n\n this.div_ = null;\n this.document_ = null;\n\n // Collection of active timeout handles.\n this.timeouts_ = {};\n\n this.observers_ = {};\n\n this.DEBUG_ = false;\n}\n\n/**\n * Proxy for the native selection object which understands how to walk up the\n * DOM to find the containing row node and sort out which comes first.\n *\n * @param {hterm.ScrollPort} scrollPort The parent hterm.ScrollPort instance.\n */\nhterm.ScrollPort.Selection = function(scrollPort) {\n this.scrollPort_ = scrollPort;\n\n /**\n * The row containing the start of the selection.\n *\n * This may be partially or fully selected. It may be the selection anchor\n * or the focus, but its rowIndex is guaranteed to be less-than-or-equal-to\n * that of the endRow.\n *\n * If only one row is selected then startRow == endRow. If there is no\n * selection or the selection is collapsed then startRow == null.\n */\n this.startRow = null;\n\n /**\n * The row containing the end of the selection.\n *\n * This may be partially or fully selected. It may be the selection anchor\n * or the focus, but its rowIndex is guaranteed to be greater-than-or-equal-to\n * that of the startRow.\n *\n * If only one row is selected then startRow == endRow. If there is no\n * selection or the selection is collapsed then startRow == null.\n */\n this.endRow = null;\n\n /**\n * True if startRow != endRow.\n */\n this.isMultiline = null;\n\n /**\n * True if the selection is just a point rather than a range.\n */\n this.isCollapsed = null;\n};\n\n/**\n * Given a list of DOM nodes and a container, return the DOM node that\n * is first according to a depth-first search.\n *\n * Returns null if none of the children are found.\n */\nhterm.ScrollPort.Selection.prototype.findFirstChild = function(\n parent, childAry) {\n var node = parent.firstChild;\n\n while (node) {\n if (childAry.indexOf(node) != -1)\n return node;\n\n if (node.childNodes.length) {\n var rv = this.findFirstChild(node, childAry);\n if (rv)\n return rv;\n }\n\n node = node.nextSibling;\n }\n\n return null;\n};\n\n/**\n * Synchronize this object with the current DOM selection.\n *\n * This is a one-way synchronization, the DOM selection is copied to this\n * object, not the other way around.\n */\nhterm.ScrollPort.Selection.prototype.sync = function() {\n var self = this;\n\n // The dom selection object has no way to tell which nodes come first in\n // the document, so we have to figure that out.\n //\n // This function is used when we detect that the \"anchor\" node is first.\n function anchorFirst() {\n self.startRow = anchorRow;\n self.startNode = selection.anchorNode;\n self.startOffset = selection.anchorOffset;\n self.endRow = focusRow;\n self.endNode = selection.focusNode;\n self.endOffset = selection.focusOffset;\n }\n\n // This function is used when we detect that the \"focus\" node is first.\n function focusFirst() {\n self.startRow = focusRow;\n self.startNode = selection.focusNode;\n self.startOffset = selection.focusOffset;\n self.endRow = anchorRow;\n self.endNode = selection.anchorNode;\n self.endOffset = selection.anchorOffset;\n }\n\n var selection = this.scrollPort_.getDocument().getSelection();\n\n this.startRow = null;\n this.endRow = null;\n this.isMultiline = null;\n this.isCollapsed = !selection || selection.isCollapsed;\n\n if (this.isCollapsed)\n return;\n\n var anchorRow = selection.anchorNode;\n while (anchorRow && !('rowIndex' in anchorRow)) {\n anchorRow = anchorRow.parentNode;\n }\n\n if (!anchorRow) {\n console.error('Selection anchor is not rooted in a row node: ' +\n selection.anchorNode.nodeName);\n return;\n }\n\n var focusRow = selection.focusNode;\n while (focusRow && !('rowIndex' in focusRow)) {\n focusRow = focusRow.parentNode;\n }\n\n if (!focusRow) {\n console.error('Selection focus is not rooted in a row node: ' +\n selection.focusNode.nodeName);\n return;\n }\n\n if (anchorRow.rowIndex < focusRow.rowIndex) {\n anchorFirst();\n\n } else if (anchorRow.rowIndex > focusRow.rowIndex) {\n focusFirst();\n\n } else if (selection.focusNode == selection.anchorNode) {\n if (selection.anchorOffset < selection.focusOffset) {\n anchorFirst();\n } else {\n focusFirst();\n }\n\n } else {\n // The selection starts and ends in the same row, but isn't contained all\n // in a single node.\n var firstNode = this.findFirstChild(\n anchorRow, [selection.anchorNode, selection.focusNode]);\n\n if (!firstNode)\n throw new Error('Unexpected error syncing selection.');\n\n if (firstNode == selection.anchorNode) {\n anchorFirst();\n } else {\n focusFirst();\n }\n }\n\n this.isMultiline = anchorRow.rowIndex != focusRow.rowIndex;\n};\n\n\n/**\n * Turn a div into this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.decorate = function(div) {\n this.div_ = div;\n\n this.iframe_ = div.ownerDocument.createElement('iframe');\n this.iframe_.style.cssText = (\n 'border: 0;' +\n 'height: 100%;' +\n 'position: absolute;' +\n 'width: 100%');\n\n // Set the iframe src to # in FF. Otherwise when the frame's\n // load event fires in FF it clears out the content of the iframe.\n if ('mozInnerScreenX' in window) // detect a FF only property\n this.iframe_.src = '#';\n\n div.appendChild(this.iframe_);\n\n this.iframe_.contentWindow.addEventListener('resize',\n this.onResize_.bind(this));\n\n var doc = this.document_ = this.iframe_.contentDocument;\n doc.body.style.cssText = (\n 'margin: 0px;' +\n 'padding: 0px;' +\n 'height: 100%;' +\n 'width: 100%;' +\n 'overflow: hidden;' +\n 'cursor: var(--hterm-mouse-cursor-style);' +\n '-webkit-user-select: none;' +\n '-moz-user-select: none;');\n\n if (this.DEBUG_) {\n // When we're debugging we add padding to the body so that the offscreen\n // elements are visible.\n this.document_.body.style.paddingTop =\n this.document_.body.style.paddingBottom =\n 'calc(var(--hterm-charsize-height) * 3)';\n }\n\n var style = doc.createElement('style');\n style.textContent = (\n 'x-row {' +\n ' display: block;' +\n ' height: var(--hterm-charsize-height);' +\n ' line-height: var(--hterm-charsize-height);' +\n '}');\n doc.head.appendChild(style);\n\n this.userCssLink_ = doc.createElement('link');\n this.userCssLink_.setAttribute('rel', 'stylesheet');\n\n this.userCssText_ = doc.createElement('style');\n doc.head.appendChild(this.userCssText_);\n\n // TODO(rginda): Sorry, this 'screen_' isn't the same thing as hterm.Screen\n // from screen.js. I need to pick a better name for one of them to avoid\n // the collision.\n // We make this field editable even though we don't actually allow anything\n // to be edited here so that Chrome will do the right thing with virtual\n // keyboards and IMEs. But make sure we turn off all the input helper logic\n // that doesn't make sense here, and might inadvertently mung or save input.\n // Some of these attributes are standard while others are browser specific,\n // but should be safely ignored by other browsers.\n this.screen_ = doc.createElement('x-screen');\n this.screen_.setAttribute('contenteditable', 'true');\n this.screen_.setAttribute('spellcheck', 'false');\n this.screen_.setAttribute('autocomplete', 'off');\n this.screen_.setAttribute('autocorrect', 'off');\n this.screen_.setAttribute('autocaptalize', 'none');\n this.screen_.setAttribute('role', 'textbox');\n this.screen_.setAttribute('tabindex', '-1');\n this.screen_.style.cssText = (\n 'caret-color: transparent;' +\n 'display: block;' +\n 'font-family: monospace;' +\n 'font-size: 15px;' +\n 'font-variant-ligatures: none;' +\n 'height: 100%;' +\n 'overflow-y: scroll; overflow-x: hidden;' +\n 'white-space: pre;' +\n 'width: 100%;' +\n 'outline: none !important');\n\n doc.body.appendChild(this.screen_);\n\n this.screen_.addEventListener('scroll', this.onScroll_.bind(this));\n this.screen_.addEventListener('wheel', this.onScrollWheel_.bind(this));\n this.screen_.addEventListener('touchstart', this.onTouch_.bind(this));\n this.screen_.addEventListener('touchmove', this.onTouch_.bind(this));\n this.screen_.addEventListener('touchend', this.onTouch_.bind(this));\n this.screen_.addEventListener('touchcancel', this.onTouch_.bind(this));\n this.screen_.addEventListener('copy', this.onCopy_.bind(this));\n this.screen_.addEventListener('paste', this.onPaste_.bind(this));\n // Disable drag & drop of text/content. We don't handle it at all (yet?),\n // and the default behavior just confuses hterm.\n this.screen_.addEventListener('drop', function(e) {\n e.preventDefault();\n return false;\n });\n\n doc.body.addEventListener('keydown', this.onBodyKeyDown_.bind(this));\n\n // This is the main container for the fixed rows.\n this.rowNodes_ = doc.createElement('div');\n this.rowNodes_.id = 'hterm:row-nodes';\n this.rowNodes_.style.cssText = (\n 'display: block;' +\n 'position: fixed;' +\n 'overflow: hidden;' +\n '-webkit-user-select: text;' +\n '-moz-user-select: text;');\n this.screen_.appendChild(this.rowNodes_);\n\n // Two nodes to hold offscreen text during the copy event.\n this.topSelectBag_ = doc.createElement('x-select-bag');\n this.topSelectBag_.style.cssText = (\n 'display: block;' +\n 'overflow: hidden;' +\n 'height: var(--hterm-charsize-height);' +\n 'white-space: pre;');\n\n this.bottomSelectBag_ = this.topSelectBag_.cloneNode();\n\n // Nodes above the top fold and below the bottom fold are hidden. They are\n // only used to hold rows that are part of the selection but are currently\n // scrolled off the top or bottom of the visible range.\n this.topFold_ = doc.createElement('x-fold');\n this.topFold_.id = 'hterm:top-fold-for-row-selection';\n this.topFold_.style.cssText = 'display: block;';\n this.rowNodes_.appendChild(this.topFold_);\n\n this.bottomFold_ = this.topFold_.cloneNode();\n this.bottomFold_.id = 'hterm:bottom-fold-for-row-selection';\n this.rowNodes_.appendChild(this.bottomFold_);\n\n // This hidden div accounts for the vertical space that would be consumed by\n // all the rows in the buffer if they were visible. It's what causes the\n // scrollbar to appear on the 'x-screen', and it moves within the screen when\n // the scrollbar is moved.\n //\n // It is set 'visibility: hidden' to keep the browser from trying to include\n // it in the selection when a user 'drag selects' upwards (drag the mouse to\n // select and scroll at the same time). Without this, the selection gets\n // out of whack.\n this.scrollArea_ = doc.createElement('div');\n this.scrollArea_.id = 'hterm:scrollarea';\n this.scrollArea_.style.cssText = 'visibility: hidden';\n this.screen_.appendChild(this.scrollArea_);\n\n // This svg element is used to detect when the browser is zoomed. It must be\n // placed in the outermost document for currentScale to be correct.\n // TODO(rginda): This means that hterm nested in an iframe will not correctly\n // detect browser zoom level. We should come up with a better solution.\n // Note: This must be http:// else Chrome cannot create the element correctly.\n var xmlns = 'http://www.w3.org/2000/svg';\n this.svg_ = this.div_.ownerDocument.createElementNS(xmlns, 'svg');\n this.svg_.id = 'hterm:zoom-detector';\n this.svg_.setAttribute('xmlns', xmlns);\n this.svg_.setAttribute('version', '1.1');\n this.svg_.style.cssText = (\n 'position: absolute;' +\n 'top: 0;' +\n 'left: 0;' +\n 'visibility: hidden');\n\n\n // We send focus to this element just before a paste happens, so we can\n // capture the pasted text and forward it on to someone who cares.\n this.pasteTarget_ = doc.createElement('textarea');\n this.pasteTarget_.id = 'hterm:ctrl-v-paste-target';\n this.pasteTarget_.setAttribute('tabindex', '-1');\n this.pasteTarget_.style.cssText = (\n 'position: absolute;' +\n 'height: 1px;' +\n 'width: 1px;' +\n 'left: 0px; ' +\n 'bottom: 0px;' +\n 'opacity: 0');\n this.pasteTarget_.contentEditable = true;\n\n this.screen_.appendChild(this.pasteTarget_);\n this.pasteTarget_.addEventListener(\n 'textInput', this.handlePasteTargetTextInput_.bind(this));\n\n this.resize();\n};\n\n/**\n * Select the font-family and font-smoothing for this scrollport.\n *\n * @param {string} fontFamily Value of the CSS 'font-family' to use for this\n * scrollport. Should be a monospace font.\n * @param {string} opt_smoothing Optional value for '-webkit-font-smoothing'.\n * Defaults to an empty string if not specified.\n */\nhterm.ScrollPort.prototype.setFontFamily = function(fontFamily, opt_smoothing) {\n this.screen_.style.fontFamily = fontFamily;\n if (opt_smoothing) {\n this.screen_.style.webkitFontSmoothing = opt_smoothing;\n } else {\n this.screen_.style.webkitFontSmoothing = '';\n }\n\n this.syncCharacterSize();\n};\n\nhterm.ScrollPort.prototype.getFontFamily = function() {\n return this.screen_.style.fontFamily;\n};\n\n/**\n * Set a custom stylesheet to include in the scrollport.\n *\n * Defaults to null, meaning no custom css is loaded. Set it back to null or\n * the empty string to remove a previously applied custom css.\n */\nhterm.ScrollPort.prototype.setUserCssUrl = function(url) {\n if (url) {\n this.userCssLink_.setAttribute('href', url);\n\n if (!this.userCssLink_.parentNode)\n this.document_.head.appendChild(this.userCssLink_);\n } else if (this.userCssLink_.parentNode) {\n this.document_.head.removeChild(this.userCssLink_);\n }\n};\n\nhterm.ScrollPort.prototype.setUserCssText = function(text) {\n this.userCssText_.textContent = text;\n};\n\nhterm.ScrollPort.prototype.focus = function() {\n this.iframe_.focus();\n this.screen_.focus();\n};\n\nhterm.ScrollPort.prototype.getForegroundColor = function() {\n return this.screen_.style.color;\n};\n\nhterm.ScrollPort.prototype.setForegroundColor = function(color) {\n this.screen_.style.color = color;\n};\n\nhterm.ScrollPort.prototype.getBackgroundColor = function() {\n return this.screen_.style.backgroundColor;\n};\n\nhterm.ScrollPort.prototype.setBackgroundColor = function(color) {\n this.screen_.style.backgroundColor = color;\n};\n\nhterm.ScrollPort.prototype.setBackgroundImage = function(image) {\n this.screen_.style.backgroundImage = image;\n};\n\nhterm.ScrollPort.prototype.setBackgroundSize = function(size) {\n this.screen_.style.backgroundSize = size;\n};\n\nhterm.ScrollPort.prototype.setBackgroundPosition = function(position) {\n this.screen_.style.backgroundPosition = position;\n};\n\nhterm.ScrollPort.prototype.setCtrlVPaste = function(ctrlVPaste) {\n this.ctrlVPaste = ctrlVPaste;\n};\n\n/**\n * Get the usable size of the scrollport screen.\n *\n * The width will not include the scrollbar width.\n */\nhterm.ScrollPort.prototype.getScreenSize = function() {\n var size = hterm.getClientSize(this.screen_);\n return {\n height: size.height,\n width: size.width - this.currentScrollbarWidthPx\n };\n};\n\n/**\n * Get the usable width of the scrollport screen.\n *\n * This the widget width minus scrollbar width.\n */\nhterm.ScrollPort.prototype.getScreenWidth = function() {\n return this.getScreenSize().width ;\n};\n\n/**\n * Get the usable height of the scrollport screen.\n */\nhterm.ScrollPort.prototype.getScreenHeight = function() {\n return this.getScreenSize().height;\n};\n\n/**\n * Return the document that holds the visible rows of this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.getDocument = function() {\n return this.document_;\n};\n\n/**\n * Returns the x-screen element that holds the rows of this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.getScreenNode = function() {\n return this.screen_;\n};\n\n/**\n * Clear out any cached rowNodes.\n */\nhterm.ScrollPort.prototype.resetCache = function() {\n this.currentRowNodeCache_ = null;\n this.previousRowNodeCache_ = {};\n};\n\n/**\n * Change the current rowProvider.\n *\n * This will clear the row cache and cause a redraw.\n *\n * @param {Object} rowProvider An object capable of providing the rows\n * in this hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.setRowProvider = function(rowProvider) {\n this.resetCache();\n this.rowProvider_ = rowProvider;\n this.scheduleRedraw();\n};\n\n/**\n * Inform the ScrollPort that the root DOM nodes for some or all of the visible\n * rows are no longer valid.\n *\n * Specifically, this should be called if this.rowProvider_.getRowNode() now\n * returns an entirely different node than it did before. It does not\n * need to be called if the content of a row node is the only thing that\n * changed.\n *\n * This skips some of the overhead of a full redraw, but should not be used\n * in cases where the scrollport has been scrolled, or when the row count has\n * changed.\n */\nhterm.ScrollPort.prototype.invalidate = function() {\n var node = this.topFold_.nextSibling;\n while (node != this.bottomFold_) {\n var nextSibling = node.nextSibling;\n node.parentElement.removeChild(node);\n node = nextSibling;\n }\n\n this.previousRowNodeCache_ = null;\n var topRowIndex = this.getTopRowIndex();\n var bottomRowIndex = this.getBottomRowIndex(topRowIndex);\n\n this.drawVisibleRows_(topRowIndex, bottomRowIndex);\n};\n\nhterm.ScrollPort.prototype.scheduleInvalidate = function() {\n if (this.timeouts_.invalidate)\n return;\n\n var self = this;\n this.timeouts_.invalidate = setTimeout(function () {\n delete self.timeouts_.invalidate;\n self.invalidate();\n }, 0);\n};\n\n/**\n * Set the font size of the ScrollPort.\n */\nhterm.ScrollPort.prototype.setFontSize = function(px) {\n this.screen_.style.fontSize = px + 'px';\n this.syncCharacterSize();\n};\n\n/**\n * Return the current font size of the ScrollPort.\n */\nhterm.ScrollPort.prototype.getFontSize = function() {\n return parseInt(this.screen_.style.fontSize);\n};\n\n/**\n * Measure the size of a single character in pixels.\n *\n * @param {string} opt_weight The font weight to measure, or 'normal' if\n * omitted.\n * @return {hterm.Size} A new hterm.Size object.\n */\nhterm.ScrollPort.prototype.measureCharacterSize = function(opt_weight) {\n // Number of lines used to average the height of a single character.\n var numberOfLines = 100;\n // Number of chars per line used to average the width of a single character.\n var lineLength = 100;\n\n if (!this.ruler_) {\n this.ruler_ = this.document_.createElement('div');\n this.ruler_.id = 'hterm:ruler-character-size';\n this.ruler_.style.cssText = (\n 'position: absolute;' +\n 'top: 0;' +\n 'left: 0;' +\n 'visibility: hidden;' +\n 'height: auto !important;' +\n 'width: auto !important;');\n\n // We need to put the text in a span to make the size calculation\n // work properly in Firefox\n this.rulerSpan_ = this.document_.createElement('span');\n this.rulerSpan_.id = 'hterm:ruler-span-workaround';\n this.rulerSpan_.innerHTML =\n ('X'.repeat(lineLength) + '\\r').repeat(numberOfLines);\n this.ruler_.appendChild(this.rulerSpan_);\n\n this.rulerBaseline_ = this.document_.createElement('span');\n this.rulerSpan_.id = 'hterm:ruler-baseline';\n // We want to collapse it on the baseline\n this.rulerBaseline_.style.fontSize = '0px';\n this.rulerBaseline_.textContent = 'X';\n }\n\n this.rulerSpan_.style.fontWeight = opt_weight || '';\n\n this.rowNodes_.appendChild(this.ruler_);\n var rulerSize = hterm.getClientSize(this.rulerSpan_);\n\n var size = new hterm.Size(rulerSize.width / lineLength,\n rulerSize.height / numberOfLines);\n\n this.ruler_.appendChild(this.rulerBaseline_);\n size.baseline = this.rulerBaseline_.offsetTop;\n this.ruler_.removeChild(this.rulerBaseline_);\n\n this.rowNodes_.removeChild(this.ruler_);\n\n this.div_.ownerDocument.body.appendChild(this.svg_);\n size.zoomFactor = this.svg_.currentScale;\n this.div_.ownerDocument.body.removeChild(this.svg_);\n\n return size;\n};\n\n/**\n * Synchronize the character size.\n *\n * This will re-measure the current character size and adjust the height\n * of an x-row to match.\n */\nhterm.ScrollPort.prototype.syncCharacterSize = function() {\n this.characterSize = this.measureCharacterSize();\n\n this.resize();\n};\n\n/**\n * Reset dimensions and visible row count to account for a change in the\n * dimensions of the 'x-screen'.\n */\nhterm.ScrollPort.prototype.resize = function() {\n this.currentScrollbarWidthPx = hterm.getClientWidth(this.screen_) -\n this.screen_.clientWidth;\n\n this.syncScrollHeight();\n this.syncRowNodesDimensions_();\n\n var self = this;\n this.publish(\n 'resize', { scrollPort: this },\n function() {\n self.scrollRowToBottom(self.rowProvider_.getRowCount());\n self.scheduleRedraw();\n });\n};\n\n/**\n * Set the position and size of the row nodes element.\n */\nhterm.ScrollPort.prototype.syncRowNodesDimensions_ = function() {\n var screenSize = this.getScreenSize();\n\n this.lastScreenWidth_ = screenSize.width;\n this.lastScreenHeight_ = screenSize.height;\n\n // We don't want to show a partial row because it would be distracting\n // in a terminal, so we floor any fractional row count.\n this.visibleRowCount = lib.f.smartFloorDivide(\n screenSize.height, this.characterSize.height);\n\n // Then compute the height of our integral number of rows.\n var visibleRowsHeight = this.visibleRowCount * this.characterSize.height;\n\n // Then the difference between the screen height and total row height needs to\n // be made up for as top margin. We need to record this value so it\n // can be used later to determine the topRowIndex.\n this.visibleRowTopMargin = 0;\n this.visibleRowBottomMargin = screenSize.height - visibleRowsHeight;\n\n this.topFold_.style.marginBottom = this.visibleRowTopMargin + 'px';\n\n\n var topFoldOffset = 0;\n var node = this.topFold_.previousSibling;\n while (node) {\n topFoldOffset += hterm.getClientHeight(node);\n node = node.previousSibling;\n }\n\n // Set the dimensions of the visible rows container.\n this.rowNodes_.style.width = screenSize.width + 'px';\n this.rowNodes_.style.height = visibleRowsHeight + topFoldOffset + 'px';\n this.rowNodes_.style.left = this.screen_.offsetLeft + 'px';\n this.rowNodes_.style.top = this.screen_.offsetTop - topFoldOffset + 'px';\n};\n\nhterm.ScrollPort.prototype.syncScrollHeight = function() {\n // Resize the scroll area to appear as though it contains every row.\n this.lastRowCount_ = this.rowProvider_.getRowCount();\n this.scrollArea_.style.height = (this.characterSize.height *\n this.lastRowCount_ +\n this.visibleRowTopMargin +\n this.visibleRowBottomMargin +\n 'px');\n};\n\n/**\n * Schedule a redraw to happen asynchronously.\n *\n * If this method is called multiple times before the redraw has a chance to\n * run only one redraw occurs.\n */\nhterm.ScrollPort.prototype.scheduleRedraw = function() {\n if (this.timeouts_.redraw)\n return;\n\n var self = this;\n this.timeouts_.redraw = setTimeout(function () {\n delete self.timeouts_.redraw;\n self.redraw_();\n }, 0);\n};\n\n/**\n * Redraw the current hterm.ScrollPort based on the current scrollbar position.\n *\n * When redrawing, we are careful to make sure that the rows that start or end\n * the current selection are not touched in any way. Doing so would disturb\n * the selection, and cleaning up after that would cause flashes at best and\n * incorrect selection at worst. Instead, we modify the DOM around these nodes.\n * We even stash the selection start/end outside of the visible area if\n * they are not supposed to be visible in the hterm.ScrollPort.\n */\nhterm.ScrollPort.prototype.redraw_ = function() {\n this.resetSelectBags_();\n this.selection.sync();\n\n this.syncScrollHeight();\n\n this.currentRowNodeCache_ = {};\n\n var topRowIndex = this.getTopRowIndex();\n var bottomRowIndex = this.getBottomRowIndex(topRowIndex);\n\n this.drawTopFold_(topRowIndex);\n this.drawBottomFold_(bottomRowIndex);\n this.drawVisibleRows_(topRowIndex, bottomRowIndex);\n\n this.syncRowNodesDimensions_();\n\n this.previousRowNodeCache_ = this.currentRowNodeCache_;\n this.currentRowNodeCache_ = null;\n\n this.isScrolledEnd = (\n this.getTopRowIndex() + this.visibleRowCount >= this.lastRowCount_);\n};\n\n/**\n * Ensure that the nodes above the top fold are as they should be.\n *\n * If the selection start and/or end nodes are above the visible range\n * of this hterm.ScrollPort then the dom will be adjusted so that they appear\n * before the top fold (the first x-fold element, aka this.topFold).\n *\n * If not, the top fold will be the first element.\n *\n * It is critical that this method does not move the selection nodes. Doing\n * so would clear the current selection. Instead, the rest of the DOM is\n * adjusted around them.\n */\nhterm.ScrollPort.prototype.drawTopFold_ = function(topRowIndex) {\n if (!this.selection.startRow ||\n this.selection.startRow.rowIndex >= topRowIndex) {\n // Selection is entirely below the top fold, just make sure the fold is\n // the first child.\n if (this.rowNodes_.firstChild != this.topFold_)\n this.rowNodes_.insertBefore(this.topFold_, this.rowNodes_.firstChild);\n\n return;\n }\n\n if (!this.selection.isMultiline ||\n this.selection.endRow.rowIndex >= topRowIndex) {\n // Only the startRow is above the fold.\n if (this.selection.startRow.nextSibling != this.topFold_)\n this.rowNodes_.insertBefore(this.topFold_,\n this.selection.startRow.nextSibling);\n } else {\n // Both rows are above the fold.\n if (this.selection.endRow.nextSibling != this.topFold_) {\n this.rowNodes_.insertBefore(this.topFold_,\n this.selection.endRow.nextSibling);\n }\n\n // Trim any intermediate lines.\n while (this.selection.startRow.nextSibling !=\n this.selection.endRow) {\n this.rowNodes_.removeChild(this.selection.startRow.nextSibling);\n }\n }\n\n while(this.rowNodes_.firstChild != this.selection.startRow) {\n this.rowNodes_.removeChild(this.rowNodes_.firstChild);\n }\n};\n\n/**\n * Ensure that the nodes below the bottom fold are as they should be.\n *\n * If the selection start and/or end nodes are below the visible range\n * of this hterm.ScrollPort then the dom will be adjusted so that they appear\n * after the bottom fold (the second x-fold element, aka this.bottomFold).\n *\n * If not, the bottom fold will be the last element.\n *\n * It is critical that this method does not move the selection nodes. Doing\n * so would clear the current selection. Instead, the rest of the DOM is\n * adjusted around them.\n */\nhterm.ScrollPort.prototype.drawBottomFold_ = function(bottomRowIndex) {\n if (!this.selection.endRow ||\n this.selection.endRow.rowIndex <= bottomRowIndex) {\n // Selection is entirely above the bottom fold, just make sure the fold is\n // the last child.\n if (this.rowNodes_.lastChild != this.bottomFold_)\n this.rowNodes_.appendChild(this.bottomFold_);\n\n return;\n }\n\n if (!this.selection.isMultiline ||\n this.selection.startRow.rowIndex <= bottomRowIndex) {\n // Only the endRow is below the fold.\n if (this.bottomFold_.nextSibling != this.selection.endRow)\n this.rowNodes_.insertBefore(this.bottomFold_,\n this.selection.endRow);\n } else {\n // Both rows are below the fold.\n if (this.bottomFold_.nextSibling != this.selection.startRow) {\n this.rowNodes_.insertBefore(this.bottomFold_,\n this.selection.startRow);\n }\n\n // Trim any intermediate lines.\n while (this.selection.startRow.nextSibling !=\n this.selection.endRow) {\n this.rowNodes_.removeChild(this.selection.startRow.nextSibling);\n }\n }\n\n while(this.rowNodes_.lastChild != this.selection.endRow) {\n this.rowNodes_.removeChild(this.rowNodes_.lastChild);\n }\n};\n\n/**\n * Ensure that the rows between the top and bottom folds are as they should be.\n *\n * This method assumes that drawTopFold_() and drawBottomFold_() have already\n * run, and that they have left any visible selection row (selection start\n * or selection end) between the folds.\n *\n * It recycles DOM nodes from the previous redraw where possible, but will ask\n * the rowSource to make new nodes if necessary.\n *\n * It is critical that this method does not move the selection nodes. Doing\n * so would clear the current selection. Instead, the rest of the DOM is\n * adjusted around them.\n */\nhterm.ScrollPort.prototype.drawVisibleRows_ = function(\n topRowIndex, bottomRowIndex) {\n var self = this;\n\n // Keep removing nodes, starting with currentNode, until we encounter\n // targetNode. Throws on failure.\n function removeUntilNode(currentNode, targetNode) {\n while (currentNode != targetNode) {\n if (!currentNode)\n throw 'Did not encounter target node';\n\n if (currentNode == self.bottomFold_)\n throw 'Encountered bottom fold before target node';\n\n var deadNode = currentNode;\n currentNode = currentNode.nextSibling;\n deadNode.parentNode.removeChild(deadNode);\n }\n }\n\n // Shorthand for things we're going to use a lot.\n var selectionStartRow = this.selection.startRow;\n var selectionEndRow = this.selection.endRow;\n var bottomFold = this.bottomFold_;\n\n // The node we're examining during the current iteration.\n var node = this.topFold_.nextSibling;\n\n var targetDrawCount = Math.min(this.visibleRowCount,\n this.rowProvider_.getRowCount());\n\n for (var drawCount = 0; drawCount < targetDrawCount; drawCount++) {\n var rowIndex = topRowIndex + drawCount;\n\n if (node == bottomFold) {\n // We've hit the bottom fold, we need to insert a new row.\n var newNode = this.fetchRowNode_(rowIndex);\n if (!newNode) {\n console.log(\"Couldn't fetch row index: \" + rowIndex);\n break;\n }\n\n this.rowNodes_.insertBefore(newNode, node);\n continue;\n }\n\n if (node.rowIndex == rowIndex) {\n // This node is in the right place, move along.\n node = node.nextSibling;\n continue;\n }\n\n if (selectionStartRow && selectionStartRow.rowIndex == rowIndex) {\n // The selection start row is supposed to be here, remove nodes until\n // we find it.\n removeUntilNode(node, selectionStartRow);\n node = selectionStartRow.nextSibling;\n continue;\n }\n\n if (selectionEndRow && selectionEndRow.rowIndex == rowIndex) {\n // The selection end row is supposed to be here, remove nodes until\n // we find it.\n removeUntilNode(node, selectionEndRow);\n node = selectionEndRow.nextSibling;\n continue;\n }\n\n if (node == selectionStartRow || node == selectionEndRow) {\n // We encountered the start/end of the selection, but we don't want it\n // yet. Insert a new row instead.\n var newNode = this.fetchRowNode_(rowIndex);\n if (!newNode) {\n console.log(\"Couldn't fetch row index: \" + rowIndex);\n break;\n }\n\n this.rowNodes_.insertBefore(newNode, node);\n continue;\n }\n\n // There is nothing special about this node, but it's in our way. Replace\n // it with the node that should be here.\n var newNode = this.fetchRowNode_(rowIndex);\n if (!newNode) {\n console.log(\"Couldn't fetch row index: \" + rowIndex);\n break;\n }\n\n if (node == newNode) {\n node = node.nextSibling;\n continue;\n }\n\n this.rowNodes_.insertBefore(newNode, node);\n if (!newNode.nextSibling)\n debugger;\n this.rowNodes_.removeChild(node);\n node = newNode.nextSibling;\n }\n\n if (node != this.bottomFold_)\n removeUntilNode(node, bottomFold);\n};\n\n/**\n * Empty out both select bags and remove them from the document.\n *\n * These nodes hold the text between the start and end of the selection\n * when that text is otherwise off screen. They are filled out in the\n * onCopy_ event.\n */\nhterm.ScrollPort.prototype.resetSelectBags_ = function() {\n if (this.topSelectBag_.parentNode) {\n this.topSelectBag_.textContent = '';\n this.topSelectBag_.parentNode.removeChild(this.topSelectBag_);\n }\n\n if (this.bottomSelectBag_.parentNode) {\n this.bottomSelectBag_.textContent = '';\n this.bottomSelectBag_.parentNode.removeChild(this.bottomSelectBag_);\n }\n};\n\n/**\n * Place a row node in the cache of visible nodes.\n *\n * This method may only be used during a redraw_.\n */\nhterm.ScrollPort.prototype.cacheRowNode_ = function(rowNode) {\n this.currentRowNodeCache_[rowNode.rowIndex] = rowNode;\n};\n\n/**\n * Fetch the row node for the given index.\n *\n * This will return a node from the cache if possible, or will request one\n * from the RowProvider if not.\n *\n * If a redraw_ is in progress the row will be added to the current cache.\n */\nhterm.ScrollPort.prototype.fetchRowNode_ = function(rowIndex) {\n var node;\n\n if (this.previousRowNodeCache_ && rowIndex in this.previousRowNodeCache_) {\n node = this.previousRowNodeCache_[rowIndex];\n } else {\n node = this.rowProvider_.getRowNode(rowIndex);\n }\n\n if (this.currentRowNodeCache_)\n this.cacheRowNode_(node);\n\n return node;\n};\n\n/**\n * Select all rows in the viewport.\n */\nhterm.ScrollPort.prototype.selectAll = function() {\n var firstRow;\n\n if (this.topFold_.nextSibling.rowIndex != 0) {\n while (this.topFold_.previousSibling) {\n this.rowNodes_.removeChild(this.topFold_.previousSibling);\n }\n\n firstRow = this.fetchRowNode_(0);\n this.rowNodes_.insertBefore(firstRow, this.topFold_);\n this.syncRowNodesDimensions_();\n } else {\n firstRow = this.topFold_.nextSibling;\n }\n\n var lastRowIndex = this.rowProvider_.getRowCount() - 1;\n var lastRow;\n\n if (this.bottomFold_.previousSibling.rowIndex != lastRowIndex) {\n while (this.bottomFold_.nextSibling) {\n this.rowNodes_.removeChild(this.bottomFold_.nextSibling);\n }\n\n lastRow = this.fetchRowNode_(lastRowIndex);\n this.rowNodes_.appendChild(lastRow);\n } else {\n lastRow = this.bottomFold_.previousSibling.rowIndex;\n }\n\n var selection = this.document_.getSelection();\n selection.collapse(firstRow, 0);\n selection.extend(lastRow, lastRow.childNodes.length);\n\n this.selection.sync();\n};\n\n/**\n * Return the maximum scroll position in pixels.\n */\nhterm.ScrollPort.prototype.getScrollMax_ = function(e) {\n return (hterm.getClientHeight(this.scrollArea_) +\n this.visibleRowTopMargin + this.visibleRowBottomMargin -\n hterm.getClientHeight(this.screen_));\n};\n\n/**\n * Scroll the given rowIndex to the top of the hterm.ScrollPort.\n *\n * @param {integer} rowIndex Index of the target row.\n */\nhterm.ScrollPort.prototype.scrollRowToTop = function(rowIndex) {\n this.syncScrollHeight();\n\n this.isScrolledEnd = (\n rowIndex + this.visibleRowCount >= this.lastRowCount_);\n\n var scrollTop = rowIndex * this.characterSize.height +\n this.visibleRowTopMargin;\n\n var scrollMax = this.getScrollMax_();\n if (scrollTop > scrollMax)\n scrollTop = scrollMax;\n\n if (this.screen_.scrollTop == scrollTop)\n return;\n\n this.screen_.scrollTop = scrollTop;\n this.scheduleRedraw();\n};\n\n/**\n * Scroll the given rowIndex to the bottom of the hterm.ScrollPort.\n *\n * @param {integer} rowIndex Index of the target row.\n */\nhterm.ScrollPort.prototype.scrollRowToBottom = function(rowIndex) {\n this.syncScrollHeight();\n\n this.isScrolledEnd = (\n rowIndex + this.visibleRowCount >= this.lastRowCount_);\n\n var scrollTop = rowIndex * this.characterSize.height +\n this.visibleRowTopMargin + this.visibleRowBottomMargin;\n scrollTop -= this.visibleRowCount * this.characterSize.height;\n\n if (scrollTop < 0)\n scrollTop = 0;\n\n if (this.screen_.scrollTop == scrollTop)\n return;\n\n this.screen_.scrollTop = scrollTop;\n};\n\n/**\n * Return the row index of the first visible row.\n *\n * This is based on the scroll position. If a redraw_ is in progress this\n * returns the row that *should* be at the top.\n */\nhterm.ScrollPort.prototype.getTopRowIndex = function() {\n return Math.round(this.screen_.scrollTop / this.characterSize.height);\n};\n\n/**\n * Return the row index of the last visible row.\n *\n * This is based on the scroll position. If a redraw_ is in progress this\n * returns the row that *should* be at the bottom.\n */\nhterm.ScrollPort.prototype.getBottomRowIndex = function(topRowIndex) {\n return topRowIndex + this.visibleRowCount - 1;\n};\n\n/**\n * Handler for scroll events.\n *\n * The onScroll event fires when scrollArea's scrollTop property changes. This\n * may be due to the user manually move the scrollbar, or a programmatic change.\n */\nhterm.ScrollPort.prototype.onScroll_ = function(e) {\n var screenSize = this.getScreenSize();\n if (screenSize.width != this.lastScreenWidth_ ||\n screenSize.height != this.lastScreenHeight_) {\n // This event may also fire during a resize (but before the resize event!).\n // This happens when the browser moves the scrollbar as part of the resize.\n // In these cases, we want to ignore the scroll event and let onResize\n // handle things. If we don't, then we end up scrolling to the wrong\n // position after a resize.\n this.resize();\n return;\n }\n\n this.redraw_();\n this.publish('scroll', { scrollPort: this });\n};\n\n/**\n * Clients can override this if they want to hear scrollwheel events.\n *\n * Clients may call event.preventDefault() if they want to keep the scrollport\n * from also handling the events.\n */\nhterm.ScrollPort.prototype.onScrollWheel = function(e) {};\n\n/**\n * Handler for scroll-wheel events.\n *\n * The onScrollWheel event fires when the user moves their scrollwheel over this\n * hterm.ScrollPort. Because the frontmost element in the hterm.ScrollPort is\n * a fixed position DIV, the scroll wheel does nothing by default. Instead, we\n * have to handle it manually.\n */\nhterm.ScrollPort.prototype.onScrollWheel_ = function(e) {\n this.onScrollWheel(e);\n\n if (e.defaultPrevented)\n return;\n\n // Figure out how far this event wants us to scroll.\n var delta = this.scrollWheelDelta(e);\n\n var top = this.screen_.scrollTop - delta;\n if (top < 0)\n top = 0;\n\n var scrollMax = this.getScrollMax_();\n if (top > scrollMax)\n top = scrollMax;\n\n if (top != this.screen_.scrollTop) {\n // Moving scrollTop causes a scroll event, which triggers the redraw.\n this.screen_.scrollTop = top;\n\n // Only preventDefault when we've actually scrolled. If there's nothing\n // to scroll we want to pass the event through so Chrome can detect the\n // overscroll.\n e.preventDefault();\n }\n};\n\n/**\n * Calculate how far a wheel event should scroll.\n *\n * @param {WheelEvent} e The mouse wheel event to process.\n * @return {number} How far (in pixels) to scroll.\n */\nhterm.ScrollPort.prototype.scrollWheelDelta = function(e) {\n var delta;\n\n switch (e.deltaMode) {\n case WheelEvent.DOM_DELTA_PIXEL:\n delta = e.deltaY * this.scrollWheelMultiplier_;\n break;\n case WheelEvent.DOM_DELTA_LINE:\n delta = e.deltaY * this.characterSize.height;\n break;\n case WheelEvent.DOM_DELTA_PAGE:\n delta = e.deltaY * this.characterSize.height * this.screen_.getHeight();\n break;\n }\n\n // The sign is inverted from what we would expect.\n return delta * -1;\n};\n\n\n/**\n * Clients can override this if they want to hear touch events.\n *\n * Clients may call event.preventDefault() if they want to keep the scrollport\n * from also handling the events.\n */\nhterm.ScrollPort.prototype.onTouch = function(e) {};\n\n/**\n * Handler for touch events.\n */\nhterm.ScrollPort.prototype.onTouch_ = function(e) {\n this.onTouch(e);\n\n if (e.defaultPrevented)\n return;\n\n // Extract the fields from the Touch event that we need. If we saved the\n // event directly, it has references to other objects (like x-row) that\n // might stick around for a long time. This way we only have small objects\n // in our lastTouch_ state.\n var scrubTouch = function(t) {\n return {\n id: t.identifier,\n y: t.clientY,\n x: t.clientX,\n };\n };\n\n var i, touch;\n switch (e.type) {\n case 'touchstart':\n // Save the current set of touches.\n for (i = 0; i < e.changedTouches.length; ++i) {\n touch = scrubTouch(e.changedTouches[i]);\n this.lastTouch_[touch.id] = touch;\n }\n break;\n\n case 'touchcancel':\n case 'touchend':\n // Throw away existing touches that we're finished with.\n for (i = 0; i < e.changedTouches.length; ++i)\n delete this.lastTouch_[e.changedTouches[i].identifier];\n break;\n\n case 'touchmove':\n // Walk all of the touches in this one event and merge all of their\n // changes into one delta. This lets multiple fingers scroll faster.\n var delta = 0;\n for (i = 0; i < e.changedTouches.length; ++i) {\n touch = scrubTouch(e.changedTouches[i]);\n delta += (this.lastTouch_[touch.id].y - touch.y);\n this.lastTouch_[touch.id] = touch;\n }\n\n // Invert to match the touchscreen scrolling direction of browser windows.\n delta *= -1;\n\n var top = this.screen_.scrollTop - delta;\n if (top < 0)\n top = 0;\n\n var scrollMax = this.getScrollMax_();\n if (top > scrollMax)\n top = scrollMax;\n\n if (top != this.screen_.scrollTop) {\n // Moving scrollTop causes a scroll event, which triggers the redraw.\n this.screen_.scrollTop = top;\n }\n break;\n }\n\n // To disable gestures or anything else interfering with our scrolling.\n e.preventDefault();\n};\n\n/**\n * Handler for resize events.\n *\n * The browser will resize us such that the top row stays at the top, but we\n * prefer to the bottom row to stay at the bottom.\n */\nhterm.ScrollPort.prototype.onResize_ = function(e) {\n // Re-measure, since onResize also happens for browser zoom changes.\n this.syncCharacterSize();\n this.resize();\n};\n\n/**\n * Clients can override this if they want to hear copy events.\n *\n * Clients may call event.preventDefault() if they want to keep the scrollport\n * from also handling the events.\n */\nhterm.ScrollPort.prototype.onCopy = function(e) { };\n\n/**\n * Handler for copy-to-clipboard events.\n *\n * If some or all of the selected rows are off screen we may need to fill in\n * the rows between selection start and selection end. This handler determines\n * if we're missing some of the selected text, and if so populates one or both\n * of the \"select bags\" with the missing text.\n */\nhterm.ScrollPort.prototype.onCopy_ = function(e) {\n this.onCopy(e);\n\n if (e.defaultPrevented)\n return;\n\n this.resetSelectBags_();\n this.selection.sync();\n\n if (!this.selection.startRow ||\n this.selection.endRow.rowIndex - this.selection.startRow.rowIndex < 2) {\n return;\n }\n\n var topRowIndex = this.getTopRowIndex();\n var bottomRowIndex = this.getBottomRowIndex(topRowIndex);\n\n if (this.selection.startRow.rowIndex < topRowIndex) {\n // Start of selection is above the top fold.\n var endBackfillIndex;\n\n if (this.selection.endRow.rowIndex < topRowIndex) {\n // Entire selection is above the top fold.\n endBackfillIndex = this.selection.endRow.rowIndex;\n } else {\n // Selection extends below the top fold.\n endBackfillIndex = this.topFold_.nextSibling.rowIndex;\n }\n\n this.topSelectBag_.textContent = this.rowProvider_.getRowsText(\n this.selection.startRow.rowIndex + 1, endBackfillIndex);\n this.rowNodes_.insertBefore(this.topSelectBag_,\n this.selection.startRow.nextSibling);\n this.syncRowNodesDimensions_();\n }\n\n if (this.selection.endRow.rowIndex > bottomRowIndex) {\n // Selection ends below the bottom fold.\n var startBackfillIndex;\n\n if (this.selection.startRow.rowIndex > bottomRowIndex) {\n // Entire selection is below the bottom fold.\n startBackfillIndex = this.selection.startRow.rowIndex + 1;\n } else {\n // Selection starts above the bottom fold.\n startBackfillIndex = this.bottomFold_.previousSibling.rowIndex + 1;\n }\n\n this.bottomSelectBag_.textContent = this.rowProvider_.getRowsText(\n startBackfillIndex, this.selection.endRow.rowIndex);\n this.rowNodes_.insertBefore(this.bottomSelectBag_, this.selection.endRow);\n }\n};\n\n/**\n * Focuses on the paste target on a ctrl-v keydown event, as in\n * FF a content editable element must be focused before the paste event.\n */\nhterm.ScrollPort.prototype.onBodyKeyDown_ = function(e) {\n if (!this.ctrlVPaste)\n return;\n\n var key = String.fromCharCode(e.which);\n var lowerKey = key.toLowerCase();\n if ((e.ctrlKey || e.metaKey) && lowerKey == \"v\")\n this.pasteTarget_.focus();\n};\n\n/**\n * Handle a paste event on the the ScrollPort's screen element.\n */\nhterm.ScrollPort.prototype.onPaste_ = function(e) {\n this.pasteTarget_.focus();\n\n var self = this;\n setTimeout(function() {\n self.publish('paste', { text: self.pasteTarget_.value });\n self.pasteTarget_.value = '';\n self.screen_.focus();\n }, 0);\n};\n\n/**\n * Handles a textInput event on the paste target. Stops this from\n * propagating as we want this to be handled in the onPaste_ method.\n */\nhterm.ScrollPort.prototype.handlePasteTargetTextInput_ = function(e) {\n e.stopPropagation();\n};\n\n/**\n * Set the vertical scrollbar mode of the ScrollPort.\n */\nhterm.ScrollPort.prototype.setScrollbarVisible = function(state) {\n this.screen_.style.overflowY = state ? 'scroll' : 'hidden';\n};\n\n/**\n * Set scroll wheel multiplier. This alters how much the screen scrolls on\n * mouse wheel events.\n */\nhterm.ScrollPort.prototype.setScrollWheelMoveMultipler = function(multiplier) {\n this.scrollWheelMultiplier_ = multiplier;\n};\n// SOURCE FILE: hterm/js/hterm_terminal.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.colors', 'lib.PreferenceManager', 'lib.resource', 'lib.wc',\n 'lib.f', 'hterm.Keyboard', 'hterm.Options', 'hterm.PreferenceManager',\n 'hterm.Screen', 'hterm.ScrollPort', 'hterm.Size',\n 'hterm.TextAttributes', 'hterm.VT');\n\n/**\n * Constructor for the Terminal class.\n *\n * A Terminal pulls together the hterm.ScrollPort, hterm.Screen and hterm.VT100\n * classes to provide the complete terminal functionality.\n *\n * There are a number of lower-level Terminal methods that can be called\n * directly to manipulate the cursor, text, scroll region, and other terminal\n * attributes. However, the primary method is interpret(), which parses VT\n * escape sequences and invokes the appropriate Terminal methods.\n *\n * This class was heavily influenced by Cory Maccarrone's Framebuffer class.\n *\n * TODO(rginda): Eventually we're going to need to support characters which are\n * displayed twice as wide as standard latin characters. This is to support\n * CJK (and possibly other character sets).\n *\n * @param {string} opt_profileId Optional preference profile name. If not\n * provided, defaults to 'default'.\n */\nhterm.Terminal = function(opt_profileId) {\n this.profileId_ = null;\n\n // Two screen instances.\n this.primaryScreen_ = new hterm.Screen();\n this.alternateScreen_ = new hterm.Screen();\n\n // The \"current\" screen.\n this.screen_ = this.primaryScreen_;\n\n // The local notion of the screen size. ScreenBuffers also have a size which\n // indicates their present size. During size changes, the two may disagree.\n // Also, the inactive screen's size is not altered until it is made the active\n // screen.\n this.screenSize = new hterm.Size(0, 0);\n\n // The scroll port we'll be using to display the visible rows.\n this.scrollPort_ = new hterm.ScrollPort(this);\n this.scrollPort_.subscribe('resize', this.onResize_.bind(this));\n this.scrollPort_.subscribe('scroll', this.onScroll_.bind(this));\n this.scrollPort_.subscribe('paste', this.onPaste_.bind(this));\n this.scrollPort_.onCopy = this.onCopy_.bind(this);\n\n // The div that contains this terminal.\n this.div_ = null;\n\n // The document that contains the scrollPort. Defaulted to the global\n // document here so that the terminal is functional even if it hasn't been\n // inserted into a document yet, but re-set in decorate().\n this.document_ = window.document;\n\n // The rows that have scrolled off screen and are no longer addressable.\n this.scrollbackRows_ = [];\n\n // Saved tab stops.\n this.tabStops_ = [];\n\n // Keep track of whether default tab stops have been erased; after a TBC\n // clears all tab stops, defaults aren't restored on resize until a reset.\n this.defaultTabStops = true;\n\n // The VT's notion of the top and bottom rows. Used during some VT\n // cursor positioning and scrolling commands.\n this.vtScrollTop_ = null;\n this.vtScrollBottom_ = null;\n\n // The DIV element for the visible cursor.\n this.cursorNode_ = null;\n\n // The current cursor shape of the terminal.\n this.cursorShape_ = hterm.Terminal.cursorShape.BLOCK;\n\n // The current color of the cursor.\n this.cursorColor_ = null;\n\n // Cursor blink on/off cycle in ms, overwritten by prefs once they're loaded.\n this.cursorBlinkCycle_ = [100, 100];\n\n // Pre-bound onCursorBlink_ handler, so we don't have to do this for each\n // cursor on/off servicing.\n this.myOnCursorBlink_ = this.onCursorBlink_.bind(this);\n\n // These prefs are cached so we don't have to read from local storage with\n // each output and keystroke. They are initialized by the preference manager.\n this.backgroundColor_ = null;\n this.foregroundColor_ = null;\n this.scrollOnOutput_ = null;\n this.scrollOnKeystroke_ = null;\n this.scrollWheelArrowKeys_ = null;\n\n // True if we should override mouse event reporting to allow local selection.\n this.defeatMouseReports_ = false;\n\n // Terminal bell sound.\n this.bellAudio_ = this.document_.createElement('audio');\n this.bellAudio_.id = 'hterm:bell-audio';\n this.bellAudio_.setAttribute('preload', 'auto');\n\n // All terminal bell notifications that have been generated (not necessarily\n // shown).\n this.bellNotificationList_ = [];\n\n // Whether we have permission to display notifications.\n this.desktopNotificationBell_ = false;\n\n // Cursor position and attributes saved with DECSC.\n this.savedOptions_ = {};\n\n // The current mode bits for the terminal.\n this.options_ = new hterm.Options();\n\n // Timeouts we might need to clear.\n this.timeouts_ = {};\n\n // The VT escape sequence interpreter.\n this.vt = new hterm.VT(this);\n\n // The keyboard handler.\n this.keyboard = new hterm.Keyboard(this);\n\n // General IO interface that can be given to third parties without exposing\n // the entire terminal object.\n this.io = new hterm.Terminal.IO(this);\n\n // True if mouse-click-drag should scroll the terminal.\n this.enableMouseDragScroll = true;\n\n this.copyOnSelect = null;\n this.mouseRightClickPaste = null;\n this.mousePasteButton = null;\n\n // Whether to use the default window copy behavior.\n this.useDefaultWindowCopy = false;\n\n this.clearSelectionAfterCopy = true;\n\n this.realizeSize_(80, 24);\n this.setDefaultTabStops();\n\n this.setProfile(opt_profileId || 'default',\n function() { this.onTerminalReady(); }.bind(this));\n};\n\n/**\n * Possible cursor shapes.\n */\nhterm.Terminal.cursorShape = {\n BLOCK: 'BLOCK',\n BEAM: 'BEAM',\n UNDERLINE: 'UNDERLINE'\n};\n\n/**\n * Clients should override this to be notified when the terminal is ready\n * for use.\n *\n * The terminal initialization is asynchronous, and shouldn't be used before\n * this method is called.\n */\nhterm.Terminal.prototype.onTerminalReady = function() { };\n\n/**\n * Default tab with of 8 to match xterm.\n */\nhterm.Terminal.prototype.tabWidth = 8;\n\n/**\n * Select a preference profile.\n *\n * This will load the terminal preferences for the given profile name and\n * associate subsequent preference changes with the new preference profile.\n *\n * @param {string} profileId The name of the preference profile. Forward slash\n * characters will be removed from the name.\n * @param {function} opt_callback Optional callback to invoke when the profile\n * transition is complete.\n */\nhterm.Terminal.prototype.setProfile = function(profileId, opt_callback) {\n this.profileId_ = profileId.replace(/\\//g, '');\n\n var terminal = this;\n\n if (this.prefs_)\n this.prefs_.deactivate();\n\n this.prefs_ = new hterm.PreferenceManager(this.profileId_);\n this.prefs_.addObservers(null, {\n 'alt-gr-mode': function(v) {\n if (v == null) {\n if (navigator.language.toLowerCase() == 'en-us') {\n v = 'none';\n } else {\n v = 'right-alt';\n }\n } else if (typeof v == 'string') {\n v = v.toLowerCase();\n } else {\n v = 'none';\n }\n\n if (!/^(none|ctrl-alt|left-alt|right-alt)$/.test(v))\n v = 'none';\n\n terminal.keyboard.altGrMode = v;\n },\n\n 'alt-backspace-is-meta-backspace': function(v) {\n terminal.keyboard.altBackspaceIsMetaBackspace = v;\n },\n\n 'alt-is-meta': function(v) {\n terminal.keyboard.altIsMeta = v;\n },\n\n 'alt-sends-what': function(v) {\n if (!/^(escape|8-bit|browser-key)$/.test(v))\n v = 'escape';\n\n terminal.keyboard.altSendsWhat = v;\n },\n\n 'audible-bell-sound': function(v) {\n var ary = v.match(/^lib-resource:(\\S+)/);\n if (ary) {\n terminal.bellAudio_.setAttribute('src',\n lib.resource.getDataUrl(ary[1]));\n } else {\n terminal.bellAudio_.setAttribute('src', v);\n }\n },\n\n 'desktop-notification-bell': function(v) {\n if (v && Notification) {\n terminal.desktopNotificationBell_ =\n Notification.permission === 'granted';\n if (!terminal.desktopNotificationBell_) {\n // Note: We don't call Notification.requestPermission here because\n // Chrome requires the call be the result of a user action (such as an\n // onclick handler), and pref listeners are run asynchronously.\n //\n // A way of working around this would be to display a dialog in the\n // terminal with a \"click-to-request-permission\" button.\n console.warn('desktop-notification-bell is true but we do not have ' +\n 'permission to display notifications.');\n }\n } else {\n terminal.desktopNotificationBell_ = false;\n }\n },\n\n 'background-color': function(v) {\n terminal.setBackgroundColor(v);\n },\n\n 'background-image': function(v) {\n terminal.scrollPort_.setBackgroundImage(v);\n },\n\n 'background-size': function(v) {\n terminal.scrollPort_.setBackgroundSize(v);\n },\n\n 'background-position': function(v) {\n terminal.scrollPort_.setBackgroundPosition(v);\n },\n\n 'backspace-sends-backspace': function(v) {\n terminal.keyboard.backspaceSendsBackspace = v;\n },\n\n 'character-map-overrides': function(v) {\n if (!(v == null || v instanceof Object)) {\n console.warn('Preference character-map-modifications is not an ' +\n 'object: ' + v);\n return;\n }\n\n terminal.vt.characterMaps.reset();\n terminal.vt.characterMaps.setOverrides(v);\n },\n\n 'cursor-blink': function(v) {\n terminal.setCursorBlink(!!v);\n },\n\n 'cursor-blink-cycle': function(v) {\n if (v instanceof Array &&\n typeof v[0] == 'number' &&\n typeof v[1] == 'number') {\n terminal.cursorBlinkCycle_ = v;\n } else if (typeof v == 'number') {\n terminal.cursorBlinkCycle_ = [v, v];\n } else {\n // Fast blink indicates an error.\n terminal.cursorBlinkCycle_ = [100, 100];\n }\n },\n\n 'cursor-color': function(v) {\n terminal.setCursorColor(v);\n },\n\n 'color-palette-overrides': function(v) {\n if (!(v == null || v instanceof Object || v instanceof Array)) {\n console.warn('Preference color-palette-overrides is not an array or ' +\n 'object: ' + v);\n return;\n }\n\n lib.colors.colorPalette = lib.colors.stockColorPalette.concat();\n\n if (v) {\n for (var key in v) {\n var i = parseInt(key);\n if (isNaN(i) || i < 0 || i > 255) {\n console.log('Invalid value in palette: ' + key + ': ' + v[key]);\n continue;\n }\n\n if (v[i]) {\n var rgb = lib.colors.normalizeCSS(v[i]);\n if (rgb)\n lib.colors.colorPalette[i] = rgb;\n }\n }\n }\n\n terminal.primaryScreen_.textAttributes.resetColorPalette();\n terminal.alternateScreen_.textAttributes.resetColorPalette();\n },\n\n 'copy-on-select': function(v) {\n terminal.copyOnSelect = !!v;\n },\n\n 'use-default-window-copy': function(v) {\n terminal.useDefaultWindowCopy = !!v;\n },\n\n 'clear-selection-after-copy': function(v) {\n terminal.clearSelectionAfterCopy = !!v;\n },\n\n 'ctrl-plus-minus-zero-zoom': function(v) {\n terminal.keyboard.ctrlPlusMinusZeroZoom = v;\n },\n\n 'ctrl-c-copy': function(v) {\n terminal.keyboard.ctrlCCopy = v;\n },\n\n 'ctrl-v-paste': function(v) {\n terminal.keyboard.ctrlVPaste = v;\n terminal.scrollPort_.setCtrlVPaste(v);\n },\n\n 'east-asian-ambiguous-as-two-column': function(v) {\n lib.wc.regardCjkAmbiguous = v;\n },\n\n 'enable-8-bit-control': function(v) {\n terminal.vt.enable8BitControl = !!v;\n },\n\n 'enable-bold': function(v) {\n terminal.syncBoldSafeState();\n },\n\n 'enable-bold-as-bright': function(v) {\n terminal.primaryScreen_.textAttributes.enableBoldAsBright = !!v;\n terminal.alternateScreen_.textAttributes.enableBoldAsBright = !!v;\n },\n\n 'enable-blink': function(v) {\n terminal.syncBlinkState();\n },\n\n 'enable-clipboard-write': function(v) {\n terminal.vt.enableClipboardWrite = !!v;\n },\n\n 'enable-dec12': function(v) {\n terminal.vt.enableDec12 = !!v;\n },\n\n 'font-family': function(v) {\n terminal.syncFontFamily();\n },\n\n 'font-size': function(v) {\n terminal.setFontSize(v);\n },\n\n 'font-smoothing': function(v) {\n terminal.syncFontFamily();\n },\n\n 'foreground-color': function(v) {\n terminal.setForegroundColor(v);\n },\n\n 'home-keys-scroll': function(v) {\n terminal.keyboard.homeKeysScroll = v;\n },\n\n 'keybindings': function(v) {\n terminal.keyboard.bindings.clear();\n\n if (!v)\n return;\n\n if (!(v instanceof Object)) {\n console.error('Error in keybindings preference: Expected object');\n return;\n }\n\n try {\n terminal.keyboard.bindings.addBindings(v);\n } catch (ex) {\n console.error('Error in keybindings preference: ' + ex);\n }\n },\n\n 'max-string-sequence': function(v) {\n terminal.vt.maxStringSequence = v;\n },\n\n 'media-keys-are-fkeys': function(v) {\n terminal.keyboard.mediaKeysAreFKeys = v;\n },\n\n 'meta-sends-escape': function(v) {\n terminal.keyboard.metaSendsEscape = v;\n },\n\n 'mouse-right-click-paste': function(v) {\n terminal.mouseRightClickPaste = v;\n },\n\n 'mouse-paste-button': function(v) {\n terminal.syncMousePasteButton();\n },\n\n 'page-keys-scroll': function(v) {\n terminal.keyboard.pageKeysScroll = v;\n },\n\n 'pass-alt-number': function(v) {\n if (v == null) {\n var osx = window.navigator.userAgent.match(/Mac OS X/);\n\n // Let Alt-1..9 pass to the browser (to control tab switching) on\n // non-OS X systems, or if hterm is not opened in an app window.\n v = (!osx && hterm.windowType != 'popup');\n }\n\n terminal.passAltNumber = v;\n },\n\n 'pass-ctrl-number': function(v) {\n if (v == null) {\n var osx = window.navigator.userAgent.match(/Mac OS X/);\n\n // Let Ctrl-1..9 pass to the browser (to control tab switching) on\n // non-OS X systems, or if hterm is not opened in an app window.\n v = (!osx && hterm.windowType != 'popup');\n }\n\n terminal.passCtrlNumber = v;\n },\n\n 'pass-meta-number': function(v) {\n if (v == null) {\n var osx = window.navigator.userAgent.match(/Mac OS X/);\n\n // Let Meta-1..9 pass to the browser (to control tab switching) on\n // OS X systems, or if hterm is not opened in an app window.\n v = (osx && hterm.windowType != 'popup');\n }\n\n terminal.passMetaNumber = v;\n },\n\n 'pass-meta-v': function(v) {\n terminal.keyboard.passMetaV = v;\n },\n\n 'receive-encoding': function(v) {\n if (!(/^(utf-8|raw)$/).test(v)) {\n console.warn('Invalid value for \"receive-encoding\": ' + v);\n v = 'utf-8';\n }\n\n terminal.vt.characterEncoding = v;\n },\n\n 'scroll-on-keystroke': function(v) {\n terminal.scrollOnKeystroke_ = v;\n },\n\n 'scroll-on-output': function(v) {\n terminal.scrollOnOutput_ = v;\n },\n\n 'scrollbar-visible': function(v) {\n terminal.setScrollbarVisible(v);\n },\n\n 'scroll-wheel-may-send-arrow-keys': function(v) {\n terminal.scrollWheelArrowKeys_ = v;\n },\n\n 'scroll-wheel-move-multiplier': function(v) {\n terminal.setScrollWheelMoveMultipler(v);\n },\n\n 'send-encoding': function(v) {\n if (!(/^(utf-8|raw)$/).test(v)) {\n console.warn('Invalid value for \"send-encoding\": ' + v);\n v = 'utf-8';\n }\n\n terminal.keyboard.characterEncoding = v;\n },\n\n 'shift-insert-paste': function(v) {\n terminal.keyboard.shiftInsertPaste = v;\n },\n\n 'terminal-encoding': function(v) {\n terminal.vt.setEncoding(v);\n },\n\n 'user-css': function(v) {\n terminal.scrollPort_.setUserCssUrl(v);\n },\n\n 'user-css-text': function(v) {\n terminal.scrollPort_.setUserCssText(v);\n },\n\n 'word-break-match-left': function(v) {\n terminal.primaryScreen_.wordBreakMatchLeft = v;\n terminal.alternateScreen_.wordBreakMatchLeft = v;\n },\n\n 'word-break-match-right': function(v) {\n terminal.primaryScreen_.wordBreakMatchRight = v;\n terminal.alternateScreen_.wordBreakMatchRight = v;\n },\n\n 'word-break-match-middle': function(v) {\n terminal.primaryScreen_.wordBreakMatchMiddle = v;\n terminal.alternateScreen_.wordBreakMatchMiddle = v;\n },\n });\n\n this.prefs_.readStorage(function() {\n this.prefs_.notifyAll();\n\n if (opt_callback)\n opt_callback();\n }.bind(this));\n};\n\n\n/**\n * Returns the preferences manager used for configuring this terminal.\n *\n * @return {hterm.PreferenceManager}\n */\nhterm.Terminal.prototype.getPrefs = function() {\n return this.prefs_;\n};\n\n/**\n * Enable or disable bracketed paste mode.\n *\n * @param {boolean} state The value to set.\n */\nhterm.Terminal.prototype.setBracketedPaste = function(state) {\n this.options_.bracketedPaste = state;\n};\n\n/**\n * Set the color for the cursor.\n *\n * If you want this setting to persist, set it through prefs_, rather than\n * with this method.\n *\n * @param {string} color The color to set.\n */\nhterm.Terminal.prototype.setCursorColor = function(color) {\n this.cursorColor_ = color;\n this.cursorNode_.style.backgroundColor = color;\n this.cursorNode_.style.borderColor = color;\n};\n\n/**\n * Return the current cursor color as a string.\n * @return {string}\n */\nhterm.Terminal.prototype.getCursorColor = function() {\n return this.cursorColor_;\n};\n\n/**\n * Enable or disable mouse based text selection in the terminal.\n *\n * @param {boolean} state The value to set.\n */\nhterm.Terminal.prototype.setSelectionEnabled = function(state) {\n this.enableMouseDragScroll = state;\n};\n\n/**\n * Set the background color.\n *\n * If you want this setting to persist, set it through prefs_, rather than\n * with this method.\n *\n * @param {string} color The color to set.\n */\nhterm.Terminal.prototype.setBackgroundColor = function(color) {\n this.backgroundColor_ = lib.colors.normalizeCSS(color);\n this.primaryScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.alternateScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.scrollPort_.setBackgroundColor(color);\n};\n\n/**\n * Return the current terminal background color.\n *\n * Intended for use by other classes, so we don't have to expose the entire\n * prefs_ object.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getBackgroundColor = function() {\n return this.backgroundColor_;\n};\n\n/**\n * Set the foreground color.\n *\n * If you want this setting to persist, set it through prefs_, rather than\n * with this method.\n *\n * @param {string} color The color to set.\n */\nhterm.Terminal.prototype.setForegroundColor = function(color) {\n this.foregroundColor_ = lib.colors.normalizeCSS(color);\n this.primaryScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.alternateScreen_.textAttributes.setDefaults(\n this.foregroundColor_, this.backgroundColor_);\n this.scrollPort_.setForegroundColor(color);\n};\n\n/**\n * Return the current terminal foreground color.\n *\n * Intended for use by other classes, so we don't have to expose the entire\n * prefs_ object.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getForegroundColor = function() {\n return this.foregroundColor_;\n};\n\n/**\n * Create a new instance of a terminal command and run it with a given\n * argument string.\n *\n * @param {function} commandClass The constructor for a terminal command.\n * @param {string} argString The argument string to pass to the command.\n */\nhterm.Terminal.prototype.runCommandClass = function(commandClass, argString) {\n var environment = this.prefs_.get('environment');\n if (typeof environment != 'object' || environment == null)\n environment = {};\n\n var self = this;\n this.command = new commandClass(\n { argString: argString || '',\n io: this.io.push(),\n environment: environment,\n onExit: function(code) {\n self.io.pop();\n self.uninstallKeyboard();\n if (self.prefs_.get('close-on-exit'))\n window.close();\n }\n });\n\n this.installKeyboard();\n this.command.run();\n};\n\n/**\n * Returns true if the current screen is the primary screen, false otherwise.\n *\n * @return {boolean}\n */\nhterm.Terminal.prototype.isPrimaryScreen = function() {\n return this.screen_ == this.primaryScreen_;\n};\n\n/**\n * Install the keyboard handler for this terminal.\n *\n * This will prevent the browser from seeing any keystrokes sent to the\n * terminal.\n */\nhterm.Terminal.prototype.installKeyboard = function() {\n this.keyboard.installKeyboard(this.scrollPort_.getDocument().body);\n}\n\n/**\n * Uninstall the keyboard handler for this terminal.\n */\nhterm.Terminal.prototype.uninstallKeyboard = function() {\n this.keyboard.installKeyboard(null);\n}\n\n/**\n * Set a CSS variable.\n *\n * Normally this is used to set variables in the hterm namespace.\n *\n * @param {string} name The variable to set.\n * @param {string} value The value to assign to the variable.\n * @param {string?} opt_prefix The variable namespace/prefix to use.\n */\nhterm.Terminal.prototype.setCssVar = function(name, value,\n opt_prefix='--hterm-') {\n this.document_.documentElement.style.setProperty(\n `${opt_prefix}${name}`, value);\n};\n\n/**\n * Set the font size for this terminal.\n *\n * Call setFontSize(0) to reset to the default font size.\n *\n * This function does not modify the font-size preference.\n *\n * @param {number} px The desired font size, in pixels.\n */\nhterm.Terminal.prototype.setFontSize = function(px) {\n if (px === 0)\n px = this.prefs_.get('font-size');\n\n this.scrollPort_.setFontSize(px);\n this.setCssVar('charsize-width', this.scrollPort_.characterSize.width + 'px');\n this.setCssVar('charsize-height',\n this.scrollPort_.characterSize.height + 'px');\n};\n\n/**\n * Get the current font size.\n *\n * @return {number}\n */\nhterm.Terminal.prototype.getFontSize = function() {\n return this.scrollPort_.getFontSize();\n};\n\n/**\n * Get the current font family.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getFontFamily = function() {\n return this.scrollPort_.getFontFamily();\n};\n\n/**\n * Set the CSS \"font-family\" for this terminal.\n */\nhterm.Terminal.prototype.syncFontFamily = function() {\n this.scrollPort_.setFontFamily(this.prefs_.get('font-family'),\n this.prefs_.get('font-smoothing'));\n this.syncBoldSafeState();\n};\n\n/**\n * Set this.mousePasteButton based on the mouse-paste-button pref,\n * autodetecting if necessary.\n */\nhterm.Terminal.prototype.syncMousePasteButton = function() {\n var button = this.prefs_.get('mouse-paste-button');\n if (typeof button == 'number') {\n this.mousePasteButton = button;\n return;\n }\n\n var ary = navigator.userAgent.match(/\\(X11;\\s+(\\S+)/);\n if (!ary || ary[1] == 'CrOS') {\n this.mousePasteButton = 1; // Middle mouse button.\n } else {\n this.mousePasteButton = 2; // Right mouse button.\n }\n};\n\n/**\n * Enable or disable bold based on the enable-bold pref, autodetecting if\n * necessary.\n */\nhterm.Terminal.prototype.syncBoldSafeState = function() {\n var enableBold = this.prefs_.get('enable-bold');\n if (enableBold !== null) {\n this.primaryScreen_.textAttributes.enableBold = enableBold;\n this.alternateScreen_.textAttributes.enableBold = enableBold;\n return;\n }\n\n var normalSize = this.scrollPort_.measureCharacterSize();\n var boldSize = this.scrollPort_.measureCharacterSize('bold');\n\n var isBoldSafe = normalSize.equals(boldSize);\n if (!isBoldSafe) {\n console.warn('Bold characters disabled: Size of bold weight differs ' +\n 'from normal. Font family is: ' +\n this.scrollPort_.getFontFamily());\n }\n\n this.primaryScreen_.textAttributes.enableBold = isBoldSafe;\n this.alternateScreen_.textAttributes.enableBold = isBoldSafe;\n};\n\n/**\n * Enable or disable blink based on the enable-blink pref.\n */\nhterm.Terminal.prototype.syncBlinkState = function() {\n this.setCssVar('node-duration',\n this.prefs_.get('enable-blink') ? '0.7s' : '0');\n};\n\n/**\n * Set the mouse cursor style based on the current terminal mode.\n */\nhterm.Terminal.prototype.syncMouseStyle = function() {\n this.setCssVar('mouse-cursor-style',\n this.vt.mouseReport == this.vt.MOUSE_REPORT_DISABLED ?\n 'var(--hterm-mouse-cursor-text)' :\n 'var(--hterm-mouse-cursor-pointer)');\n};\n\n/**\n * Return a copy of the current cursor position.\n *\n * @return {hterm.RowCol} The RowCol object representing the current position.\n */\nhterm.Terminal.prototype.saveCursor = function() {\n return this.screen_.cursorPosition.clone();\n};\n\n/**\n * Return the current text attributes.\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getTextAttributes = function() {\n return this.screen_.textAttributes;\n};\n\n/**\n * Set the text attributes.\n *\n * @param {string} textAttributes The attributes to set.\n */\nhterm.Terminal.prototype.setTextAttributes = function(textAttributes) {\n this.screen_.textAttributes = textAttributes;\n};\n\n/**\n * Return the current browser zoom factor applied to the terminal.\n *\n * @return {number} The current browser zoom factor.\n */\nhterm.Terminal.prototype.getZoomFactor = function() {\n return this.scrollPort_.characterSize.zoomFactor;\n};\n\n/**\n * Change the title of this terminal's window.\n *\n * @param {string} title The title to set.\n */\nhterm.Terminal.prototype.setWindowTitle = function(title) {\n window.document.title = title;\n};\n\n/**\n * Restore a previously saved cursor position.\n *\n * @param {hterm.RowCol} cursor The position to restore.\n */\nhterm.Terminal.prototype.restoreCursor = function(cursor) {\n var row = lib.f.clamp(cursor.row, 0, this.screenSize.height - 1);\n var column = lib.f.clamp(cursor.column, 0, this.screenSize.width - 1);\n this.screen_.setCursorPosition(row, column);\n if (cursor.column > column ||\n cursor.column == column && cursor.overflow) {\n this.screen_.cursorPosition.overflow = true;\n }\n};\n\n/**\n * Clear the cursor's overflow flag.\n */\nhterm.Terminal.prototype.clearCursorOverflow = function() {\n this.screen_.cursorPosition.overflow = false;\n};\n\n/**\n * Sets the cursor shape\n *\n * @param {string} shape The shape to set.\n */\nhterm.Terminal.prototype.setCursorShape = function(shape) {\n this.cursorShape_ = shape;\n this.restyleCursor_();\n}\n\n/**\n * Get the cursor shape\n *\n * @return {string}\n */\nhterm.Terminal.prototype.getCursorShape = function() {\n return this.cursorShape_;\n}\n\n/**\n * Set the width of the terminal, resizing the UI to match.\n *\n * @param {number} columnCount\n */\nhterm.Terminal.prototype.setWidth = function(columnCount) {\n if (columnCount == null) {\n this.div_.style.width = '100%';\n return;\n }\n\n this.div_.style.width = Math.ceil(\n this.scrollPort_.characterSize.width *\n columnCount + this.scrollPort_.currentScrollbarWidthPx) + 'px';\n this.realizeSize_(columnCount, this.screenSize.height);\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Set the height of the terminal, resizing the UI to match.\n *\n * @param {number} rowCount The height in rows.\n */\nhterm.Terminal.prototype.setHeight = function(rowCount) {\n if (rowCount == null) {\n this.div_.style.height = '100%';\n return;\n }\n\n this.div_.style.height =\n this.scrollPort_.characterSize.height * rowCount + 'px';\n this.realizeSize_(this.screenSize.width, rowCount);\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Deal with terminal size changes.\n *\n * @param {number} columnCount The number of columns.\n * @param {number} rowCount The number of rows.\n */\nhterm.Terminal.prototype.realizeSize_ = function(columnCount, rowCount) {\n if (columnCount != this.screenSize.width)\n this.realizeWidth_(columnCount);\n\n if (rowCount != this.screenSize.height)\n this.realizeHeight_(rowCount);\n\n // Send new terminal size to plugin.\n this.io.onTerminalResize_(columnCount, rowCount);\n};\n\n/**\n * Deal with terminal width changes.\n *\n * This function does what needs to be done when the terminal width changes\n * out from under us. It happens here rather than in onResize_() because this\n * code may need to run synchronously to handle programmatic changes of\n * terminal width.\n *\n * Relying on the browser to send us an async resize event means we may not be\n * in the correct state yet when the next escape sequence hits.\n *\n * @param {number} columnCount The number of columns.\n */\nhterm.Terminal.prototype.realizeWidth_ = function(columnCount) {\n if (columnCount <= 0)\n throw new Error('Attempt to realize bad width: ' + columnCount);\n\n var deltaColumns = columnCount - this.screen_.getWidth();\n\n this.screenSize.width = columnCount;\n this.screen_.setColumnCount(columnCount);\n\n if (deltaColumns > 0) {\n if (this.defaultTabStops)\n this.setDefaultTabStops(this.screenSize.width - deltaColumns);\n } else {\n for (var i = this.tabStops_.length - 1; i >= 0; i--) {\n if (this.tabStops_[i] < columnCount)\n break;\n\n this.tabStops_.pop();\n }\n }\n\n this.screen_.setColumnCount(this.screenSize.width);\n};\n\n/**\n * Deal with terminal height changes.\n *\n * This function does what needs to be done when the terminal height changes\n * out from under us. It happens here rather than in onResize_() because this\n * code may need to run synchronously to handle programmatic changes of\n * terminal height.\n *\n * Relying on the browser to send us an async resize event means we may not be\n * in the correct state yet when the next escape sequence hits.\n *\n * @param {number} rowCount The number of rows.\n */\nhterm.Terminal.prototype.realizeHeight_ = function(rowCount) {\n if (rowCount <= 0)\n throw new Error('Attempt to realize bad height: ' + rowCount);\n\n var deltaRows = rowCount - this.screen_.getHeight();\n\n this.screenSize.height = rowCount;\n\n var cursor = this.saveCursor();\n\n if (deltaRows < 0) {\n // Screen got smaller.\n deltaRows *= -1;\n while (deltaRows) {\n var lastRow = this.getRowCount() - 1;\n if (lastRow - this.scrollbackRows_.length == cursor.row)\n break;\n\n if (this.getRowText(lastRow))\n break;\n\n this.screen_.popRow();\n deltaRows--;\n }\n\n var ary = this.screen_.shiftRows(deltaRows);\n this.scrollbackRows_.push.apply(this.scrollbackRows_, ary);\n\n // We just removed rows from the top of the screen, we need to update\n // the cursor to match.\n cursor.row = Math.max(cursor.row - deltaRows, 0);\n } else if (deltaRows > 0) {\n // Screen got larger.\n\n if (deltaRows <= this.scrollbackRows_.length) {\n var scrollbackCount = Math.min(deltaRows, this.scrollbackRows_.length);\n var rows = this.scrollbackRows_.splice(\n this.scrollbackRows_.length - scrollbackCount, scrollbackCount);\n this.screen_.unshiftRows(rows);\n deltaRows -= scrollbackCount;\n cursor.row += scrollbackCount;\n }\n\n if (deltaRows)\n this.appendRows_(deltaRows);\n }\n\n this.setVTScrollRegion(null, null);\n this.restoreCursor(cursor);\n};\n\n/**\n * Scroll the terminal to the top of the scrollback buffer.\n */\nhterm.Terminal.prototype.scrollHome = function() {\n this.scrollPort_.scrollRowToTop(0);\n};\n\n/**\n * Scroll the terminal to the end.\n */\nhterm.Terminal.prototype.scrollEnd = function() {\n this.scrollPort_.scrollRowToBottom(this.getRowCount());\n};\n\n/**\n * Scroll the terminal one page up (minus one line) relative to the current\n * position.\n */\nhterm.Terminal.prototype.scrollPageUp = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i - this.screenSize.height + 1);\n};\n\n/**\n * Scroll the terminal one page down (minus one line) relative to the current\n * position.\n */\nhterm.Terminal.prototype.scrollPageDown = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i + this.screenSize.height - 1);\n};\n\n/**\n * Scroll the terminal one line up relative to the current position.\n */\nhterm.Terminal.prototype.scrollLineUp = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i - 1);\n};\n\n/**\n * Scroll the terminal one line down relative to the current position.\n */\nhterm.Terminal.prototype.scrollLineDown = function() {\n var i = this.scrollPort_.getTopRowIndex();\n this.scrollPort_.scrollRowToTop(i + 1);\n};\n\n/**\n * Clear primary screen, secondary screen, and the scrollback buffer.\n */\nhterm.Terminal.prototype.wipeContents = function() {\n this.scrollbackRows_.length = 0;\n this.scrollPort_.resetCache();\n\n [this.primaryScreen_, this.alternateScreen_].forEach(function(screen) {\n var bottom = screen.getHeight();\n if (bottom > 0) {\n this.renumberRows_(0, bottom);\n this.clearHome(screen);\n }\n }.bind(this));\n\n this.syncCursorPosition_();\n this.scrollPort_.invalidate();\n};\n\n/**\n * Full terminal reset.\n */\nhterm.Terminal.prototype.reset = function() {\n this.clearAllTabStops();\n this.setDefaultTabStops();\n\n this.clearHome(this.primaryScreen_);\n this.primaryScreen_.textAttributes.reset();\n\n this.clearHome(this.alternateScreen_);\n this.alternateScreen_.textAttributes.reset();\n\n this.setCursorBlink(!!this.prefs_.get('cursor-blink'));\n\n this.vt.reset();\n\n this.softReset();\n};\n\n/**\n * Soft terminal reset.\n *\n * Perform a soft reset to the default values listed in\n * http://www.vt100.net/docs/vt510-rm/DECSTR#T5-9\n */\nhterm.Terminal.prototype.softReset = function() {\n // Reset terminal options to their default values.\n this.options_ = new hterm.Options();\n\n // We show the cursor on soft reset but do not alter the blink state.\n this.options_.cursorBlink = !!this.timeouts_.cursorBlink;\n\n // Xterm also resets the color palette on soft reset, even though it doesn't\n // seem to be documented anywhere.\n this.primaryScreen_.textAttributes.resetColorPalette();\n this.alternateScreen_.textAttributes.resetColorPalette();\n\n // The xterm man page explicitly says this will happen on soft reset.\n this.setVTScrollRegion(null, null);\n\n // Xterm also shows the cursor on soft reset, but does not alter the blink\n // state.\n this.setCursorVisible(true);\n};\n\n/**\n * Move the cursor forward to the next tab stop, or to the last column\n * if no more tab stops are set.\n */\nhterm.Terminal.prototype.forwardTabStop = function() {\n var column = this.screen_.cursorPosition.column;\n\n for (var i = 0; i < this.tabStops_.length; i++) {\n if (this.tabStops_[i] > column) {\n this.setCursorColumn(this.tabStops_[i]);\n return;\n }\n }\n\n // xterm does not clear the overflow flag on HT or CHT.\n var overflow = this.screen_.cursorPosition.overflow;\n this.setCursorColumn(this.screenSize.width - 1);\n this.screen_.cursorPosition.overflow = overflow;\n};\n\n/**\n * Move the cursor backward to the previous tab stop, or to the first column\n * if no previous tab stops are set.\n */\nhterm.Terminal.prototype.backwardTabStop = function() {\n var column = this.screen_.cursorPosition.column;\n\n for (var i = this.tabStops_.length - 1; i >= 0; i--) {\n if (this.tabStops_[i] < column) {\n this.setCursorColumn(this.tabStops_[i]);\n return;\n }\n }\n\n this.setCursorColumn(1);\n};\n\n/**\n * Set a tab stop at the given column.\n *\n * @param {integer} column Zero based column.\n */\nhterm.Terminal.prototype.setTabStop = function(column) {\n for (var i = this.tabStops_.length - 1; i >= 0; i--) {\n if (this.tabStops_[i] == column)\n return;\n\n if (this.tabStops_[i] < column) {\n this.tabStops_.splice(i + 1, 0, column);\n return;\n }\n }\n\n this.tabStops_.splice(0, 0, column);\n};\n\n/**\n * Clear the tab stop at the current cursor position.\n *\n * No effect if there is no tab stop at the current cursor position.\n */\nhterm.Terminal.prototype.clearTabStopAtCursor = function() {\n var column = this.screen_.cursorPosition.column;\n\n var i = this.tabStops_.indexOf(column);\n if (i == -1)\n return;\n\n this.tabStops_.splice(i, 1);\n};\n\n/**\n * Clear all tab stops.\n */\nhterm.Terminal.prototype.clearAllTabStops = function() {\n this.tabStops_.length = 0;\n this.defaultTabStops = false;\n};\n\n/**\n * Set up the default tab stops, starting from a given column.\n *\n * This sets a tabstop every (column % this.tabWidth) column, starting\n * from the specified column, or 0 if no column is provided. It also flags\n * future resizes to set them up.\n *\n * This does not clear the existing tab stops first, use clearAllTabStops\n * for that.\n *\n * @param {integer} opt_start Optional starting zero based starting column, useful\n * for filling out missing tab stops when the terminal is resized.\n */\nhterm.Terminal.prototype.setDefaultTabStops = function(opt_start) {\n var start = opt_start || 0;\n var w = this.tabWidth;\n // Round start up to a default tab stop.\n start = start - 1 - ((start - 1) % w) + w;\n for (var i = start; i < this.screenSize.width; i += w) {\n this.setTabStop(i);\n }\n\n this.defaultTabStops = true;\n};\n\n/**\n * Interpret a sequence of characters.\n *\n * Incomplete escape sequences are buffered until the next call.\n *\n * @param {string} str Sequence of characters to interpret or pass through.\n */\nhterm.Terminal.prototype.interpret = function(str) {\n this.vt.interpret(str);\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Take over the given DIV for use as the terminal display.\n *\n * @param {HTMLDivElement} div The div to use as the terminal display.\n */\nhterm.Terminal.prototype.decorate = function(div) {\n this.div_ = div;\n\n this.scrollPort_.decorate(div);\n this.scrollPort_.setBackgroundImage(this.prefs_.get('background-image'));\n this.scrollPort_.setBackgroundSize(this.prefs_.get('background-size'));\n this.scrollPort_.setBackgroundPosition(\n this.prefs_.get('background-position'));\n this.scrollPort_.setUserCssUrl(this.prefs_.get('user-css'));\n this.scrollPort_.setUserCssText(this.prefs_.get('user-css-text'));\n\n this.div_.focus = this.focus.bind(this);\n\n this.setFontSize(this.prefs_.get('font-size'));\n this.syncFontFamily();\n\n this.setScrollbarVisible(this.prefs_.get('scrollbar-visible'));\n this.setScrollWheelMoveMultipler(\n this.prefs_.get('scroll-wheel-move-multiplier'));\n\n this.document_ = this.scrollPort_.getDocument();\n\n this.document_.body.oncontextmenu = function() { return false; };\n\n var onMouse = this.onMouse_.bind(this);\n var screenNode = this.scrollPort_.getScreenNode();\n screenNode.addEventListener('mousedown', onMouse);\n screenNode.addEventListener('mouseup', onMouse);\n screenNode.addEventListener('mousemove', onMouse);\n this.scrollPort_.onScrollWheel = onMouse;\n\n screenNode.addEventListener(\n 'focus', this.onFocusChange_.bind(this, true));\n // Listen for mousedown events on the screenNode as in FF the focus\n // events don't bubble.\n screenNode.addEventListener('mousedown', function() {\n setTimeout(this.onFocusChange_.bind(this, true));\n }.bind(this));\n\n screenNode.addEventListener(\n 'blur', this.onFocusChange_.bind(this, false));\n\n var style = this.document_.createElement('style');\n style.textContent =\n ('.cursor-node[focus=\"false\"] {' +\n ' box-sizing: border-box;' +\n ' background-color: transparent !important;' +\n ' border-width: 2px;' +\n ' border-style: solid;' +\n '}' +\n '.wc-node {' +\n ' display: inline-block;' +\n ' text-align: center;' +\n ' width: calc(var(--hterm-charsize-width) * 2);' +\n ' line-height: var(--hterm-charsize-height);' +\n '}' +\n ':root {' +\n ' --hterm-charsize-width: ' + this.scrollPort_.characterSize.width + 'px;' +\n ' --hterm-charsize-height: ' + this.scrollPort_.characterSize.height + 'px;' +\n ' --hterm-cursor-offset-col: 0;' +\n ' --hterm-cursor-offset-row: 0;' +\n ' --hterm-blink-node-duration: 0.7s;' +\n ' --hterm-mouse-cursor-text: text;' +\n ' --hterm-mouse-cursor-pointer: default;' +\n ' --hterm-mouse-cursor-style: var(--hterm-mouse-cursor-text);' +\n '}' +\n '@keyframes blink {' +\n ' from { opacity: 1.0; }' +\n ' to { opacity: 0.0; }' +\n '}' +\n '.blink-node {' +\n ' animation-name: blink;' +\n ' animation-duration: var(--hterm-blink-node-duration);' +\n ' animation-iteration-count: infinite;' +\n ' animation-timing-function: ease-in-out;' +\n ' animation-direction: alternate;' +\n '}');\n this.document_.head.appendChild(style);\n\n this.cursorNode_ = this.document_.createElement('div');\n this.cursorNode_.id = 'hterm:terminal-cursor';\n this.cursorNode_.className = 'cursor-node';\n this.cursorNode_.style.cssText =\n ('position: absolute;' +\n 'left: calc(var(--hterm-charsize-width) * var(--hterm-cursor-offset-col));' +\n 'top: calc(var(--hterm-charsize-height) * var(--hterm-cursor-offset-row));' +\n 'display: block;' +\n 'width: var(--hterm-charsize-width);' +\n 'height: var(--hterm-charsize-height);' +\n '-webkit-transition: opacity, background-color 100ms linear;' +\n '-moz-transition: opacity, background-color 100ms linear;');\n\n this.setCursorColor(this.prefs_.get('cursor-color'));\n this.setCursorBlink(!!this.prefs_.get('cursor-blink'));\n this.restyleCursor_();\n\n this.document_.body.appendChild(this.cursorNode_);\n\n // When 'enableMouseDragScroll' is off we reposition this element directly\n // under the mouse cursor after a click. This makes Chrome associate\n // subsequent mousemove events with the scroll-blocker. Since the\n // scroll-blocker is a peer (not a child) of the scrollport, the mousemove\n // events do not cause the scrollport to scroll.\n //\n // It's a hack, but it's the cleanest way I could find.\n this.scrollBlockerNode_ = this.document_.createElement('div');\n this.scrollBlockerNode_.id = 'hterm:mouse-drag-scroll-blocker';\n this.scrollBlockerNode_.style.cssText =\n ('position: absolute;' +\n 'top: -99px;' +\n 'display: block;' +\n 'width: 10px;' +\n 'height: 10px;');\n this.document_.body.appendChild(this.scrollBlockerNode_);\n\n this.scrollPort_.onScrollWheel = onMouse;\n ['mousedown', 'mouseup', 'mousemove', 'click', 'dblclick',\n ].forEach(function(event) {\n this.scrollBlockerNode_.addEventListener(event, onMouse);\n this.cursorNode_.addEventListener(event, onMouse);\n this.document_.addEventListener(event, onMouse);\n }.bind(this));\n\n this.cursorNode_.addEventListener('mousedown', function() {\n setTimeout(this.focus.bind(this));\n }.bind(this));\n\n this.setReverseVideo(false);\n\n this.scrollPort_.focus();\n this.scrollPort_.scheduleRedraw();\n};\n\n/**\n * Return the HTML document that contains the terminal DOM nodes.\n *\n * @return {HTMLDocument}\n */\nhterm.Terminal.prototype.getDocument = function() {\n return this.document_;\n};\n\n/**\n * Focus the terminal.\n */\nhterm.Terminal.prototype.focus = function() {\n this.scrollPort_.focus();\n};\n\n/**\n * Return the HTML Element for a given row index.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to fetch rows on demand as they are scrolled into view.\n *\n * TODO(rginda): Consider saving scrollback rows as (HTML source, text content)\n * pairs to conserve memory.\n *\n * @param {integer} index The zero-based row index, measured relative to the\n * start of the scrollback buffer. On-screen rows will always have the\n * largest indices.\n * @return {HTMLElement} The 'x-row' element containing for the requested row.\n */\nhterm.Terminal.prototype.getRowNode = function(index) {\n if (index < this.scrollbackRows_.length)\n return this.scrollbackRows_[index];\n\n var screenIndex = index - this.scrollbackRows_.length;\n return this.screen_.rowsArray[screenIndex];\n};\n\n/**\n * Return the text content for a given range of rows.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to fetch text content on demand when the user attempts to copy their\n * selection to the clipboard.\n *\n * @param {integer} start The zero-based row index to start from, measured\n * relative to the start of the scrollback buffer. On-screen rows will\n * always have the largest indices.\n * @param {integer} end The zero-based row index to end on, measured\n * relative to the start of the scrollback buffer.\n * @return {string} A single string containing the text value of the range of\n * rows. Lines will be newline delimited, with no trailing newline.\n */\nhterm.Terminal.prototype.getRowsText = function(start, end) {\n var ary = [];\n for (var i = start; i < end; i++) {\n var node = this.getRowNode(i);\n ary.push(node.textContent);\n if (i < end - 1 && !node.getAttribute('line-overflow'))\n ary.push('\\n');\n }\n\n return ary.join('');\n};\n\n/**\n * Return the text content for a given row.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to fetch text content on demand when the user attempts to copy their\n * selection to the clipboard.\n *\n * @param {integer} index The zero-based row index to return, measured\n * relative to the start of the scrollback buffer. On-screen rows will\n * always have the largest indices.\n * @return {string} A string containing the text value of the selected row.\n */\nhterm.Terminal.prototype.getRowText = function(index) {\n var node = this.getRowNode(index);\n return node.textContent;\n};\n\n/**\n * Return the total number of rows in the addressable screen and in the\n * scrollback buffer of this terminal.\n *\n * This is a method from the RowProvider interface. The ScrollPort uses\n * it to compute the size of the scrollbar.\n *\n * @return {integer} The number of rows in this terminal.\n */\nhterm.Terminal.prototype.getRowCount = function() {\n return this.scrollbackRows_.length + this.screen_.rowsArray.length;\n};\n\n/**\n * Create DOM nodes for new rows and append them to the end of the terminal.\n *\n * This is the only correct way to add a new DOM node for a row. Notice that\n * the new row is appended to the bottom of the list of rows, and does not\n * require renumbering (of the rowIndex property) of previous rows.\n *\n * If you think you want a new blank row somewhere in the middle of the\n * terminal, look into moveRows_().\n *\n * This method does not pay attention to vtScrollTop/Bottom, since you should\n * be using moveRows() in cases where they would matter.\n *\n * The cursor will be positioned at column 0 of the first inserted line.\n *\n * @param {number} count The number of rows to created.\n */\nhterm.Terminal.prototype.appendRows_ = function(count) {\n var cursorRow = this.screen_.rowsArray.length;\n var offset = this.scrollbackRows_.length + cursorRow;\n for (var i = 0; i < count; i++) {\n var row = this.document_.createElement('x-row');\n row.appendChild(this.document_.createTextNode(''));\n row.rowIndex = offset + i;\n this.screen_.pushRow(row);\n }\n\n var extraRows = this.screen_.rowsArray.length - this.screenSize.height;\n if (extraRows > 0) {\n var ary = this.screen_.shiftRows(extraRows);\n Array.prototype.push.apply(this.scrollbackRows_, ary);\n if (this.scrollPort_.isScrolledEnd)\n this.scheduleScrollDown_();\n }\n\n if (cursorRow >= this.screen_.rowsArray.length)\n cursorRow = this.screen_.rowsArray.length - 1;\n\n this.setAbsoluteCursorPosition(cursorRow, 0);\n};\n\n/**\n * Relocate rows from one part of the addressable screen to another.\n *\n * This is used to recycle rows during VT scrolls (those which are driven\n * by VT commands, rather than by the user manipulating the scrollbar.)\n *\n * In this case, the blank lines scrolled into the scroll region are made of\n * the nodes we scrolled off. These have their rowIndex properties carefully\n * renumbered so as not to confuse the ScrollPort.\n *\n * @param {number} fromIndex The start index.\n * @param {number} count The number of rows to move.\n * @param {number} toIndex The destination index.\n */\nhterm.Terminal.prototype.moveRows_ = function(fromIndex, count, toIndex) {\n var ary = this.screen_.removeRows(fromIndex, count);\n this.screen_.insertRows(toIndex, ary);\n\n var start, end;\n if (fromIndex < toIndex) {\n start = fromIndex;\n end = toIndex + count;\n } else {\n start = toIndex;\n end = fromIndex + count;\n }\n\n this.renumberRows_(start, end);\n this.scrollPort_.scheduleInvalidate();\n};\n\n/**\n * Renumber the rowIndex property of the given range of rows.\n *\n * The start and end indices are relative to the screen, not the scrollback.\n * Rows in the scrollback buffer cannot be renumbered. Since they are not\n * addressable (you can't delete them, scroll them, etc), you should have\n * no need to renumber scrollback rows.\n *\n * @param {number} start The start index.\n * @param {number} end The end index.\n * @param {hterm.Screen} opt_screen The screen to renumber.\n */\nhterm.Terminal.prototype.renumberRows_ = function(start, end, opt_screen) {\n var screen = opt_screen || this.screen_;\n\n var offset = this.scrollbackRows_.length;\n for (var i = start; i < end; i++) {\n screen.rowsArray[i].rowIndex = offset + i;\n }\n};\n\n/**\n * Print a string to the terminal.\n *\n * This respects the current insert and wraparound modes. It will add new lines\n * to the end of the terminal, scrolling off the top into the scrollback buffer\n * if necessary.\n *\n * The string is *not* parsed for escape codes. Use the interpret() method if\n * that's what you're after.\n *\n * @param{string} str The string to print.\n */\nhterm.Terminal.prototype.print = function(str) {\n var startOffset = 0;\n\n var strWidth = lib.wc.strWidth(str);\n\n while (startOffset < strWidth) {\n if (this.options_.wraparound && this.screen_.cursorPosition.overflow) {\n this.screen_.commitLineOverflow();\n this.newLine();\n }\n\n var count = strWidth - startOffset;\n var didOverflow = false;\n var substr;\n\n if (this.screen_.cursorPosition.column + count >= this.screenSize.width) {\n didOverflow = true;\n count = this.screenSize.width - this.screen_.cursorPosition.column;\n }\n\n if (didOverflow && !this.options_.wraparound) {\n // If the string overflowed the line but wraparound is off, then the\n // last printed character should be the last of the string.\n // TODO: This will add to our problems with multibyte UTF-16 characters.\n substr = lib.wc.substr(str, startOffset, count - 1) +\n lib.wc.substr(str, strWidth - 1);\n count = strWidth;\n } else {\n substr = lib.wc.substr(str, startOffset, count);\n }\n\n var tokens = hterm.TextAttributes.splitWidecharString(substr);\n for (var i = 0; i < tokens.length; i++) {\n this.screen_.textAttributes.wcNode = tokens[i].wcNode;\n this.screen_.textAttributes.asciiNode = tokens[i].asciiNode;\n\n if (this.options_.insertMode) {\n this.screen_.insertString(tokens[i].str);\n } else {\n this.screen_.overwriteString(tokens[i].str);\n }\n this.screen_.textAttributes.wcNode = false;\n this.screen_.textAttributes.asciiNode = true;\n }\n\n this.screen_.maybeClipCurrentRow();\n startOffset += count;\n }\n\n this.scheduleSyncCursorPosition_();\n\n if (this.scrollOnOutput_)\n this.scrollPort_.scrollRowToBottom(this.getRowCount());\n};\n\n/**\n * Set the VT scroll region.\n *\n * This also resets the cursor position to the absolute (0, 0) position, since\n * that's what xterm appears to do.\n *\n * Setting the scroll region to the full height of the terminal will clear\n * the scroll region. This is *NOT* what most terminals do. We're explicitly\n * going \"off-spec\" here because it makes `screen` and `tmux` overflow into the\n * local scrollback buffer, which means the scrollbars and shift-pgup/pgdn\n * continue to work as most users would expect.\n *\n * @param {integer} scrollTop The zero-based top of the scroll region.\n * @param {integer} scrollBottom The zero-based bottom of the scroll region,\n * inclusive.\n */\nhterm.Terminal.prototype.setVTScrollRegion = function(scrollTop, scrollBottom) {\n if (scrollTop == 0 && scrollBottom == this.screenSize.height - 1) {\n this.vtScrollTop_ = null;\n this.vtScrollBottom_ = null;\n } else {\n this.vtScrollTop_ = scrollTop;\n this.vtScrollBottom_ = scrollBottom;\n }\n};\n\n/**\n * Return the top row index according to the VT.\n *\n * This will return 0 unless the terminal has been told to restrict scrolling\n * to some lower row. It is used for some VT cursor positioning and scrolling\n * commands.\n *\n * @return {integer} The topmost row in the terminal's scroll region.\n */\nhterm.Terminal.prototype.getVTScrollTop = function() {\n if (this.vtScrollTop_ != null)\n return this.vtScrollTop_;\n\n return 0;\n};\n\n/**\n * Return the bottom row index according to the VT.\n *\n * This will return the height of the terminal unless the it has been told to\n * restrict scrolling to some higher row. It is used for some VT cursor\n * positioning and scrolling commands.\n *\n * @return {integer} The bottom most row in the terminal's scroll region.\n */\nhterm.Terminal.prototype.getVTScrollBottom = function() {\n if (this.vtScrollBottom_ != null)\n return this.vtScrollBottom_;\n\n return this.screenSize.height - 1;\n}\n\n/**\n * Process a '\\n' character.\n *\n * If the cursor is on the final row of the terminal this will append a new\n * blank row to the screen and scroll the topmost row into the scrollback\n * buffer.\n *\n * Otherwise, this moves the cursor to column zero of the next row.\n */\nhterm.Terminal.prototype.newLine = function() {\n var cursorAtEndOfScreen = (this.screen_.cursorPosition.row ==\n this.screen_.rowsArray.length - 1);\n\n if (this.vtScrollBottom_ != null) {\n // A VT Scroll region is active, we never append new rows.\n if (this.screen_.cursorPosition.row == this.vtScrollBottom_) {\n // We're at the end of the VT Scroll Region, perform a VT scroll.\n this.vtScrollUp(1);\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row, 0);\n } else if (cursorAtEndOfScreen) {\n // We're at the end of the screen, the only thing to do is put the\n // cursor to column 0.\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row, 0);\n } else {\n // Anywhere else, advance the cursor row, and reset the column.\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row + 1, 0);\n }\n } else if (cursorAtEndOfScreen) {\n // We're at the end of the screen. Append a new row to the terminal,\n // shifting the top row into the scrollback.\n this.appendRows_(1);\n } else {\n // Anywhere else in the screen just moves the cursor.\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row + 1, 0);\n }\n};\n\n/**\n * Like newLine(), except maintain the cursor column.\n */\nhterm.Terminal.prototype.lineFeed = function() {\n var column = this.screen_.cursorPosition.column;\n this.newLine();\n this.setCursorColumn(column);\n};\n\n/**\n * If autoCarriageReturn is set then newLine(), else lineFeed().\n */\nhterm.Terminal.prototype.formFeed = function() {\n if (this.options_.autoCarriageReturn) {\n this.newLine();\n } else {\n this.lineFeed();\n }\n};\n\n/**\n * Move the cursor up one row, possibly inserting a blank line.\n *\n * The cursor column is not changed.\n */\nhterm.Terminal.prototype.reverseLineFeed = function() {\n var scrollTop = this.getVTScrollTop();\n var currentRow = this.screen_.cursorPosition.row;\n\n if (currentRow == scrollTop) {\n this.insertLines(1);\n } else {\n this.setAbsoluteCursorRow(currentRow - 1);\n }\n};\n\n/**\n * Replace all characters to the left of the current cursor with the space\n * character.\n *\n * TODO(rginda): This should probably *remove* the characters (not just replace\n * with a space) if there are no characters at or beyond the current cursor\n * position.\n */\nhterm.Terminal.prototype.eraseToLeft = function() {\n var cursor = this.saveCursor();\n this.setCursorColumn(0);\n this.screen_.overwriteString(lib.f.getWhitespace(cursor.column + 1));\n this.restoreCursor(cursor);\n};\n\n/**\n * Erase a given number of characters to the right of the cursor.\n *\n * The cursor position is unchanged.\n *\n * If the current background color is not the default background color this\n * will insert spaces rather than delete. This is unfortunate because the\n * trailing space will affect text selection, but it's difficult to come up\n * with a way to style empty space that wouldn't trip up the hterm.Screen\n * code.\n *\n * eraseToRight is ignored in the presence of a cursor overflow. This deviates\n * from xterm, but agrees with gnome-terminal and konsole, xfce4-terminal. See\n * crbug.com/232390 for details.\n *\n * @param {number} opt_count The number of characters to erase.\n */\nhterm.Terminal.prototype.eraseToRight = function(opt_count) {\n if (this.screen_.cursorPosition.overflow)\n return;\n\n var maxCount = this.screenSize.width - this.screen_.cursorPosition.column;\n var count = opt_count ? Math.min(opt_count, maxCount) : maxCount;\n\n if (this.screen_.textAttributes.background ===\n this.screen_.textAttributes.DEFAULT_COLOR) {\n var cursorRow = this.screen_.rowsArray[this.screen_.cursorPosition.row];\n if (hterm.TextAttributes.nodeWidth(cursorRow) <=\n this.screen_.cursorPosition.column + count) {\n this.screen_.deleteChars(count);\n this.clearCursorOverflow();\n return;\n }\n }\n\n var cursor = this.saveCursor();\n this.screen_.overwriteString(lib.f.getWhitespace(count));\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Erase the current line.\n *\n * The cursor position is unchanged.\n */\nhterm.Terminal.prototype.eraseLine = function() {\n var cursor = this.saveCursor();\n this.screen_.clearCursorRow();\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Erase all characters from the start of the screen to the current cursor\n * position, regardless of scroll region.\n *\n * The cursor position is unchanged.\n */\nhterm.Terminal.prototype.eraseAbove = function() {\n var cursor = this.saveCursor();\n\n this.eraseToLeft();\n\n for (var i = 0; i < cursor.row; i++) {\n this.setAbsoluteCursorPosition(i, 0);\n this.screen_.clearCursorRow();\n }\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Erase all characters from the current cursor position to the end of the\n * screen, regardless of scroll region.\n *\n * The cursor position is unchanged.\n */\nhterm.Terminal.prototype.eraseBelow = function() {\n var cursor = this.saveCursor();\n\n this.eraseToRight();\n\n var bottom = this.screenSize.height - 1;\n for (var i = cursor.row + 1; i <= bottom; i++) {\n this.setAbsoluteCursorPosition(i, 0);\n this.screen_.clearCursorRow();\n }\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Fill the terminal with a given character.\n *\n * This methods does not respect the VT scroll region.\n *\n * @param {string} ch The character to use for the fill.\n */\nhterm.Terminal.prototype.fill = function(ch) {\n var cursor = this.saveCursor();\n\n this.setAbsoluteCursorPosition(0, 0);\n for (var row = 0; row < this.screenSize.height; row++) {\n for (var col = 0; col < this.screenSize.width; col++) {\n this.setAbsoluteCursorPosition(row, col);\n this.screen_.overwriteString(ch);\n }\n }\n\n this.restoreCursor(cursor);\n};\n\n/**\n * Erase the entire display and leave the cursor at (0, 0).\n *\n * This does not respect the scroll region.\n *\n * @param {hterm.Screen} opt_screen Optional screen to operate on. Defaults\n * to the current screen.\n */\nhterm.Terminal.prototype.clearHome = function(opt_screen) {\n var screen = opt_screen || this.screen_;\n var bottom = screen.getHeight();\n\n if (bottom == 0) {\n // Empty screen, nothing to do.\n return;\n }\n\n for (var i = 0; i < bottom; i++) {\n screen.setCursorPosition(i, 0);\n screen.clearCursorRow();\n }\n\n screen.setCursorPosition(0, 0);\n};\n\n/**\n * Erase the entire display without changing the cursor position.\n *\n * The cursor position is unchanged. This does not respect the scroll\n * region.\n *\n * @param {hterm.Screen} opt_screen Optional screen to operate on. Defaults\n * to the current screen.\n */\nhterm.Terminal.prototype.clear = function(opt_screen) {\n var screen = opt_screen || this.screen_;\n var cursor = screen.cursorPosition.clone();\n this.clearHome(screen);\n screen.setCursorPosition(cursor.row, cursor.column);\n};\n\n/**\n * VT command to insert lines at the current cursor row.\n *\n * This respects the current scroll region. Rows pushed off the bottom are\n * lost (they won't show up in the scrollback buffer).\n *\n * @param {integer} count The number of lines to insert.\n */\nhterm.Terminal.prototype.insertLines = function(count) {\n var cursorRow = this.screen_.cursorPosition.row;\n\n var bottom = this.getVTScrollBottom();\n count = Math.min(count, bottom - cursorRow);\n\n // The moveCount is the number of rows we need to relocate to make room for\n // the new row(s). The count is the distance to move them.\n var moveCount = bottom - cursorRow - count + 1;\n if (moveCount)\n this.moveRows_(cursorRow, moveCount, cursorRow + count);\n\n for (var i = count - 1; i >= 0; i--) {\n this.setAbsoluteCursorPosition(cursorRow + i, 0);\n this.screen_.clearCursorRow();\n }\n};\n\n/**\n * VT command to delete lines at the current cursor row.\n *\n * New rows are added to the bottom of scroll region to take their place. New\n * rows are strictly there to take up space and have no content or style.\n *\n * @param {number} count The number of lines to delete.\n */\nhterm.Terminal.prototype.deleteLines = function(count) {\n var cursor = this.saveCursor();\n\n var top = cursor.row;\n var bottom = this.getVTScrollBottom();\n\n var maxCount = bottom - top + 1;\n count = Math.min(count, maxCount);\n\n var moveStart = bottom - count + 1;\n if (count != maxCount)\n this.moveRows_(top, count, moveStart);\n\n for (var i = 0; i < count; i++) {\n this.setAbsoluteCursorPosition(moveStart + i, 0);\n this.screen_.clearCursorRow();\n }\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Inserts the given number of spaces at the current cursor position.\n *\n * The cursor position is not changed.\n *\n * @param {number} count The number of spaces to insert.\n */\nhterm.Terminal.prototype.insertSpace = function(count) {\n var cursor = this.saveCursor();\n\n var ws = lib.f.getWhitespace(count || 1);\n this.screen_.insertString(ws);\n this.screen_.maybeClipCurrentRow();\n\n this.restoreCursor(cursor);\n this.clearCursorOverflow();\n};\n\n/**\n * Forward-delete the specified number of characters starting at the cursor\n * position.\n *\n * @param {integer} count The number of characters to delete.\n */\nhterm.Terminal.prototype.deleteChars = function(count) {\n var deleted = this.screen_.deleteChars(count);\n if (deleted && !this.screen_.textAttributes.isDefault()) {\n var cursor = this.saveCursor();\n this.setCursorColumn(this.screenSize.width - deleted);\n this.screen_.insertString(lib.f.getWhitespace(deleted));\n this.restoreCursor(cursor);\n }\n\n this.clearCursorOverflow();\n};\n\n/**\n * Shift rows in the scroll region upwards by a given number of lines.\n *\n * New rows are inserted at the bottom of the scroll region to fill the\n * vacated rows. The new rows not filled out with the current text attributes.\n *\n * This function does not affect the scrollback rows at all. Rows shifted\n * off the top are lost.\n *\n * The cursor position is not altered.\n *\n * @param {integer} count The number of rows to scroll.\n */\nhterm.Terminal.prototype.vtScrollUp = function(count) {\n var cursor = this.saveCursor();\n\n this.setAbsoluteCursorRow(this.getVTScrollTop());\n this.deleteLines(count);\n\n this.restoreCursor(cursor);\n};\n\n/**\n * Shift rows below the cursor down by a given number of lines.\n *\n * This function respects the current scroll region.\n *\n * New rows are inserted at the top of the scroll region to fill the\n * vacated rows. The new rows not filled out with the current text attributes.\n *\n * This function does not affect the scrollback rows at all. Rows shifted\n * off the bottom are lost.\n *\n * @param {integer} count The number of rows to scroll.\n */\nhterm.Terminal.prototype.vtScrollDown = function(opt_count) {\n var cursor = this.saveCursor();\n\n this.setAbsoluteCursorPosition(this.getVTScrollTop(), 0);\n this.insertLines(opt_count);\n\n this.restoreCursor(cursor);\n};\n\n\n/**\n * Set the cursor position.\n *\n * The cursor row is relative to the scroll region if the terminal has\n * 'origin mode' enabled, or relative to the addressable screen otherwise.\n *\n * @param {integer} row The new zero-based cursor row.\n * @param {integer} row The new zero-based cursor column.\n */\nhterm.Terminal.prototype.setCursorPosition = function(row, column) {\n if (this.options_.originMode) {\n this.setRelativeCursorPosition(row, column);\n } else {\n this.setAbsoluteCursorPosition(row, column);\n }\n};\n\n/**\n * Move the cursor relative to its current position.\n *\n * @param {number} row\n * @param {number} column\n */\nhterm.Terminal.prototype.setRelativeCursorPosition = function(row, column) {\n var scrollTop = this.getVTScrollTop();\n row = lib.f.clamp(row + scrollTop, scrollTop, this.getVTScrollBottom());\n column = lib.f.clamp(column, 0, this.screenSize.width - 1);\n this.screen_.setCursorPosition(row, column);\n};\n\n/**\n * Move the cursor to the specified position.\n *\n * @param {number} row\n * @param {number} column\n */\nhterm.Terminal.prototype.setAbsoluteCursorPosition = function(row, column) {\n row = lib.f.clamp(row, 0, this.screenSize.height - 1);\n column = lib.f.clamp(column, 0, this.screenSize.width - 1);\n this.screen_.setCursorPosition(row, column);\n};\n\n/**\n * Set the cursor column.\n *\n * @param {integer} column The new zero-based cursor column.\n */\nhterm.Terminal.prototype.setCursorColumn = function(column) {\n this.setAbsoluteCursorPosition(this.screen_.cursorPosition.row, column);\n};\n\n/**\n * Return the cursor column.\n *\n * @return {integer} The zero-based cursor column.\n */\nhterm.Terminal.prototype.getCursorColumn = function() {\n return this.screen_.cursorPosition.column;\n};\n\n/**\n * Set the cursor row.\n *\n * The cursor row is relative to the scroll region if the terminal has\n * 'origin mode' enabled, or relative to the addressable screen otherwise.\n *\n * @param {integer} row The new cursor row.\n */\nhterm.Terminal.prototype.setAbsoluteCursorRow = function(row) {\n this.setAbsoluteCursorPosition(row, this.screen_.cursorPosition.column);\n};\n\n/**\n * Return the cursor row.\n *\n * @return {integer} The zero-based cursor row.\n */\nhterm.Terminal.prototype.getCursorRow = function() {\n return this.screen_.cursorPosition.row;\n};\n\n/**\n * Request that the ScrollPort redraw itself soon.\n *\n * The redraw will happen asynchronously, soon after the call stack winds down.\n * Multiple calls will be coalesced into a single redraw.\n */\nhterm.Terminal.prototype.scheduleRedraw_ = function() {\n if (this.timeouts_.redraw)\n return;\n\n var self = this;\n this.timeouts_.redraw = setTimeout(function() {\n delete self.timeouts_.redraw;\n self.scrollPort_.redraw_();\n }, 0);\n};\n\n/**\n * Request that the ScrollPort be scrolled to the bottom.\n *\n * The scroll will happen asynchronously, soon after the call stack winds down.\n * Multiple calls will be coalesced into a single scroll.\n *\n * This affects the scrollbar position of the ScrollPort, and has nothing to\n * do with the VT scroll commands.\n */\nhterm.Terminal.prototype.scheduleScrollDown_ = function() {\n if (this.timeouts_.scrollDown)\n return;\n\n var self = this;\n this.timeouts_.scrollDown = setTimeout(function() {\n delete self.timeouts_.scrollDown;\n self.scrollPort_.scrollRowToBottom(self.getRowCount());\n }, 10);\n};\n\n/**\n * Move the cursor up a specified number of rows.\n *\n * @param {integer} count The number of rows to move the cursor.\n */\nhterm.Terminal.prototype.cursorUp = function(count) {\n return this.cursorDown(-(count || 1));\n};\n\n/**\n * Move the cursor down a specified number of rows.\n *\n * @param {integer} count The number of rows to move the cursor.\n */\nhterm.Terminal.prototype.cursorDown = function(count) {\n count = count || 1;\n var minHeight = (this.options_.originMode ? this.getVTScrollTop() : 0);\n var maxHeight = (this.options_.originMode ? this.getVTScrollBottom() :\n this.screenSize.height - 1);\n\n var row = lib.f.clamp(this.screen_.cursorPosition.row + count,\n minHeight, maxHeight);\n this.setAbsoluteCursorRow(row);\n};\n\n/**\n * Move the cursor left a specified number of columns.\n *\n * If reverse wraparound mode is enabled and the previous row wrapped into\n * the current row then we back up through the wraparound as well.\n *\n * @param {integer} count The number of columns to move the cursor.\n */\nhterm.Terminal.prototype.cursorLeft = function(count) {\n count = count || 1;\n\n if (count < 1)\n return;\n\n var currentColumn = this.screen_.cursorPosition.column;\n if (this.options_.reverseWraparound) {\n if (this.screen_.cursorPosition.overflow) {\n // If this cursor is in the right margin, consume one count to get it\n // back to the last column. This only applies when we're in reverse\n // wraparound mode.\n count--;\n this.clearCursorOverflow();\n\n if (!count)\n return;\n }\n\n var newRow = this.screen_.cursorPosition.row;\n var newColumn = currentColumn - count;\n if (newColumn < 0) {\n newRow = newRow - Math.floor(count / this.screenSize.width) - 1;\n if (newRow < 0) {\n // xterm also wraps from row 0 to the last row.\n newRow = this.screenSize.height + newRow % this.screenSize.height;\n }\n newColumn = this.screenSize.width + newColumn % this.screenSize.width;\n }\n\n this.setCursorPosition(Math.max(newRow, 0), newColumn);\n\n } else {\n var newColumn = Math.max(currentColumn - count, 0);\n this.setCursorColumn(newColumn);\n }\n};\n\n/**\n * Move the cursor right a specified number of columns.\n *\n * @param {integer} count The number of columns to move the cursor.\n */\nhterm.Terminal.prototype.cursorRight = function(count) {\n count = count || 1;\n\n if (count < 1)\n return;\n\n var column = lib.f.clamp(this.screen_.cursorPosition.column + count,\n 0, this.screenSize.width - 1);\n this.setCursorColumn(column);\n};\n\n/**\n * Reverse the foreground and background colors of the terminal.\n *\n * This only affects text that was drawn with no attributes.\n *\n * TODO(rginda): Test xterm to see if reverse is respected for text that has\n * been drawn with attributes that happen to coincide with the default\n * 'no-attribute' colors. My guess is probably not.\n *\n * @param {boolean} state The state to set.\n */\nhterm.Terminal.prototype.setReverseVideo = function(state) {\n this.options_.reverseVideo = state;\n if (state) {\n this.scrollPort_.setForegroundColor(this.prefs_.get('background-color'));\n this.scrollPort_.setBackgroundColor(this.prefs_.get('foreground-color'));\n } else {\n this.scrollPort_.setForegroundColor(this.prefs_.get('foreground-color'));\n this.scrollPort_.setBackgroundColor(this.prefs_.get('background-color'));\n }\n};\n\n/**\n * Ring the terminal bell.\n *\n * This will not play the bell audio more than once per second.\n */\nhterm.Terminal.prototype.ringBell = function() {\n this.cursorNode_.style.backgroundColor =\n this.scrollPort_.getForegroundColor();\n\n var self = this;\n setTimeout(function() {\n self.cursorNode_.style.backgroundColor = self.prefs_.get('cursor-color');\n }, 200);\n\n // bellSquelchTimeout_ affects both audio and notification bells.\n if (this.bellSquelchTimeout_)\n return;\n\n if (this.bellAudio_.getAttribute('src')) {\n this.bellAudio_.play();\n this.bellSequelchTimeout_ = setTimeout(function() {\n delete this.bellSquelchTimeout_;\n }.bind(this), 500);\n } else {\n delete this.bellSquelchTimeout_;\n }\n\n if (this.desktopNotificationBell_ && !this.document_.hasFocus()) {\n var n = hterm.notify();\n this.bellNotificationList_.push(n);\n // TODO: Should we try to raise the window here?\n n.onclick = function() { self.closeBellNotifications_(); };\n }\n};\n\n/**\n * Set the origin mode bit.\n *\n * If origin mode is on, certain VT cursor and scrolling commands measure their\n * row parameter relative to the VT scroll region. Otherwise, row 0 corresponds\n * to the top of the addressable screen.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set origin mode, false to unset.\n */\nhterm.Terminal.prototype.setOriginMode = function(state) {\n this.options_.originMode = state;\n this.setCursorPosition(0, 0);\n};\n\n/**\n * Set the insert mode bit.\n *\n * If insert mode is on, existing text beyond the cursor position will be\n * shifted right to make room for new text. Otherwise, new text overwrites\n * any existing text.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set insert mode, false to unset.\n */\nhterm.Terminal.prototype.setInsertMode = function(state) {\n this.options_.insertMode = state;\n};\n\n/**\n * Set the auto carriage return bit.\n *\n * If auto carriage return is on then a formfeed character is interpreted\n * as a newline, otherwise it's the same as a linefeed. The difference boils\n * down to whether or not the cursor column is reset.\n *\n * @param {boolean} state The state to set.\n */\nhterm.Terminal.prototype.setAutoCarriageReturn = function(state) {\n this.options_.autoCarriageReturn = state;\n};\n\n/**\n * Set the wraparound mode bit.\n *\n * If wraparound mode is on, certain VT commands will allow the cursor to wrap\n * to the start of the following row. Otherwise, the cursor is clamped to the\n * end of the screen and attempts to write past it are ignored.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set wraparound mode, false to unset.\n */\nhterm.Terminal.prototype.setWraparound = function(state) {\n this.options_.wraparound = state;\n};\n\n/**\n * Set the reverse-wraparound mode bit.\n *\n * If wraparound mode is off, certain VT commands will allow the cursor to wrap\n * to the end of the previous row. Otherwise, the cursor is clamped to column\n * 0.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set reverse-wraparound mode, false to unset.\n */\nhterm.Terminal.prototype.setReverseWraparound = function(state) {\n this.options_.reverseWraparound = state;\n};\n\n/**\n * Selects between the primary and alternate screens.\n *\n * If alternate mode is on, the alternate screen is active. Otherwise the\n * primary screen is active.\n *\n * Swapping screens has no effect on the scrollback buffer.\n *\n * Each screen maintains its own cursor position.\n *\n * Defaults to off.\n *\n * @param {boolean} state True to set alternate mode, false to unset.\n */\nhterm.Terminal.prototype.setAlternateMode = function(state) {\n var cursor = this.saveCursor();\n this.screen_ = state ? this.alternateScreen_ : this.primaryScreen_;\n\n if (this.screen_.rowsArray.length &&\n this.screen_.rowsArray[0].rowIndex != this.scrollbackRows_.length) {\n // If the screen changed sizes while we were away, our rowIndexes may\n // be incorrect.\n var offset = this.scrollbackRows_.length;\n var ary = this.screen_.rowsArray;\n for (var i = 0; i < ary.length; i++) {\n ary[i].rowIndex = offset + i;\n }\n }\n\n this.realizeWidth_(this.screenSize.width);\n this.realizeHeight_(this.screenSize.height);\n this.scrollPort_.syncScrollHeight();\n this.scrollPort_.invalidate();\n\n this.restoreCursor(cursor);\n this.scrollPort_.resize();\n};\n\n/**\n * Set the cursor-blink mode bit.\n *\n * If cursor-blink is on, the cursor will blink when it is visible. Otherwise\n * a visible cursor does not blink.\n *\n * You should make sure to turn blinking off if you're going to dispose of a\n * terminal, otherwise you'll leak a timeout.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set cursor-blink mode, false to unset.\n */\nhterm.Terminal.prototype.setCursorBlink = function(state) {\n this.options_.cursorBlink = state;\n\n if (!state && this.timeouts_.cursorBlink) {\n clearTimeout(this.timeouts_.cursorBlink);\n delete this.timeouts_.cursorBlink;\n }\n\n if (this.options_.cursorVisible)\n this.setCursorVisible(true);\n};\n\n/**\n * Set the cursor-visible mode bit.\n *\n * If cursor-visible is on, the cursor will be visible. Otherwise it will not.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set cursor-visible mode, false to unset.\n */\nhterm.Terminal.prototype.setCursorVisible = function(state) {\n this.options_.cursorVisible = state;\n\n if (!state) {\n if (this.timeouts_.cursorBlink) {\n clearTimeout(this.timeouts_.cursorBlink);\n delete this.timeouts_.cursorBlink;\n }\n this.cursorNode_.style.opacity = '0';\n return;\n }\n\n this.syncCursorPosition_();\n\n this.cursorNode_.style.opacity = '1';\n\n if (this.options_.cursorBlink) {\n if (this.timeouts_.cursorBlink)\n return;\n\n this.onCursorBlink_();\n } else {\n if (this.timeouts_.cursorBlink) {\n clearTimeout(this.timeouts_.cursorBlink);\n delete this.timeouts_.cursorBlink;\n }\n }\n};\n\n/**\n * Synchronizes the visible cursor and document selection with the current\n * cursor coordinates.\n */\nhterm.Terminal.prototype.syncCursorPosition_ = function() {\n var topRowIndex = this.scrollPort_.getTopRowIndex();\n var bottomRowIndex = this.scrollPort_.getBottomRowIndex(topRowIndex);\n var cursorRowIndex = this.scrollbackRows_.length +\n this.screen_.cursorPosition.row;\n\n if (cursorRowIndex > bottomRowIndex) {\n // Cursor is scrolled off screen, move it outside of the visible area.\n this.setCssVar('cursor-offset-row', '-1');\n return;\n }\n\n if (this.options_.cursorVisible &&\n this.cursorNode_.style.display == 'none') {\n // Re-display the terminal cursor if it was hidden by the mouse cursor.\n this.cursorNode_.style.display = '';\n }\n\n // Position the cursor using CSS variable math. If we do the math in JS,\n // the float math will end up being more precise than the CSS which will\n // cause the cursor tracking to be off.\n this.setCssVar(\n 'cursor-offset-row',\n `${cursorRowIndex - topRowIndex} + ` +\n `${this.scrollPort_.visibleRowTopMargin}px`);\n this.setCssVar('cursor-offset-col', this.screen_.cursorPosition.column);\n\n this.cursorNode_.setAttribute('title',\n '(' + this.screen_.cursorPosition.column +\n ', ' + this.screen_.cursorPosition.row +\n ')');\n\n // Update the caret for a11y purposes.\n var selection = this.document_.getSelection();\n if (selection && selection.isCollapsed)\n this.screen_.syncSelectionCaret(selection);\n};\n\n/**\n * Adjusts the style of this.cursorNode_ according to the current cursor shape\n * and character cell dimensions.\n */\nhterm.Terminal.prototype.restyleCursor_ = function() {\n var shape = this.cursorShape_;\n\n if (this.cursorNode_.getAttribute('focus') == 'false') {\n // Always show a block cursor when unfocused.\n shape = hterm.Terminal.cursorShape.BLOCK;\n }\n\n var style = this.cursorNode_.style;\n\n switch (shape) {\n case hterm.Terminal.cursorShape.BEAM:\n style.height = 'var(--hterm-charsize-height)';\n style.backgroundColor = 'transparent';\n style.borderBottomStyle = null;\n style.borderLeftStyle = 'solid';\n break;\n\n case hterm.Terminal.cursorShape.UNDERLINE:\n style.height = this.scrollPort_.characterSize.baseline + 'px';\n style.backgroundColor = 'transparent';\n style.borderBottomStyle = 'solid';\n // correct the size to put it exactly at the baseline\n style.borderLeftStyle = null;\n break;\n\n default:\n style.height = 'var(--hterm-charsize-height)';\n style.backgroundColor = this.cursorColor_;\n style.borderBottomStyle = null;\n style.borderLeftStyle = null;\n break;\n }\n};\n\n/**\n * Synchronizes the visible cursor with the current cursor coordinates.\n *\n * The sync will happen asynchronously, soon after the call stack winds down.\n * Multiple calls will be coalesced into a single sync.\n */\nhterm.Terminal.prototype.scheduleSyncCursorPosition_ = function() {\n if (this.timeouts_.syncCursor)\n return;\n\n var self = this;\n this.timeouts_.syncCursor = setTimeout(function() {\n self.syncCursorPosition_();\n delete self.timeouts_.syncCursor;\n }, 0);\n};\n\n/**\n * Show or hide the zoom warning.\n *\n * The zoom warning is a message warning the user that their browser zoom must\n * be set to 100% in order for hterm to function properly.\n *\n * @param {boolean} state True to show the message, false to hide it.\n */\nhterm.Terminal.prototype.showZoomWarning_ = function(state) {\n if (!this.zoomWarningNode_) {\n if (!state)\n return;\n\n this.zoomWarningNode_ = this.document_.createElement('div');\n this.zoomWarningNode_.id = 'hterm:zoom-warning';\n this.zoomWarningNode_.style.cssText = (\n 'color: black;' +\n 'background-color: #ff2222;' +\n 'font-size: large;' +\n 'border-radius: 8px;' +\n 'opacity: 0.75;' +\n 'padding: 0.2em 0.5em 0.2em 0.5em;' +\n 'top: 0.5em;' +\n 'right: 1.2em;' +\n 'position: absolute;' +\n '-webkit-text-size-adjust: none;' +\n '-webkit-user-select: none;' +\n '-moz-text-size-adjust: none;' +\n '-moz-user-select: none;');\n\n this.zoomWarningNode_.addEventListener('click', function(e) {\n this.parentNode.removeChild(this);\n });\n }\n\n this.zoomWarningNode_.textContent = lib.MessageManager.replaceReferences(\n hterm.zoomWarningMessage,\n [parseInt(this.scrollPort_.characterSize.zoomFactor * 100)]);\n\n this.zoomWarningNode_.style.fontFamily = this.prefs_.get('font-family');\n\n if (state) {\n if (!this.zoomWarningNode_.parentNode)\n this.div_.parentNode.appendChild(this.zoomWarningNode_);\n } else if (this.zoomWarningNode_.parentNode) {\n this.zoomWarningNode_.parentNode.removeChild(this.zoomWarningNode_);\n }\n};\n\n/**\n * Show the terminal overlay for a given amount of time.\n *\n * The terminal overlay appears in inverse video in a large font, centered\n * over the terminal. You should probably keep the overlay message brief,\n * since it's in a large font and you probably aren't going to check the size\n * of the terminal first.\n *\n * @param {string} msg The text (not HTML) message to display in the overlay.\n * @param {number} opt_timeout The amount of time to wait before fading out\n * the overlay. Defaults to 1.5 seconds. Pass null to have the overlay\n * stay up forever (or until the next overlay).\n */\nhterm.Terminal.prototype.showOverlay = function(msg, opt_timeout) {\n if (!this.overlayNode_) {\n if (!this.div_)\n return;\n\n this.overlayNode_ = this.document_.createElement('div');\n this.overlayNode_.style.cssText = (\n 'border-radius: 15px;' +\n 'font-size: xx-large;' +\n 'opacity: 0.75;' +\n 'padding: 0.2em 0.5em 0.2em 0.5em;' +\n 'position: absolute;' +\n '-webkit-user-select: none;' +\n '-webkit-transition: opacity 180ms ease-in;' +\n '-moz-user-select: none;' +\n '-moz-transition: opacity 180ms ease-in;');\n\n this.overlayNode_.addEventListener('mousedown', function(e) {\n e.preventDefault();\n e.stopPropagation();\n }, true);\n }\n\n this.overlayNode_.style.color = this.prefs_.get('background-color');\n this.overlayNode_.style.backgroundColor = this.prefs_.get('foreground-color');\n this.overlayNode_.style.fontFamily = this.prefs_.get('font-family');\n\n this.overlayNode_.textContent = msg;\n this.overlayNode_.style.opacity = '0.75';\n\n if (!this.overlayNode_.parentNode)\n this.div_.appendChild(this.overlayNode_);\n\n var divSize = hterm.getClientSize(this.div_);\n var overlaySize = hterm.getClientSize(this.overlayNode_);\n\n this.overlayNode_.style.top =\n (divSize.height - overlaySize.height) / 2 + 'px';\n this.overlayNode_.style.left = (divSize.width - overlaySize.width -\n this.scrollPort_.currentScrollbarWidthPx) / 2 + 'px';\n\n var self = this;\n\n if (this.overlayTimeout_)\n clearTimeout(this.overlayTimeout_);\n\n if (opt_timeout === null)\n return;\n\n this.overlayTimeout_ = setTimeout(function() {\n self.overlayNode_.style.opacity = '0';\n self.overlayTimeout_ = setTimeout(function() {\n if (self.overlayNode_.parentNode)\n self.overlayNode_.parentNode.removeChild(self.overlayNode_);\n self.overlayTimeout_ = null;\n self.overlayNode_.style.opacity = '0.75';\n }, 200);\n }, opt_timeout || 1500);\n};\n\n/**\n * Paste from the system clipboard to the terminal.\n */\nhterm.Terminal.prototype.paste = function() {\n return hterm.pasteFromClipboard(this.document_);\n};\n\n/**\n * Copy a string to the system clipboard.\n *\n * Note: If there is a selected range in the terminal, it'll be cleared.\n *\n * @param {string} str The string to copy.\n */\nhterm.Terminal.prototype.copyStringToClipboard = function(str) {\n if (this.prefs_.get('enable-clipboard-notice'))\n setTimeout(this.showOverlay.bind(this, hterm.notifyCopyMessage, 500), 200);\n\n var copySource = this.document_.createElement('pre');\n copySource.id = 'hterm:copy-to-clipboard-source';\n copySource.textContent = str;\n copySource.style.cssText = (\n '-webkit-user-select: text;' +\n '-moz-user-select: text;' +\n 'position: absolute;' +\n 'top: -99px');\n\n this.document_.body.appendChild(copySource);\n\n var selection = this.document_.getSelection();\n var anchorNode = selection.anchorNode;\n var anchorOffset = selection.anchorOffset;\n var focusNode = selection.focusNode;\n var focusOffset = selection.focusOffset;\n\n selection.selectAllChildren(copySource);\n\n hterm.copySelectionToClipboard(this.document_);\n\n // IE doesn't support selection.extend. This means that the selection\n // won't return on IE.\n if (selection.extend) {\n selection.collapse(anchorNode, anchorOffset);\n selection.extend(focusNode, focusOffset);\n }\n\n copySource.parentNode.removeChild(copySource);\n};\n\n/**\n * Returns the selected text, or null if no text is selected.\n *\n * @return {string|null}\n */\nhterm.Terminal.prototype.getSelectionText = function() {\n var selection = this.scrollPort_.selection;\n selection.sync();\n\n if (selection.isCollapsed)\n return null;\n\n\n // Start offset measures from the beginning of the line.\n var startOffset = selection.startOffset;\n var node = selection.startNode;\n\n if (node.nodeName != 'X-ROW') {\n // If the selection doesn't start on an x-row node, then it must be\n // somewhere inside the x-row. Add any characters from previous siblings\n // into the start offset.\n\n if (node.nodeName == '#text' && node.parentNode.nodeName == 'SPAN') {\n // If node is the text node in a styled span, move up to the span node.\n node = node.parentNode;\n }\n\n while (node.previousSibling) {\n node = node.previousSibling;\n startOffset += hterm.TextAttributes.nodeWidth(node);\n }\n }\n\n // End offset measures from the end of the line.\n var endOffset = (hterm.TextAttributes.nodeWidth(selection.endNode) -\n selection.endOffset);\n node = selection.endNode;\n\n if (node.nodeName != 'X-ROW') {\n // If the selection doesn't end on an x-row node, then it must be\n // somewhere inside the x-row. Add any characters from following siblings\n // into the end offset.\n\n if (node.nodeName == '#text' && node.parentNode.nodeName == 'SPAN') {\n // If node is the text node in a styled span, move up to the span node.\n node = node.parentNode;\n }\n\n while (node.nextSibling) {\n node = node.nextSibling;\n endOffset += hterm.TextAttributes.nodeWidth(node);\n }\n }\n\n var rv = this.getRowsText(selection.startRow.rowIndex,\n selection.endRow.rowIndex + 1);\n return lib.wc.substring(rv, startOffset, lib.wc.strWidth(rv) - endOffset);\n};\n\n/**\n * Copy the current selection to the system clipboard, then clear it after a\n * short delay.\n */\nhterm.Terminal.prototype.copySelectionToClipboard = function() {\n var text = this.getSelectionText();\n if (text != null)\n this.copyStringToClipboard(text);\n};\n\nhterm.Terminal.prototype.overlaySize = function() {\n this.showOverlay(this.screenSize.width + 'x' + this.screenSize.height);\n};\n\n/**\n * Invoked by hterm.Terminal.Keyboard when a VT keystroke is detected.\n *\n * @param {string} string The VT string representing the keystroke, in UTF-16.\n */\nhterm.Terminal.prototype.onVTKeystroke = function(string) {\n if (this.scrollOnKeystroke_)\n this.scrollPort_.scrollRowToBottom(this.getRowCount());\n\n this.io.onVTKeystroke(this.keyboard.encode(string));\n};\n\n/**\n * Launches url in a new tab.\n *\n * @param {string} url URL to launch in a new tab.\n */\nhterm.Terminal.prototype.openUrl = function(url) {\n if (window.chrome && window.chrome.browser) {\n // For Chrome v2 apps, we need to use this API to properly open windows.\n chrome.browser.openTab({'url': url});\n } else {\n var win = window.open(url, '_blank');\n win.focus();\n }\n}\n\n/**\n * Open the selected url.\n */\nhterm.Terminal.prototype.openSelectedUrl_ = function() {\n var str = this.getSelectionText();\n\n // If there is no selection, try and expand wherever they clicked.\n if (str == null) {\n this.screen_.expandSelection(this.document_.getSelection());\n str = this.getSelectionText();\n\n // If clicking in empty space, return.\n if (str == null)\n return;\n }\n\n // Make sure URL is valid before opening.\n if (str.length > 2048 || str.search(/[\\s\\[\\](){}<>\"'\\\\^`]/) >= 0)\n return;\n\n // If the URI isn't anchored, it'll open relative to the extension.\n // We have no way of knowing the correct schema, so assume http.\n if (str.search('^[a-zA-Z][a-zA-Z0-9+.-]*://') < 0) {\n // We have to whitelist a few protocols that lack authorities and thus\n // never use the //. Like mailto.\n switch (str.split(':', 1)[0]) {\n case 'mailto':\n break;\n default:\n str = 'http://' + str;\n break;\n }\n }\n\n this.openUrl(str);\n}\n\n\n/**\n * Add the terminalRow and terminalColumn properties to mouse events and\n * then forward on to onMouse().\n *\n * The terminalRow and terminalColumn properties contain the (row, column)\n * coordinates for the mouse event.\n *\n * @param {Event} e The mouse event to handle.\n */\nhterm.Terminal.prototype.onMouse_ = function(e) {\n if (e.processedByTerminalHandler_) {\n // We register our event handlers on the document, as well as the cursor\n // and the scroll blocker. Mouse events that occur on the cursor or\n // scroll blocker will also appear on the document, but we don't want to\n // process them twice.\n //\n // We can't just prevent bubbling because that has other side effects, so\n // we decorate the event object with this property instead.\n return;\n }\n\n var reportMouseEvents = (!this.defeatMouseReports_ &&\n this.vt.mouseReport != this.vt.MOUSE_REPORT_DISABLED);\n\n e.processedByTerminalHandler_ = true;\n\n // One based row/column stored on the mouse event.\n e.terminalRow = parseInt((e.clientY - this.scrollPort_.visibleRowTopMargin) /\n this.scrollPort_.characterSize.height) + 1;\n e.terminalColumn = parseInt(e.clientX /\n this.scrollPort_.characterSize.width) + 1;\n\n if (e.type == 'mousedown' && e.terminalColumn > this.screenSize.width) {\n // Mousedown in the scrollbar area.\n return;\n }\n\n if (this.options_.cursorVisible && !reportMouseEvents) {\n // If the cursor is visible and we're not sending mouse events to the\n // host app, then we want to hide the terminal cursor when the mouse\n // cursor is over top. This keeps the terminal cursor from interfering\n // with local text selection.\n if (e.terminalRow - 1 == this.screen_.cursorPosition.row &&\n e.terminalColumn - 1 == this.screen_.cursorPosition.column) {\n this.cursorNode_.style.display = 'none';\n } else if (this.cursorNode_.style.display == 'none') {\n this.cursorNode_.style.display = '';\n }\n }\n\n if (e.type == 'mousedown') {\n if (e.altKey || !reportMouseEvents) {\n // If VT mouse reporting is disabled, or has been defeated with\n // alt-mousedown, then the mouse will act on the local selection.\n this.defeatMouseReports_ = true;\n this.setSelectionEnabled(true);\n } else {\n // Otherwise we defer ownership of the mouse to the VT.\n this.defeatMouseReports_ = false;\n this.document_.getSelection().collapseToEnd();\n this.setSelectionEnabled(false);\n e.preventDefault();\n }\n }\n\n if (!reportMouseEvents) {\n if (e.type == 'dblclick' && this.copyOnSelect) {\n this.screen_.expandSelection(this.document_.getSelection());\n this.copySelectionToClipboard(this.document_);\n }\n\n if (e.type == 'click' && !e.shiftKey && (e.ctrlKey || e.metaKey)) {\n // Debounce this event with the dblclick event. If you try to doubleclick\n // a URL to open it, Chrome will fire click then dblclick, but we won't\n // have expanded the selection text at the first click event.\n clearTimeout(this.timeouts_.openUrl);\n this.timeouts_.openUrl = setTimeout(this.openSelectedUrl_.bind(this),\n 500);\n return;\n }\n\n if (e.type == 'mousedown') {\n if ((this.mouseRightClickPaste && e.button == 2 /* right button */) ||\n e.button == this.mousePasteButton) {\n if (!this.paste())\n console.warning('Could not paste manually due to web restrictions');;\n }\n }\n\n if (e.type == 'mouseup' && e.button == 0 && this.copyOnSelect &&\n !this.document_.getSelection().isCollapsed) {\n this.copySelectionToClipboard(this.document_);\n }\n\n if ((e.type == 'mousemove' || e.type == 'mouseup') &&\n this.scrollBlockerNode_.engaged) {\n // Disengage the scroll-blocker after one of these events.\n this.scrollBlockerNode_.engaged = false;\n this.scrollBlockerNode_.style.top = '-99px';\n }\n\n // Emulate arrow key presses via scroll wheel events.\n if (this.scrollWheelArrowKeys_ && !e.shiftKey &&\n this.keyboard.applicationCursor && !this.isPrimaryScreen()) {\n if (e.type == 'wheel') {\n var delta = this.scrollPort_.scrollWheelDelta(e);\n var lines = lib.f.smartFloorDivide(\n Math.abs(delta), this.scrollPort_.characterSize.height);\n\n var data = '\\x1bO' + (delta < 0 ? 'B' : 'A');\n this.io.sendString(data.repeat(lines));\n\n e.preventDefault();\n }\n }\n } else /* if (this.reportMouseEvents) */ {\n if (!this.scrollBlockerNode_.engaged) {\n if (e.type == 'mousedown') {\n // Move the scroll-blocker into place if we want to keep the scrollport\n // from scrolling.\n this.scrollBlockerNode_.engaged = true;\n this.scrollBlockerNode_.style.top = (e.clientY - 5) + 'px';\n this.scrollBlockerNode_.style.left = (e.clientX - 5) + 'px';\n } else if (e.type == 'mousemove') {\n // Oh. This means that drag-scroll was disabled AFTER the mouse down,\n // in which case it's too late to engage the scroll-blocker.\n this.document_.getSelection().collapseToEnd();\n e.preventDefault();\n }\n }\n\n this.onMouse(e);\n }\n\n if (e.type == 'mouseup' && this.document_.getSelection().isCollapsed) {\n // Restore this on mouseup in case it was temporarily defeated with a\n // alt-mousedown. Only do this when the selection is empty so that\n // we don't immediately kill the users selection.\n this.defeatMouseReports_ = false;\n }\n};\n\n/**\n * Clients should override this if they care to know about mouse events.\n *\n * The event parameter will be a normal DOM mouse click event with additional\n * 'terminalRow' and 'terminalColumn' properties.\n *\n * @param {Event} e The mouse event to handle.\n */\nhterm.Terminal.prototype.onMouse = function(e) { };\n\n/**\n * React when focus changes.\n *\n * @param {boolean} focused True if focused, false otherwise.\n */\nhterm.Terminal.prototype.onFocusChange_ = function(focused) {\n this.cursorNode_.setAttribute('focus', focused);\n this.restyleCursor_();\n if (focused === true)\n this.closeBellNotifications_();\n};\n\n/**\n * React when the ScrollPort is scrolled.\n */\nhterm.Terminal.prototype.onScroll_ = function() {\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * React when text is pasted into the scrollPort.\n *\n * @param {Event} e The DOM paste event to handle.\n */\nhterm.Terminal.prototype.onPaste_ = function(e) {\n var data = e.text.replace(/\\n/mg, '\\r');\n data = this.keyboard.encode(data);\n if (this.options_.bracketedPaste)\n data = '\\x1b[200~' + data + '\\x1b[201~';\n\n this.io.sendString(data);\n};\n\n/**\n * React when the user tries to copy from the scrollPort.\n *\n * @param {Event} e The DOM copy event.\n */\nhterm.Terminal.prototype.onCopy_ = function(e) {\n if (!this.useDefaultWindowCopy) {\n e.preventDefault();\n setTimeout(this.copySelectionToClipboard.bind(this), 0);\n }\n};\n\n/**\n * React when the ScrollPort is resized.\n *\n * Note: This function should not directly contain code that alters the internal\n * state of the terminal. That kind of code belongs in realizeWidth or\n * realizeHeight, so that it can be executed synchronously in the case of a\n * programmatic width change.\n */\nhterm.Terminal.prototype.onResize_ = function() {\n var columnCount = Math.floor(this.scrollPort_.getScreenWidth() /\n this.scrollPort_.characterSize.width) || 0;\n var rowCount = lib.f.smartFloorDivide(this.scrollPort_.getScreenHeight(),\n this.scrollPort_.characterSize.height) || 0;\n\n if (columnCount <= 0 || rowCount <= 0) {\n // We avoid these situations since they happen sometimes when the terminal\n // gets removed from the document or during the initial load, and we can't\n // deal with that.\n // This can also happen if called before the scrollPort calculates the\n // character size, meaning we dived by 0 above and default to 0 values.\n return;\n }\n\n var isNewSize = (columnCount != this.screenSize.width ||\n rowCount != this.screenSize.height);\n\n // We do this even if the size didn't change, just to be sure everything is\n // in sync.\n this.realizeSize_(columnCount, rowCount);\n this.showZoomWarning_(this.scrollPort_.characterSize.zoomFactor != 1);\n\n if (isNewSize)\n this.overlaySize();\n\n this.restyleCursor_();\n this.scheduleSyncCursorPosition_();\n};\n\n/**\n * Service the cursor blink timeout.\n */\nhterm.Terminal.prototype.onCursorBlink_ = function() {\n if (!this.options_.cursorBlink) {\n delete this.timeouts_.cursorBlink;\n return;\n }\n\n if (this.cursorNode_.getAttribute('focus') == 'false' ||\n this.cursorNode_.style.opacity == '0') {\n this.cursorNode_.style.opacity = '1';\n this.timeouts_.cursorBlink = setTimeout(this.myOnCursorBlink_,\n this.cursorBlinkCycle_[0]);\n } else {\n this.cursorNode_.style.opacity = '0';\n this.timeouts_.cursorBlink = setTimeout(this.myOnCursorBlink_,\n this.cursorBlinkCycle_[1]);\n }\n};\n\n/**\n * Set the scrollbar-visible mode bit.\n *\n * If scrollbar-visible is on, the vertical scrollbar will be visible.\n * Otherwise it will not.\n *\n * Defaults to on.\n *\n * @param {boolean} state True to set scrollbar-visible mode, false to unset.\n */\nhterm.Terminal.prototype.setScrollbarVisible = function(state) {\n this.scrollPort_.setScrollbarVisible(state);\n};\n\n/**\n * Set the scroll wheel move multiplier. This will affect how fast the page\n * scrolls on wheel events.\n *\n * Defaults to 1.\n *\n * @param {number} multiplier The multiplier to set.\n */\nhterm.Terminal.prototype.setScrollWheelMoveMultipler = function(multiplier) {\n this.scrollPort_.setScrollWheelMoveMultipler(multiplier);\n};\n\n/**\n * Close all web notifications created by terminal bells.\n */\nhterm.Terminal.prototype.closeBellNotifications_ = function() {\n this.bellNotificationList_.forEach(function(n) {\n n.close();\n });\n this.bellNotificationList_.length = 0;\n};\n// SOURCE FILE: hterm/js/hterm_terminal_io.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.encodeUTF8');\n\n/**\n * Input/Output interface used by commands to communicate with the terminal.\n *\n * Commands like `nassh` and `crosh` receive an instance of this class as\n * part of their argv object. This allows them to write to and read from the\n * terminal without exposing them to an entire hterm.Terminal instance.\n *\n * The active command must override the onVTKeystroke() and sendString() methods\n * of this class in order to receive keystrokes and send output to the correct\n * destination.\n *\n * Isolating commands from the terminal provides the following benefits:\n * - Provides a mechanism to save and restore onVTKeystroke and sendString\n * handlers when invoking subcommands (see the push() and pop() methods).\n * - The isolation makes it easier to make changes in Terminal and supporting\n * classes without affecting commands.\n * - In The Future commands may run in web workers where they would only be able\n * to talk to a Terminal instance through an IPC mechanism.\n *\n * @param {hterm.Terminal}\n */\nhterm.Terminal.IO = function(terminal) {\n this.terminal_ = terminal;\n\n // The IO object to restore on IO.pop().\n this.previousIO_ = null;\n};\n\n/**\n * Show the terminal overlay for a given amount of time.\n *\n * The terminal overlay appears in inverse video in a large font, centered\n * over the terminal. You should probably keep the overlay message brief,\n * since it's in a large font and you probably aren't going to check the size\n * of the terminal first.\n *\n * @param {string} msg The text (not HTML) message to display in the overlay.\n * @param {number} opt_timeout The amount of time to wait before fading out\n * the overlay. Defaults to 1.5 seconds. Pass null to have the overlay\n * stay up forever (or until the next overlay).\n */\nhterm.Terminal.IO.prototype.showOverlay = function(message, opt_timeout) {\n this.terminal_.showOverlay(message, opt_timeout);\n};\n\n/**\n * Open an frame in the current terminal window, pointed to the specified\n * url.\n *\n * Eventually we'll probably need size/position/decoration options.\n * The user should also be able to move/resize the frame.\n *\n * @param {string} url The URL to load in the frame.\n * @param {Object} opt_options Optional frame options. Not implemented.\n */\nhterm.Terminal.IO.prototype.createFrame = function(url, opt_options) {\n return new hterm.Frame(this.terminal_, url, opt_options);\n};\n\n/**\n * Change the preference profile for the terminal.\n *\n * @param profileName {string} The name of the preference profile to activate.\n */\nhterm.Terminal.IO.prototype.setTerminalProfile = function(profileName) {\n this.terminal_.setProfile(profileName);\n};\n\n/**\n * Create a new hterm.Terminal.IO instance and make it active on the Terminal\n * object associated with this instance.\n *\n * This is used to pass control of the terminal IO off to a subcommand. The\n * IO.pop() method can be used to restore control when the subcommand completes.\n */\nhterm.Terminal.IO.prototype.push = function() {\n var io = new hterm.Terminal.IO(this.terminal_);\n io.keyboardCaptured_ = this.keyboardCaptured_;\n\n io.columnCount = this.columnCount;\n io.rowCount = this.rowCount;\n\n io.previousIO_ = this.terminal_.io;\n this.terminal_.io = io;\n\n return io;\n};\n\n/**\n * Restore the Terminal's previous IO object.\n */\nhterm.Terminal.IO.prototype.pop = function() {\n this.terminal_.io = this.previousIO_;\n};\n\n/**\n * Called when data needs to be sent to the current command.\n *\n * Clients should override this to receive notification of pending data.\n *\n * @param {string} string The data to send.\n */\nhterm.Terminal.IO.prototype.sendString = function(string) {\n // Override this.\n console.log('Unhandled sendString: ' + string);\n};\n\n/**\n * Called when a terminal keystroke is detected.\n *\n * Clients should override this to receive notification of keystrokes.\n *\n * The keystroke data will be encoded according to the 'send-encoding'\n * preference.\n *\n * @param {string} string The VT key sequence.\n */\nhterm.Terminal.IO.prototype.onVTKeystroke = function(string) {\n // Override this.\n console.log('Unobserverd VT keystroke: ' + JSON.stringify(string));\n};\n\nhterm.Terminal.IO.prototype.onTerminalResize_ = function(width, height) {\n var obj = this;\n while (obj) {\n obj.columnCount = width;\n obj.rowCount = height;\n obj = obj.previousIO_;\n }\n\n this.onTerminalResize(width, height);\n};\n\n/**\n * Called when terminal size is changed.\n *\n * Clients should override this to receive notification of resize.\n *\n * @param {string|integer} terminal width.\n * @param {string|integer} terminal height.\n */\nhterm.Terminal.IO.prototype.onTerminalResize = function(width, height) {\n // Override this.\n};\n\n/**\n * Write a UTF-8 encoded byte string to the terminal.\n *\n * @param {string} string The UTF-8 encoded string to print.\n */\nhterm.Terminal.IO.prototype.writeUTF8 = function(string) {\n if (this.terminal_.io != this)\n throw 'Attempt to print from inactive IO object.';\n\n this.terminal_.interpret(string);\n};\n\n/**\n * Write a UTF-8 encoded byte string to the terminal followed by crlf.\n *\n * @param {string} string The UTF-8 encoded string to print.\n */\nhterm.Terminal.IO.prototype.writelnUTF8 = function(string) {\n if (this.terminal_.io != this)\n throw 'Attempt to print from inactive IO object.';\n\n this.terminal_.interpret(string + '\\r\\n');\n};\n\n/**\n * Write a UTF-16 JavaScript string to the terminal.\n *\n * @param {string} string The string to print.\n */\nhterm.Terminal.IO.prototype.print =\nhterm.Terminal.IO.prototype.writeUTF16 = function(string) {\n this.writeUTF8(lib.encodeUTF8(string));\n};\n\n/**\n * Print a UTF-16 JavaScript string to the terminal followed by a newline.\n *\n * @param {string} string The string to print.\n */\nhterm.Terminal.IO.prototype.println =\nhterm.Terminal.IO.prototype.writelnUTF16 = function(string) {\n this.writelnUTF8(lib.encodeUTF8(string));\n};\n// SOURCE FILE: hterm/js/hterm_text_attributes.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.colors');\n\n/**\n * Constructor for TextAttribute objects.\n *\n * These objects manage a set of text attributes such as foreground/\n * background color, bold, faint, italic, blink, underline, and strikethrough.\n *\n * TextAttribute instances can be used to construct a DOM container implementing\n * the current attributes, or to test an existing DOM container for\n * compatibility with the current attributes.\n *\n * @constructor\n * @param {HTMLDocument} document The parent document to use when creating\n * new DOM containers.\n */\nhterm.TextAttributes = function(document) {\n this.document_ = document;\n // These variables contain the source of the color as either:\n // SRC_DEFAULT (use context default)\n // SRC_RGB (specified in 'rgb( r, g, b)' form)\n // number (representing the index from color palette to use)\n this.foregroundSource = this.SRC_DEFAULT;\n this.backgroundSource = this.SRC_DEFAULT;\n\n // These properties cache the value in the color table, but foregroundSource\n // and backgroundSource contain the canonical values.\n this.foreground = this.DEFAULT_COLOR;\n this.background = this.DEFAULT_COLOR;\n\n this.defaultForeground = 'rgb(255, 255, 255)';\n this.defaultBackground = 'rgb(0, 0, 0)';\n\n this.bold = false;\n this.faint = false;\n this.italic = false;\n this.blink = false;\n this.underline = false;\n this.strikethrough = false;\n this.inverse = false;\n this.invisible = false;\n this.wcNode = false;\n this.asciiNode = true;\n this.tileData = null;\n\n this.colorPalette = null;\n this.resetColorPalette();\n};\n\n/**\n * If false, we ignore the bold attribute.\n *\n * This is used for fonts that have a bold version that is a different size\n * than the normal weight version.\n */\nhterm.TextAttributes.prototype.enableBold = true;\n\n/**\n * If true, use bright colors (if available) for bold text.\n *\n * This setting is independent of the enableBold setting.\n */\nhterm.TextAttributes.prototype.enableBoldAsBright = true;\n\n/**\n * A sentinel constant meaning \"whatever the default color is in this context\".\n */\nhterm.TextAttributes.prototype.DEFAULT_COLOR = lib.f.createEnum('');\n\n/**\n * A constant string used to specify that source color is context default.\n */\nhterm.TextAttributes.prototype.SRC_DEFAULT = 'default';\n\n\n/**\n * A constant string used to specify that the source of a color is a valid\n * rgb( r, g, b) specifier.\n */\nhterm.TextAttributes.prototype.SRC_RGB = 'rgb';\n\n/**\n * The document object which should own the DOM nodes created by this instance.\n *\n * @param {HTMLDocument} document The parent document.\n */\nhterm.TextAttributes.prototype.setDocument = function(document) {\n this.document_ = document;\n};\n\n/**\n * Create a deep copy of this object.\n *\n * @return {hterm.TextAttributes} A deep copy of this object.\n */\nhterm.TextAttributes.prototype.clone = function() {\n var rv = new hterm.TextAttributes(null);\n\n for (var key in this) {\n rv[key] = this[key];\n }\n\n rv.colorPalette = this.colorPalette.concat();\n return rv;\n};\n\n/**\n * Reset the current set of attributes.\n *\n * This does not affect the palette. Use resetColorPalette() for that.\n * It also doesn't affect the tile data, it's not meant to.\n */\nhterm.TextAttributes.prototype.reset = function() {\n this.foregroundSource = this.SRC_DEFAULT;\n this.backgroundSource = this.SRC_DEFAULT;\n this.foreground = this.DEFAULT_COLOR;\n this.background = this.DEFAULT_COLOR;\n this.bold = false;\n this.faint = false;\n this.italic = false;\n this.blink = false;\n this.underline = false;\n this.strikethrough = false;\n this.inverse = false;\n this.invisible = false;\n this.wcNode = false;\n this.asciiNode = true;\n};\n\n/**\n * Reset the color palette to the default state.\n */\nhterm.TextAttributes.prototype.resetColorPalette = function() {\n this.colorPalette = lib.colors.colorPalette.concat();\n this.syncColors();\n};\n\n/**\n * Test if the current attributes describe unstyled text.\n *\n * @return {boolean} True if the current attributes describe unstyled text.\n */\nhterm.TextAttributes.prototype.isDefault = function() {\n return (this.foregroundSource == this.SRC_DEFAULT &&\n this.backgroundSource == this.SRC_DEFAULT &&\n !this.bold &&\n !this.faint &&\n !this.italic &&\n !this.blink &&\n !this.underline &&\n !this.strikethrough &&\n !this.inverse &&\n !this.invisible &&\n !this.wcNode &&\n this.asciiNode &&\n this.tileData == null);\n};\n\n/**\n * Create a DOM container (a span or a text node) with a style to match the\n * current set of attributes.\n *\n * This method will create a plain text node if the text is unstyled, or\n * an HTML span if the text is styled. Due to lack of monospace wide character\n * fonts on certain systems (e.g. Chrome OS), we need to put each wide character\n * in a span of CSS class '.wc-node' which has double column width.\n * Each vt_tiledata tile is also represented by a span with a single\n * character, with CSS classes '.tile' and '.tile_'.\n *\n * @param {string} opt_textContent Optional text content for the new container.\n * @return {HTMLNode} An HTML span or text nodes styled to match the current\n * attributes.\n */\nhterm.TextAttributes.prototype.createContainer = function(opt_textContent) {\n if (this.isDefault())\n return this.document_.createTextNode(opt_textContent);\n\n var span = this.document_.createElement('span');\n var style = span.style;\n var classes = [];\n\n if (this.foreground != this.DEFAULT_COLOR)\n style.color = this.foreground;\n\n if (this.background != this.DEFAULT_COLOR)\n style.backgroundColor = this.background;\n\n if (this.enableBold && this.bold)\n style.fontWeight = 'bold';\n\n if (this.faint)\n span.faint = true;\n\n if (this.italic)\n style.fontStyle = 'italic';\n\n if (this.blink) {\n classes.push('blink-node');\n span.blinkNode = true;\n }\n\n var textDecoration = '';\n if (this.underline) {\n textDecoration += ' underline';\n span.underline = true;\n }\n if (this.strikethrough) {\n textDecoration += ' line-through';\n span.strikethrough = true;\n }\n if (textDecoration) {\n style.textDecoration = textDecoration;\n }\n\n if (this.wcNode) {\n classes.push('wc-node');\n span.wcNode = true;\n span.asciiNode = false;\n }\n\n if (this.tileData != null) {\n classes.push('tile');\n classes.push('tile_' + this.tileData);\n span.tileNode = true;\n }\n\n if (opt_textContent)\n span.textContent = opt_textContent;\n\n if (classes.length)\n span.className = classes.join(' ');\n\n return span;\n};\n\n/**\n * Tests if the provided object (string, span or text node) has the same\n * style as this TextAttributes instance.\n *\n * This indicates that text with these attributes could be inserted directly\n * into the target DOM node.\n *\n * For the purposes of this method, a string is considered a text node.\n *\n * @param {string|HTMLNode} obj The object to test.\n * @return {boolean} True if the provided container has the same style as\n * this attributes instance.\n */\nhterm.TextAttributes.prototype.matchesContainer = function(obj) {\n if (typeof obj == 'string' || obj.nodeType == 3)\n return this.isDefault();\n\n var style = obj.style;\n\n // We don't want to put multiple characters in a wcNode or a tile.\n // See the comments in createContainer.\n return (!(this.wcNode || obj.wcNode) &&\n this.asciiNode == this.asciiNode &&\n !(this.tileData != null || obj.tileNode) &&\n this.foreground == style.color &&\n this.background == style.backgroundColor &&\n (this.enableBold && this.bold) == !!style.fontWeight &&\n this.blink == obj.blinkNode &&\n this.italic == !!style.fontStyle &&\n !!this.underline == !!obj.underline &&\n !!this.strikethrough == !!obj.strikethrough);\n};\n\nhterm.TextAttributes.prototype.setDefaults = function(foreground, background) {\n this.defaultForeground = foreground;\n this.defaultBackground = background;\n\n this.syncColors();\n};\n\n/**\n * Updates foreground and background properties based on current indices and\n * other state.\n *\n * @param {string} terminalForeground The terminal foreground color for use as\n * inverse text background.\n * @param {string} terminalBackground The terminal background color for use as\n * inverse text foreground.\n *\n */\nhterm.TextAttributes.prototype.syncColors = function() {\n function getBrightIndex(i) {\n if (i < 8) {\n // If the color is from the lower half of the ANSI 16, add 8.\n return i + 8;\n }\n\n // If it's not from the 16 color palette, ignore bold requests. This\n // matches the behavior of gnome-terminal.\n return i;\n }\n\n var foregroundSource = this.foregroundSource;\n var backgroundSource = this.backgroundSource;\n var defaultForeground = this.DEFAULT_COLOR;\n var defaultBackground = this.DEFAULT_COLOR;\n\n if (this.inverse) {\n foregroundSource = this.backgroundSource;\n backgroundSource = this.foregroundSource;\n // We can't inherit the container's color anymore.\n defaultForeground = this.defaultBackground;\n defaultBackground = this.defaultForeground;\n }\n\n if (this.enableBoldAsBright && this.bold) {\n if (foregroundSource != this.SRC_DEFAULT &&\n foregroundSource != this.SRC_RGB) {\n foregroundSource = getBrightIndex(foregroundSource);\n }\n }\n\n if (this.invisible) {\n foregroundSource = backgroundSource;\n defaultForeground = this.defaultBackground;\n }\n\n // Set fore/background colors unless already specified in rgb(r, g, b) form.\n if (foregroundSource != this.SRC_RGB) {\n this.foreground = ((foregroundSource == this.SRC_DEFAULT) ?\n defaultForeground : this.colorPalette[foregroundSource]);\n }\n\n if (this.faint && !this.invisible) {\n var colorToMakeFaint = ((this.foreground == this.DEFAULT_COLOR) ?\n this.defaultForeground : this.foreground);\n this.foreground = lib.colors.mix(colorToMakeFaint, 'rgb(0, 0, 0)', 0.3333);\n }\n\n if (backgroundSource != this.SRC_RGB) {\n this.background = ((backgroundSource == this.SRC_DEFAULT) ?\n defaultBackground : this.colorPalette[backgroundSource]);\n }\n};\n\n/**\n * Static method used to test if the provided objects (strings, spans or\n * text nodes) have the same style.\n *\n * For the purposes of this method, a string is considered a text node.\n *\n * @param {string|HTMLNode} obj1 An object to test.\n * @param {string|HTMLNode} obj2 Another object to test.\n * @return {boolean} True if the containers have the same style.\n */\nhterm.TextAttributes.containersMatch = function(obj1, obj2) {\n if (typeof obj1 == 'string')\n return hterm.TextAttributes.containerIsDefault(obj2);\n\n if (obj1.nodeType != obj2.nodeType)\n return false;\n\n if (obj1.nodeType == 3)\n return true;\n\n var style1 = obj1.style;\n var style2 = obj2.style;\n\n return (style1.color == style2.color &&\n style1.backgroundColor == style2.backgroundColor &&\n style1.fontWeight == style2.fontWeight &&\n style1.fontStyle == style2.fontStyle &&\n style1.textDecoration == style2.textDecoration);\n};\n\n/**\n * Static method to test if a given DOM container represents unstyled text.\n *\n * For the purposes of this method, a string is considered a text node.\n *\n * @param {string|HTMLNode} obj1 An object to test.\n * @return {boolean} True if the object is unstyled.\n */\nhterm.TextAttributes.containerIsDefault = function(obj) {\n return typeof obj == 'string' || obj.nodeType == 3;\n};\n\n/**\n * Static method to get the column width of a node's textContent.\n *\n * @param {HTMLElement} node The HTML element to get the width of textContent\n * from.\n * @return {integer} The column width of the node's textContent.\n */\nhterm.TextAttributes.nodeWidth = function(node) {\n if (!node.asciiNode) {\n return lib.wc.strWidth(node.textContent);\n } else {\n return node.textContent.length;\n }\n}\n\n/**\n * Static method to get the substr of a node's textContent. The start index\n * and substr width are computed in column width.\n *\n * @param {HTMLElement} node The HTML element to get the substr of textContent\n * from.\n * @param {integer} start The starting offset in column width.\n * @param {integer} width The width to capture in column width.\n * @return {integer} The extracted substr of the node's textContent.\n */\nhterm.TextAttributes.nodeSubstr = function(node, start, width) {\n if (!node.asciiNode) {\n return lib.wc.substr(node.textContent, start, width);\n } else {\n return node.textContent.substr(start, width);\n }\n}\n\n/**\n * Static method to get the substring based of a node's textContent. The\n * start index of end index are computed in column width.\n *\n * @param {HTMLElement} node The HTML element to get the substr of textContent\n * from.\n * @param {integer} start The starting offset in column width.\n * @param {integer} end The ending offset in column width.\n * @return {integer} The extracted substring of the node's textContent.\n */\nhterm.TextAttributes.nodeSubstring = function(node, start, end) {\n if (!node.asciiNode) {\n return lib.wc.substring(node.textContent, start, end);\n } else {\n return node.textContent.substring(start, end);\n }\n};\n\n/**\n * Static method to split a string into contiguous runs of single-width\n * characters and runs of double-width characters.\n *\n * @param {string} str The string to split.\n * @return {Array} An array of objects that contain substrings of str, where\n * each substring is either a contiguous runs of single-width characters\n * or a double-width character. For objects that contain a double-width\n * character, its wcNode property is set to true. For objects that contain\n * only ASCII content, its asciiNode property is set to true.\n */\nhterm.TextAttributes.splitWidecharString = function(str) {\n var rv = [];\n var base = 0, length = 0;\n var asciiNode = true;\n\n for (var i = 0; i < str.length;) {\n var c = str.codePointAt(i);\n var increment = (c <= 0xffff) ? 1 : 2;\n if (c < 128) {\n length += increment;\n } else if (lib.wc.charWidth(c) <= 1) {\n length += increment;\n asciiNode = false;\n } else {\n if (length) {\n rv.push({\n str: str.substr(base, length),\n asciiNode: asciiNode,\n });\n asciiNode = true;\n }\n rv.push({\n str: str.substr(i, increment),\n wcNode: true,\n asciiNode: false,\n });\n base = i + increment;\n length = 0;\n }\n i += increment;\n }\n\n if (length) {\n rv.push({\n str: str.substr(base, length),\n asciiNode: asciiNode,\n });\n }\n\n return rv;\n};\n// SOURCE FILE: hterm/js/hterm_vt.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.colors', 'lib.f', 'lib.UTF8Decoder',\n 'hterm.VT.CharacterMap');\n\n/**\n * Constructor for the VT escape sequence interpreter.\n *\n * The interpreter operates on a terminal object capable of performing cursor\n * move operations, painting characters, etc.\n *\n * This interpreter is intended to be compatible with xterm, though it\n * ignores some of the more esoteric escape sequences.\n *\n * Control sequences are documented in hterm/doc/ControlSequences.md.\n *\n * @param {hterm.Terminal} terminal Terminal to use with the interpreter.\n */\nhterm.VT = function(terminal) {\n /**\n * The display terminal object associated with this virtual terminal.\n */\n this.terminal = terminal;\n\n terminal.onMouse = this.onTerminalMouse_.bind(this);\n this.mouseReport = this.MOUSE_REPORT_DISABLED;\n\n // Parse state left over from the last parse. You should use the parseState\n // instance passed into your parse routine, rather than reading\n // this.parseState_ directly.\n this.parseState_ = new hterm.VT.ParseState(this.parseUnknown_);\n\n // Any \"leading modifiers\" for the escape sequence, such as '?', ' ', or the\n // other modifiers handled in this.parseCSI_.\n this.leadingModifier_ = '';\n\n // Any \"trailing modifiers\". Same character set as a leading modifier,\n // except these are found after the numeric arguments.\n this.trailingModifier_ = '';\n\n // Whether or not to respect the escape codes for setting terminal width.\n this.allowColumnWidthChanges_ = false;\n\n // The amount of time we're willing to wait for the end of an OSC sequence.\n this.oscTimeLimit_ = 20000;\n\n // Decoder to maintain UTF-8 decode state.\n this.utf8Decoder_ = new lib.UTF8Decoder();\n\n /**\n * Whether to accept the 8-bit control characters.\n *\n * An 8-bit control character is one with the eighth bit set. These\n * didn't work on 7-bit terminals so they all have two byte equivalents.\n * Most hosts still only use the two-byte versions.\n *\n * We ignore 8-bit control codes by default. This is in order to avoid\n * issues with \"accidental\" usage of codes that need to be terminated.\n * The \"accident\" usually involves cat'ing binary data.\n */\n this.enable8BitControl = false;\n\n /**\n * Whether to allow the OSC 52 sequence to write to the system clipboard.\n */\n this.enableClipboardWrite = true;\n\n /**\n * Respect the host's attempt to change the cursor blink status using\n * the DEC Private mode 12.\n */\n this.enableDec12 = false;\n\n /**\n * The expected encoding method for data received from the host.\n */\n this.characterEncoding = 'utf-8';\n\n /**\n * Max length of an unterminated DCS, OSC, PM or APC sequence before we give\n * up and ignore the code.\n *\n * These all end with a String Terminator (ST, '\\x9c', ESC '\\\\') or\n * (BEL, '\\x07') character, hence the \"string sequence\" moniker.\n */\n this.maxStringSequence = 1024;\n\n /**\n * If true, emit warnings when we encounter a control character or escape\n * sequence that we don't recognize or explicitly ignore.\n */\n this.warnUnimplemented = true;\n\n /**\n * The set of available character maps (used by G0...G3 below).\n */\n this.characterMaps = new hterm.VT.CharacterMaps();\n\n /**\n * The default G0...G3 character maps.\n * We default to the US/ASCII map everywhere as that aligns with other\n * terminals, and it makes it harder to accidentally switch to the graphics\n * character map (Ctrl-N). Any program that wants to use the graphics map\n * will usually select it anyways since there's no guarantee what state any\n * of the maps are in at any particular time.\n */\n this.G0 = this.G1 = this.G2 = this.G3 =\n this.characterMaps.getMap('B');\n\n /**\n * The 7-bit visible character set.\n *\n * This is a mapping from inbound data to display glyph. The GL set\n * contains the 94 bytes from 0x21 to 0x7e.\n *\n * The default GL set is 'B', US ASCII.\n */\n this.GL = 'G0';\n\n /**\n * The 8-bit visible character set.\n *\n * This is a mapping from inbound data to display glyph. The GR set\n * contains the 94 bytes from 0xa1 to 0xfe.\n */\n this.GR = 'G0';\n\n /**\n * The current encoding of the terminal.\n *\n * We only support ECMA-35 and UTF-8, so go with a boolean here.\n * The encoding can be locked too.\n */\n this.codingSystemUtf8_ = false;\n this.codingSystemLocked_ = false;\n\n // Construct a regular expression to match the known one-byte control chars.\n // This is used in parseUnknown_ to quickly scan a string for the next\n // control character.\n this.cc1Pattern_ = null;\n this.updateEncodingState_();\n\n // Saved state used in DECSC.\n //\n // This is a place to store a copy VT state, it is *not* the active state.\n this.savedState_ = new hterm.VT.CursorState(this);\n};\n\n/**\n * No mouse events.\n */\nhterm.VT.prototype.MOUSE_REPORT_DISABLED = 0;\n\n/**\n * DECSET mode 1000.\n *\n * Report mouse down/up events only.\n */\nhterm.VT.prototype.MOUSE_REPORT_CLICK = 1;\n\n/**\n * DECSET mode 1002.\n *\n * Report mouse down/up and movement while a button is down.\n */\nhterm.VT.prototype.MOUSE_REPORT_DRAG = 3;\n\n/**\n * ParseState constructor.\n *\n * This object tracks the current state of the parse. It has fields for the\n * current buffer, position in the buffer, and the parse function.\n *\n * @param {function} defaultFunc The default parser function.\n * @param {string} opt_buf Optional string to use as the current buffer.\n */\nhterm.VT.ParseState = function(defaultFunction, opt_buf) {\n this.defaultFunction = defaultFunction;\n this.buf = opt_buf || null;\n this.pos = 0;\n this.func = defaultFunction;\n this.args = [];\n};\n\n/**\n * Reset the parser function, buffer, and position.\n */\nhterm.VT.ParseState.prototype.reset = function(opt_buf) {\n this.resetParseFunction();\n this.resetBuf(opt_buf || '');\n this.resetArguments();\n};\n\n/**\n * Reset the parser function only.\n */\nhterm.VT.ParseState.prototype.resetParseFunction = function() {\n this.func = this.defaultFunction;\n};\n\n/**\n * Reset the buffer and position only.\n *\n * @param {string} buf Optional new value for buf, defaults to null.\n */\nhterm.VT.ParseState.prototype.resetBuf = function(opt_buf) {\n this.buf = (typeof opt_buf == 'string') ? opt_buf : null;\n this.pos = 0;\n};\n\n/**\n * Reset the arguments list only.\n *\n * @param {string} opt_arg_zero Optional initial value for args[0].\n */\nhterm.VT.ParseState.prototype.resetArguments = function(opt_arg_zero) {\n this.args.length = 0;\n if (typeof opt_arg_zero != 'undefined')\n this.args[0] = opt_arg_zero;\n};\n\n/**\n * Get an argument as an integer.\n *\n * @param {number} argnum The argument number to retrieve.\n */\nhterm.VT.ParseState.prototype.iarg = function(argnum, defaultValue) {\n var str = this.args[argnum];\n if (str) {\n var ret = parseInt(str, 10);\n // An argument of zero is treated as the default value.\n if (ret == 0)\n ret = defaultValue;\n return ret;\n }\n return defaultValue;\n};\n\n/**\n * Advance the parse position.\n *\n * @param {integer} count The number of bytes to advance.\n */\nhterm.VT.ParseState.prototype.advance = function(count) {\n this.pos += count;\n};\n\n/**\n * Return the remaining portion of the buffer without affecting the parse\n * position.\n *\n * @return {string} The remaining portion of the buffer.\n */\nhterm.VT.ParseState.prototype.peekRemainingBuf = function() {\n return this.buf.substr(this.pos);\n};\n\n/**\n * Return the next single character in the buffer without affecting the parse\n * position.\n *\n * @return {string} The next character in the buffer.\n */\nhterm.VT.ParseState.prototype.peekChar = function() {\n return this.buf.substr(this.pos, 1);\n};\n\n/**\n * Return the next single character in the buffer and advance the parse\n * position one byte.\n *\n * @return {string} The next character in the buffer.\n */\nhterm.VT.ParseState.prototype.consumeChar = function() {\n return this.buf.substr(this.pos++, 1);\n};\n\n/**\n * Return true if the buffer is empty, or the position is past the end.\n */\nhterm.VT.ParseState.prototype.isComplete = function() {\n return this.buf == null || this.buf.length <= this.pos;\n};\n\nhterm.VT.CursorState = function(vt) {\n this.vt_ = vt;\n this.save();\n};\n\nhterm.VT.CursorState.prototype.save = function() {\n this.cursor = this.vt_.terminal.saveCursor();\n\n this.textAttributes = this.vt_.terminal.getTextAttributes().clone();\n\n this.GL = this.vt_.GL;\n this.GR = this.vt_.GR;\n\n this.G0 = this.vt_.G0;\n this.G1 = this.vt_.G1;\n this.G2 = this.vt_.G2;\n this.G3 = this.vt_.G3;\n};\n\nhterm.VT.CursorState.prototype.restore = function() {\n this.vt_.terminal.restoreCursor(this.cursor);\n\n this.vt_.terminal.setTextAttributes(this.textAttributes.clone());\n\n this.vt_.GL = this.GL;\n this.vt_.GR = this.GR;\n\n this.vt_.G0 = this.G0;\n this.vt_.G1 = this.G1;\n this.vt_.G2 = this.G2;\n this.vt_.G3 = this.G3;\n};\n\nhterm.VT.prototype.reset = function() {\n this.G0 = this.characterMaps.getMap('B');\n this.G1 = this.characterMaps.getMap('0');\n this.G2 = this.characterMaps.getMap('B');\n this.G3 = this.characterMaps.getMap('B');\n\n this.GL = 'G0';\n this.GR = 'G0';\n\n this.savedState_ = new hterm.VT.CursorState(this);\n\n this.mouseReport = this.MOUSE_REPORT_DISABLED;\n};\n\n/**\n * Handle terminal mouse events.\n *\n * See the \"Mouse Tracking\" section of [xterm].\n */\nhterm.VT.prototype.onTerminalMouse_ = function(e) {\n if (this.mouseReport == this.MOUSE_REPORT_DISABLED)\n return;\n\n // Temporary storage for our response.\n var response;\n\n // Modifier key state.\n var mod = 0;\n if (e.shiftKey)\n mod |= 4;\n if (e.metaKey || (this.terminal.keyboard.altIsMeta && e.altKey))\n mod |= 8;\n if (e.ctrlKey)\n mod |= 16;\n\n // TODO(rginda): We should also support mode 1005 and/or 1006 to extend the\n // coordinate space. Though, after poking around just a little, I wasn't\n // able to get vi or emacs to use either of these modes.\n var x = String.fromCharCode(lib.f.clamp(e.terminalColumn + 32, 32, 255));\n var y = String.fromCharCode(lib.f.clamp(e.terminalRow + 32, 32, 255));\n\n switch (e.type) {\n case 'wheel':\n // Mouse wheel is treated as button 1 or 2 plus an additional 64.\n b = (((e.deltaY * -1) > 0) ? 0 : 1) + 96;\n b |= mod;\n response = '\\x1b[M' + String.fromCharCode(b) + x + y;\n\n // Keep the terminal from scrolling.\n e.preventDefault();\n break;\n\n case 'mousedown':\n // Buttons are encoded as button number plus 32.\n var b = Math.min(e.button, 2) + 32;\n\n // And mix in the modifier keys.\n b |= mod;\n\n response = '\\x1b[M' + String.fromCharCode(b) + x + y;\n break;\n\n case 'mouseup':\n // Mouse up has no indication of which button was released.\n response = '\\x1b[M\\x23' + x + y;\n break;\n\n case 'mousemove':\n if (this.mouseReport == this.MOUSE_REPORT_DRAG && e.buttons) {\n // Standard button bits. The XTerm protocol only reports the first\n // button press (e.g. if left & right are pressed, right is ignored),\n // and it only supports the first three buttons. If none of them are\n // pressed, then XTerm flags it as a release. We'll do the same.\n b = 32;\n\n // Priority here matches XTerm: left, middle, right.\n if (e.buttons & 0x1) {\n // Report left button.\n b += 0;\n } else if (e.buttons & 0x4) {\n // Report middle button.\n b += 1;\n } else if (e.buttons & 0x2) {\n // Report right button.\n b += 2;\n } else {\n // Release higher buttons.\n b += 3;\n }\n\n // Add 32 to indicate mouse motion.\n b += 32;\n\n // And mix in the modifier keys.\n b |= mod;\n\n response = '\\x1b[M' + String.fromCharCode(b) + x + y;\n }\n\n break;\n\n case 'click':\n case 'dblclick':\n break;\n\n default:\n console.error('Unknown mouse event: ' + e.type, e);\n break;\n }\n\n if (response)\n this.terminal.io.sendString(response);\n};\n\n/**\n * Interpret a string of characters, displaying the results on the associated\n * terminal object.\n *\n * The buffer will be decoded according to the 'receive-encoding' preference.\n */\nhterm.VT.prototype.interpret = function(buf) {\n this.parseState_.resetBuf(this.decode(buf));\n\n while (!this.parseState_.isComplete()) {\n var func = this.parseState_.func;\n var pos = this.parseState_.pos;\n var buf = this.parseState_.buf;\n\n this.parseState_.func.call(this, this.parseState_);\n\n if (this.parseState_.func == func && this.parseState_.pos == pos &&\n this.parseState_.buf == buf) {\n throw 'Parser did not alter the state!';\n }\n }\n};\n\n/**\n * Decode a string according to the 'receive-encoding' preference.\n */\nhterm.VT.prototype.decode = function(str) {\n if (this.characterEncoding == 'utf-8')\n return this.decodeUTF8(str);\n\n return str;\n};\n\n/**\n * Encode a UTF-16 string as UTF-8.\n *\n * See also: https://en.wikipedia.org/wiki/UTF-16\n */\nhterm.VT.prototype.encodeUTF8 = function(str) {\n return lib.encodeUTF8(str);\n};\n\n/**\n * Decode a UTF-8 string into UTF-16.\n */\nhterm.VT.prototype.decodeUTF8 = function(str) {\n return this.utf8Decoder_.decode(str);\n};\n\n/**\n * Set the encoding of the terminal.\n *\n * @param {string} encoding The name of the encoding to set.\n */\nhterm.VT.prototype.setEncoding = function(encoding) {\n switch (encoding) {\n default:\n console.warn('Invalid value for \"terminal-encoding\": ' + encoding);\n // Fall through.\n case 'iso-2022':\n this.codingSystemUtf8_ = false;\n this.codingSystemLocked_ = false;\n break;\n case 'utf-8-locked':\n this.codingSystemUtf8_ = true;\n this.codingSystemLocked_ = true;\n break;\n case 'utf-8':\n this.codingSystemUtf8_ = true;\n this.codingSystemLocked_ = false;\n break;\n }\n\n this.updateEncodingState_();\n};\n\n/**\n * Refresh internal state when the encoding changes.\n */\nhterm.VT.prototype.updateEncodingState_ = function() {\n // If we're in UTF8 mode, don't suport 8-bit escape sequences as we'll never\n // see those -- everything should be UTF8!\n var cc1 = Object.keys(hterm.VT.CC1)\n .filter((e) => !this.codingSystemUtf8_ || e.charCodeAt() < 0x80)\n .map((e) => '\\\\x' + lib.f.zpad(e.charCodeAt().toString(16), 2))\n .join('');\n this.cc1Pattern_ = new RegExp(`[${cc1}]`);\n};\n\n/**\n * The default parse function.\n *\n * This will scan the string for the first 1-byte control character (C0/C1\n * characters from [CTRL]). Any plain text coming before the code will be\n * printed to the terminal, then the control character will be dispatched.\n */\nhterm.VT.prototype.parseUnknown_ = function(parseState) {\n var self = this;\n\n function print(str) {\n if (!self.codingSystemUtf8_ && self[self.GL].GL)\n str = self[self.GL].GL(str);\n\n self.terminal.print(str);\n };\n\n // Search for the next contiguous block of plain text.\n var buf = parseState.peekRemainingBuf();\n var nextControl = buf.search(this.cc1Pattern_);\n\n if (nextControl == 0) {\n // We've stumbled right into a control character.\n this.dispatch('CC1', buf.substr(0, 1), parseState);\n parseState.advance(1);\n return;\n }\n\n if (nextControl == -1) {\n // There are no control characters in this string.\n print(buf);\n parseState.reset();\n return;\n }\n\n print(buf.substr(0, nextControl));\n this.dispatch('CC1', buf.substr(nextControl, 1), parseState);\n parseState.advance(nextControl + 1);\n};\n\n/**\n * Parse a Control Sequence Introducer code and dispatch it.\n *\n * See [CSI] for some useful information about these codes.\n */\nhterm.VT.prototype.parseCSI_ = function(parseState) {\n var ch = parseState.peekChar();\n var args = parseState.args;\n\n if (ch >= '@' && ch <= '~') {\n // This is the final character.\n this.dispatch('CSI', this.leadingModifier_ + this.trailingModifier_ + ch,\n parseState);\n parseState.resetParseFunction();\n\n } else if (ch == ';') {\n // Parameter delimiter.\n if (this.trailingModifier_) {\n // Parameter delimiter after the trailing modifier. That's a paddlin'.\n parseState.resetParseFunction();\n\n } else {\n if (!args.length) {\n // They omitted the first param, we need to supply it.\n args.push('');\n }\n\n args.push('');\n }\n\n } else if (ch >= '0' && ch <= '9') {\n // Next byte in the current parameter.\n\n if (this.trailingModifier_) {\n // Numeric parameter after the trailing modifier. That's a paddlin'.\n parseState.resetParseFunction();\n } else {\n if (!args.length) {\n args[0] = ch;\n } else {\n args[args.length - 1] += ch;\n }\n }\n\n } else if (ch >= ' ' && ch <= '?' && ch != ':') {\n // Modifier character.\n if (!args.length) {\n this.leadingModifier_ += ch;\n } else {\n this.trailingModifier_ += ch;\n }\n\n } else if (this.cc1Pattern_.test(ch)) {\n // Control character.\n this.dispatch('CC1', ch, parseState);\n\n } else {\n // Unexpected character in sequence, bail out.\n parseState.resetParseFunction();\n }\n\n parseState.advance(1);\n};\n\n/**\n * Skip over the string until the next String Terminator (ST, 'ESC \\') or\n * Bell (BEL, '\\x07').\n *\n * The string is accumulated in parseState.args[0]. Make sure to reset the\n * arguments (with parseState.resetArguments) before starting the parse.\n *\n * You can detect that parsing in complete by checking that the parse\n * function has changed back to the default parse function.\n *\n * If we encounter more than maxStringSequence characters, we send back\n * the unterminated sequence to be re-parsed with the default parser function.\n *\n * @return {boolean} If true, parsing is ongoing or complete. If false, we've\n * exceeded the max string sequence.\n */\nhterm.VT.prototype.parseUntilStringTerminator_ = function(parseState) {\n var buf = parseState.peekRemainingBuf();\n var nextTerminator = buf.search(/(\\x1b\\\\|\\x07)/);\n var args = parseState.args;\n\n if (!args.length) {\n args[0] = '';\n args[1] = new Date();\n }\n\n if (nextTerminator == -1) {\n // No terminator here, have to wait for the next string.\n\n args[0] += buf;\n\n var abortReason;\n\n if (args[0].length > this.maxStringSequence)\n abortReason = 'too long: ' + args[0].length;\n\n if (args[0].indexOf('\\x1b') != -1)\n abortReason = 'embedded escape: ' + args[0].indexOf('\\x1b');\n\n if (new Date() - args[1] > this.oscTimeLimit_)\n abortReason = 'timeout expired: ' + new Date() - args[1];\n\n if (abortReason) {\n console.log('parseUntilStringTerminator_: aborting: ' + abortReason,\n args[0]);\n parseState.reset(args[0]);\n return false;\n }\n\n parseState.advance(buf.length);\n return true;\n }\n\n if (args[0].length + nextTerminator > this.maxStringSequence) {\n // We found the end of the sequence, but we still think it's too long.\n parseState.reset(args[0] + buf);\n return false;\n }\n\n args[0] += buf.substr(0, nextTerminator);\n\n parseState.resetParseFunction();\n parseState.advance(nextTerminator +\n (buf.substr(nextTerminator, 1) == '\\x1b' ? 2 : 1));\n\n return true;\n};\n\n/**\n * Dispatch to the function that handles a given CC1, ESC, or CSI or VT52 code.\n */\nhterm.VT.prototype.dispatch = function(type, code, parseState) {\n var handler = hterm.VT[type][code];\n if (!handler) {\n if (this.warnUnimplemented)\n console.warn('Unknown ' + type + ' code: ' + JSON.stringify(code));\n return;\n }\n\n if (handler == hterm.VT.ignore) {\n if (this.warnUnimplemented)\n console.warn('Ignored ' + type + ' code: ' + JSON.stringify(code));\n return;\n }\n\n if (type == 'CC1' && code > '\\x7f' && !this.enable8BitControl) {\n // It's kind of a hack to put this here, but...\n //\n // If we're dispatching a 'CC1' code, and it's got the eighth bit set,\n // but we're not supposed to handle 8-bit codes? Just ignore it.\n //\n // This prevents an errant (DCS, '\\x90'), (OSC, '\\x9d'), (PM, '\\x9e') or\n // (APC, '\\x9f') from locking up the terminal waiting for its expected\n // (ST, '\\x9c') or (BEL, '\\x07').\n console.warn('Ignoring 8-bit control code: 0x' +\n code.charCodeAt(0).toString(16));\n return;\n }\n\n handler.apply(this, [parseState, code]);\n};\n\n/**\n * Set one of the ANSI defined terminal mode bits.\n *\n * Invoked in response to SM/RM.\n *\n * Unexpected and unimplemented values are silently ignored.\n */\nhterm.VT.prototype.setANSIMode = function(code, state) {\n if (code == 4) { // Insert Mode (IRM)\n this.terminal.setInsertMode(state);\n } else if (code == 20) { // Automatic Newline (LNM)\n this.terminal.setAutoCarriageReturn(state);\n } else if (this.warnUnimplemented) {\n console.warn('Unimplemented ANSI Mode: ' + code);\n }\n};\n\n/**\n * Set or reset one of the DEC Private modes.\n *\n * Invoked in response to DECSET/DECRST.\n */\nhterm.VT.prototype.setDECMode = function(code, state) {\n switch (parseInt(code, 10)) {\n case 1: // DECCKM\n this.terminal.keyboard.applicationCursor = state;\n break;\n\n case 3: // DECCOLM\n if (this.allowColumnWidthChanges_) {\n this.terminal.setWidth(state ? 132 : 80);\n\n this.terminal.clearHome();\n this.terminal.setVTScrollRegion(null, null);\n }\n break;\n\n case 5: // DECSCNM\n this.terminal.setReverseVideo(state);\n break;\n\n case 6: // DECOM\n this.terminal.setOriginMode(state);\n break;\n\n case 7: // DECAWM\n this.terminal.setWraparound(state);\n break;\n\n case 12: // Start blinking cursor\n if (this.enableDec12)\n this.terminal.setCursorBlink(state);\n break;\n\n case 25: // DECTCEM\n this.terminal.setCursorVisible(state);\n break;\n\n case 30: // Show scrollbar\n this.terminal.setScrollbarVisible(state);\n break;\n\n case 40: // Allow 80 - 132 (DECCOLM) Mode\n this.terminal.allowColumnWidthChanges_ = state;\n break;\n\n case 45: // Reverse-wraparound Mode\n this.terminal.setReverseWraparound(state);\n break;\n\n case 67: // Backarrow key sends backspace (DECBKM)\n this.terminal.keyboard.backspaceSendsBackspace = state;\n break;\n\n case 1000: // Report on mouse clicks only.\n this.mouseReport = (\n state ? this.MOUSE_REPORT_CLICK : this.MOUSE_REPORT_DISABLED);\n this.terminal.syncMouseStyle();\n break;\n\n case 1002: // Report on mouse clicks and drags\n this.mouseReport = (\n state ? this.MOUSE_REPORT_DRAG : this.MOUSE_REPORT_DISABLED);\n this.terminal.syncMouseStyle();\n break;\n\n case 1010: // Scroll to bottom on tty output\n this.terminal.scrollOnOutput = state;\n break;\n\n case 1011: // Scroll to bottom on key press\n this.terminal.scrollOnKeystroke = state;\n break;\n\n case 1036: // Send ESC when Meta modifies a key\n this.terminal.keyboard.metaSendsEscape = state;\n break;\n\n case 1039: // Send ESC when Alt modifies a key\n if (state) {\n if (!this.terminal.keyboard.previousAltSendsWhat_) {\n this.terminal.keyboard.previousAltSendsWhat_ =\n this.terminal.keyboard.altSendsWhat;\n this.terminal.keyboard.altSendsWhat = 'escape';\n }\n } else if (this.terminal.keyboard.previousAltSendsWhat_) {\n this.terminal.keyboard.altSendsWhat =\n this.terminal.keyboard.previousAltSendsWhat_;\n this.terminal.keyboard.previousAltSendsWhat_ = null;\n }\n break;\n\n case 47: // Use Alternate Screen Buffer\n case 1047:\n this.terminal.setAlternateMode(state);\n break;\n\n case 1048: // Save cursor as in DECSC.\n this.savedState_.save();\n\n case 1049: // 1047 + 1048 + clear.\n if (state) {\n this.savedState_.save();\n this.terminal.setAlternateMode(state);\n this.terminal.clear();\n } else {\n this.terminal.setAlternateMode(state);\n this.savedState_.restore();\n }\n\n break;\n\n case 2004: // Bracketed paste mode.\n this.terminal.setBracketedPaste(state);\n break;\n\n default:\n if (this.warnUnimplemented)\n console.warn('Unimplemented DEC Private Mode: ' + code);\n break;\n }\n};\n\n/**\n * Function shared by control characters and escape sequences that are\n * ignored.\n */\nhterm.VT.ignore = function() {};\n\n/**\n * Collection of control characters expressed in a single byte.\n *\n * This includes the characters from the C0 and C1 sets (see [CTRL]) that we\n * care about. Two byte versions of the C1 codes are defined in the\n * hterm.VT.ESC collection.\n *\n * The 'CC1' mnemonic here refers to the fact that these are one-byte Control\n * Codes. It's only used in this source file and not defined in any of the\n * referenced documents.\n */\nhterm.VT.CC1 = {};\n\n/**\n * Collection of two-byte and three-byte sequences starting with ESC.\n */\nhterm.VT.ESC = {};\n\n/**\n * Collection of CSI (Control Sequence Introducer) sequences.\n *\n * These sequences begin with 'ESC [', and may take zero or more arguments.\n */\nhterm.VT.CSI = {};\n\n/**\n * Collection of OSC (Operating System Control) sequences.\n *\n * These sequences begin with 'ESC ]', followed by a function number and a\n * string terminated by either ST or BEL.\n */\nhterm.VT.OSC = {};\n\n/**\n * Collection of VT52 sequences.\n *\n * When in VT52 mode, other sequences are disabled.\n */\nhterm.VT.VT52 = {};\n\n/**\n * Null (NUL).\n *\n * Silently ignored.\n */\nhterm.VT.CC1['\\x00'] = hterm.VT.ignore;\n\n/**\n * Enquiry (ENQ).\n *\n * Transmit answerback message.\n *\n * The default answerback message in xterm is an empty string, so we just\n * ignore this.\n */\nhterm.VT.CC1['\\x05'] = hterm.VT.ignore;\n\n/**\n * Ring Bell (BEL).\n */\nhterm.VT.CC1['\\x07'] = function() {\n this.terminal.ringBell();\n};\n\n/**\n * Backspace (BS).\n *\n * Move the cursor to the left one character position, unless it is at the\n * left margin, in which case no action occurs.\n */\nhterm.VT.CC1['\\x08'] = function() {\n this.terminal.cursorLeft(1);\n};\n\n/**\n * Horizontal Tab (HT).\n *\n * Move the cursor to the next tab stop, or to the right margin if no further\n * tab stops are present on the line.\n */\nhterm.VT.CC1['\\x09'] = function() {\n this.terminal.forwardTabStop();\n};\n\n/**\n * Line Feed (LF).\n *\n * This code causes a line feed or a new line operation. See Automatic\n * Newline (LNM).\n */\nhterm.VT.CC1['\\x0a'] = function() {\n this.terminal.formFeed();\n};\n\n/**\n * Vertical Tab (VT).\n *\n * Interpreted as LF.\n */\nhterm.VT.CC1['\\x0b'] = hterm.VT.CC1['\\x0a'];\n\n/**\n * Form Feed (FF).\n *\n * Interpreted as LF.\n */\nhterm.VT.CC1['\\x0c'] = hterm.VT.CC1['\\x0a'];\n\n/**\n * Carriage Return (CR).\n *\n * Move cursor to the left margin on the current line.\n */\nhterm.VT.CC1['\\x0d'] = function() {\n this.terminal.setCursorColumn(0);\n};\n\n/**\n * Shift Out (SO), aka Lock Shift 0 (LS1).\n *\n * Invoke G1 character set in GL.\n */\nhterm.VT.CC1['\\x0e'] = function() {\n this.GL = 'G1';\n};\n\n/**\n * Shift In (SI), aka Lock Shift 0 (LS0).\n *\n * Invoke G0 character set in GL.\n */\nhterm.VT.CC1['\\x0f'] = function() {\n this.GL = 'G0';\n};\n\n/**\n * Transmit On (XON).\n *\n * Not currently implemented.\n *\n * TODO(rginda): Implement?\n */\nhterm.VT.CC1['\\x11'] = hterm.VT.ignore;\n\n/**\n * Transmit Off (XOFF).\n *\n * Not currently implemented.\n *\n * TODO(rginda): Implement?\n */\nhterm.VT.CC1['\\x13'] = hterm.VT.ignore;\n\n/**\n * Cancel (CAN).\n *\n * If sent during a control sequence, the sequence is immediately terminated\n * and not executed.\n *\n * It also causes the error character to be displayed.\n */\nhterm.VT.CC1['\\x18'] = function(parseState) {\n // If we've shifted in the G1 character set, shift it back out to\n // the default character set.\n if (this.GL == 'G1') {\n this.GL = 'G0';\n }\n parseState.resetParseFunction();\n this.terminal.print('?');\n};\n\n/**\n * Substitute (SUB).\n *\n * Interpreted as CAN.\n */\nhterm.VT.CC1['\\x1a'] = hterm.VT.CC1['\\x18'];\n\n/**\n * Escape (ESC).\n */\nhterm.VT.CC1['\\x1b'] = function(parseState) {\n function parseESC(parseState) {\n var ch = parseState.consumeChar();\n\n if (ch == '\\x1b')\n return;\n\n this.dispatch('ESC', ch, parseState);\n\n if (parseState.func == parseESC)\n parseState.resetParseFunction();\n };\n\n parseState.func = parseESC;\n};\n\n/**\n * Delete (DEL).\n */\nhterm.VT.CC1['\\x7f'] = hterm.VT.ignore;\n\n// 8 bit control characters and their two byte equivalents, below...\n\n/**\n * Index (IND).\n *\n * Like newline, only keep the X position\n */\nhterm.VT.CC1['\\x84'] =\nhterm.VT.ESC['D'] = function() {\n this.terminal.lineFeed();\n};\n\n/**\n * Next Line (NEL).\n *\n * Like newline, but doesn't add lines.\n */\nhterm.VT.CC1['\\x85'] =\nhterm.VT.ESC['E'] = function() {\n this.terminal.setCursorColumn(0);\n this.terminal.cursorDown(1);\n};\n\n/**\n * Horizontal Tabulation Set (HTS).\n */\nhterm.VT.CC1['\\x88'] =\nhterm.VT.ESC['H'] = function() {\n this.terminal.setTabStop(this.terminal.getCursorColumn());\n};\n\n/**\n * Reverse Index (RI).\n *\n * Move up one line.\n */\nhterm.VT.CC1['\\x8d'] =\nhterm.VT.ESC['M'] = function() {\n this.terminal.reverseLineFeed();\n};\n\n/**\n * Single Shift 2 (SS2).\n *\n * Select of G2 Character Set for the next character only.\n *\n * Not currently implemented.\n */\nhterm.VT.CC1['\\x8e'] =\nhterm.VT.ESC['N'] = hterm.VT.ignore;\n\n/**\n * Single Shift 3 (SS3).\n *\n * Select of G3 Character Set for the next character only.\n *\n * Not currently implemented.\n */\nhterm.VT.CC1['\\x8f'] =\nhterm.VT.ESC['O'] = hterm.VT.ignore;\n\n/**\n * Device Control String (DCS).\n *\n * Indicate a DCS sequence. See Device-Control functions in [XTERM].\n * Not currently implemented.\n *\n * TODO(rginda): Consider implementing DECRQSS, the rest don't seem applicable.\n */\nhterm.VT.CC1['\\x90'] =\nhterm.VT.ESC['P'] = function(parseState) {\n parseState.resetArguments();\n parseState.func = this.parseUntilStringTerminator_;\n};\n\n/**\n * Start of Guarded Area (SPA).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x96'] =\nhterm.VT.ESC['V'] = hterm.VT.ignore;\n\n/**\n * End of Guarded Area (EPA).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x97'] =\nhterm.VT.ESC['W'] = hterm.VT.ignore;\n\n/**\n * Start of String (SOS).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x98'] =\nhterm.VT.ESC['X'] = hterm.VT.ignore;\n\n/**\n * Single Character Introducer (SCI, also DECID).\n *\n * Return Terminal ID. Obsolete form of 'ESC [ c' (DA).\n */\nhterm.VT.CC1['\\x9a'] =\nhterm.VT.ESC['Z'] = function() {\n this.terminal.io.sendString('\\x1b[?1;2c');\n};\n\n/**\n * Control Sequence Introducer (CSI).\n *\n * The lead into most escape sequences. See [CSI].\n */\nhterm.VT.CC1['\\x9b'] =\nhterm.VT.ESC['['] = function(parseState) {\n parseState.resetArguments();\n this.leadingModifier_ = '';\n this.trailingModifier_ = '';\n parseState.func = this.parseCSI_;\n};\n\n/**\n * String Terminator (ST).\n *\n * Used to terminate DCS/OSC/PM/APC commands which may take string arguments.\n *\n * We don't directly handle it here, as it's only used to terminate other\n * sequences. See the 'parseUntilStringTerminator_' method.\n */\nhterm.VT.CC1['\\x9c'] =\nhterm.VT.ESC['\\\\'] = hterm.VT.ignore;\n\n/**\n * Operating System Command (OSC).\n *\n * Commands relating to the operating system.\n */\nhterm.VT.CC1['\\x9d'] =\nhterm.VT.ESC[']'] = function(parseState) {\n parseState.resetArguments();\n\n function parseOSC(parseState) {\n if (!this.parseUntilStringTerminator_(parseState)) {\n // The string sequence was too long.\n return;\n }\n\n if (parseState.func == parseOSC) {\n // We're not done parsing the string yet.\n return;\n }\n\n // We're done.\n var ary = parseState.args[0].match(/^(\\d+);(.*)$/);\n if (ary) {\n parseState.args[0] = ary[2];\n this.dispatch('OSC', ary[1], parseState);\n } else {\n console.warn('Invalid OSC: ' + JSON.stringify(parseState.args[0]));\n }\n };\n\n parseState.func = parseOSC;\n};\n\n/**\n * Privacy Message (PM).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x9e'] =\nhterm.VT.ESC['^'] = function(parseState) {\n parseState.resetArguments();\n parseState.func = this.parseUntilStringTerminator_;\n};\n\n/**\n * Application Program Control (APC).\n *\n * Will not implement.\n */\nhterm.VT.CC1['\\x9f'] =\nhterm.VT.ESC['_'] = function(parseState) {\n parseState.resetArguments();\n parseState.func = this.parseUntilStringTerminator_;\n};\n\n/**\n * ESC \\x20 - Unclear to me where these originated, possibly in xterm.\n *\n * Not currently implemented:\n * ESC \\x20 F - Select 7 bit escape codes in responses (S7C1T).\n * ESC \\x20 G - Select 8 bit escape codes in responses (S8C1T).\n * NB: We currently assume S7C1T always.\n *\n * Will not implement:\n * ESC \\x20 L - Set ANSI conformance level 1.\n * ESC \\x20 M - Set ANSI conformance level 2.\n * ESC \\x20 N - Set ANSI conformance level 3.\n */\nhterm.VT.ESC['\\x20'] = function(parseState) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n if (this.warnUnimplemented)\n console.warn('Unimplemented sequence: ESC 0x20 ' + ch);\n parseState.resetParseFunction();\n };\n};\n\n/**\n * DEC 'ESC #' sequences.\n */\nhterm.VT.ESC['#'] = function(parseState) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n if (ch == '8') // DEC Screen Alignment Test (DECALN)\n this.terminal.fill('E');\n\n parseState.resetParseFunction();\n };\n};\n\n/**\n * Designate Other Coding System (DOCS).\n */\nhterm.VT.ESC['%'] = function(parseState) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n\n // If we've locked the encoding, then just eat the bytes and return.\n if (this.codingSystemLocked_) {\n if (ch == '/')\n parseState.consumeChar();\n parseState.resetParseFunction();\n return;\n }\n\n // Process the encoding requests.\n switch (ch) {\n case '@':\n // Switch to ECMA 35.\n this.setEncoding('iso-2022');\n break;\n\n case 'G':\n // Switch to UTF-8.\n this.setEncoding('utf-8');\n break;\n\n case '/':\n // One way transition to something else.\n ch = parseState.consumeChar();\n switch (ch) {\n case 'G': // UTF-8 Level 1.\n case 'H': // UTF-8 Level 2.\n case 'I': // UTF-8 Level 3.\n // We treat all UTF-8 levels the same.\n this.setEncoding('utf-8-locked');\n break;\n\n default:\n if (this.warnUnimplemented)\n console.warn('Unknown ESC % / argument: ' + JSON.stringify(ch));\n break;\n }\n break;\n\n default:\n if (this.warnUnimplemented)\n console.warn('Unknown ESC % argument: ' + JSON.stringify(ch));\n break;\n }\n\n parseState.resetParseFunction();\n };\n};\n\n/**\n * Character Set Selection (SCS).\n *\n * ESC ( Ps - Set G0 character set (VT100).\n * ESC ) Ps - Set G1 character set (VT220).\n * ESC * Ps - Set G2 character set (VT220).\n * ESC + Ps - Set G3 character set (VT220).\n * ESC - Ps - Set G1 character set (VT300).\n * ESC . Ps - Set G2 character set (VT300).\n * ESC / Ps - Set G3 character set (VT300).\n *\n * All other sequences are echoed to the terminal.\n */\nhterm.VT.ESC['('] =\nhterm.VT.ESC[')'] =\nhterm.VT.ESC['*'] =\nhterm.VT.ESC['+'] =\nhterm.VT.ESC['-'] =\nhterm.VT.ESC['.'] =\nhterm.VT.ESC['/'] = function(parseState, code) {\n parseState.func = function(parseState) {\n var ch = parseState.consumeChar();\n if (ch == '\\x1b') {\n parseState.resetParseFunction();\n parseState.func();\n return;\n }\n\n var map = this.characterMaps.getMap(ch);\n if (map !== undefined) {\n if (code == '(') {\n this.G0 = map;\n } else if (code == ')' || code == '-') {\n this.G1 = map;\n } else if (code == '*' || code == '.') {\n this.G2 = map;\n } else if (code == '+' || code == '/') {\n this.G3 = map;\n }\n } else if (this.warnUnimplemented) {\n console.log('Invalid character set for \"' + code + '\": ' + ch);\n }\n\n parseState.resetParseFunction();\n };\n};\n\n/**\n * Back Index (DECBI).\n *\n * VT420 and up. Not currently implemented.\n */\nhterm.VT.ESC['6'] = hterm.VT.ignore;\n\n/**\n * Save Cursor (DECSC).\n */\nhterm.VT.ESC['7'] = function() {\n this.savedState_.save();\n};\n\n/**\n * Restore Cursor (DECRC).\n */\nhterm.VT.ESC['8'] = function() {\n this.savedState_.restore();\n};\n\n/**\n * Forward Index (DECFI).\n *\n * VT210 and up. Not currently implemented.\n */\nhterm.VT.ESC['9'] = hterm.VT.ignore;\n\n/**\n * Application keypad (DECKPAM).\n */\nhterm.VT.ESC['='] = function() {\n this.terminal.keyboard.applicationKeypad = true;\n};\n\n/**\n * Normal keypad (DECKPNM).\n */\nhterm.VT.ESC['>'] = function() {\n this.terminal.keyboard.applicationKeypad = false;\n};\n\n/**\n * Cursor to lower left corner of screen.\n *\n * Will not implement.\n *\n * This is only recognized by xterm when the hpLowerleftBugCompat resource is\n * set.\n */\nhterm.VT.ESC['F'] = hterm.VT.ignore;\n\n/**\n * Full Reset (RIS).\n */\nhterm.VT.ESC['c'] = function() {\n this.reset();\n this.terminal.reset();\n};\n\n/**\n * Memory lock/unlock.\n *\n * Will not implement.\n */\nhterm.VT.ESC['l'] =\nhterm.VT.ESC['m'] = hterm.VT.ignore;\n\n/**\n * Lock Shift 2 (LS2)\n *\n * Invoke the G2 Character Set as GL.\n */\nhterm.VT.ESC['n'] = function() {\n this.GL = 'G2';\n};\n\n/**\n * Lock Shift 3 (LS3)\n *\n * Invoke the G3 Character Set as GL.\n */\nhterm.VT.ESC['o'] = function() {\n this.GL = 'G3';\n};\n\n/**\n * Lock Shift 2, Right (LS3R)\n *\n * Invoke the G3 Character Set as GR.\n */\nhterm.VT.ESC['|'] = function() {\n this.GR = 'G3';\n};\n\n/**\n * Lock Shift 2, Right (LS2R)\n *\n * Invoke the G2 Character Set as GR.\n */\nhterm.VT.ESC['}'] = function() {\n this.GR = 'G2';\n};\n\n/**\n * Lock Shift 1, Right (LS1R)\n *\n * Invoke the G1 Character Set as GR.\n */\nhterm.VT.ESC['~'] = function() {\n this.GR = 'G1';\n};\n\n/**\n * Change icon name and window title.\n *\n * We only change the window title.\n */\nhterm.VT.OSC['0'] = function(parseState) {\n this.terminal.setWindowTitle(parseState.args[0]);\n};\n\n/**\n * Change window title.\n */\nhterm.VT.OSC['2'] = hterm.VT.OSC['0'];\n\n/**\n * Set/read color palette.\n */\nhterm.VT.OSC['4'] = function(parseState) {\n // Args come in as a single 'index1;rgb1 ... ;indexN;rgbN' string.\n // We split on the semicolon and iterate through the pairs.\n var args = parseState.args[0].split(';');\n\n var pairCount = parseInt(args.length / 2);\n var colorPalette = this.terminal.getTextAttributes().colorPalette;\n var responseArray = [];\n\n for (var pairNumber = 0; pairNumber < pairCount; ++pairNumber) {\n var colorIndex = parseInt(args[pairNumber * 2]);\n var colorValue = args[pairNumber * 2 + 1];\n\n if (colorIndex >= colorPalette.length)\n continue;\n\n if (colorValue == '?') {\n // '?' means we should report back the current color value.\n colorValue = lib.colors.rgbToX11(colorPalette[colorIndex]);\n if (colorValue)\n responseArray.push(colorIndex + ';' + colorValue);\n\n continue;\n }\n\n colorValue = lib.colors.x11ToCSS(colorValue);\n if (colorValue)\n colorPalette[colorIndex] = colorValue;\n }\n\n if (responseArray.length)\n this.terminal.io.sendString('\\x1b]4;' + responseArray.join(';') + '\\x07');\n};\n\n/**\n * iTerm2 growl notifications.\n */\nhterm.VT.OSC['9'] = function(parseState) {\n // This just dumps the entire string as the message.\n hterm.notify({'body': parseState.args[0]});\n};\n\n/**\n * Change VT100 text foreground color.\n */\nhterm.VT.OSC['10'] = function(parseState) {\n // Args come in as a single string, but extra args will chain to the following\n // OSC sequences.\n var args = parseState.args[0].split(';');\n if (!args)\n return;\n\n var colorArg;\n var colorX11 = lib.colors.x11ToCSS(args.shift());\n if (colorX11)\n this.terminal.setForegroundColor(colorX11);\n\n if (args.length > 0) {\n parseState.args[0] = args.join(';');\n hterm.VT.OSC['11'].apply(this, [parseState]);\n }\n};\n\n/**\n * Change VT100 text background color.\n */\nhterm.VT.OSC['11'] = function(parseState) {\n // Args come in as a single string, but extra args will chain to the following\n // OSC sequences.\n var args = parseState.args[0].split(';');\n if (!args)\n return;\n\n var colorArg;\n var colorX11 = lib.colors.x11ToCSS(args.shift());\n if (colorX11)\n this.terminal.setBackgroundColor(colorX11);\n\n /* Note: If we support OSC 12+, we'd chain it here.\n if (args.length > 0) {\n parseState.args[0] = args.join(';');\n hterm.VT.OSC['12'].apply(this, [parseState]);\n }\n */\n};\n\n/**\n * Set the cursor shape.\n *\n * Parameter is expected to be in the form \"CursorShape=number\", where number is\n * one of:\n *\n * 0 - Block\n * 1 - I-Beam\n * 2 - Underline\n *\n * This is a bit of a de-facto standard supported by iTerm 2 and Konsole. See\n * also: DECSCUSR.\n *\n * Invalid numbers will restore the cursor to the block shape.\n */\nhterm.VT.OSC['50'] = function(parseState) {\n var args = parseState.args[0].match(/CursorShape=(.)/i);\n if (!args) {\n console.warn('Could not parse OSC 50 args: ' + parseState.args[0]);\n return;\n }\n\n switch (args[1]) {\n case '1': // CursorShape=1: I-Beam.\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BEAM);\n break;\n\n case '2': // CursorShape=2: Underline.\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.UNDERLINE);\n break;\n\n default: // CursorShape=0: Block.\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BLOCK);\n }\n};\n\n/**\n * Set/read system clipboard.\n *\n * Read is not implemented due to security considerations. A remote app\n * that is able to both write and read to the clipboard could essentially\n * take over your session.\n *\n * The clipboard data will be decoded according to the 'receive-encoding'\n * preference.\n */\nhterm.VT.OSC['52'] = function(parseState) {\n // Args come in as a single 'clipboard;b64-data' string. The clipboard\n // parameter is used to select which of the X clipboards to address. Since\n // we're not integrating with X, we treat them all the same.\n var args = parseState.args[0].match(/^[cps01234567]*;(.*)/);\n if (!args)\n return;\n\n var data = window.atob(args[1]);\n if (data)\n this.terminal.copyStringToClipboard(this.decode(data));\n};\n\n/**\n * URxvt perl modules.\n *\n * This is the escape system used by rxvt-unicode and its perl modules.\n * Obviously we don't support perl or custom modules, so we list a few common\n * ones that we find useful.\n *\n * Technically there is no format here, but most modules obey:\n * ;\n */\nhterm.VT.OSC['777'] = function(parseState) {\n var ary;\n var urxvtMod = parseState.args[0].split(';', 1)[0];\n\n switch (urxvtMod) {\n case 'notify':\n // Format:\n // notify;title;message\n var title, message;\n ary = parseState.args[0].match(/^[^;]+;([^;]*)(;([\\s\\S]*))?$/);\n if (ary) {\n title = ary[1];\n message = ary[3];\n }\n hterm.notify({'title': title, 'body': message});\n break;\n\n default:\n console.warn('Unknown urxvt module: ' + parseState.args[0]);\n break;\n }\n};\n\n/**\n * Insert (blank) characters (ICH).\n */\nhterm.VT.CSI['@'] = function(parseState) {\n this.terminal.insertSpace(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Up (CUU).\n */\nhterm.VT.CSI['A'] = function(parseState) {\n this.terminal.cursorUp(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Down (CUD).\n */\nhterm.VT.CSI['B'] = function(parseState) {\n this.terminal.cursorDown(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Forward (CUF).\n */\nhterm.VT.CSI['C'] = function(parseState) {\n this.terminal.cursorRight(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Backward (CUB).\n */\nhterm.VT.CSI['D'] = function(parseState) {\n this.terminal.cursorLeft(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Next Line (CNL).\n *\n * This is like Cursor Down, except the cursor moves to the beginning of the\n * line as well.\n */\nhterm.VT.CSI['E'] = function(parseState) {\n this.terminal.cursorDown(parseState.iarg(0, 1));\n this.terminal.setCursorColumn(0);\n};\n\n/**\n * Cursor Preceding Line (CPL).\n *\n * This is like Cursor Up, except the cursor moves to the beginning of the\n * line as well.\n */\nhterm.VT.CSI['F'] = function(parseState) {\n this.terminal.cursorUp(parseState.iarg(0, 1));\n this.terminal.setCursorColumn(0);\n};\n\n/**\n * Cursor Character Absolute (CHA).\n */\nhterm.VT.CSI['G'] = function(parseState) {\n this.terminal.setCursorColumn(parseState.iarg(0, 1) - 1);\n};\n\n/**\n * Cursor Position (CUP).\n */\nhterm.VT.CSI['H'] = function(parseState) {\n this.terminal.setCursorPosition(parseState.iarg(0, 1) - 1,\n parseState.iarg(1, 1) - 1);\n};\n\n/**\n * Cursor Forward Tabulation (CHT).\n */\nhterm.VT.CSI['I'] = function(parseState) {\n var count = parseState.iarg(0, 1);\n count = lib.f.clamp(count, 1, this.terminal.screenSize.width);\n for (var i = 0; i < count; i++) {\n this.terminal.forwardTabStop();\n }\n};\n\n/**\n * Erase in Display (ED, DECSED).\n */\nhterm.VT.CSI['J'] =\nhterm.VT.CSI['?J'] = function(parseState, code) {\n var arg = parseState.args[0];\n\n if (!arg || arg == 0) {\n this.terminal.eraseBelow();\n } else if (arg == 1) {\n this.terminal.eraseAbove();\n } else if (arg == 2) {\n this.terminal.clear();\n } else if (arg == 3) {\n // The xterm docs say this means \"Erase saved lines\", but we'll just clear\n // the display since killing the scrollback seems rude.\n this.terminal.clear();\n }\n};\n\n/**\n * Erase in line (EL, DECSEL).\n */\nhterm.VT.CSI['K'] =\nhterm.VT.CSI['?K'] = function(parseState, code) {\n var arg = parseState.args[0];\n\n if (!arg || arg == 0) {\n this.terminal.eraseToRight();\n } else if (arg == 1) {\n this.terminal.eraseToLeft();\n } else if (arg == 2) {\n this.terminal.eraseLine();\n }\n};\n\n/**\n * Insert Lines (IL).\n */\nhterm.VT.CSI['L'] = function(parseState) {\n this.terminal.insertLines(parseState.iarg(0, 1));\n};\n\n/**\n * Delete Lines (DL).\n */\nhterm.VT.CSI['M'] = function(parseState) {\n this.terminal.deleteLines(parseState.iarg(0, 1));\n};\n\n/**\n * Delete Characters (DCH).\n *\n * This command shifts the line contents left, starting at the cursor position.\n */\nhterm.VT.CSI['P'] = function(parseState) {\n this.terminal.deleteChars(parseState.iarg(0, 1));\n};\n\n/**\n * Scroll Up (SU).\n */\nhterm.VT.CSI['S'] = function(parseState) {\n this.terminal.vtScrollUp(parseState.iarg(0, 1));\n};\n\n/**\n * Scroll Down (SD).\n * Also 'Initiate highlight mouse tracking'. Will not implement this part.\n */\nhterm.VT.CSI['T'] = function(parseState) {\n if (parseState.args.length <= 1)\n this.terminal.vtScrollDown(parseState.iarg(0, 1));\n};\n\n/**\n * Reset one or more features of the title modes to the default value.\n *\n * ESC [ > Ps T\n *\n * Normally, \"reset\" disables the feature. It is possible to disable the\n * ability to reset features by compiling a different default for the title\n * modes into xterm.\n *\n * Ps values:\n * 0 - Do not set window/icon labels using hexadecimal.\n * 1 - Do not query window/icon labels using hexadecimal.\n * 2 - Do not set window/icon labels using UTF-8.\n * 3 - Do not query window/icon labels using UTF-8.\n *\n * Will not implement.\n */\nhterm.VT.CSI['>T'] = hterm.VT.ignore;\n\n/**\n * Erase Characters (ECH).\n */\nhterm.VT.CSI['X'] = function(parseState) {\n this.terminal.eraseToRight(parseState.iarg(0, 1));\n};\n\n/**\n * Cursor Backward Tabulation (CBT).\n */\nhterm.VT.CSI['Z'] = function(parseState) {\n var count = parseState.iarg(0, 1);\n count = lib.f.clamp(count, 1, this.terminal.screenSize.width);\n for (var i = 0; i < count; i++) {\n this.terminal.backwardTabStop();\n }\n};\n\n/**\n * Character Position Absolute (HPA).\n *\n * Same as Cursor Character Absolute (CHA).\n */\nhterm.VT.CSI['`'] = hterm.VT.CSI['G'];\n\n/**\n * Character Position Relative (HPR).\n */\nhterm.VT.CSI['a'] = function(parseState) {\n this.terminal.setCursorColumn(this.terminal.getCursorColumn() +\n parseState.iarg(0, 1));\n};\n\n/**\n * Repeat the preceding graphic character.\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['b'] = hterm.VT.ignore;\n\n/**\n * Send Device Attributes (Primary DA).\n *\n * TODO(rginda): This is hardcoded to send back 'VT100 with Advanced Video\n * Option', but it may be more correct to send a VT220 response once\n * we fill out the 'Not currently implemented' parts.\n */\nhterm.VT.CSI['c'] = function(parseState) {\n if (!parseState.args[0] || parseState.args[0] == 0) {\n this.terminal.io.sendString('\\x1b[?1;2c');\n }\n};\n\n/**\n * Send Device Attributes (Secondary DA).\n *\n * TODO(rginda): This is hardcoded to send back 'VT100' but it may be more\n * correct to send a VT220 response once we fill out more 'Not currently\n * implemented' parts.\n */\nhterm.VT.CSI['>c'] = function(parseState) {\n this.terminal.io.sendString('\\x1b[>0;256;0c');\n};\n\n/**\n * Line Position Absolute (VPA).\n */\nhterm.VT.CSI['d'] = function(parseState) {\n this.terminal.setAbsoluteCursorRow(parseState.iarg(0, 1) - 1);\n};\n\n/**\n * Horizontal and Vertical Position (HVP).\n *\n * Same as Cursor Position (CUP).\n */\nhterm.VT.CSI['f'] = hterm.VT.CSI['H'];\n\n/**\n * Tab Clear (TBC).\n */\nhterm.VT.CSI['g'] = function(parseState) {\n if (!parseState.args[0] || parseState.args[0] == 0) {\n // Clear tab stop at cursor.\n this.terminal.clearTabStopAtCursor(false);\n } else if (parseState.args[0] == 3) {\n // Clear all tab stops.\n this.terminal.clearAllTabStops();\n }\n};\n\n/**\n * Set Mode (SM).\n */\nhterm.VT.CSI['h'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setANSIMode(parseState.args[i], true);\n }\n};\n\n/**\n * DEC Private Mode Set (DECSET).\n */\nhterm.VT.CSI['?h'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setDECMode(parseState.args[i], true);\n }\n};\n\n/**\n * Media Copy (MC).\n * Media Copy (MC, DEC Specific).\n *\n * These commands control the printer. Will not implement.\n */\nhterm.VT.CSI['i'] =\nhterm.VT.CSI['?i'] = hterm.VT.ignore;\n\n/**\n * Reset Mode (RM).\n */\nhterm.VT.CSI['l'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setANSIMode(parseState.args[i], false);\n }\n};\n\n/**\n * DEC Private Mode Reset (DECRST).\n */\nhterm.VT.CSI['?l'] = function(parseState) {\n for (var i = 0; i < parseState.args.length; i++) {\n this.setDECMode(parseState.args[i], false);\n }\n};\n\n/**\n * Character Attributes (SGR).\n *\n * Iterate through the list of arguments, applying the attribute changes based\n * on the argument value...\n */\nhterm.VT.CSI['m'] = function(parseState) {\n function get256(i) {\n if (parseState.args.length < i + 2 || parseState.args[i + 1] != 5)\n return null;\n\n return parseState.iarg(i + 2, 0);\n }\n\n function getTrueColor(i) {\n if (parseState.args.length < i + 5 || parseState.args[i + 1] != 2)\n return null;\n var r = parseState.iarg(i + 2, 0);\n var g = parseState.iarg(i + 3, 0);\n var b = parseState.iarg(i + 4, 0);\n\n return 'rgb(' + r + ' ,' + g + ' ,' + b + ')';\n }\n\n var attrs = this.terminal.getTextAttributes();\n\n if (!parseState.args.length) {\n attrs.reset();\n return;\n }\n\n for (var i = 0; i < parseState.args.length; i++) {\n var arg = parseState.iarg(i, 0);\n\n if (arg < 30) {\n if (arg == 0) { // Normal (default).\n attrs.reset();\n } else if (arg == 1) { // Bold.\n attrs.bold = true;\n } else if (arg == 2) { // Faint.\n attrs.faint = true;\n } else if (arg == 3) { // Italic.\n attrs.italic = true;\n } else if (arg == 4) { // Underline.\n attrs.underline = true;\n } else if (arg == 5) { // Blink.\n attrs.blink = true;\n } else if (arg == 7) { // Inverse.\n attrs.inverse = true;\n } else if (arg == 8) { // Invisible.\n attrs.invisible = true;\n } else if (arg == 9) { // Crossed out.\n attrs.strikethrough = true;\n } else if (arg == 22) { // Not bold & not faint.\n attrs.bold = false;\n attrs.faint = false;\n } else if (arg == 23) { // Not italic.\n attrs.italic = false;\n } else if (arg == 24) { // Not underlined.\n attrs.underline = false;\n } else if (arg == 25) { // Not blink.\n attrs.blink = false;\n } else if (arg == 27) { // Steady.\n attrs.inverse = false;\n } else if (arg == 28) { // Visible.\n attrs.invisible = false;\n } else if (arg == 29) { // Not crossed out.\n attrs.strikethrough = false;\n }\n\n } else if (arg < 50) {\n // Select fore/background color from bottom half of 16 color palette\n // or from the 256 color palette or alternative specify color in fully\n // qualified rgb(r, g, b) form.\n if (arg < 38) {\n attrs.foregroundSource = arg - 30;\n\n } else if (arg == 38) {\n // First check for true color definition\n var trueColor = getTrueColor(i);\n if (trueColor != null) {\n attrs.foregroundSource = attrs.SRC_RGB;\n attrs.foreground = trueColor;\n\n i += 5;\n } else {\n // Check for 256 color\n var c = get256(i);\n if (c == null)\n break;\n\n i += 2;\n\n if (c >= attrs.colorPalette.length)\n continue;\n\n attrs.foregroundSource = c;\n }\n\n } else if (arg == 39) {\n attrs.foregroundSource = attrs.SRC_DEFAULT;\n\n } else if (arg < 48) {\n attrs.backgroundSource = arg - 40;\n\n } else if (arg == 48) {\n // First check for true color definition\n var trueColor = getTrueColor(i);\n if (trueColor != null) {\n attrs.backgroundSource = attrs.SRC_RGB;\n attrs.background = trueColor;\n\n i += 5;\n } else {\n // Check for 256 color\n var c = get256(i);\n if (c == null)\n break;\n\n i += 2;\n\n if (c >= attrs.colorPalette.length)\n continue;\n\n attrs.backgroundSource = c;\n }\n } else {\n attrs.backgroundSource = attrs.SRC_DEFAULT;\n }\n\n } else if (arg >= 90 && arg <= 97) {\n attrs.foregroundSource = arg - 90 + 8;\n\n } else if (arg >= 100 && arg <= 107) {\n attrs.backgroundSource = arg - 100 + 8;\n }\n }\n\n attrs.setDefaults(this.terminal.getForegroundColor(),\n this.terminal.getBackgroundColor());\n};\n\n/**\n * Set xterm-specific keyboard modes.\n *\n * Will not implement.\n */\nhterm.VT.CSI['>m'] = hterm.VT.ignore;\n\n/**\n * Device Status Report (DSR, DEC Specific).\n *\n * 5 - Status Report. Result (OK) is CSI 0 n\n * 6 - Report Cursor Position (CPR) [row;column]. Result is CSI r ; c R\n */\nhterm.VT.CSI['n'] = function(parseState) {\n if (parseState.args[0] == 5) {\n this.terminal.io.sendString('\\x1b0n');\n } else if (parseState.args[0] == 6) {\n var row = this.terminal.getCursorRow() + 1;\n var col = this.terminal.getCursorColumn() + 1;\n this.terminal.io.sendString('\\x1b[' + row + ';' + col + 'R');\n }\n};\n\n/**\n * Disable modifiers which may be enabled via CSI['>m'].\n *\n * Will not implement.\n */\nhterm.VT.CSI['>n'] = hterm.VT.ignore;\n\n/**\n * Device Status Report (DSR, DEC Specific).\n *\n * 6 - Report Cursor Position (CPR) [row;column] as CSI ? r ; c R\n * 15 - Report Printer status as CSI ? 1 0 n (ready) or\n * CSI ? 1 1 n (not ready).\n * 25 - Report UDK status as CSI ? 2 0 n (unlocked) or CSI ? 2 1 n (locked).\n * 26 - Report Keyboard status as CSI ? 2 7 ; 1 ; 0 ; 0 n (North American).\n * The last two parameters apply to VT400 & up, and denote keyboard ready\n * and LK01 respectively.\n * 53 - Report Locator status as CSI ? 5 3 n Locator available, if compiled-in,\n * or CSI ? 5 0 n No Locator, if not.\n */\nhterm.VT.CSI['?n'] = function(parseState) {\n if (parseState.args[0] == 6) {\n var row = this.terminal.getCursorRow() + 1;\n var col = this.terminal.getCursorColumn() + 1;\n this.terminal.io.sendString('\\x1b[' + row + ';' + col + 'R');\n } else if (parseState.args[0] == 15) {\n this.terminal.io.sendString('\\x1b[?11n');\n } else if (parseState.args[0] == 25) {\n this.terminal.io.sendString('\\x1b[?21n');\n } else if (parseState.args[0] == 26) {\n this.terminal.io.sendString('\\x1b[?12;1;0;0n');\n } else if (parseState.args[0] == 53) {\n this.terminal.io.sendString('\\x1b[?50n');\n }\n};\n\n/**\n * This is used by xterm to decide whether to hide the pointer cursor as the\n * user types.\n *\n * Valid values for the parameter:\n * 0 - Never hide the pointer.\n * 1 - Hide if the mouse tracking mode is not enabled.\n * 2 - Always hide the pointer.\n *\n * If no parameter is given, xterm uses the default, which is 1.\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['>p'] = hterm.VT.ignore;\n\n/**\n * Soft terminal reset (DECSTR).\n */\nhterm.VT.CSI['!p'] = function() {\n this.reset();\n this.terminal.softReset();\n};\n\n/**\n * Request ANSI Mode (DECRQM).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['$p'] = hterm.VT.ignore;\nhterm.VT.CSI['?$p'] = hterm.VT.ignore;\n\n/**\n * Set conformance level (DECSCL).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\"p'] = hterm.VT.ignore;\n\n/**\n * Load LEDs (DECLL).\n *\n * Not currently implemented. Could be implemented as virtual LEDs overlaying\n * the terminal if anyone cares.\n */\nhterm.VT.CSI['q'] = hterm.VT.ignore;\n\n/**\n * Set cursor style (DECSCUSR, VT520).\n */\nhterm.VT.CSI[' q'] = function(parseState) {\n var arg = parseState.args[0];\n\n if (arg == 0 || arg == 1) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BLOCK);\n this.terminal.setCursorBlink(true);\n } else if (arg == 2) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BLOCK);\n this.terminal.setCursorBlink(false);\n } else if (arg == 3) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.UNDERLINE);\n this.terminal.setCursorBlink(true);\n } else if (arg == 4) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.UNDERLINE);\n this.terminal.setCursorBlink(false);\n } else if (arg == 5) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BEAM);\n this.terminal.setCursorBlink(true);\n } else if (arg == 6) {\n this.terminal.setCursorShape(hterm.Terminal.cursorShape.BEAM);\n this.terminal.setCursorBlink(false);\n } else {\n console.warn('Unknown cursor style: ' + arg);\n }\n};\n\n/**\n * Select character protection attribute (DECSCA).\n *\n * Will not implement.\n */\nhterm.VT.CSI['\"q'] = hterm.VT.ignore;\n\n/**\n * Set Scrolling Region (DECSTBM).\n */\nhterm.VT.CSI['r'] = function(parseState) {\n var args = parseState.args;\n var scrollTop = args[0] ? parseInt(args[0], 10) -1 : null;\n var scrollBottom = args[1] ? parseInt(args[1], 10) - 1 : null;\n this.terminal.setVTScrollRegion(scrollTop, scrollBottom);\n this.terminal.setCursorPosition(0, 0);\n};\n\n/**\n * Restore DEC Private Mode Values.\n *\n * Will not implement.\n */\nhterm.VT.CSI['?r'] = hterm.VT.ignore;\n\n/**\n * Change Attributes in Rectangular Area (DECCARA)\n *\n * Will not implement.\n */\nhterm.VT.CSI['$r'] = hterm.VT.ignore;\n\n/**\n * Save cursor (ANSI.SYS)\n */\nhterm.VT.CSI['s'] = function() {\n this.savedState_.save();\n};\n\n/**\n * Save DEC Private Mode Values.\n *\n * Will not implement.\n */\nhterm.VT.CSI['?s'] = hterm.VT.ignore;\n\n/**\n * Window manipulation (from dtterm, as well as extensions).\n *\n * Will not implement.\n */\nhterm.VT.CSI['t'] = hterm.VT.ignore;\n\n/**\n * Reverse Attributes in Rectangular Area (DECRARA).\n *\n * Will not implement.\n */\nhterm.VT.CSI['$t'] = hterm.VT.ignore;\n\n/**\n * Set one or more features of the title modes.\n *\n * Will not implement.\n */\nhterm.VT.CSI['>t'] = hterm.VT.ignore;\n\n/**\n * Set warning-bell volume (DECSWBV, VT520).\n *\n * Will not implement.\n */\nhterm.VT.CSI[' t'] = hterm.VT.ignore;\n\n/**\n * Restore cursor (ANSI.SYS).\n */\nhterm.VT.CSI['u'] = function() {\n this.savedState_.restore();\n};\n\n/**\n * Set margin-bell volume (DECSMBV, VT520).\n *\n * Will not implement.\n */\nhterm.VT.CSI[' u'] = hterm.VT.ignore;\n\n/**\n * Copy Rectangular Area (DECCRA, VT400 and up).\n *\n * Will not implement.\n */\nhterm.VT.CSI['$v'] = hterm.VT.ignore;\n\n/**\n * Enable Filter Rectangle (DECEFR).\n *\n * Will not implement.\n */\nhterm.VT.CSI['\\'w'] = hterm.VT.ignore;\n\n/**\n * Request Terminal Parameters (DECREQTPARM).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['x'] = hterm.VT.ignore;\n\n/**\n * Select Attribute Change Extent (DECSACE).\n *\n * Will not implement.\n */\nhterm.VT.CSI['*x'] = hterm.VT.ignore;\n\n/**\n * Fill Rectangular Area (DECFRA), VT420 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['$x'] = hterm.VT.ignore;\n\n/**\n * vt_tiledata (as used by NAOhack and UnNetHack)\n * (see https://nethackwiki.com/wiki/Vt_tiledata for more info)\n *\n * Implemented as far as we care (start a glyph and end a glyph).\n */\nhterm.VT.CSI['z'] = function(parseState) {\n if (parseState.args.length < 1)\n return;\n var arg = parseState.args[0];\n if (arg == 0) {\n // Start a glyph (one parameter, the glyph number).\n if (parseState.args.length < 2)\n return;\n this.terminal.getTextAttributes().tileData = parseState.args[1];\n } else if (arg == 1) {\n // End a glyph.\n this.terminal.getTextAttributes().tileData = null;\n }\n};\n\n/**\n * Enable Locator Reporting (DECELR).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\\'z'] = hterm.VT.ignore;\n\n/**\n * Erase Rectangular Area (DECERA), VT400 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['$z'] = hterm.VT.ignore;\n\n/**\n * Select Locator Events (DECSLE).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\\'{'] = hterm.VT.ignore;\n\n/**\n * Request Locator Position (DECRQLP).\n *\n * Not currently implemented.\n */\nhterm.VT.CSI['\\'|'] = hterm.VT.ignore;\n\n/**\n * Insert Columns (DECIC), VT420 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['\\'}'] = hterm.VT.ignore;\n\n/**\n * Delete P s Columns (DECDC), VT420 and up.\n *\n * Will not implement.\n */\nhterm.VT.CSI['\\'~'] = hterm.VT.ignore;\n// SOURCE FILE: hterm/js/hterm_vt_character_map.js\n// Copyright (c) 2012 The Chromium OS Authors. All rights reserved.\n// Use of this source code is governed by a BSD-style license that can be\n// found in the LICENSE file.\n\n'use strict';\n\nlib.rtdep('lib.f');\n\n/**\n * Character map object.\n *\n * Mapping from received to display character, used depending on the active\n * VT character set.\n *\n * GR maps are not currently supported.\n *\n * @param {string} description A human readable description of this map.\n * @param {Object} glmap The GL mapping from input to output characters.\n */\nhterm.VT.CharacterMap = function(description, glmap) {\n /**\n * Short description for this character set, useful for debugging.\n */\n this.description = description;\n\n /**\n * The function to call to when this map is installed in GL.\n */\n this.GL = null;\n\n // Always keep an unmodified reference to the map.\n // This allows us to sanely reset back to the original state.\n this.glmapBase_ = glmap;\n\n // Now sync the internal state as needed.\n this.sync_();\n};\n\n/**\n * Internal helper for resyncing internal state.\n *\n * Used when the mappings change.\n *\n * @param {Object?} opt_glmap Additional mappings to overlay on top of the\n * base mapping.\n */\nhterm.VT.CharacterMap.prototype.sync_ = function(opt_glmap) {\n // If there are no maps, then reset the state back.\n if (!this.glmapBase_ && !opt_glmap) {\n this.GL = null;\n delete this.glmap_;\n delete this.glre_;\n return;\n }\n\n // Set the the GL mapping. If we're given a custom mapping, then create a\n // new object to hold the merged map. This way we can cleanly reset back.\n if (opt_glmap)\n this.glmap_ = Object.assign({}, this.glmapBase_, opt_glmap);\n else\n this.glmap_ = this.glmapBase_;\n\n var glchars = Object.keys(this.glmap_).map((key) =>\n '\\\\x' + lib.f.zpad(key.charCodeAt(0).toString(16)));\n this.glre_ = new RegExp('[' + glchars.join('') + ']', 'g');\n\n this.GL = (str) => str.replace(this.glre_, (ch) => this.glmap_[ch]);\n};\n\n/**\n * Reset map back to original mappings (discarding runtime updates).\n *\n * Specifically, any calls to setOverrides will be discarded.\n */\nhterm.VT.CharacterMap.prototype.reset = function() {\n // If we haven't been given a custom mapping, then there's nothing to reset.\n if (this.glmap_ !== this.glmapBase_)\n this.sync_();\n};\n\n/**\n * Merge custom changes to this map.\n *\n * The input map need not duplicate the existing mappings as it is merged with\n * the existing base map (what was created with). Subsequent calls to this\n * will throw away previous override settings.\n *\n * @param {Object} glmap The custom map to override existing mappings.\n */\nhterm.VT.CharacterMap.prototype.setOverrides = function(glmap) {\n this.sync_(glmap);\n};\n\n/**\n * Return a copy of this mapping.\n *\n * @return {hterm.VT.CharacterMap} A new hterm.VT.CharacterMap instance.\n */\nhterm.VT.CharacterMap.prototype.clone = function() {\n var map = new hterm.VT.CharacterMap(this.description, this.glmapBase_);\n if (this.glmap_ !== this.glmapBase_)\n map.setOverrides(this.glmap_);\n return map;\n};\n\n/**\n * Table of character maps.\n */\nhterm.VT.CharacterMaps = function() {\n this.maps_ = hterm.VT.CharacterMaps.DefaultMaps;\n\n // Always keep an unmodified reference to the map.\n // This allows us to sanely reset back to the original state.\n this.mapsBase_ = this.maps_;\n};\n\n/**\n * Look up a previously registered map.\n *\n * @param {String} name The name of the map to lookup.\n * @return {hterm.VT.CharacterMap} The map, if it's been registered.\n */\nhterm.VT.CharacterMaps.prototype.getMap = function(name) {\n if (this.maps_.hasOwnProperty(name))\n return this.maps_[name];\n else\n return undefined;\n};\n\n/**\n * Register a new map.\n *\n * Any previously registered maps by this name will be discarded.\n *\n * @param {String} name The name of the map.\n * @param {hterm.VT.CharacterMap} map The map to register.\n */\nhterm.VT.CharacterMaps.prototype.addMap = function(name, map) {\n if (this.maps_ === this.mapsBase_)\n this.maps_ = Object.assign({}, this.mapsBase_);\n this.maps_[name] = map;\n};\n\n/**\n * Reset the table and all its maps back to original state.\n */\nhterm.VT.CharacterMaps.prototype.reset = function() {\n if (this.maps_ !== hterm.VT.CharacterMaps.DefaultMaps)\n this.maps_ = hterm.VT.CharacterMaps.DefaultMaps;\n};\n\n/**\n * Merge custom changes to this table.\n *\n * @param {Object} maps A set of hterm.VT.CharacterMap objects.\n */\nhterm.VT.CharacterMaps.prototype.setOverrides = function(maps) {\n if (this.maps_ === this.mapsBase_)\n this.maps_ = Object.assign({}, this.mapsBase_);\n\n for (var name in maps) {\n var map = this.getMap(name);\n if (map !== undefined) {\n this.maps_[name] = map.clone();\n this.maps_[name].setOverrides(maps[name]);\n } else\n this.addMap(name, new hterm.VT.CharacterMap('user ' + name, maps[name]));\n }\n};\n\n/**\n * The default set of supported character maps.\n */\nhterm.VT.CharacterMaps.DefaultMaps = {};\n\n/**\n * VT100 Graphic character map.\n * http://vt100.net/docs/vt220-rm/table2-4.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['0'] = new hterm.VT.CharacterMap(\n 'graphic', {\n '\\x60':'\\u25c6', // ` -> diamond\n '\\x61':'\\u2592', // a -> grey-box\n '\\x62':'\\u2409', // b -> h/t\n '\\x63':'\\u240c', // c -> f/f\n '\\x64':'\\u240d', // d -> c/r\n '\\x65':'\\u240a', // e -> l/f\n '\\x66':'\\u00b0', // f -> degree\n '\\x67':'\\u00b1', // g -> +/-\n '\\x68':'\\u2424', // h -> n/l\n '\\x69':'\\u240b', // i -> v/t\n '\\x6a':'\\u2518', // j -> bottom-right\n '\\x6b':'\\u2510', // k -> top-right\n '\\x6c':'\\u250c', // l -> top-left\n '\\x6d':'\\u2514', // m -> bottom-left\n '\\x6e':'\\u253c', // n -> line-cross\n '\\x6f':'\\u23ba', // o -> scan1\n '\\x70':'\\u23bb', // p -> scan3\n '\\x71':'\\u2500', // q -> scan5\n '\\x72':'\\u23bc', // r -> scan7\n '\\x73':'\\u23bd', // s -> scan9\n '\\x74':'\\u251c', // t -> left-tee\n '\\x75':'\\u2524', // u -> right-tee\n '\\x76':'\\u2534', // v -> bottom-tee\n '\\x77':'\\u252c', // w -> top-tee\n '\\x78':'\\u2502', // x -> vertical-line\n '\\x79':'\\u2264', // y -> less-equal\n '\\x7a':'\\u2265', // z -> greater-equal\n '\\x7b':'\\u03c0', // { -> pi\n '\\x7c':'\\u2260', // | -> not-equal\n '\\x7d':'\\u00a3', // } -> british-pound\n '\\x7e':'\\u00b7', // ~ -> dot\n });\n\n/**\n * British character map.\n * http://vt100.net/docs/vt220-rm/table2-5.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['A'] = new hterm.VT.CharacterMap(\n 'british', {\n '\\x23': '\\u00a3', // # -> british-pound\n });\n\n/**\n * US ASCII map, no changes.\n */\nhterm.VT.CharacterMaps.DefaultMaps['B'] = new hterm.VT.CharacterMap(\n 'us', null);\n\n/**\n * Dutch character map.\n * http://vt100.net/docs/vt220-rm/table2-6.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['4'] = new hterm.VT.CharacterMap(\n 'dutch', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00be', // @ -> 3/4\n\n '\\x5b': '\\u0132', // [ -> 'ij' ligature (xterm goes with \\u00ff?)\n '\\x5c': '\\u00bd', // \\ -> 1/2\n '\\x5d': '\\u007c', // ] -> vertical bar\n\n '\\x7b': '\\u00a8', // { -> two dots\n '\\x7c': '\\u0066', // | -> f\n '\\x7d': '\\u00bc', // } -> 1/4\n '\\x7e': '\\u00b4', // ~ -> acute\n });\n\n/**\n * Finnish character map.\n * http://vt100.net/docs/vt220-rm/table2-7.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['C'] =\nhterm.VT.CharacterMaps.DefaultMaps['5'] = new hterm.VT.CharacterMap(\n 'finnish', {\n '\\x5b': '\\u00c4', // [ -> 'A' umlaut\n '\\x5c': '\\u00d6', // \\ -> 'O' umlaut\n '\\x5d': '\\u00c5', // ] -> 'A' ring\n '\\x5e': '\\u00dc', // ~ -> 'u' umlaut\n\n '\\x60': '\\u00e9', // ` -> 'e' acute\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00e5', // } -> 'a' ring\n '\\x7e': '\\u00fc', // ~ -> 'u' umlaut\n });\n\n/**\n * French character map.\n * http://vt100.net/docs/vt220-rm/table2-8.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['R'] = new hterm.VT.CharacterMap(\n 'french', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00e0', // @ -> 'a' grave\n\n '\\x5b': '\\u00b0', // [ -> ring\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00a7', // ] -> section symbol (double s)\n\n '\\x7b': '\\u00e9', // { -> 'e' acute\n '\\x7c': '\\u00f9', // | -> 'u' grave\n '\\x7d': '\\u00e8', // } -> 'e' grave\n '\\x7e': '\\u00a8', // ~ -> umlaut\n });\n\n/**\n * French Canadian character map.\n * http://vt100.net/docs/vt220-rm/table2-9.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['Q'] = new hterm.VT.CharacterMap(\n 'french canadian', {\n '\\x40': '\\u00e0', // @ -> 'a' grave\n\n '\\x5b': '\\u00e2', // [ -> 'a' circumflex\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00ea', // ] -> 'e' circumflex\n '\\x5e': '\\u00ee', // ^ -> 'i' circumflex\n\n '\\x60': '\\u00f4', // ` -> 'o' circumflex\n\n '\\x7b': '\\u00e9', // { -> 'e' acute\n '\\x7c': '\\u00f9', // | -> 'u' grave\n '\\x7d': '\\u00e8', // } -> 'e' grave\n '\\x7e': '\\u00fb', // ~ -> 'u' circumflex\n });\n\n/**\n * German character map.\n * http://vt100.net/docs/vt220-rm/table2-10.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['K'] = new hterm.VT.CharacterMap(\n 'german', {\n '\\x40': '\\u00a7', // @ -> section symbol (double s)\n\n '\\x5b': '\\u00c4', // [ -> 'A' umlaut\n '\\x5c': '\\u00d6', // \\ -> 'O' umlaut\n '\\x5d': '\\u00dc', // ] -> 'U' umlaut\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00fc', // } -> 'u' umlaut\n '\\x7e': '\\u00df', // ~ -> eszett\n });\n\n/**\n * Italian character map.\n * http://vt100.net/docs/vt220-rm/table2-11.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['Y'] = new hterm.VT.CharacterMap(\n 'italian', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00a7', // @ -> section symbol (double s)\n\n '\\x5b': '\\u00b0', // [ -> ring\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00e9', // ] -> 'e' acute\n\n '\\x60': '\\u00f9', // ` -> 'u' grave\n\n '\\x7b': '\\u00e0', // { -> 'a' grave\n '\\x7c': '\\u00f2', // | -> 'o' grave\n '\\x7d': '\\u00e8', // } -> 'e' grave\n '\\x7e': '\\u00ec', // ~ -> 'i' grave\n });\n\n/**\n * Norwegian/Danish character map.\n * http://vt100.net/docs/vt220-rm/table2-12.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['E'] =\nhterm.VT.CharacterMaps.DefaultMaps['6'] = new hterm.VT.CharacterMap(\n 'norwegian/danish', {\n '\\x40': '\\u00c4', // @ -> 'A' umlaut\n\n '\\x5b': '\\u00c6', // [ -> 'AE' ligature\n '\\x5c': '\\u00d8', // \\ -> 'O' stroke\n '\\x5d': '\\u00c5', // ] -> 'A' ring\n '\\x5e': '\\u00dc', // ^ -> 'U' umlaut\n\n '\\x60': '\\u00e4', // ` -> 'a' umlaut\n\n '\\x7b': '\\u00e6', // { -> 'ae' ligature\n '\\x7c': '\\u00f8', // | -> 'o' stroke\n '\\x7d': '\\u00e5', // } -> 'a' ring\n '\\x7e': '\\u00fc', // ~ -> 'u' umlaut\n });\n\n/**\n * Spanish character map.\n * http://vt100.net/docs/vt220-rm/table2-13.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['Z'] = new hterm.VT.CharacterMap(\n 'spanish', {\n '\\x23': '\\u00a3', // # -> british-pound\n\n '\\x40': '\\u00a7', // @ -> section symbol (double s)\n\n '\\x5b': '\\u00a1', // [ -> '!' inverted\n '\\x5c': '\\u00d1', // \\ -> 'N' tilde\n '\\x5d': '\\u00bf', // ] -> '?' inverted\n\n '\\x7b': '\\u00b0', // { -> ring\n '\\x7c': '\\u00f1', // | -> 'n' tilde\n '\\x7d': '\\u00e7', // } -> 'c' cedilla\n });\n\n/**\n * Swedish character map.\n * http://vt100.net/docs/vt220-rm/table2-14.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['7'] =\nhterm.VT.CharacterMaps.DefaultMaps['H'] = new hterm.VT.CharacterMap(\n 'swedish', {\n '\\x40': '\\u00c9', // @ -> 'E' acute\n\n '\\x5b': '\\u00c4', // [ -> 'A' umlaut\n '\\x5c': '\\u00d6', // \\ -> 'O' umlaut\n '\\x5d': '\\u00c5', // ] -> 'A' ring\n '\\x5e': '\\u00dc', // ^ -> 'U' umlaut\n\n '\\x60': '\\u00e9', // ` -> 'e' acute\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00e5', // } -> 'a' ring\n '\\x7e': '\\u00fc', // ~ -> 'u' umlaut\n });\n\n/**\n * Swiss character map.\n * http://vt100.net/docs/vt220-rm/table2-15.html\n */\nhterm.VT.CharacterMaps.DefaultMaps['='] = new hterm.VT.CharacterMap(\n 'swiss', {\n '\\x23': '\\u00f9', // # -> 'u' grave\n\n '\\x40': '\\u00e0', // @ -> 'a' grave\n\n '\\x5b': '\\u00e9', // [ -> 'e' acute\n '\\x5c': '\\u00e7', // \\ -> 'c' cedilla\n '\\x5d': '\\u00ea', // ] -> 'e' circumflex\n '\\x5e': '\\u00ee', // ^ -> 'i' circumflex\n '\\x5f': '\\u00e8', // _ -> 'e' grave\n\n '\\x60': '\\u00f4', // ` -> 'o' circumflex\n\n '\\x7b': '\\u00e4', // { -> 'a' umlaut\n '\\x7c': '\\u00f6', // | -> 'o' umlaut\n '\\x7d': '\\u00fc', // } -> 'u' umlaut\n '\\x7e': '\\u00fb', // ~ -> 'u' circumflex\n });\nlib.resource.add('hterm/audio/bell', 'audio/ogg;base64',\n'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' +\n'zinmkFLKMeUcUko5p5xTzjkIHYTKMQadgxAppRxTzinHHITMQeWcg9BBKAAAIMABACDAQig0ZEUA' +\n'ECcA4HAkz5M0SxQlSxNFzxRl1xNN15U0zTQ1UVRVyxNV1VRV2xZNVbYlTRNNTfRUVRNFVRVV05ZN' +\n'VbVtzzRl2VRV3RZV1bZl2xZ+V5Z13zNNWRZV1dZNVbV115Z9X9ZtXZg0zTQ1UVRVTRRV1VRV2zZV' +\n'17Y1UXRVUVVlWVRVWXZlWfdVV9Z9SxRV1VNN2RVVVbZV2fVtVZZ94XRVXVdl2fdVWRZ+W9eF4fZ9' +\n'4RhV1dZN19V1VZZ9YdZlYbd13yhpmmlqoqiqmiiqqqmqtm2qrq1bouiqoqrKsmeqrqzKsq+rrmzr' +\n'miiqrqiqsiyqqiyrsqz7qizrtqiquq3KsrCbrqvrtu8LwyzrunCqrq6rsuz7qizruq3rxnHrujB8' +\n'pinLpqvquqm6um7runHMtm0co6rqvirLwrDKsu/rui+0dSFRVXXdlF3jV2VZ921fd55b94WybTu/' +\n'rfvKceu60vg5z28cubZtHLNuG7+t+8bzKz9hOI6lZ5q2baqqrZuqq+uybivDrOtCUVV9XZVl3zdd' +\n'WRdu3zeOW9eNoqrquirLvrDKsjHcxm8cuzAcXds2jlvXnbKtC31jyPcJz2vbxnH7OuP2daOvDAnH' +\n'jwAAgAEHAIAAE8pAoSErAoA4AQAGIecUUxAqxSB0EFLqIKRUMQYhc05KxRyUUEpqIZTUKsYgVI5J' +\n'yJyTEkpoKZTSUgehpVBKa6GU1lJrsabUYu0gpBZKaS2U0lpqqcbUWowRYxAy56RkzkkJpbQWSmkt' +\n'c05K56CkDkJKpaQUS0otVsxJyaCj0kFIqaQSU0mptVBKa6WkFktKMbYUW24x1hxKaS2kEltJKcYU' +\n'U20txpojxiBkzknJnJMSSmktlNJa5ZiUDkJKmYOSSkqtlZJSzJyT0kFIqYOOSkkptpJKTKGU1kpK' +\n'sYVSWmwx1pxSbDWU0lpJKcaSSmwtxlpbTLV1EFoLpbQWSmmttVZraq3GUEprJaUYS0qxtRZrbjHm' +\n'GkppraQSW0mpxRZbji3GmlNrNabWam4x5hpbbT3WmnNKrdbUUo0txppjbb3VmnvvIKQWSmktlNJi' +\n'ai3G1mKtoZTWSiqxlZJabDHm2lqMOZTSYkmpxZJSjC3GmltsuaaWamwx5ppSi7Xm2nNsNfbUWqwt' +\n'xppTS7XWWnOPufVWAADAgAMAQIAJZaDQkJUAQBQAAEGIUs5JaRByzDkqCULMOSepckxCKSlVzEEI' +\n'JbXOOSkpxdY5CCWlFksqLcVWaykptRZrLQAAoMABACDABk2JxQEKDVkJAEQBACDGIMQYhAYZpRiD' +\n'0BikFGMQIqUYc05KpRRjzknJGHMOQioZY85BKCmEUEoqKYUQSkklpQIAAAocAAACbNCUWByg0JAV' +\n'AUAUAABgDGIMMYYgdFQyKhGETEonqYEQWgutddZSa6XFzFpqrbTYQAithdYySyXG1FpmrcSYWisA' +\n'AOzAAQDswEIoNGQlAJAHAEAYoxRjzjlnEGLMOegcNAgx5hyEDirGnIMOQggVY85BCCGEzDkIIYQQ' +\n'QuYchBBCCKGDEEIIpZTSQQghhFJK6SCEEEIppXQQQgihlFIKAAAqcAAACLBRZHOCkaBCQ1YCAHkA' +\n'AIAxSjkHoZRGKcYglJJSoxRjEEpJqXIMQikpxVY5B6GUlFrsIJTSWmw1dhBKaS3GWkNKrcVYa64h' +\n'pdZirDXX1FqMteaaa0otxlprzbkAANwFBwCwAxtFNicYCSo0ZCUAkAcAgCCkFGOMMYYUYoox55xD' +\n'CCnFmHPOKaYYc84555RijDnnnHOMMeecc845xphzzjnnHHPOOeecc44555xzzjnnnHPOOeecc845' +\n'55xzzgkAACpwAAAIsFFkc4KRoEJDVgIAqQAAABFWYowxxhgbCDHGGGOMMUYSYowxxhhjbDHGGGOM' +\n'McaYYowxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHGGGOMMcYYY4wxxhhjjDHG' +\n'GFtrrbXWWmuttdZaa6211lprrQBAvwoHAP8HG1ZHOCkaCyw0ZCUAEA4AABjDmHOOOQYdhIYp6KSE' +\n'DkIIoUNKOSglhFBKKSlzTkpKpaSUWkqZc1JSKiWlllLqIKTUWkottdZaByWl1lJqrbXWOgiltNRa' +\n'a6212EFIKaXWWostxlBKSq212GKMNYZSUmqtxdhirDGk0lJsLcYYY6yhlNZaazHGGGstKbXWYoy1' +\n'xlprSam11mKLNdZaCwDgbnAAgEiwcYaVpLPC0eBCQ1YCACEBAARCjDnnnHMQQgghUoox56CDEEII' +\n'IURKMeYcdBBCCCGEjDHnoIMQQgghhJAx5hx0EEIIIYQQOucchBBCCKGEUkrnHHQQQgghlFBC6SCE' +\n'EEIIoYRSSikdhBBCKKGEUkopJYQQQgmllFJKKaWEEEIIoYQSSimllBBCCKWUUkoppZQSQgghlFJK' +\n'KaWUUkIIoZRQSimllFJKCCGEUkoppZRSSgkhhFBKKaWUUkopIYQSSimllFJKKaUAAIADBwCAACPo' +\n'JKPKImw04cIDUGjISgCADAAAcdhq6ynWyCDFnISWS4SQchBiLhFSijlHsWVIGcUY1ZQxpRRTUmvo' +\n'nGKMUU+dY0oxw6yUVkookYLScqy1dswBAAAgCAAwECEzgUABFBjIAIADhAQpAKCwwNAxXAQE5BIy' +\n'CgwKx4Rz0mkDABCEyAyRiFgMEhOqgaJiOgBYXGDIB4AMjY20iwvoMsAFXdx1IIQgBCGIxQEUkICD' +\n'E2544g1PuMEJOkWlDgIAAAAA4AAAHgAAkg0gIiKaOY4Ojw+QEJERkhKTE5QAAAAAALABgA8AgCQF' +\n'iIiIZo6jw+MDJERkhKTE5AQlAAAAAAAAAAAACAgIAAAAAAAEAAAACAhPZ2dTAAQYOwAAAAAAAOGp' +\n'bkoCAAAAmc74DRgyNjM69TAzOTk74dnLubewsbagmZiNp4d0KbsExSY/I3XUTwJgkeZdn1HY4zoj' +\n'33/q9DFtv3Ui1/jmx7lCUtPt18/sYf9MkgAsAGRBd3gMGP4sU+qCPYBy9VrA3YqJosW3W2/ef1iO' +\n'/u3cg8ZG/57jU+pPmbGEJUgkfnaI39DbPqxddZphbMRmCc5rKlkUMkyx8iIoug5dJv1OYH9a59c+' +\n'3Gevqc7Z2XFdDjL/qHztRfjWEWxJ/aiGezjohu9HsCZdQBKbiH0VtU/3m85lDG2T/+xkZcYnX+E+' +\n'aqzv/xTgOoTFG+x7SNqQ4N+oAABSxuVXw77Jd5bmmTmuJakX7509HH0kGYKvARPpwfOSAPySPAc2' +\n'EkneDwB2HwAAJlQDYK5586N79GJCjx4+p6aDUd27XSvRyXLJkIC5YZ1jLv5lpOhZTz0s+DmnF1di' +\n'ptrnM6UDgIW11Xh8cHTd0/SmbgOAdxcyWwMAAGIrZ3fNSfZbzKiYrK4+tPqtnMVLOeWOG2kVvUY+' +\n'p2PJ/hkCl5aFRO4TLGYPZcIU3vYM1hohS4jHFlnyW/2T5J7kGsShXWT8N05V+3C/GPqJ1QdWisGP' +\n'xEzHqXISBPIinWDUt7IeJv/f5OtzBxpTzZZQ+CYEhHXfqG4aABQli72GJhN4oJv+hXcApAJSErAW' +\n'8G2raAX4NUcABnVt77CzZAB+LsHcVe+Q4h+QB1wh/ZrJTPxSBdI8mgTeAdTsQOoFUEng9BHcVPhx' +\n'SRRYkKWZJXOFYP6V4AEripJoEjXgA2wJRZHSExmJDm8F0A6gEXsg5a4ZsALItrMB7+fh7UKLvYWS' +\n'dtsDwFf1mzYzS1F82N1h2Oyt2e76B1QdS0SAsQigLPMOgJS9JRC7hFXA6kUsLFNKD5cA5cTRvgSq' +\n'Pc3Fl99xW3QTi/MHR8DEm6WnvaVQATwRqRKjywQ9BrrhugR2AKTsPQeQckrAOgDOhbTESyrXQ50C' +\n'kNpXdtWjW7W2/3UjeX3U95gIdalfRAoAmqUEiwp53hCdcCwlg47fcbfzlmQMAgaBkh7c+fcDgF+i' +\n'fwDXfzegLPcLYJsAAJQArTXjnh/uXGy3v1Hk3pV6/3t5ruW81f6prfbM2Q3WNVy98BwUtbCwhFhA' +\n'WuPev6Oe/4ZaFQUcgKrVs4defzh1TADA1DEh5b3VlDaECw5b+bPfkKos3tIAue3vJZOih3ga3l6O' +\n'3PSfIkrLv0PAS86PPdL7g8oc2KteNFKKzKRehOv2gJoFLBPXmaXvPBQILgJon0bbWBszrYZYYwE7' +\n'jl2j+vTdU7Vpk21LiU0QajPkywAAHqbUC0/YsYOdb4e6BOp7E0cCi04Ao/TgD8ZVAMid6h/A8IeB' +\n'Nkp6/xsAACZELEYIk+yvI6Qz1NN6lIftB/6IMWjWJNOqPTMedAmyaj6Es0QBklJpiSWWHnQ2CoYb' +\n'GWAmt+0gLQBFKCBnp2QUUQZ/1thtZDBJUpFWY82z34ocorB62oX7qB5y0oPAv/foxH25wVmgIHf2' +\n'xFOr8leZcBq1Kx3ZvCq9Bga639AxuHuPNL/71YCF4EywJpqHFAX6XF0sjVbuANnvvdLcrufYwOM/' +\n'iDa6iA468AYAAB6mNBMXcgTD8HSRqJ4vw8CjAlCEPACASlX/APwPOJKl9xQAAAPmnev2eWp33Xgy' +\n'w3Dvfz6myGk3oyP8YTKsCOvzAgALQi0o1c6Nzs2O2Pg2h4ACIJAgAGP0aNn5x0BDgVfH7u2TtyfD' +\n'cRIuYAyQhBF/lvSRAttgA6TPbWZA9gaUrZWAUEAA+Dx47Q3/r87HxUUqZmB0BmUuMlojFjHt1gDu' +\n'nnvuX8MImsjSq5WkzSzGS62OEIlOufWWezxWpv6FBgDgJVltfXFYtNAAnqU0xQoD0YLiXo5cF5QV' +\n'4CnY1tBLAkZCOABAhbk/AM+/AwSCCdlWAAAMcFjS7owb8GVDzveDiZvznbt2tF4bL5odN1YKl88T' +\n'AEABCZvufq9YCTBtMwVAQUEAwGtNltzSaHvADYC3TxLVjqiRA+OZAMhzcqEgRcAOwoCgvdTxsTHL' +\n'QEF6+oOb2+PAI8ciPQcXg7pOY+LjxQSv2fjmFuj34gGwz310/bGK6z3xgT887eomWULEaDd04wHe' +\n'tYxdjcgV2SxvSwn0VoZXJRqkRC5ASQ/muVoAUsX7AgAQMBNaVwAAlABRxT/1PmfqLqSRNDbhXb07' +\n'berpB3b94jpuWEZjBCD2OcdXFpCKEgCDfcFPMw8AAADUwT4lnUm50lmwrpMMhPQIKj6u0E8fr2vG' +\n'BngMNdIlrZsigjahljud6AFVg+tzXwUnXL3TJLpajaWKA4VAAAAMiFfqJgKAZ08XrtS3dxtQNYcp' +\n'PvYEG8ClvrQRJgBephwnNWJjtGqmp6VEPSvBe7EBiU3qgJbQAwD4Le8LAMDMhHbNAAAlgK+tFs5O' +\n'+YyJc9yCnJa3rxLPulGnxwsXV9Fsk2k4PisCAHC8FkwbGE9gJQAAoMnyksj0CdFMZLLgoz8M+Fxz' +\n'iwYBgIx+zHiCBAKAlBKNpF1sO9JpVcyEi9ar15YlHgrut5fPJnkdJ6vEwZPyAHQBIEDUrlMcBAAd' +\n'2KAS0Qq+JwRsE4AJZtMnAD6GnOYwYlOIZvtzUNdjreB7fiMkWI0CmBB6AIAKc38A9osEFlTSGECB' +\n'+cbeRDC0aRpLHqNPplcK/76Lxn2rpmqyXsYJWRi/FQAAAKBQk9MCAOibrQBQADCDsqpooPutd+05' +\n'Ce9g6iEdiYXgVmQAI4+4wskEBEiBloNQ6Ki0/KTQ0QjWfjxzi+AeuXKoMjEVfQOZzr0y941qLgM2' +\n'AExvbZOqcxZ6J6krlrj4y2j9AdgKDx6GnJsVLhbc42uq584+ouSdNBpoCiCVHrz+WzUA/DDtD8AT' +\n'gA3h0lMCAAzcFv+S+fSSNkeYWlTpb34mf2RfmqqJeMeklhHAfu7VoAEACgAApKRktL+KkQDWMwYC' +\n'UAAAAHCKsp80xhp91UjqQBw3x45cetqkjQEyu3G9B6N+R650Uq8OVig7wOm6Wun0ea4lKDPoabJs' +\n'6aLqgbhPzpv4KR4iODilw88ZpY7q1IOMcbASAOAVtmcCnobcrkG4KGS7/ZnskVWRNF9J0RUHKOnB' +\n'yy9WA8Dv6L4AAARMCQUA4GritfVM2lcZfH3Q3T/vZ47J2YHhcmBazjfdyuV25gLAzrc0cwAAAAAY' +\n'Ch6PdwAAAGyWjFW4yScjaWa2mGcofHxWxewKALglWBpLUvwwk+UOh5eNGyUOs1/EF+pZr+ud5Ozo' +\n'GwYdAABg2p52LiSgAY/ZVlOmilEgHn6G3OcwYjzI7vOj1t6xsx4S3lBY96EUQBF6AIBAmPYH4PoG' +\n'YCoJAADWe+OZJZi7/x76/yH7Lzf9M5XzRKnFPmveMsilQHwVAAAAAKB3LQD8PCIAAADga0QujBLy' +\n'wzeJ4a6Z/ERVBAUlAEDqvoM7BQBAuAguzFqILtmjH3Kd4wfKobnOhA3z85qWoRPm9hwoOHoDAAlC' +\n'bwDAA56FHAuXflHo3fe2ttG9XUDeA9YmYCBQ0oPr/1QC8IvuCwAAApbUAQCK22MmE3O78VAbHQT9' +\n'PIPNoT9zNc3l2Oe7TAVLANBufT8MAQAAAGzT4PS8AQAAoELGHb2uaCwwEv1EWhFriUkbAaAZ27/f' +\n'VZnTZXbWz3BwWpjUaMZKRj7dZ0J//gUeTdpVEwAAZOFsNxKAjQSgA+ABPoY8Jj5y2wje81jsXc/1' +\n'TOQWTDYZBmAkNDiqVwuA2NJ9AQAAEBKAt9Vrsfs/2N19MO91S9rd8EHTZHnzC5MYmfQEACy/FBcA' +\n'AADA5c4gi4z8RANs/m6FNXVo9DV46JG1BBDukqlw/Va5G7QbuGVSI+2aZaoLXJrdVj2zlC9Z5QEA' +\n'EFz/5QzgVZwAAAAA/oXcxyC6WfTu+09Ve/c766J4VTAGUFmA51+VANKi/QPoPwYgYAkA715OH4S0' +\n's5KDHvj99MMq8TPFc3roKZnGOoT1bmIhVgc7XAMBAAAAAMAW1VbQw3gapzOpJd+Kd2fc4iSO62fJ' +\n'v9+movui1wUNPAj059N3OVxzk4gV73PmE8FIA2F5mRq37Evc76vLXfF4rD5UJJAw46hW6LZCb5sN' +\n'Ldx+kzMCAAB+hfy95+965ZCLP7B3/VlTHCvDEKtQhTm4KiCgAEAbrfbWTPssAAAAXpee1tVrozYY' +\n'n41wD1aeYtkKfswN5/SXPO0JDnhO/4laUortv/s412fybe/nONdncoCHnBVliu0CQGBWlPY/5Kwo' +\n'm2L/kruPM6Q7oz4tvDQy+bZ3HzOi+gNHA4DZEgA=' +\n''\n);\n\nlib.resource.add('hterm/images/icon-96', 'image/png;base64',\n'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' +\n'ODoyNC0wNDowMNba8BsAAAAASUVORK5CYII=' +\n''\n);\n\nlib.resource.add('hterm/concat/date', 'text/plain',\n'Tue, 22 Aug 2017 06:42:31 +0000' +\n''\n);\n\nlib.resource.add('hterm/changelog/version', 'text/plain',\n'1.70' +\n''\n);\n\nlib.resource.add('hterm/changelog/date', 'text/plain',\n'2017-08-16' +\n''\n);\n\nlib.resource.add('hterm/git/HEAD', 'text/plain',\n'git rev-parse HEAD' +\n''\n);\n\n// SOURCE FILE: hterm/js/hterm_export.js\nmodule.exports = {\n hterm: hterm,\n lib: lib\n};\n\n","/*!\n * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit)\n * @license MIT\n * @version 0.5.0\n * ==xterm-addon-fit/LICENSE==\n * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.FitAddon=t():e.FitAddon=t()}(self,(function(){return(()=>{\"use strict\";var e={775:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue(\"height\")),i=Math.max(0,parseInt(t.getPropertyValue(\"width\"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue(\"padding-top\"))+parseInt(n.getPropertyValue(\"padding-bottom\"))),a=i-(parseInt(n.getPropertyValue(\"padding-right\"))+parseInt(n.getPropertyValue(\"padding-left\")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(a/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()}));\n//# sourceMappingURL=xterm-addon-fit.js.map","/*!\n * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links)\n * @license MIT\n * @version 0.4.0\n * ==xterm-addon-web-links/LICENSE==\n * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.WebLinksAddon=t():e.WebLinksAddon=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.WebLinksAddon=void 0;var r=n(1),i=new RegExp(\"(?:^|[^\\\\da-z\\\\.-]+)((https?:\\\\/\\\\/)((([\\\\da-z\\\\.-]+)\\\\.([a-z\\\\.]{2,6}))|((\\\\d{1,3}\\\\.){3}\\\\d{1,3})|(localhost))(:\\\\d{1,5})?((\\\\/[\\\\/\\\\w\\\\.\\\\-%~:+@]*)*([^:\\\"'\\\\s]))?(\\\\?[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?(#[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?)($|[^\\\\/\\\\w\\\\.\\\\-%]+)\");function o(e,t){var n=window.open();n?(n.opener=null,n.location.href=t):console.warn(\"Opening link blocked as opener could not be cleared\")}var a=function(){function e(e,t,n){void 0===e&&(e=o),void 0===t&&(t={}),void 0===n&&(n=!1),this._handler=e,this._options=t,this._useLinkProvider=n,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&\"registerLinkProvider\"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new r.WebLinkProvider(this._terminal,i,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(i,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var r=function(){function e(e,t,n){this._terminal=e,this._regex=t,this._handler=n}return e.prototype.provideLinks=function(e,t){t(i.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=r;var i=function(){function e(){}return e.computeLink=function(t,n,r,i){for(var o,a=new RegExp(n.source,(n.flags||\"\")+\"g\"),s=e._translateBufferLineToStringWithWrap(t-1,!1,r),u=s[0],d=s[1],l=-1,c=[];null!==(o=a.exec(u));){var f=o[1];if(!f){console.log(\"match found without corresponding matchIndex\");break}if(l=u.indexOf(f,l+1),a.lastIndex=l+f.length,l<0)break;for(var p=l+f.length,h=d+1;p>r.cols;)p-=r.cols,h++;var v={start:{x:l+1,y:d+1},end:{x:p,y:h}};c.push({range:v,text:f,activate:i})}return c},e._translateBufferLineToStringWithWrap=function(e,t,n){var r,i,o=\"\";do{if(!(s=n.buffer.active.getLine(e)))break;s.isWrapped&&e--,i=s.isWrapped}while(i);var a=e;do{var s,u=n.buffer.active.getLine(e+1);if(r=!!u&&u.isWrapped,!(s=n.buffer.active.getLine(e)))break;o+=s.translateToString(!r&&t).substring(0,n.cols),e++}while(r);return[o,a]},e}();t.LinkComputer=i}])}));\n//# sourceMappingURL=xterm-addon-web-links.js.map","/*!\n * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl)\n * @license MIT\n * @version 0.10.0\n * ==xterm-addon-webgl/LICENSE==\n * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.WebglAddon=e():t.WebglAddon=e()}(self,(function(){return(()=>{\"use strict\";var t={965:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.GlyphRenderer=void 0;var r=i(381),o=i(310),n=i(455),s=i(259),a=i(855),l=i(147),h=10,c=h*Float32Array.BYTES_PER_ELEMENT,_=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_unitquad;\\nlayout (location = 1) in vec2 a_cellpos;\\nlayout (location = 2) in vec2 a_offset;\\nlayout (location = 3) in vec2 a_size;\\nlayout (location = 4) in vec2 a_texcoord;\\nlayout (location = 5) in vec2 a_texsize;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec2 v_texcoord;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec2 v_texcoord;\\n\\nuniform sampler2D u_texture;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = texture(u_texture, v_texcoord);\\n}\"));this._program=s,this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._textureLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_texture\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),_=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,_),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,c,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,c,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,c,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,c,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,c,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=r.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return t.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},t.prototype.updateCell=function(t,e,i,r,o,n){this._updateCell(this._vertices.attributes,t,e,i,r,o,n)},t.prototype._updateCell=function(t,e,i,r,o,s,l){var c,_=(i*this._terminal.cols+e)*h;r!==a.NULL_CELL_CODE&&r!==a.WHITESPACE_CELL_CODE&&void 0!==r?this._atlas&&((c=l&&l.length>1?this._atlas.getRasterizedGlyphCombinedChar(l,o,s):this._atlas.getRasterizedGlyph(r,o,s))?(t[_]=-c.offset.x+this._dimensions.scaledCharLeft,t[_+1]=-c.offset.y+this._dimensions.scaledCharTop,t[_+2]=c.size.x/this._dimensions.scaledCanvasWidth,t[_+3]=c.size.y/this._dimensions.scaledCanvasHeight,t[_+4]=c.texturePositionClipSpace.x,t[_+5]=c.texturePositionClipSpace.y,t[_+6]=c.sizeClipSpace.x,t[_+7]=c.sizeClipSpace.y):n.fill(t,0,_,_+h-1-2)):n.fill(t,0,_,_+h-1-2)},t.prototype.updateSelection=function(t){var e=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var i=this._colors.selectionOpaque.rgba>>>8|50331648;if(t.selection.columnSelectMode)for(var r=t.selection.startCol,o=t.selection.endCol-r,n=t.selection.viewportCappedEndRow-t.selection.viewportCappedStartRow+1,a=t.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var g=l.AttributeData.toColorRGB(f.getBgColor());u|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;u|=v>>8&16711680|v>>8&65280|v>>8&255}u|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(h));var C=s.getCell(c).getChars();this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u,C)}else this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u)}},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._colors.ansi[t]},t.prototype.onResize=function(){var t=this._terminal,e=this._gl;e.viewport(0,0,e.canvas.width,e.canvas.height);var i=t.cols*t.rows*h;if(this._vertices.count!==i){this._vertices.count=i,this._vertices.attributes=new Float32Array(i);for(var r=0;r{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RectangleRenderer=void 0;var r=i(381),o=i(455),n=i(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_position;\\nlayout (location = 1) in vec2 a_size;\\nlayout (location = 2) in vec4 a_color;\\nlayout (location = 3) in vec2 a_unitquad;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec4 v_color;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_color = a_color;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec4 v_color;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = v_color;\\n}\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),c=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,c),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return t.prototype.render=function(){var t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,r.PROJECTION_MATRIX),t.uniform2f(this._resolutionLocation,t.canvas.width,t.canvas.height),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,this._vertices.count),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.selection,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,3)},t.prototype.onResize=function(){this._updateViewportRectangle()},t.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},t.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},t.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},t.prototype.updateSelection=function(t){var e=this._terminal;if(t.hasSelection)if(t.columnSelectMode){var i=t.startCol,r=t.endCol-i,n=t.viewportCappedEndRow-t.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,r*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{i=t.viewportStartRow===t.viewportCappedStartRow?t.startCol:0;var s=t.viewportCappedStartRow===t.viewportEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-i)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(t.viewportCappedEndRow-t.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(t.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,e.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),t.viewportCappedStartRow!==t.viewportCappedEndRow){var l=t.viewportEndRow===t.viewportCappedEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,16,0,t.viewportCappedEndRow*this._dimensions.scaledCellHeight,l*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},t.prototype.updateBackgrounds=function(t){for(var e=this._terminal,i=this._vertices,r=1,o=0;o>24&255)/255,d=(l>>16&255)/255,u=(l>>8&255)/255;this._addRectangle(t.attributes,e,h,c,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,_,d,u,1)},t.prototype._addRectangle=function(t,e,i,r,o,n,s,a,l,h){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s,t[e+5]=a,t[e+6]=l,t[e+7]=h},t.prototype._addRectangleFloat=function(t,e,i,r,o,n,s){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s[0],t[e+5]=s[1],t[e+6]=s[2],t[e+7]=s[3]},t.prototype._colorToFloat32Array=function(t){return new Float32Array([(t.rgba>>24&255)/255,(t.rgba>>16&255)/255,(t.rgba>>8&255)/255,(255&t.rgba)/255])},t}();e.RectangleRenderer=a},310:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RenderModel=e.COMBINED_CHAR_BIT_MASK=e.RENDER_MODEL_FG_OFFSET=e.RENDER_MODEL_BG_OFFSET=e.RENDER_MODEL_INDICIES_PER_CELL=void 0;var r=i(455);e.RENDER_MODEL_INDICIES_PER_CELL=3,e.RENDER_MODEL_BG_OFFSET=1,e.RENDER_MODEL_FG_OFFSET=2,e.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function t(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return t.prototype.resize=function(t,i){var r=t*i*e.RENDER_MODEL_INDICIES_PER_CELL;r!==this.cells.length&&(this.cells=new Uint32Array(r),this.lineLengths=new Uint32Array(i))},t.prototype.clear=function(){r.fill(this.cells,0,0),r.fill(this.lineLengths,0,0)},t.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},t}();e.RenderModel=o},259:(t,e)=>{function i(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length),e<0&&(e=(t.length+e)%t.length),i=i>=t.length?t.length:(t.length+i)%t.length,e=Math.min(e,i);for(var r=new t.constructor(i-e),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglAddon=void 0;var r=i(666),o=function(){function t(t){this._preserveDrawingBuffer=t}return t.prototype.activate=function(t){if(!t.element)throw new Error(\"Cannot activate WebglAddon before Terminal.open\");this._terminal=t;var e=t._core._renderService,i=t._core._colorManager.colors;this._renderer=new r.WebglRenderer(t,i,this._preserveDrawingBuffer),e.setRenderer(this._renderer)},t.prototype.dispose=function(){if(!this._terminal)throw new Error(\"Cannot dispose WebglAddon because it is activated\");var t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(t.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._renderer)||void 0===t?void 0:t.textureAtlas},enumerable:!1,configurable:!0}),t.prototype.clearTextureAtlas=function(){var t;null===(t=this._renderer)||void 0===t||t.clearCharAtlas()},t}();e.WebglAddon=o},666:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglRenderer=void 0;var n=i(965),s=i(733),a=i(461),l=i(713),h=i(344),c=i(310),_=i(859),d=i(855),u=i(345),f=i(782),p=function(t){function e(e,i,r){var o=t.call(this)||this;o._terminal=e,o._colors=i,o._model=new c.RenderModel,o._workCell=new f.CellData,o._onRequestRedraw=new u.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement(\"canvas\");var l={antialias:!1,depth:!1,preserveDrawingBuffer:r};if(o._gl=o._canvas.getContext(\"webgl2\",l),!o._gl)throw new Error(\"WebGL2 not supported \"+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new h.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(e,t),Object.defineProperty(e.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._renderLayers.forEach((function(t){return t.dispose()})),this._core.screenElement.removeChild(this._canvas),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._charAtlas)||void 0===t?void 0:t.cacheCanvas},enumerable:!1,configurable:!0}),e.prototype.setColors=function(t){var e=this;this._colors=t,this._renderLayers.forEach((function(t){t.setColors(e._terminal,e._colors),t.reset(e._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},e.prototype.onResize=function(t,e){var i=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(t){return t.resize(i._terminal,i.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+\"px\",this._canvas.style.height=this.dimensions.canvasHeight+\"px\",this._core.screenElement.style.width=this.dimensions.canvasWidth+\"px\",this._core.screenElement.style.height=this.dimensions.canvasHeight+\"px\",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},e.prototype.onBlur=function(){var t=this;this._renderLayers.forEach((function(e){return e.onBlur(t._terminal)}))},e.prototype.onFocus=function(){var t=this;this._renderLayers.forEach((function(e){return e.onFocus(t._terminal)}))},e.prototype.onSelectionChanged=function(t,e,i){var r=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(r._terminal,t,e,i)})),this._updateSelectionModel(t,e,i),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.onCursorMove=function(){var t=this;this._renderLayers.forEach((function(e){return e.onCursorMove(t._terminal)}))},e.prototype.onOptionsChanged=function(){var t=this;this._renderLayers.forEach((function(e){return e.onOptionsChanged(t._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},e.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var t=l.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!(\"getRasterizedGlyph\"in t))throw new Error(\"The webgl renderer only works with the webgl char atlas\");this._charAtlas=t,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},e.prototype.clearCharAtlas=function(){var t;null===(t=this._charAtlas)||void 0===t||t.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.clear=function(){var t=this;this._renderLayers.forEach((function(e){return e.reset(t._terminal)}))},e.prototype.registerCharacterJoiner=function(t){return-1},e.prototype.deregisterCharacterJoiner=function(t){return!1},e.prototype.renderRows=function(t,e){var i=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(r){return r.onGridChanged(i._terminal,t,e)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(t,e),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},e.prototype._updateModel=function(t,e){for(var i=this._core,r=t;r<=e;r++){var o=r+i.buffer.ydisp,n=i.buffer.lines.get(o);this._model.lineLengths[r]=0;for(var s=0;s1&&(l|=c.COMBINED_CHAR_BIT_MASK),this._model.cells[h]=l,this._model.cells[h+c.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[h+c.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,r,l,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},e.prototype._updateSelectionModel=function(t,e,i){void 0===i&&(i=!1);var r=this._terminal;if(!t||!e||t[0]===e[0]&&t[1]===e[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=t[1]-r.buffer.active.viewportY,n=e[1]-r.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,r.rows-1);if(s>=r.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=i,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=t[0],this._model.selection.endCol=e[0],this._rectangleRenderer.updateSelection(this._model.selection)},e.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption(\"lineHeight\")),this.dimensions.scaledCharTop=1===this._terminal.getOption(\"lineHeight\")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption(\"letterSpacing\")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption(\"letterSpacing\")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},e}(_.Disposable);e.WebglRenderer=p},381:(t,e)=>{function i(t,e,i){var o=r(t.createShader(e));if(t.shaderSource(o,i),t.compileShader(o),t.getShaderParameter(o,t.COMPILE_STATUS))return o;console.error(t.getShaderInfoLog(o)),t.deleteShader(o)}function r(t){if(!t)throw new Error(\"value must not be falsy\");return t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.throwIfFalsy=e.expandFloat32Array=e.createShader=e.createProgram=e.PROJECTION_MATRIX=void 0,e.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),e.createProgram=function(t,e,o){var n=r(t.createProgram());if(t.attachShader(n,r(i(t,t.VERTEX_SHADER,e))),t.attachShader(n,r(i(t,t.FRAGMENT_SHADER,o))),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS))return n;console.error(t.getProgramInfoLog(n)),t.deleteProgram(n)},e.createShader=i,e.expandFloat32Array=function(t,e){for(var i=Math.min(2*t.length,e),r=new Float32Array(i),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.removeTerminalFromCache=e.acquireCharAtlas=void 0;var r=i(433),o=i(167),n=[];e.acquireCharAtlas=function(t,e,i,s){for(var a=r.generateConfig(i,s,t,e),l=0;l=0){if(r.configEquals(c.config,a))return c.atlas;1===c.ownedBy.length?(c.atlas.dispose(),n.splice(l,1)):c.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(e,\"__esModule\",{value:!0}),e.is256Color=e.configEquals=e.generateConfig=void 0;var i={css:\"\",rgba:0};e.generateConfig=function(t,e,r,o){var n={foreground:o.foreground,background:o.background,cursor:i,cursorAccent:i,selectionTransparent:i,selectionOpaque:i,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:t,scaledCharHeight:e,fontFamily:r.getOption(\"fontFamily\"),fontSize:r.getOption(\"fontSize\"),fontWeight:r.getOption(\"fontWeight\"),fontWeightBold:r.getOption(\"fontWeightBold\"),allowTransparency:r.getOption(\"allowTransparency\"),drawBoldTextInBrightColors:r.getOption(\"drawBoldTextInBrightColors\"),minimumContrastRatio:r.getOption(\"minimumContrastRatio\"),colors:n}},e.configEquals=function(t,e){for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglCharAtlas=void 0;var r=i(499),o=i(855),n=i(381),s=i(147),a=i(742),l=1024,h=1024,c=Math.floor(819.2),_={css:\"rgba(0, 0, 0, 0)\",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},u=function(){function t(t,e){this._config=e,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=t.createElement(\"canvas\"),this.cacheCanvas.width=l,this.cacheCanvas.height=h,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext(\"2d\",{alpha:!0})),this._tmpCanvas=t.createElement(\"canvas\"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext(\"2d\",{alpha:this._config.allowTransparency}))}return t.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},t.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},t.prototype._doWarmUp=function(){for(var t,e,i=33;i<126;i++){var r=this._drawToCache(i,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[i]=((t={})[o.DEFAULT_COLOR]=((e={})[o.DEFAULT_COLOR]=r,e),t)}},t.prototype.beginFrame=function(){return this._currentRowY>c&&(this.clearTexture(),this.warmUp(),!0)},t.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,l,h),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},t.prototype.getRasterizedGlyphCombinedChar=function(t,e,i){var r,o=this._cacheMapCombined[t];o||(o={},this._cacheMapCombined[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype.getRasterizedGlyph=function(t,e,i){var r,o=this._cacheMap[t];o||(o={},this._cacheMap[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._config.colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._config.colors.ansi[t]},t.prototype._getBackgroundColor=function(t,e,i){if(this._config.allowTransparency)return _;switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e);case 50331648:var r=s.AttributeData.toColorRGB(e);return{rgba:e<<8,css:\"#\"+f(r[0])+f(r[1])+f(r[2])};case 0:default:return i?this._config.colors.foreground:this._config.colors.background}},t.prototype._getForegroundCss=function(t,e,i,r,o,n,l,h){var c=this._getMinimumContrastCss(t,e,i,r,o,n,l,h);if(c)return c;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&h&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var _=s.AttributeData.toColorRGB(n);return a.channels.toCss(_[0],_[1],_[2]);case 0:default:if(l){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},t.prototype._resolveBackgroundRgba=function(t,e,i){switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},t.prototype._resolveForegroundRgba=function(t,e,i,r){switch(t){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&r&&e<8&&(e+=8),this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},t.prototype._getMinimumContrastCss=function(t,e,i,r,o,n,s,l){if(1!==this._config.minimumContrastRatio){var h=this._config.colors.contrastCache.getCss(t,r);if(void 0!==h)return h||void 0;var c=this._resolveBackgroundRgba(e,i,s),_=this._resolveForegroundRgba(o,n,s,l),d=a.rgba.ensureContrastRatio(c,_,this._config.minimumContrastRatio);if(d){var u=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(t,r,u),u}this._config.colors.contrastCache.setCss(t,r,null)}},t.prototype._drawToCache=function(t,e,i){var o=\"number\"==typeof t?String.fromCharCode(t):t;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=e,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),c=!!this._workAttributeData.isItalic(),_=this._workAttributeData.getFgColor(),u=this._workAttributeData.getFgColorMode(),f=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var g=_;_=f,f=g;var v=u;u=p,p=v}var C=this._getBackgroundColor(p,f,s);this._tmpCtx.globalCompositeOperation=\"copy\",this._tmpCtx.fillStyle=C.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation=\"source-over\";var m=n?this._config.fontWeightBold:this._config.fontWeight,y=c?\"italic\":\"\";this._tmpCtx.font=y+\" \"+m+\" \"+this._config.fontSize*this._config.devicePixelRatio+\"px \"+this._config.fontFamily,this._tmpCtx.textBaseline=\"middle\",this._tmpCtx.fillStyle=this._getForegroundCss(e,p,f,i,u,_,s,n),a&&(this._tmpCtx.globalAlpha=r.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var R=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(t,e){for(var i=!0,r=e.rgba>>>24,o=e.rgba>>>16&255,n=e.rgba>>>8&255,s=0;sl&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),b.texturePosition.x=this._currentRowX,b.texturePosition.y=this._currentRowY,b.texturePositionClipSpace.x=this._currentRowX/l,b.texturePositionClipSpace.y=this._currentRowY/h,this._currentRowHeight=Math.max(this._currentRowHeight,b.size.y),this._currentRowX+=b.size.x,this._cacheCtx.putImageData(w,b.texturePosition.x,b.texturePosition.y),b},t.prototype._findGlyphBoundingBox=function(t,e){e.top=0;for(var i=!1,r=0;r=0;o--){for(r=0;r=0;r--){for(o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.BaseRenderLayer=void 0;var r=i(713),o=i(381),n=function(){function t(t,e,i,r,o){this._container=t,this._alpha=r,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+e+\"-layer\"),this._canvas.style.zIndex=i.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return t.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},t.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},t.prototype.onOptionsChanged=function(t){},t.prototype.onBlur=function(t){},t.prototype.onFocus=function(t){},t.prototype.onCursorMove=function(t){},t.prototype.onGridChanged=function(t,e,i){},t.prototype.onSelectionChanged=function(t,e,i,r){void 0===r&&(r=!1)},t.prototype.setColors=function(t,e){this._refreshCharAtlas(t,e)},t.prototype._setTransparency=function(t,e){if(e!==this._alpha){var i=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(t,this._colors),this.onGridChanged(t,0,t.rows-1)}},t.prototype._refreshCharAtlas=function(t,e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=r.acquireCharAtlas(t,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},t.prototype.resize=function(t,e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(t,this._colors)},t.prototype._fillCells=function(t,e,i,r){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight)},t.prototype._fillBottomLineAtCells=function(t,e,i){void 0===i&&(i=1),this._ctx.fillRect(t*this._scaledCellWidth,(e+1)*this._scaledCellHeight-window.devicePixelRatio-1,i*this._scaledCellWidth,window.devicePixelRatio)},t.prototype._fillLeftLineAtCell=function(t,e,i){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,window.devicePixelRatio*i,this._scaledCellHeight)},t.prototype._strokeRectAtCell=function(t,e,i,r){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(t*this._scaledCellWidth+window.devicePixelRatio/2,e*this._scaledCellHeight+window.devicePixelRatio/2,i*this._scaledCellWidth-window.devicePixelRatio,r*this._scaledCellHeight-window.devicePixelRatio)},t.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},t.prototype._clearCells=function(t,e,i,r){this._alpha?this._ctx.clearRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight))},t.prototype._fillCharTrueColor=function(t,e,i,r){this._ctx.font=this._getFont(t,!1,!1),this._ctx.textBaseline=\"middle\",this._clipRow(t,r),this._ctx.fillText(e.getChars(),i*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},t.prototype._clipRow=function(t,e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,t.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},t.prototype._getFont=function(t,e,i){return(i?\"italic\":\"\")+\" \"+(e?t.getOption(\"fontWeightBold\"):t.getOption(\"fontWeight\"))+\" \"+t.getOption(\"fontSize\")*window.devicePixelRatio+\"px \"+t.getOption(\"fontFamily\")},t}();e.BaseRenderLayer=n},461:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CursorRenderLayer=void 0;var n=i(592),s=i(782),a=600,l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"cursor\",i,!0,r)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:\"\",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},e.prototype.reset=function(t){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(t))},e.prototype.onBlur=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onFocus=function(t){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(t):this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onOptionsChanged=function(t){var e,i=this;t.getOption(\"cursorBlink\")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new h(t,(function(){i._render(t,!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onCursorMove=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype.onGridChanged=function(t,e,i){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(t,!1):this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype._render=function(t,e){if(t._core._coreService.isCursorInitialized&&!t._core._coreService.isCursorHidden){var i=t.buffer.active.baseY+t.buffer.active.cursorY,r=i-t.buffer.active.viewportY,o=Math.min(t.buffer.active.cursorX,t.cols-1);if(r<0||r>=t.rows)this._clearCursor();else if(t._core.buffer.lines.get(i).loadCell(o,this._cell),void 0!==this._cell.content){if(!c(t)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=t.getOption(\"cursorStyle\");return n&&\"block\"!==n?this._cursorRenderers[n](t,o,r,this._cell):this._renderBlurCursor(t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===r&&this._state.isFocused===c(t)&&this._state.style===t.getOption(\"cursorStyle\")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[t.getOption(\"cursorStyle\")||\"block\"](t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=t.getOption(\"cursorStyle\"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},e.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},e.prototype._renderBarCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,i,t.getOption(\"cursorWidth\")),this._ctx.restore()},e.prototype._renderBlockCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,i,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(t,r,e,i),this._ctx.restore()},e.prototype._renderUnderlineCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,i),this._ctx.restore()},e.prototype._renderBlurCursor=function(t,e,i,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,i,r.getWidth(),1),this._ctx.restore()},e}(n.BaseRenderLayer);e.CursorRenderLayer=l;var h=function(){function t(t,e){this._renderCallback=e,this.isCursorVisible=!0,c(t)&&this._restartInterval()}return Object.defineProperty(t.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.restartBlinkAnimation=function(t){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},t.prototype._restartInterval=function(t){var e=this;void 0===t&&(t=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);if(e._animationTimeRestarted=void 0,t>0)return void e._restartInterval(t)}e.isCursorVisible=!1,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0})),e._blinkInterval=window.setInterval((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);return e._animationTimeRestarted=void 0,void e._restartInterval(t)}e.isCursorVisible=!e.isCursorVisible,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))}),a)}),t)},t.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.resume=function(t){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(t)},t}();function c(t){return document.activeElement===t.textarea&&document.hasFocus()}},733:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.LinkRenderLayer=void 0;var n=i(592),s=i(499),a=i(433),l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"link\",i,!0,r)||this;return o.linkifier.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),o.linkifier2.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier2.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state=void 0},e.prototype.reset=function(t){this._clearCurrentLink()},e.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var t=this._state.y2-this._state.y1-1;t>0&&this._clearCells(0,this._state.y1+1,this._state.cols,t),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},e.prototype._onShowLinkUnderline=function(t){if(t.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==t.fg&&a.is256Color(t.fg)?this._ctx.fillStyle=this._colors.ansi[t.fg].css:this._ctx.fillStyle=this._colors.foreground.css,t.y1===t.y2)this._fillBottomLineAtCells(t.x1,t.y1,t.x2-t.x1);else{this._fillBottomLineAtCells(t.x1,t.y1,t.cols-t.x1);for(var e=t.y1+1;e{var i,r,o,n;function s(t){var e=t.toString(16);return e.length<2?\"0\"+e:e}function a(t,e){return t>>0}}(i=e.channels||(e.channels={})),(r=e.color||(e.color={})).blend=function(t,e){var r=(255&e.rgba)/255;if(1===r)return{css:e.css,rgba:e.rgba};var o=e.rgba>>24&255,n=e.rgba>>16&255,s=e.rgba>>8&255,a=t.rgba>>24&255,l=t.rgba>>16&255,h=t.rgba>>8&255,c=a+Math.round((o-a)*r),_=l+Math.round((n-l)*r),d=h+Math.round((s-h)*r);return{css:i.toCss(c,_,d),rgba:i.toRgba(c,_,d)}},r.isOpaque=function(t){return 255==(255&t.rgba)},r.ensureContrastRatio=function(t,e,i){var r=n.ensureContrastRatio(t.rgba,e.rgba,i);if(r)return n.toColor(r>>24&255,r>>16&255,r>>8&255)},r.opaque=function(t){var e=(255|t.rgba)>>>0,r=n.toChannels(e),o=r[0],s=r[1],a=r[2];return{css:i.toCss(o,s,a),rgba:e}},r.opacity=function(t,e){var r=Math.round(255*e),o=n.toChannels(t.rgba),s=o[0],a=o[1],l=o[2];return{css:i.toCss(s,a,l,r),rgba:i.toRgba(s,a,l,r)}},(e.css||(e.css={})).toColor=function(t){switch(t.length){case 7:return{css:t,rgba:(parseInt(t.slice(1),16)<<8|255)>>>0};case 9:return{css:t,rgba:parseInt(t.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(t){function e(t,e,i){var r=t/255,o=e/255,n=i/255;return.2126*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}t.relativeLuminance=function(t){return e(t>>16&255,t>>8&255,255&t)},t.relativeLuminance2=e}(o=e.rgb||(e.rgb={})),function(t){function e(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_0||h>0||c>0);)l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),c-=Math.max(0,Math.ceil(.1*c)),_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));return(l<<24|h<<16|c<<8|255)>>>0}function r(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_>>0}t.ensureContrastRatio=function(t,i,n){var s=o.relativeLuminance(t>>8),l=o.relativeLuminance(i>>8);if(a(s,l)>24&255,t>>16&255,t>>8&255,255&t]},t.toColor=function(t,e,r){return{css:i.toCss(t,e,r),rgba:i.toRgba(t,e,r)}}}(n=e.rgba||(e.rgba={})),e.toPaddedHex=s,e.contrastRatio=a},499:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.CHAR_ATLAS_CELL_SPACING=e.DIM_OPACITY=e.INVERTED_DEFAULT_COLOR=void 0,e.INVERTED_DEFAULT_COLOR=257,e.DIM_OPACITY=.5,e.CHAR_ATLAS_CELL_SPACING=1},345:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.forwardEvent=e.EventEmitter=void 0;var i=function(){function t(){this._listeners=[],this._disposed=!1}return Object.defineProperty(t.prototype,\"event\",{get:function(){var t=this;return this._event||(this._event=function(e){return t._listeners.push(e),{dispose:function(){if(!t._disposed)for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.getDisposeArrayDisposable=e.disposeArray=e.Disposable=void 0;var i=function(){function t(){this._disposables=[],this._isDisposed=!1}return t.prototype.dispose=function(){this._isDisposed=!0;for(var t=0,e=this._disposables;t{function i(t,e,i,r){if(void 0===i&&(i=0),void 0===r&&(r=t.length),i>=t.length)return t;i=(t.length+i)%t.length,r=r>=t.length?t.length:(t.length+r)%t.length;for(var o=i;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.ExtendedAttrs=e.AttributeData=void 0;var i=function(){function t(){this.fg=0,this.bg=0,this.extended=new r}return t.toColorRGB=function(t){return[t>>>16&255,t>>>8&255,255&t]},t.fromColorRGB=function(t){return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},t.prototype.clone=function(){var e=new t;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e},t.prototype.isInverse=function(){return 67108864&this.fg},t.prototype.isBold=function(){return 134217728&this.fg},t.prototype.isUnderline=function(){return 268435456&this.fg},t.prototype.isBlink=function(){return 536870912&this.fg},t.prototype.isInvisible=function(){return 1073741824&this.fg},t.prototype.isItalic=function(){return 67108864&this.bg},t.prototype.isDim=function(){return 134217728&this.bg},t.prototype.getFgColorMode=function(){return 50331648&this.fg},t.prototype.getBgColorMode=function(){return 50331648&this.bg},t.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},t.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},t.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},t.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},t.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},t.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},t.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},t.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},t.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},t.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},t.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},t.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},t.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},t.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},t.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},t.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},t.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},t}();e.AttributeData=i;var r=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=-1),this.underlineStyle=t,this.underlineColor=e}return t.prototype.clone=function(){return new t(this.underlineStyle,this.underlineColor)},t.prototype.isEmpty=function(){return 0===this.underlineStyle},t}();e.ExtendedAttrs=r},782:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CellData=void 0;var n=i(133),s=i(855),a=i(147),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.content=0,e.fg=0,e.bg=0,e.extended=new a.ExtendedAttrs,e.combinedData=\"\",e}return o(e,t),e.fromCharData=function(t){var i=new e;return i.setFromCharData(t),i},e.prototype.isCombined=function(){return 2097152&this.content},e.prototype.getWidth=function(){return this.content>>22},e.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):\"\"},e.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},e.prototype.setFromCharData=function(t){this.fg=t[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var e=!1;if(t[s.CHAR_DATA_CHAR_INDEX].length>2)e=!0;else if(2===t[s.CHAR_DATA_CHAR_INDEX].length){var i=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){var r=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=r&&r<=57343?this.content=1024*(i-55296)+r-56320+65536|t[s.CHAR_DATA_WIDTH_INDEX]<<22:e=!0}else e=!0}else this.content=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[s.CHAR_DATA_WIDTH_INDEX]<<22;e&&(this.combinedData=t[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|t[s.CHAR_DATA_WIDTH_INDEX]<<22)},e.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},e}(a.AttributeData);e.CellData=l},855:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WHITESPACE_CELL_CODE=e.WHITESPACE_CELL_WIDTH=e.WHITESPACE_CELL_CHAR=e.NULL_CELL_CODE=e.NULL_CELL_WIDTH=e.NULL_CELL_CHAR=e.CHAR_DATA_CODE_INDEX=e.CHAR_DATA_WIDTH_INDEX=e.CHAR_DATA_CHAR_INDEX=e.CHAR_DATA_ATTR_INDEX=e.DEFAULT_ATTR=e.DEFAULT_COLOR=void 0,e.DEFAULT_COLOR=256,e.DEFAULT_ATTR=256|e.DEFAULT_COLOR<<9,e.CHAR_DATA_ATTR_INDEX=0,e.CHAR_DATA_CHAR_INDEX=1,e.CHAR_DATA_WIDTH_INDEX=2,e.CHAR_DATA_CODE_INDEX=3,e.NULL_CELL_CHAR=\"\",e.NULL_CELL_WIDTH=1,e.NULL_CELL_CODE=0,e.WHITESPACE_CELL_CHAR=\" \",e.WHITESPACE_CELL_WIDTH=1,e.WHITESPACE_CELL_CODE=32},133:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.Utf8ToUtf32=e.StringToUtf32=e.utf32ToString=e.stringFromCodePoint=void 0,e.stringFromCodePoint=function(t){return t>65535?(t-=65536,String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)},e.utf32ToString=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length);for(var r=\"\",o=e;o65535?(n-=65536,r+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):r+=String.fromCharCode(n)}return r};var i=function(){function t(){this._interim=0}return t.prototype.clear=function(){this._interim=0},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r=0,o=0;this._interim&&(56320<=(a=t.charCodeAt(o++))&&a<=57343?e[r++]=1024*(this._interim-55296)+a-56320+65536:(e[r++]=this._interim,e[r++]=a),this._interim=0);for(var n=o;n=i)return this._interim=s,r;var a;56320<=(a=t.charCodeAt(n))&&a<=57343?e[r++]=1024*(s-55296)+a-56320+65536:(e[r++]=s,e[r++]=a)}else 65279!==s&&(e[r++]=s)}return r},t}();e.StringToUtf32=i;var r=function(){function t(){this.interim=new Uint8Array(3)}return t.prototype.clear=function(){this.interim.fill(0)},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r,o,n,s,a=0,l=0,h=0;if(this.interim[0]){var c=!1,_=this.interim[0];_&=192==(224&_)?31:224==(240&_)?15:7;for(var d=0,u=void 0;(u=63&this.interim[++d])&&d<4;)_<<=6,_|=u;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=f-d;h=i)return 0;if(128!=(192&(u=t[h++]))){h--,c=!0;break}this.interim[d++]=u,_<<=6,_|=63&u}c||(2===f?_<128?h--:e[a++]=_:3===f?_<2048||_>=55296&&_<=57343||65279===_||(e[a++]=_):_<65536||_>1114111||(e[a++]=_)),this.interim.fill(0)}for(var g=i-4,v=h;v=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if((l=(31&r)<<6|63&o)<128){v--;continue}e[a++]=l}else if(224==(240&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if((l=(15&r)<<12|(63&o)<<6|63&n)<2048||l>=55296&&l<=57343||65279===l)continue;e[a++]=l}else if(240==(248&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=t[v++]))){v--;continue}if((l=(7&r)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||l>1114111)continue;e[a++]=l}}return a},t}();e.Utf8ToUtf32=r}},e={};return function i(r){if(e[r])return e[r].exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,i),o.exports}(795)})()}));\n//# sourceMappingURL=xterm-addon-webgl.js.map","/*!\n * xterm (https://npmjs.com/package/xterm)\n * @license MIT\n * @version 4.12.0\n * ==xterm/LICENSE==\n * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)\n * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var r=t();for(var i in r)(\"object\"==typeof exports?exports:e)[i]=r[i]}}(self,(function(){return(()=>{\"use strict\";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce=\"\",i._accessibilityTreeRoot=document.createElement(\"div\"),i._accessibilityTreeRoot.classList.add(\"xterm-accessibility\"),i._rowContainer=document.createElement(\"div\"),i._rowContainer.setAttribute(\"role\",\"list\"),i._rowContainer.classList.add(\"xterm-accessibility-tree\"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(\"focus\",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement(\"div\");return e.setAttribute(\"role\",\"listitem\"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,\"\\n\"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent=\"\",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=\" \":a.textContent=o,a.setAttribute(\"aria-posinset\",s),a.setAttribute(\"aria-setsize\",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\\r?\\n/g,\"\\r\")}function i(e,t){return t?\"\u001b[200~\"+e+\"\u001b[201~\":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=\"\"}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width=\"20px\",t.style.height=\"20px\",t.style.left=n+\"px\",t.style.top=o+\"px\",t.style.zIndex=\"1000\",t.focus()}Object.defineProperty(t,\"__esModule\",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData(\"text/plain\",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData(\"text/plain\"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?\"0\"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor(\"#ffffff\"),s=i.css.toColor(\"#000000\"),a=i.css.toColor(\"#ffffff\"),c=i.css.toColor(\"#000000\"),l={css:\"rgba(255, 255, 255, 0.3)\",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor(\"#2e3436\"),i.css.toColor(\"#cc0000\"),i.css.toColor(\"#4e9a06\"),i.css.toColor(\"#c4a000\"),i.css.toColor(\"#3465a4\"),i.css.toColor(\"#75507b\"),i.css.toColor(\"#06989a\"),i.css.toColor(\"#d3d7cf\"),i.css.toColor(\"#555753\"),i.css.toColor(\"#ef2929\"),i.css.toColor(\"#8ae234\"),i.css.toColor(\"#fce94f\"),i.css.toColor(\"#729fcf\"),i.css.toColor(\"#ad7fa8\"),i.css.toColor(\"#34e2e2\"),i.css.toColor(\"#eeeeec\")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement(\"canvas\");h.width=1,h.height=1;var u=h.getContext(\"2d\");if(!u)throw new Error(\"Could not get rendering context\");this._ctx=u,this._ctx.globalCompositeOperation=\"copy\",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){\"minimumContrastRatio\"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,\"string\"!=typeof this._ctx.fillStyle)return console.warn(\"Color: \"+e+\" is invalid using fallback \"+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn(\"Color: \"+e+\" is using transparency, but allowTransparency is false. Using fallback \"+t.css+\".\"),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(\",\").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLinkTooltip\",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&\"break\"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn(\"Opening link blocked as opener could not be cleared\")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add(\"xterm-cursor-pointer\")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove(\"xterm-cursor-pointer\"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,\"currentLink\",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,\"mouseleave\",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,\"mousemove\",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,\"click\",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle(\"xterm-cursor-pointer\",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(\"xterm-cursor-pointer\")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(\"xterm-cursor-pointer\")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel=\"Terminal input\",t.tooMuchOutput=\"Too much output to announce, navigate to rows manually to read\"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,\"mousedown\",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener(\"mousemove\",this._mouseMoveListener),this._element.addEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.addEventListener(\"click\",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener(\"mousemove\",this._mouseMoveListener),this._element.removeEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.removeEventListener(\"click\",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia(\"screen and (resolution: \"+window.devicePixelRatio+\"dppx)\"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),b=r(1296),S=r(7399),m=r(8460),C=r(8437),w=r(5680),E=r(3230),L=r(4725),k=r(428),A=r(8934),R=r(6465),x=r(5114),T=r(8969),O=r(4774),D=r(4269),P=\"undefined\"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new m.EventEmitter,r._onKey=new m.EventEmitter,r._onRender=new m.EventEmitter,r._onSelectionChange=new m.EventEmitter,r._onTitleChange=new m.EventEmitter,r._onBell=new m.EventEmitter,r._onFocus=new m.EventEmitter,r._onBlur=new m.EventEmitter,r._onA11yCharEmitter=new m.EventEmitter,r._onA11yTabEmitter=new m.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(R.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(m.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(m.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(m.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(m.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,\"options\",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onKey\",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRender\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBell\",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onFocus\",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBlur\",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.removeEventListener(\"mousemove\",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?(\"debug\"===e.optionsService.options.logLevel&&e._logService.debug(\"Binding to mouse events:\",e._coreMouseService.explainEvents(t)),e.element.classList.add(\"enable-mouse-events\"),e._selectionService.disable()):(e._logService.debug(\"Unbinding from mouse events.\"),e.element.classList.remove(\"enable-mouse-events\"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener(\"mousemove\",l),n.mousemove=l):(r.removeEventListener(\"mousemove\",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener(\"wheel\",s,{passive:!1}),n.wheel=s):(r.removeEventListener(\"wheel\",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener(\"mousemove\",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,\"mousedown\",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.addEventListener(\"mousemove\",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,\"wheel\",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?\"O\":\"[\")+(t.deltaY<0?\"A\":\"B\"),o=\"\",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,\"scroll\",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+\"px\")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return\"alt\"===r&&t.altKey||\"ctrl\"===r&&t.ctrlKey||\"shift\"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=\"\"}return Object.defineProperty(e.prototype,\"isComposing\",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent=\"\",this._dataAlreadySent=\"\",this._compositionView.classList.add(\"active\")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove(\"active\"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){if(t._isSendingComposition){t._isSendingComposition=!1;var e;r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0)}}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,\"\");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+\"px\",this._compositionView.style.top=n+\"px\",this._compositionView.style.height=i+\"px\",this._compositionView.style.lineHeight=i+\"px\",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+\"px\";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+\"px\",this._textarea.style.top=n+\"px\",this._textarea.style.width=Math.max(s.width,1)+\"px\",this._textarea.style.height=Math.max(s.height,1)+\"px\",this._textarea.style.lineHeight=s.height+\"px\"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?\"A\":\"B\"}function a(e,t,r,i,n,o){for(var s=e,a=t,c=\"\";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?\"O\":\"[\";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r=\"\",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?\"D\":\"C\",l(Math.abs(h-e),c(s,i));s=u>t?\"D\":\"C\";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error(\"You must set the allowProposedApi option to true to use proposed API\")},Object.defineProperty(e.prototype,\"onCursorMove\",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLineFeed\",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onSelectionChange\",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onData\",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBinary\",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTitleChange\",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBell\",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onScroll\",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onKey\",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onRender\",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onResize\",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"element\",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parser\",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"unicode\",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"textarea\",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rows\",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"cols\",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"buffer\",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"markers\",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write(\"\\r\\n\",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,\"strings\",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,\"versions\",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:\"\",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+t+\"-layer\"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline=\"ideographic\",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline=\"ideographic\",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getBgColor()).join(\",\")+\")\";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getFgColor()).join(\",\")+\")\";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?\"italic\":\"\")+\" \"+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+\" \"+this._optionsService.options.fontSize*window.devicePixelRatio+\"px \"+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,\"cursor\",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:\"\",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&\"block\"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||\"block\"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,\"link\",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error(\"value must not be falsy\");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,\"selection\",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,\"text\",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont=\"\",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,\"__esModule\",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:\"rgba(0, 0, 0, 0)\",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement(\"canvas\"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext(\"2d\",{alpha:!0}));var n=t.createElement(\"canvas\");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext(\"2d\",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,\"__esModule\",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p=\"xterm-dom-renderer-owner-\",v=\"xterm-fg-\",g=\"xterm-bg-\",y=\"xterm-focus\",b=1,S=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=b++,f._rowElements=[],f._rowContainer=document.createElement(\"div\"),f._rowContainer.classList.add(\"xterm-rows\"),f._rowContainer.style.lineHeight=\"normal\",f._rowContainer.setAttribute(\"aria-hidden\",\"true\"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement(\"div\"),f._selectionContainer.classList.add(\"xterm-selection\"),f._selectionContainer.setAttribute(\"aria-hidden\",\"true\"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement(\"div\");return n.style.height=i*this.dimensions.actualCellHeight+\"px\",n.style.top=e*this.dimensions.actualCellHeight+\"px\",n.style.left=t*this.dimensions.actualCellWidth+\"px\",n.style.width=this.dimensions.actualCellWidth*(r-t)+\"px\",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=S},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS=\"xterm-bold\",t.DIM_CLASS=\"xterm-dim\",t.ITALIC_CLASS=\"xterm-italic\",t.UNDERLINE_CLASS=\"xterm-underline\",t.CURSOR_CLASS=\"xterm-cursor\",t.CURSOR_BLINK_CLASS=\"xterm-cursor-blink\",t.CURSOR_STYLE_BLOCK_CLASS=\"xterm-cursor-block\",t.CURSOR_STYLE_BAR_CLASS=\"xterm-cursor-bar\",t.CURSOR_STYLE_UNDERLINE_CLASS=\"xterm-cursor-underline\";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){b=!0;var C=p.shift();m=new u.JoinedCellData(this._workCell,e.translateToString(!0,C[0],C[1]),C[1]-C[0]),S=C[1]-1,y=m.getWidth()}var w=this._document.createElement(\"span\");if(y>1&&(w.style.width=h*y+\"px\"),b&&(w.style.display=\"inline\",a>=g&&a<=S&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case\"bar\":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case\"underline\":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}m.isBold()&&w.classList.add(t.BOLD_CLASS),m.isItalic()&&w.classList.add(t.ITALIC_CLASS),m.isDim()&&w.classList.add(t.DIM_CLASS),m.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),m.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=m.getChars()||s.WHITESPACE_CELL_CHAR;var E=m.getFgColor(),L=m.getFgColorMode(),k=m.getBgColor(),A=m.getBgColorMode(),R=!!m.isInverse();if(R){var x=E;E=k,k=x;var T=L;L=A,A=T}switch(L){case 16777216:case 33554432:m.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add(\"xterm-fg-\"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,\"color:#\"+_(E.toString(16),\"0\",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||R&&w.classList.add(\"xterm-fg-\"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:w.classList.add(\"xterm-bg-\"+k);break;case 50331648:this._addStyle(w,\"background-color:#\"+_(k.toString(16),\"0\",6));break;case 0:default:R&&w.classList.add(\"xterm-bg-\"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=S}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,\"color:\"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute(\"style\",\"\"+(e.getAttribute(\"style\")||\"\")+t+\";\")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,\"finalSelectionStart\",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"finalSelectionEnd\",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,\"hasValidSize\",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onCharSizeChange\",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement(\"span\"),this._measureElement.classList.add(\"xterm-char-measure-element\"),this._measureElement.textContent=\"W\",this._measureElement.setAttribute(\"aria-hidden\",\"true\"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+\"px\";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData=\"\",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error(\"not implemented\")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,\"isFocused\",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,\"resize\",(function(){return l.onDevicePixelRatioChange()}))),\"IntersectionObserver\"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,\"onDimensionsChange\",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRenderedBufferChange\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRefreshRequest\",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dimensions\",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,\"g\"),b=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,\"onLinuxMouseSelection\",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestScrollLines\",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,\"selectionStart\",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionEnd\",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasSelection\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionText\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return\"\";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return\"\";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y,\" \")})).join(a.isWindows?\"\\r\\n\":\"\\n\")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(\"mouseup\",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(\"mouseup\",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption(\"altClickMovesCursor\")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(\" \"===s.charAt(a)){for(;a>0&&\" \"===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var b=a+l-h+f,S=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||\"\"!==s.slice(a,c).trim()){if(r&&0===b&&32!==o.getCodePoint(0)){var m=n.lines.get(e[1]-1);if(m&&o.isWrapped&&32!==m.getCodePoint(this._bufferService.cols-1)){var C=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(C){var w=this._bufferService.cols-C.start;b-=w,S+=w}}}if(i&&b+S===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(S+=L.length)}}return{start:b,length:S}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=b},4725:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator(\"CharSizeService\"),t.ICoreBrowserService=i.createDecorator(\"CoreBrowserService\"),t.IMouseService=i.createDecorator(\"MouseService\"),t.IRenderService=i.createDecorator(\"RenderService\"),t.ISelectionService=i.createDecorator(\"SelectionService\"),t.ISoundService=i.createDecorator(\"SoundService\"),t.ICharacterJoinerService=i.createDecorator(\"CharacterJoinerService\")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,\"audioContext\",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn(\"Web Audio API is not supported by this browser. Consider upgrading to the latest version\"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,\"onDelete\",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onInsert\",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTrim\",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxLength\",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error(\"start argument out of range\");if(e+r<0)throw new Error(\"Cannot shift elements in list beyond index 0\");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),\"object\"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),b=r(5981),S=!1,m=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new b.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"cols\",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rows\",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"buffers\",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!S&&(this._logService.warn(\"writeSync is unreliable and will be removed soon.\"),S=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case\"scrollback\":this.buffers.resize(this.cols,this.rows);break;case\"windowsMode\":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:\"H\"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,\"event\",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]=\"GET_WIN_SIZE_PIXELS\",e[e.GET_CELL_SIZE_PIXELS=1]=\"GET_CELL_SIZE_PIXELS\"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'\"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0\"q'+s.C0.ESC+\"\\\\\");break;case'\"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1\"p'+s.C0.ESC+\"\\\\\");break;case\"r\":var r=this._bufferService.buffer.scrollTop+1+\";\"+(this._bufferService.buffer.scrollBottom+1)+\"r\";this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+r+s.C0.ESC+\"\\\\\");break;case\"m\":this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r0m\"+s.C0.ESC+\"\\\\\");break;case\" q\":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+i+\" q\"+s.C0.ESC+\"\\\\\");break;default:this._logService.debug(\"Unknown DCS $q %s\",t),this._coreService.triggerDataEvent(s.C0.ESC+\"P0$r\"+s.C0.ESC+\"\\\\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle=\"\",g._iconName=\"\",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug(\"Unknown CSI code: \",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug(\"Unknown ESC code: \",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug(\"Unknown EXECUTE code: \",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug(\"Unknown OSC code: \",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){\"HOOK\"===t&&(r=r.toArray()),g._logService.debug(\"Unknown DCS code: \",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:\"@\"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"@\"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:\"A\"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"A\"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:\"B\"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:\"C\"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:\"D\"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:\"E\"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:\"F\"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:\"G\"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:\"H\"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:\"I\"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:\"L\"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:\"M\"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:\"P\"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:\"S\"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:\"T\"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:\"X\"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:\"Z\"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:\"`\"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:\"a\"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:\"b\"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:\"c\"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:\">\",final:\"c\"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:\"d\"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:\"e\"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:\"f\"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:\"g\"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:\"h\"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"h\"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:\"l\"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"l\"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:\"m\"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:\"n\"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"n\"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:\"!\",final:\"p\"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"q\"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:\"r\"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:\"s\"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:\"t\"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:\"u\"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"}\"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"~\"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:\"7\"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:\"8\"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:\"D\"},(function(){return g.index()})),g._parser.registerEscHandler({final:\"E\"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:\"H\"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:\"M\"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:\"=\"},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:\">\"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:\"c\"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:\"n\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"o\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"|\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"}\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"~\"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:\"%\",final:\"@\"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:\"%\",final:\"G\"},(function(){return g.selectDefaultCharset()}));var b=function(e){S._parser.registerEscHandler({intermediates:\"(\",final:e},(function(){return g.selectCharset(\"(\"+e)})),S._parser.registerEscHandler({intermediates:\")\",final:e},(function(){return g.selectCharset(\")\"+e)})),S._parser.registerEscHandler({intermediates:\"*\",final:e},(function(){return g.selectCharset(\"*\"+e)})),S._parser.registerEscHandler({intermediates:\"+\",final:e},(function(){return g.selectCharset(\"+\"+e)})),S._parser.registerEscHandler({intermediates:\"-\",final:e},(function(){return g.selectCharset(\"-\"+e)})),S._parser.registerEscHandler({intermediates:\".\",final:e},(function(){return g.selectCharset(\".\"+e)})),S._parser.registerEscHandler({intermediates:\"/\",final:e},(function(){return g.selectCharset(\"/\"+e)}))},S=this;for(var m in a.CHARSETS)b(m);return g._parser.registerEscHandler({intermediates:\"#\",final:\"8\"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error(\"Parsing error: \",e),e})),g._parser.registerDcsHandler({intermediates:\"$\",final:\"q\"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,\"onRequestBell\",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRefreshRows\",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestReset\",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestSyncScrollBar\",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestWindowsOptionsReport\",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onAnsiColorChange\",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t(\"#SLOW_TIMEOUT\")}),5e3)}))]).catch((function(e){if(\"#SLOW_TIMEOUT\"!==e)throw e;console.warn(\"async parser handler taking longer than 5000 ms\")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>m&&(s=this._parseStack.position+m)}if(this._logService.debug(\"parsing data\",e),this._parseBuffer.lengthm)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return\"t\"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!C(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new b.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is(\"xterm\")||this._is(\"rxvt-unicode\")||this._is(\"screen\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[?1;2c\"):this._is(\"linux\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[?6c\")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is(\"xterm\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>0;276;0c\"):this._is(\"rxvt-unicode\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>85;95;0c\"):this._is(\"linux\")?this._coreService.triggerDataEvent(e.params[0]+\"c\"):this._is(\"screen\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[>83;40003;0c\")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+\"\").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug(\"Unknown SGR attribute: %d.\",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+\"[0n\");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[\"+t+\";\"+r+\"R\")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[?\"+t+\";\"+r+\"R\")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle=\"block\";break;case 3:case 4:this._optionsService.options.cursorStyle=\"underline\";break;case 5:case 6:this._optionsService.options.cursorStyle=\"bar\"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!C(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+\"[8;\"+this._bufferService.rows+\";\"+this._bufferService.cols+\"t\");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\\d+);rgb:([\\da-f]{2})\\/([\\da-f]{2})\\/([\\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn(\"Expected format ;rgb:// but got data: \"+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug(\"Serial port requested application keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug(\"Switching back to normal keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):(\"/\"===e[0]||this._charsetService.setgCharset(S[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|\"E\".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r=\"undefined\"==typeof navigator,i=r?\"node\":navigator.userAgent,n=r?\"node\":navigator.platform;t.isFirefox=i.includes(\"Firefox\"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=[\"Macintosh\",\"MacIntel\",\"MacPPC\",\"Mac68K\"].includes(n),t.isIpad=\"iPad\"===n,t.isIphone=\"iPhone\"===n,t.isWindows=[\"Windows\",\"Win16\",\"Win32\",\"WinCE\"].includes(n),t.isLinux=n.indexOf(\"Linux\")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,\"hasScrollback\",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isCursorInViewport\",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,b=_[y];0===b&&(b=_[--y]);for(var S=l.length-d-1,m=f;S>=0;){var C=Math.min(m,b);if(l[y].copyCellsFrom(l[S],m-C,b-C,C,!0),0==(b-=C)&&(b=_[--y]),0==(m-=C)){S--;var w=Math.max(S,0);m=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var L=[],k=[];for(v=0;v=0;v--)if(T&&T.start>R+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,L.push({index:R+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++x]}else this.lines.set(v,k[R--]);var P=0;for(v=L.length-1;v>=0;v--)L[v].index+=P,this.lines.onInsertEmitter.fire(L[v]),P+=L[v].amount;var M=Math.max(0,A+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t=\"\",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):\"\"},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o=\"\";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error(\"Buffer range end (\"+e.end.x+\", \"+e.end.y+\") cannot be before start (\"+e.start.x+\", \"+e.start.y+\")\");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(S>u||0===h[S].getTrimmedLength());S--)b++;b>0&&(s.push(a+h.length-b),s.push(b)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,\"onBufferActivate\",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,\"alt\",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"active\",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"normal\",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData=\"\",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):\"\"},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR=\"\",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=\" \",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onDispose\",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={\"`\":\"◆\",a:\"▒\",b:\"␉\",c:\"␌\",d:\"␍\",e:\"␊\",f:\"°\",g:\"±\",h:\"␤\",i:\"␋\",j:\"┘\",k:\"┐\",l:\"┌\",m:\"└\",n:\"┼\",o:\"⎺\",p:\"⎻\",q:\"─\",r:\"⎼\",s:\"⎽\",t:\"├\",u:\"┤\",v:\"┴\",w:\"┬\",x:\"│\",y:\"≤\",z:\"≥\",\"{\":\"π\",\"|\":\"≠\",\"}\":\"£\",\"~\":\"·\"},t.CHARSETS.A={\"#\":\"£\"},t.CHARSETS.B=void 0,t.CHARSETS[4]={\"#\":\"£\",\"@\":\"¾\",\"[\":\"ij\",\"\\\\\":\"½\",\"]\":\"|\",\"{\":\"¨\",\"|\":\"f\",\"}\":\"¼\",\"~\":\"´\"},t.CHARSETS.C=t.CHARSETS[5]={\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.R={\"#\":\"£\",\"@\":\"à\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"§\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"¨\"},t.CHARSETS.Q={\"@\":\"à\",\"[\":\"â\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",\"`\":\"ô\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"û\"},t.CHARSETS.K={\"@\":\"§\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Ü\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"ß\"},t.CHARSETS.Y={\"#\":\"£\",\"@\":\"§\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"é\",\"`\":\"ù\",\"{\":\"à\",\"|\":\"ò\",\"}\":\"è\",\"~\":\"ì\"},t.CHARSETS.E=t.CHARSETS[6]={\"@\":\"Ä\",\"[\":\"Æ\",\"\\\\\":\"Ø\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"ä\",\"{\":\"æ\",\"|\":\"ø\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.Z={\"#\":\"£\",\"@\":\"§\",\"[\":\"¡\",\"\\\\\":\"Ñ\",\"]\":\"¿\",\"{\":\"°\",\"|\":\"ñ\",\"}\":\"ç\"},t.CHARSETS.H=t.CHARSETS[7]={\"@\":\"É\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS[\"=\"]={\"#\":\"ù\",\"@\":\"à\",\"[\":\"é\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",_:\"è\",\"`\":\"ô\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"û\"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,\"__esModule\",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL=\"\\0\",i.SOH=\"\u0001\",i.STX=\"\u0002\",i.ETX=\"\u0003\",i.EOT=\"\u0004\",i.ENQ=\"\u0005\",i.ACK=\"\u0006\",i.BEL=\"\u0007\",i.BS=\"\\b\",i.HT=\"\\t\",i.LF=\"\\n\",i.VT=\"\\v\",i.FF=\"\\f\",i.CR=\"\\r\",i.SO=\"\u000e\",i.SI=\"\u000f\",i.DLE=\"\u0010\",i.DC1=\"\u0011\",i.DC2=\"\u0012\",i.DC3=\"\u0013\",i.DC4=\"\u0014\",i.NAK=\"\u0015\",i.SYN=\"\u0016\",i.ETB=\"\u0017\",i.CAN=\"\u0018\",i.EM=\"\u0019\",i.SUB=\"\u001a\",i.ESC=\"\u001b\",i.FS=\"\u001c\",i.GS=\"\u001d\",i.RS=\"\u001e\",i.US=\"\u001f\",i.SP=\" \",i.DEL=\"\",(r=t.C1||(t.C1={})).PAD=\"€\",r.HOP=\"\",r.BPH=\"‚\",r.NBH=\"ƒ\",r.IND=\"„\",r.NEL=\"…\",r.SSA=\"†\",r.ESA=\"‡\",r.HTS=\"ˆ\",r.HTJ=\"‰\",r.VTS=\"Š\",r.PLD=\"‹\",r.PLU=\"Œ\",r.RI=\"\",r.SS2=\"Ž\",r.SS3=\"\",r.DCS=\"\",r.PU1=\"‘\",r.PU2=\"’\",r.STS=\"“\",r.CCH=\"”\",r.MW=\"•\",r.SPA=\"–\",r.EPA=\"—\",r.SOS=\"˜\",r.SGCI=\"™\",r.SCI=\"š\",r.CSI=\"›\",r.ST=\"œ\",r.OSC=\"\",r.PM=\"ž\",r.APC=\"Ÿ\"},7399:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:[\"0\",\")\"],49:[\"1\",\"!\"],50:[\"2\",\"@\"],51:[\"3\",\"#\"],52:[\"4\",\"$\"],53:[\"5\",\"%\"],54:[\"6\",\"^\"],55:[\"7\",\"&\"],56:[\"8\",\"*\"],57:[\"9\",\"(\"],186:[\";\",\":\"],187:[\"=\",\"+\"],188:[\",\",\"<\"],189:[\"-\",\"_\"],190:[\".\",\">\"],191:[\"/\",\"?\"],192:[\"`\",\"~\"],219:[\"[\",\"{\"],220:[\"\\\\\",\"|\"],221:[\"]\",\"}\"],222:[\"'\",'\"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:\"UIKeyInputUpArrow\"===e.key?s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\":\"UIKeyInputLeftArrow\"===e.key?s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\":\"UIKeyInputRightArrow\"===e.key?s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\":\"UIKeyInputDownArrow\"===e.key&&(s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+\"[Z\";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"D\",s.key===i.C0.ESC+\"[1;3D\"&&(s.key=i.C0.ESC+(r?\"b\":\"[1;5D\"))):s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"C\",s.key===i.C0.ESC+\"[1;3C\"&&(s.key=i.C0.ESC+(r?\"f\":\"[1;5C\"))):s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"A\",r||s.key!==i.C0.ESC+\"[1;3A\"||(s.key=i.C0.ESC+\"[1;5A\")):s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"B\",r||s.key!==i.C0.ESC+\"[1;3B\"||(s.key=i.C0.ESC+\"[1;5B\")):s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+\"[2~\");break;case 46:s.key=a?i.C0.ESC+\"[3;\"+(a+1)+\"~\":i.C0.ESC+\"[3~\";break;case 36:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"H\":t?i.C0.ESC+\"OH\":i.C0.ESC+\"[H\";break;case 35:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"F\":t?i.C0.ESC+\"OF\":i.C0.ESC+\"[F\";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+\"[5~\";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+\"[6~\";break;case 112:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"P\":i.C0.ESC+\"OP\";break;case 113:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"Q\":i.C0.ESC+\"OQ\";break;case 114:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"R\":i.C0.ESC+\"OR\";break;case 115:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"S\":i.C0.ESC+\"OS\";break;case 116:s.key=a?i.C0.ESC+\"[15;\"+(a+1)+\"~\":i.C0.ESC+\"[15~\";break;case 117:s.key=a?i.C0.ESC+\"[17;\"+(a+1)+\"~\":i.C0.ESC+\"[17~\";break;case 118:s.key=a?i.C0.ESC+\"[18;\"+(a+1)+\"~\":i.C0.ESC+\"[18~\";break;case 119:s.key=a?i.C0.ESC+\"[19;\"+(a+1)+\"~\":i.C0.ESC+\"[19~\";break;case 120:s.key=a?i.C0.ESC+\"[20;\"+(a+1)+\"~\":i.C0.ESC+\"[20~\";break;case 121:s.key=a?i.C0.ESC+\"[21;\"+(a+1)+\"~\":i.C0.ESC+\"[21~\";break;case 122:s.key=a?i.C0.ESC+\"[23;\"+(a+1)+\"~\":i.C0.ESC+\"[23~\";break;case 123:s.key=a?i.C0.ESC+\"[24;\"+(a+1)+\"~\":i.C0.ESC+\"[24~\";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&\"_\"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i=\"\",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version=\"6\",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WriteBuffer=void 0;var r=\"undefined\"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error(\"write data discarded, use flow control to avoid losing data\");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,\"HOOK\",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,\"PUT\",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,\"UNHOOK\",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data=\"\",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data=\"\",t._hitLimit=!1,e}));return this._params=c,this._data=\"\",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error(\"only one byte as prefix supported\");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error(\"prefix must be in range 0x3c .. 0x3f\")}if(e.intermediates){if(e.intermediates.length>2)throw new Error(\"only two bytes as intermediates are supported\");for(var i=0;in||n>47)throw new Error(\"intermediate must be in range 0x20 .. 0x2f\");r<<=8,r|=n}}if(1!==e.final.length)throw new Error(\"final must be a single byte\");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error(\"final must be in range \"+t[0]+\" .. \"+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join(\"\")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error(\"improper continuation due to previous async handler, giving up parsing\");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,\"START\")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,\"PUT\",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,\"END\",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data=\"\",this._hitLimit=!1}return e.prototype.start=function(){this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data=\"\",t._hitLimit=!1,e}));return this._data=\"\",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error(\"maxSubParamsLength must not be greater than 256\");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"buffer\",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?\"\":\"\u001b[M\"+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?\"m\":\"M\";return\"\u001b[<\"+c(e,!0)+\";\"+e.col+\";\"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol=\"\",this._activeEncoding=\"\",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&(\"DEFAULT\"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onUserInput\",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,\"start\",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"end\",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error(\"[createInstance] First service dependency of \"+e.name+\" at position \"+(u+1)+\" conflicts with \"+t.length+\" static arguments\");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND=\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:\"block\",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:\"none\",drawBoldTextInBrightColors:!0,fastScrollModifier:\"alt\",fastScrollSensitivity:5,fontFamily:\"courier-new, courier, monospace\",fontSize:15,fontWeight:\"normal\",fontWeightBold:\"bold\",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:\"info\",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:\"canvas\",windowOptions:{},windowsMode:!1,wordSeparator:\" ()[]{}',\\\"`\",altClickMovesCursor:!0,convertEol:!1,termName:\"xterm\",cancelEvents:!1});var s=[\"normal\",\"bold\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],a=[\"cols\",\"rows\"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error(\"@IServiceName-decorator can only be used to decorate a parameter\");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator(\"BufferService\"),t.ICoreMouseService=n.createDecorator(\"CoreMouseService\"),t.ICoreService=n.createDecorator(\"CoreService\"),t.ICharsetService=n.createDecorator(\"CharsetService\"),t.IDirtyRowService=n.createDecorator(\"DirtyRowService\"),t.IInstantiationService=n.createDecorator(\"InstantiationService\"),t.ILogService=n.createDecorator(\"LogService\"),t.IOptionsService=n.createDecorator(\"OptionsService\"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]=\"DEBUG\",i[i.INFO=1]=\"INFO\",i[i.WARN=2]=\"WARN\",i[i.ERROR=3]=\"ERROR\",i[i.OFF=4]=\"OFF\",t.IUnicodeService=n.createDecorator(\"UnicodeService\")},1480:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active=\"\",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,\"onChange\",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"versions\",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version \"'+e+'\"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()}));\n//# sourceMappingURL=xterm.js.map","import * as bare from \"libapps\";\n\nexport class Hterm {\n elem: HTMLElement;\n\n term: bare.hterm.Terminal;\n io: bare.hterm.IO;\n\n columns: number;\n rows: number;\n\n // to \"show\" the current message when removeMessage() is called\n message: string;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n bare.hterm.defaultStorage = new bare.lib.Storage.Memory();\n this.term = new bare.hterm.Terminal();\n this.term.getPrefs().set(\"send-encoding\", \"raw\");\n this.term.decorate(this.elem);\n\n this.io = this.term.io.push();\n this.term.installKeyboard();\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.columns, rows: this.rows };\n };\n\n output(data: string) {\n if (this.term.io != null) {\n this.term.io.writeUTF8(data);\n }\n };\n\n showMessage(message: string, timeout: number) {\n this.message = message;\n if (timeout > 0) {\n this.term.io.showOverlay(message, timeout);\n } else {\n this.term.io.showOverlay(message, null);\n }\n };\n\n removeMessage(): void {\n // there is no hideOverlay(), so show the same message with 0 sec\n this.term.io.showOverlay(this.message, 0);\n }\n\n setWindowTitle(title: string) {\n this.term.setWindowTitle(title);\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key != \"EnableWebGL\") {\n this.term.getPrefs().set(key, value[key]);\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.io.onVTKeystroke = (data) => {\n callback(data);\n };\n this.io.sendString = (data) => {\n callback(data);\n };\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.io.onTerminalResize = (columns: number, rows: number) => {\n this.columns = columns;\n this.rows = rows;\n callback(columns, rows);\n };\n };\n\n deactivate(): void {\n this.io.onVTKeystroke = function () { };\n this.io.sendString = function () { };\n this.io.onTerminalResize = function () { };\n this.term.uninstallKeyboard();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.installKeyboard();\n }\n\n close(): void {\n this.term.uninstallKeyboard();\n }\n}\n","export class ConnectionFactory {\n url: string;\n protocols: string[];\n\n constructor(url: string, protocols: string[]) {\n this.url = url;\n this.protocols = protocols;\n };\n\n create(): Connection {\n return new Connection(this.url, this.protocols);\n };\n}\n\nexport class Connection {\n bare: WebSocket;\n\n\n constructor(url: string, protocols: string[]) {\n this.bare = new WebSocket(url, protocols);\n }\n\n open() {\n // nothing todo for websocket\n };\n\n close() {\n this.bare.close();\n };\n\n send(data: string) {\n this.bare.send(data);\n };\n\n isOpen(): boolean {\n if (this.bare.readyState == WebSocket.CONNECTING ||\n this.bare.readyState == WebSocket.OPEN) {\n return true\n }\n return false\n }\n\n onOpen(callback: () => void) {\n this.bare.onopen = (event) => {\n callback();\n }\n };\n\n onReceive(callback: (data: string) => void) {\n this.bare.onmessage = (event) => {\n callback(event.data);\n }\n };\n\n onClose(callback: () => void) {\n this.bare.onclose = (event) => {\n callback();\n };\n };\n}\n","export const protocols = [\"webtty\"];\n\nexport const msgInputUnknown = '0';\nexport const msgInput = '1';\nexport const msgPing = '2';\nexport const msgResizeTerminal = '3';\n\nexport const msgUnknownOutput = '0';\nexport const msgOutput = '1';\nexport const msgPong = '2';\nexport const msgSetWindowTitle = '3';\nexport const msgSetPreferences = '4';\nexport const msgSetReconnect = '5';\nexport const msgSetBufferSize = '6';\n\n\nexport interface Terminal {\n info(): { columns: number, rows: number };\n output(data: string): void;\n showMessage(message: string, timeout: number): void;\n removeMessage(): void;\n setWindowTitle(title: string): void;\n setPreferences(value: object): void;\n onInput(callback: (input: string) => void): void;\n onResize(callback: (colmuns: number, rows: number) => void): void;\n reset(): void;\n deactivate(): void;\n close(): void;\n}\n\nexport interface Connection {\n open(): void;\n close(): void;\n send(data: string): void;\n isOpen(): boolean;\n onOpen(callback: () => void): void;\n onReceive(callback: (data: string) => void): void;\n onClose(callback: () => void): void;\n}\n\nexport interface ConnectionFactory {\n create(): Connection;\n}\n\n\nexport class WebTTY {\n term: Terminal;\n connectionFactory: ConnectionFactory;\n args: string;\n authToken: string;\n reconnect: number;\n bufSize: number;\n\n constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) {\n this.term = term;\n this.connectionFactory = connectionFactory;\n this.args = args;\n this.authToken = authToken;\n this.reconnect = -1;\n this.bufSize = 1024;\n };\n\n open() {\n let connection = this.connectionFactory.create();\n let pingTimer: NodeJS.Timeout;\n let reconnectTimeout: NodeJS.Timeout;\n\n const setup = () => {\n connection.onOpen(() => {\n const termInfo = this.term.info();\n\n connection.send(JSON.stringify(\n {\n Arguments: this.args,\n AuthToken: this.authToken,\n }\n ));\n\n\n const resizeHandler = (colmuns: number, rows: number) => {\n connection.send(\n msgResizeTerminal + JSON.stringify(\n {\n columns: colmuns,\n rows: rows\n }\n )\n );\n };\n\n this.term.onResize(resizeHandler);\n resizeHandler(termInfo.columns, termInfo.rows);\n\n this.term.onInput(\n (input: string) => {\n // Leave room for message type id\n let effectiveBufferSize = this.bufSize - 1;\n\n // Split input into buffer sized chunks\n for (let i = 0; i < Math.ceil(input.length/effectiveBufferSize); i++) {\n let inputChunk = input.substring(i*effectiveBufferSize, Math.min((i+1)*effectiveBufferSize, input.length))\n connection.send(msgInput + inputChunk);\n }\n }\n );\n\n pingTimer = setInterval(() => {\n connection.send(msgPing)\n }, 30 * 1000);\n\n });\n\n connection.onReceive((data) => {\n const payload = data.slice(1);\n switch (data[0]) {\n case msgOutput:\n this.term.output(atob(payload));\n break;\n case msgPong:\n break;\n case msgSetWindowTitle:\n this.term.setWindowTitle(payload);\n break;\n case msgSetPreferences:\n const preferences = JSON.parse(payload);\n this.term.setPreferences(preferences);\n break;\n case msgSetReconnect:\n const autoReconnect = JSON.parse(payload);\n console.log(\"Enabling reconnect: \" + autoReconnect + \" seconds\")\n this.reconnect = autoReconnect;\n break;\n case msgSetBufferSize:\n const bufSize = JSON.parse(payload);\n this.bufSize = bufSize;\n break;\n }\n });\n\n connection.onClose(() => {\n clearInterval(pingTimer);\n this.term.deactivate();\n this.term.showMessage(\"Connection Closed\", 0);\n if (this.reconnect > 0) {\n reconnectTimeout = setTimeout(() => {\n connection = this.connectionFactory.create();\n this.term.reset();\n setup();\n }, this.reconnect * 1000);\n }\n });\n\n connection.open();\n }\n\n setup();\n return () => {\n clearTimeout(reconnectTimeout);\n connection.close();\n }\n };\n};\n","import { Terminal, IDisposable } from \"xterm\";\nimport { FitAddon } from 'xterm-addon-fit';\nimport { WebLinksAddon } from 'xterm-addon-web-links';\nimport { WebglAddon } from 'xterm-addon-webgl';\nimport { lib } from \"libapps\"\n\nexport class Xterm {\n elem: HTMLElement;\n term: Terminal;\n resizeListener: () => void;\n decoder: lib.UTF8Decoder;\n\n message: HTMLElement;\n messageTimeout: number;\n messageTimer: NodeJS.Timeout;\n onResizeHandler: IDisposable;\n onDataHandler: IDisposable;\n fitAddOn: FitAddon;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n this.term = new Terminal();\n this.fitAddOn = new FitAddon();\n this.term.loadAddon(new WebLinksAddon());\n this.term.loadAddon(this.fitAddOn);\n\n this.message = elem.ownerDocument.createElement(\"div\");\n this.message.className = \"xterm-overlay\";\n this.messageTimeout = 2000;\n\n this.resizeListener = () => {\n this.fitAddOn.fit();\n this.term.scrollToBottom();\n this.showMessage(String(this.term.cols) + \"x\" + String(this.term.rows), this.messageTimeout);\n };\n\n this.term.open(elem);\n this.term.focus();\n this.resizeListener();\n window.addEventListener(\"resize\", () => { this.resizeListener(); });\n\n this.decoder = new lib.UTF8Decoder()\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.term.cols, rows: this.term.rows };\n };\n\n output(data: string) {\n this.term.write(this.decoder.decode(data));\n };\n\n showMessage(message: string, timeout: number) {\n this.message.textContent = message;\n this.elem.appendChild(this.message);\n\n if (this.messageTimer) {\n clearTimeout(this.messageTimer);\n }\n if (timeout > 0) {\n this.messageTimer = setTimeout(() => {\n this.elem.removeChild(this.message);\n }, timeout);\n }\n };\n\n removeMessage(): void {\n if (this.message.parentNode == this.elem) {\n this.elem.removeChild(this.message);\n }\n }\n\n setWindowTitle(title: string) {\n document.title = title;\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key == \"EnableWebGL\" && key) {\n this.term.loadAddon(new WebglAddon());\n } else if (key == \"font-size\") {\n this.term.setOption(\"fontSize\", value[key])\n } else if (key == \"font-family\") {\n this.term.setOption(\"fontFamily\", value[key])\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.onDataHandler = this.term.onData((data) => {\n callback(data);\n });\n\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.onResizeHandler = this.term.onResize(() => {\n callback(this.term.cols, this.term.rows);\n });\n };\n\n deactivate(): void {\n this.onDataHandler.dispose();\n this.onResizeHandler.dispose();\n this.term.blur();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.clear();\n }\n\n close(): void {\n window.removeEventListener(\"resize\", this.resizeListener);\n this.term.dispose();\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { Hterm } from \"./hterm\";\nimport { Xterm } from \"./xterm\";\nimport { Terminal, WebTTY, protocols } from \"./webtty\";\nimport { ConnectionFactory } from \"./websocket\";\n\n// @TODO remove these\ndeclare var gotty_auth_token: string;\ndeclare var gotty_term: string;\n\nconst elem = document.getElementById(\"terminal\")\n\nif (elem !== null) {\n var term: Terminal;\n if (gotty_term == \"hterm\") {\n term = new Hterm(elem);\n } else {\n term = new Xterm(elem);\n }\n const httpsEnabled = window.location.protocol == \"https:\";\n const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws';\n const args = window.location.search;\n const factory = new ConnectionFactory(url, protocols);\n const wt = new WebTTY(term, factory, args, gotty_auth_token);\n const closer = wt.open();\n\n window.addEventListener(\"unload\", () => {\n closer();\n term.close();\n });\n};\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://gotty/./node_modules/xterm-addon-fit/lib/xterm-addon-fit.js","webpack://gotty/./node_modules/xterm-addon-web-links/lib/xterm-addon-web-links.js","webpack://gotty/./node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js","webpack://gotty/./node_modules/xterm/lib/xterm.js","webpack://gotty/./src/websocket.ts","webpack://gotty/./src/webtty.ts","webpack://gotty/./src/xterm.ts","webpack://gotty/webpack/bootstrap","webpack://gotty/./src/main.ts"],"names":["self","module","exports","e","775","t","Object","defineProperty","value","FitAddon","r","prototype","activate","this","_terminal","dispose","fit","proposeDimensions","_core","rows","cols","_renderService","clear","resize","element","parentElement","dimensions","actualCellWidth","actualCellHeight","window","getComputedStyle","parseInt","getPropertyValue","i","Math","max","n","o","a","viewport","scrollBarWidth","floor","l","call","m","c","d","enumerable","get","Symbol","toStringTag","__esModule","create","bind","default","hasOwnProperty","p","s","WebLinksAddon","RegExp","open","opener","location","href","console","warn","_handler","_options","_useLinkProvider","matchIndex","_linkProvider","registerLinkProvider","WebLinkProvider","_linkMatcherId","registerLinkMatcher","deregisterLinkMatcher","LinkComputer","_regex","provideLinks","computeLink","source","flags","_translateBufferLineToStringWithWrap","u","exec","f","log","indexOf","lastIndex","length","h","v","start","x","y","end","push","range","text","buffer","active","getLine","isWrapped","translateToString","substring","965","GlyphRenderer","Float32Array","BYTES_PER_ELEMENT","_","_colors","_gl","_dimensions","_activeBuffer","_vertices","count","attributes","attributesBuffers","selectionAttributes","throwIfFalsy","createProgram","_program","_projectionLocation","getUniformLocation","_resolutionLocation","_textureLocation","_vertexArrayObject","createVertexArray","bindVertexArray","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","enableVertexAttribArray","vertexAttribPointer","FLOAT","Uint8Array","ELEMENT_ARRAY_BUFFER","_attributesBuffer","vertexAttribDivisor","_atlasTexture","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","enable","BLEND","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","onResize","beginFrame","_atlas","updateCell","_updateCell","NULL_CELL_CODE","WHITESPACE_CELL_CODE","getRasterizedGlyphCombinedChar","getRasterizedGlyph","offset","scaledCharLeft","scaledCharTop","size","scaledCanvasWidth","scaledCanvasHeight","texturePositionClipSpace","sizeClipSpace","fill","updateSelection","slice","selectionOpaque","rgba","selection","columnSelectMode","startCol","endCol","viewportCappedEndRow","viewportCappedStartRow","_updateSelectionRange","viewportStartRow","viewportEndRow","viewportY","RENDER_MODEL_INDICIES_PER_CELL","cells","RENDER_MODEL_FG_OFFSET","AttributeData","fg","bg","RENDER_MODEL_BG_OFFSET","getBgColorMode","_getColorFromAnsiIndex","getBgColor","g","toColorRGB","background","COMBINED_CHAR_BIT_MASK","C","getCell","getChars","ansi","Error","canvas","width","height","setColors","render","useProgram","lineLengths","subarray","set","STREAM_DRAW","hasCanvasChanged","uniform1i","activeTexture","TEXTURE0","cacheCanvas","generateMipmap","uniformMatrix4fv","PROJECTION_MATRIX","uniform2f","drawElementsInstanced","TRIANGLES","setAtlas","setDimensions","344","RectangleRenderer","_updateCachedColors","DYNAMIC_DRAW","_updateViewportRectangle","_bgFloat","_colorToFloat32Array","_selectionFloat","_addRectangleFloat","scaledCellWidth","scaledCellHeight","hasSelection","updateBackgrounds","_updateRectangle","foreground","expandFloat32Array","_addRectangle","310","RenderModel","Uint32Array","clearSelection","259","min","constructor","sliceFallback","795","WebglAddon","_preserveDrawingBuffer","_colorManager","colors","_renderer","WebglRenderer","setRenderer","_createRenderer","textureAtlas","configurable","clearTextureAtlas","clearCharAtlas","666","__extends","setPrototypeOf","__proto__","Array","_model","_workCell","CellData","_onRequestRedraw","EventEmitter","_renderLayers","LinkRenderLayer","screenElement","CursorRenderLayer","scaledCharWidth","scaledCharHeight","canvasWidth","canvasHeight","_devicePixelRatio","devicePixelRatio","_updateDimensions","_canvas","document","createElement","antialias","depth","preserveDrawingBuffer","getContext","appendChild","_rectangleRenderer","_glyphRenderer","onCharSizeChanged","_isAttached","body","contains","event","forEach","removeChild","_charAtlas","reset","_refreshCharAtlas","onDevicePixelRatioChange","style","onBlur","onFocus","onSelectionChanged","_updateSelectionModel","fire","onCursorMove","onOptionsChanged","acquireCharAtlas","warmUp","clearTexture","_updateModel","registerCharacterJoiner","deregisterCharacterJoiner","renderRows","_charSizeService","onGridChanged","ydisp","lines","loadCell","getCode","ceil","getOption","round","Disposable","381","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","error","getShaderInfoLog","deleteShader","attachShader","VERTEX_SHADER","FRAGMENT_SHADER","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","713","removeTerminalFromCache","generateConfig","ownedBy","configEquals","config","atlas","splice","WebglCharAtlas","433","is256Color","css","cursor","cursorAccent","selectionTransparent","contrastCache","fontFamily","fontSize","fontWeight","fontWeightBold","allowTransparency","drawBoldTextInBrightColors","minimumContrastRatio","167","texturePosition","_config","_didWarmUp","_cacheMap","_cacheMapCombined","_currentRowY","_currentRowX","_currentRowHeight","_workBoundingBox","top","left","bottom","right","_workAttributeData","_cacheCtx","alpha","_tmpCanvas","_tmpCtx","_doWarmUp","_drawToCache","DEFAULT_COLOR","clearRect","_getBackgroundColor","_getForegroundCss","_getMinimumContrastCss","channels","toCss","substr","_resolveBackgroundRgba","_resolveForegroundRgba","getCss","ensureContrastRatio","setCss","String","fromCharCode","save","isInvisible","isBold","isInverse","isDim","isItalic","getFgColor","getFgColorMode","globalCompositeOperation","fillStyle","fillRect","font","textBaseline","globalAlpha","DIM_OPACITY","fillText","restore","R","getImageData","data","b","_findGlyphBoundingBox","w","_clipImageData","putImageData","Uint8ClampedArray","ImageData","toString","592","BaseRenderLayer","_container","_alpha","_scaledCharWidth","_scaledCharHeight","_scaledCellWidth","_scaledCellHeight","_scaledCharLeft","_scaledCharTop","classList","add","zIndex","_initCanvas","_ctx","_clearAll","_setTransparency","cloneNode","replaceChild","_fillCells","_fillBottomLineAtCells","_fillLeftLineAtCell","_strokeRectAtCell","lineWidth","strokeRect","_clearCells","_fillCharTrueColor","_getFont","_clipRow","beginPath","rect","clip","461","_onRequestRefreshRowsEvent","_cell","_state","isFocused","_cursorRenderers","bar","_renderBarCursor","block","_renderBlockCursor","underline","_renderUnderlineCursor","_clearCursor","_cursorBlinkStateManager","pause","cursorY","resume","_render","restartBlinkAnimation","isPaused","_coreService","isCursorInitialized","isCursorHidden","baseY","cursorX","content","_renderBlurCursor","getWidth","isCursorVisible","strokeStyle","_renderCallback","_restartInterval","_blinkStartTimeout","_blinkInterval","clearInterval","clearTimeout","_animationFrame","cancelAnimationFrame","_animationTimeRestarted","Date","now","requestAnimationFrame","setTimeout","setInterval","activeElement","textarea","hasFocus","733","linkifier","onShowLinkUnderline","_onShowLinkUnderline","onHideLinkUnderline","_onHideLinkUnderline","linkifier2","_clearCurrentLink","x1","y1","y2","x2","INVERTED_DEFAULT_COLOR","742","contrastRatio","toPaddedHex","rgb","color","toRgba","blend","isOpaque","toColor","opaque","toChannels","opacity","pow","relativeLuminance","relativeLuminance2","reduceLuminance","increaseLuminance","499","CHAR_ATLAS_CELL_SPACING","345","forwardEvent","_listeners","_disposed","_event","859","getDisposeArrayDisposable","disposeArray","_disposables","_isDisposed","register","unregister","455","concat","fillFallback","147","ExtendedAttrs","extended","fromColorRGB","clone","isUnderline","isBlink","isFgRGB","isBgRGB","isFgPalette","isBgPalette","isFgDefault","isBgDefault","isAttributeDefault","hasExtendedAttrs","updateExtended","isEmpty","getUnderlineColor","underlineColor","getUnderlineColorMode","isUnderlineColorRGB","isUnderlineColorPalette","isUnderlineColorDefault","getUnderlineStyle","underlineStyle","782","apply","arguments","combinedData","fromCharData","setFromCharData","isCombined","stringFromCodePoint","charCodeAt","CHAR_DATA_ATTR_INDEX","CHAR_DATA_CHAR_INDEX","CHAR_DATA_WIDTH_INDEX","getAsCharData","855","WHITESPACE_CELL_WIDTH","WHITESPACE_CELL_CHAR","NULL_CELL_WIDTH","NULL_CELL_CHAR","CHAR_DATA_CODE_INDEX","DEFAULT_ATTR","133","Utf8ToUtf32","StringToUtf32","utf32ToString","_interim","decode","interim","4567","AccessibilityManager","_liveRegionLineCount","_charsToConsume","_charsToAnnounce","_accessibilityTreeRoot","_rowContainer","setAttribute","_rowElements","_createAccessibilityTreeNode","_topBoundaryFocusListener","_onBoundaryFocus","_bottomBoundaryFocusListener","addEventListener","_refreshRowsDimensions","_renderRowsDebouncer","RenderDebouncer","_renderRows","_refreshRows","_liveRegion","insertAdjacentElement","_onResize","onRender","onScroll","onA11yChar","_onChar","onLineFeed","onA11yTab","_onTab","onKey","_onKey","key","_clearLiveRegion","onDimensionsChange","_screenDprMonitor","ScreenDprMonitor","setListener","addDisposableDomListener","removeElementFromParent","target","getAttribute","relatedTarget","pop","shift","removeEventListener","unshift","scrollLines","focus","preventDefault","stopImmediatePropagation","children","tabIndex","_refreshRowDimensions","textContent","tooMuchOutput","isMac","parentNode","refresh","translateBufferLineToString","innerText","_announceCharacters","3614","replace","decPrivateModes","bracketedPasteMode","triggerDataEvent","getBoundingClientRect","clientX","clientY","rightClickHandler","moveTextAreaUnderMouseCursor","paste","handlePasteEvent","copyHandler","bracketTextForPaste","prepareTextForTerminal","clipboardData","setData","selectionText","stopPropagation","getData","rightClickSelect","select","4774","7239","ColorContrastCache","_color","_rgba","setColor","getColor","5680","ColorManager","DEFAULT_ANSI_COLORS","freeze","_litmusColor","createLinearGradient","_contrastCache","onOptionsChange","setTheme","_parseColor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","split","map","Number","9631","3656","3551","__decorate","getOwnPropertyDescriptor","Reflect","decorate","__param","MouseZone","Linkifier","_bufferService","_logService","_unicodeService","_linkMatchers","_nextLinkMatcherId","_onLinkTooltip","_rowsToLinkify","attachToDom","_element","_mouseZoneManager","linkifyRows","clearAll","_rowsTimeoutId","_linkifyRows","_timeBeforeLatency","iterator","hasNext","next","_doLinkifyRow","first","debug","id","regex","handler","validationCallback","hoverTooltipCallback","tooltipCallback","hoverLeaveCallback","leaveCallback","willLinkActivate","priority","_addLinkMatcherToList","stringIndexToBufferIndex","getFg","_addLink","getStringCellWidth","_createLinkHoverEvent","remove","IBufferService","ILogService","IUnicodeService","clickCallback","hoverCallback","6465","Linkifier2","_linkProviders","_linkCacheDisposables","_isMouseOut","_activeLine","_currentLink","_mouseService","_onMouseMove","_onClick","_lastMouseEvent","_positionFromMouseEvent","composedPath","_lastBufferCell","_onHover","_askForLink","_linkAtPosition","link","_activeProviderReplies","Map","_checkLinkProviderResult","_removeIntersectingLinks","Set","has","find","_handleNewLink","_linkLeave","state","decorations","pointerCursor","isHovered","_linkHover","defineProperties","toggle","_fireUnderlineEvent","onRenderedBufferChange","hover","_createLinkUnderlineEvent","leave","getCoords","9042","promptLabel","6954","MouseZoneManager","_screenElement","_selectionService","_optionsService","_zones","_areZonesActive","_lastHoverCoords","_initialSelectionLength","_onMouseDown","_mouseMoveListener","_mouseLeaveListener","_onMouseLeave","_clickListener","_deactivate","_activate","_currentZone","pageX","pageY","_findZoneEventAt","_tooltipTimeout","_onTooltip","options","linkTooltipHoverDuration","_getSelectionLength","IMouseService","ISelectionService","IOptionsService","6193","_rowCount","_rowStart","_rowEnd","_innerRefresh","5596","_currentDevicePixelRatio","_listener","clearListener","_outerListener","_updateDpr","_resolutionMediaMatchList","removeListener","matchMedia","addListener","3236","Terminal","S","E","L","k","A","T","O","D","P","M","browser","_keyDownHandled","_onCursorMove","_onRender","_onSelectionChange","_onTitleChange","_onBell","_onFocus","_onBlur","_onA11yCharEmitter","_onA11yTabEmitter","_setup","_instantiationService","createInstance","_inputHandler","onRequestBell","bell","onRequestRefreshRows","onRequestReset","onRequestWindowsOptionsReport","_reportWindowsOptions","onAnsiColorChange","_changeAnsiColor","onTitleChange","_afterResize","optionsService","colorIndex","onThemeChange","_customKeyEventHandler","write","buffers","preventScroll","_updateOptions","measure","syncScrollArea","screenReaderMode","_accessibilityManager","setupTabStops","_setTheme","theme","_onTextAreaFocus","sendFocus","C0","ESC","updateCursorStyle","_showCursor","blur","_onTextAreaBlur","_syncTextArea","isCursorInViewport","_compositionHelper","isComposing","ybase","lineHeight","_initGlobal","_bindKeys","isFirefox","button","rightClickSelectsWord","isLinux","_keyUp","_keyDown","_keyPress","compositionstart","compositionupdate","compositionend","updateCompositionElements","_queueLinkification","isConnected","_document","ownerDocument","dir","createDocumentFragment","_viewportElement","_viewportScrollArea","_helperContainer","CoreBrowserService","setService","ICoreBrowserService","CharSizeService","ICharSizeService","_theme","onOptionChange","_characterJoinerService","CharacterJoinerService","ICharacterJoinerService","RenderService","IRenderService","_compositionView","CompositionHelper","_soundService","SoundService","ISoundService","MouseService","Viewport","onRequestSyncScrollBar","SelectionService","onRequestScrollLines","amount","suppressScrollEvent","onSelectionChange","onRequestRedraw","onLinuxMouseSelection","_onScroll","onMouseDown","_coreMouseService","areMouseEventsActive","disable","bindMouse","rendererType","Renderer","DomRenderer","getRawByteCoords","overrideType","type","buttons","deltaY","triggerMouseEvent","col","row","action","ctrl","ctrlKey","alt","altKey","shiftKey","mouseup","wheel","mousedrag","mousemove","cancel","onProtocolChange","logLevel","explainEvents","passive","activeProtocol","shouldForceSelection","hasScrollback","getLinesScrolled","applicationCursorKeys","abs","onWheel","onTouchStart","onTouchMove","refreshRows","shouldColumnSelect","attachCustomKeyEventHandler","deregister","markers","addMarker","normal","setSelection","getSelection","getSelectionPosition","startColumn","selectionStart","startRow","endColumn","selectionEnd","endRow","selectAll","selectLines","keydown","scrollToBottom","evaluateKeyboardEvent","macOptionIsMeta","_isThirdLevelShift","ETX","CR","domEvent","metaKey","isWindows","keyCode","charCode","which","_soundBell","playBellSound","hasValidSize","getBlankLine","DEFAULT_ATTR_DATA","position","WindowsOptionsReportType","GET_WIN_SIZE_PIXELS","toFixed","GET_CELL_SIZE_PIXELS","cancelEvents","_visualBell","bellStyle","CoreTerminal","1680","_scrollLines","_scrollArea","_lastRecordedBufferLength","_lastRecordedViewportHeight","_lastRecordedBufferHeight","_lastTouchY","_lastScrollTop","_wheelPartialScroll","_refreshAnimationFrame","_ignoreNextScrollEvent","offsetWidth","backgroundColor","_refresh","offsetHeight","scrollTop","offsetParent","_bubbleScroll","cancelable","_getPixelsScrolled","_applyScrollModifier","deltaMode","WheelEvent","DOM_DELTA_LINE","DOM_DELTA_PAGE","DOM_DELTA_PIXEL","fastScrollModifier","fastScrollSensitivity","scrollSensitivity","touches","2950","_textarea","_isComposing","_isSendingComposition","_compositionPosition","_dataAlreadySent","_finalizeComposition","_handleAnyTextareaChanges","ICoreService","9806","getCoordsRelativeToElement","9504","moveToCellSequence","244","AddonManager","_addons","instance","loadAddon","isDisposed","_wrappedAddonDispose","4389","_addonManager","_checkProposedApi","allowProposedApi","onData","onBinary","onBell","_parser","_buffer","_verifyIntegers","registerMarker","scrollPages","scrollToTop","scrollToLine","writeUtf8","writeln","setOption","isNaN","init","getNullCell","_onBufferChange","_normal","_alternate","onBufferActivate","alternate","_line","registerCsiHandler","toArray","addCsiHandler","registerDcsHandler","addDcsHandler","registerEscHandler","addEscHandler","registerOscHandler","addOscHandler","unicodeService","versions","activeVersion","1546","_rendererId","_currentGlyphIdentifier","chars","code","bold","dim","italic","_drawChars","_getContrastColor","_drawUncachedChars","draw","join","2512","_coreBrowserService","cursorBlink","cursorStyle","cursorWidth","3700","GridCache","cache","5098","3525","_id","TextRenderLayer","SelectionRenderLayer","_runOperation","letterSpacing","IInstantiationService","1752","4149","_clearState","_didStateChange","_areCoordinatesEqual","9596","_characterWidth","_characterFont","_characterOverlapCache","_forEachCell","getJoinedCharacters","JoinedCellData","_isOverlapping","getCodePoint","_drawBackground","_drawForeground","measureText","9616","BaseCharAtlas","1420","DynamicCharAtlas","2040","8803","1906","NoneCharAtlas","getGlyphCacheKey","_drawToCacheCount","_glyphsWaitingOnBitmap","_bitmapCommitTimeout","_bitmap","_cacheCanvas","_width","_height","LRUMap","prealloc","_canCache","_drawFromCache","capacity","peek","index","_toCoordinateX","_toCoordinateY","drawImage","inBitmap","_getForegroundColor","_addGlyphToBitmap","isSafari","_generateBitmap","createImageBitmap","then","7001","_map","_head","_tail","_nodePool","_unlinkNode","prev","_appendNode","peekValue","1296","_linkifier","_linkifier2","_terminalClass","_refreshRowElements","_selectionContainer","_injectCss","_rowFactory","DomRendererRowFactory","_onLinkHover","_onLinkLeave","_themeStyleElement","_dimensionsStyleElement","overflow","_terminalSelector","BOLD_CLASS","ITALIC_CLASS","CURSOR_CLASS","CURSOR_STYLE_BLOCK_CLASS","CURSOR_BLINK_CLASS","CURSOR_STYLE_BAR_CLASS","CURSOR_STYLE_UNDERLINE_CLASS","_createSelectionElement","createRow","_setCellUnderline","textDecoration","3787","UNDERLINE_CLASS","DIM_CLASS","display","_applyMinimumContrast","_addStyle","456","SelectionModel","isSelectAllActive","selectionStartLength","areSelectionValuesReversed","onTrim","428","_onCharSizeChange","_measureStrategy","_parentElement","_result","_measureElement","4269","_characterJoiners","_nextCharacterJoinerId","getBg","getTrimmedLength","_getJoinedRanges","_mergeRanges","_stringRangesToCellRanges","getString","5114","getRootNode","8934","3230","_isPaused","_needsFullRefresh","_isNextRenderRedrawOnly","_needsSelectionRefresh","_canvasWidth","_canvasHeight","_selectionState","_onDimensionsChange","_onRefreshRequest","_renderDebouncer","_fullRefresh","onCharSizeChange","IntersectionObserver","_onIntersectionChange","threshold","observe","disconnect","isIntersecting","intersectionRatio","_fireOnCanvasResize","changeOptions","9312","_dragScrollAmount","_enabled","_mouseDownTimeStamp","_oldHasSelection","_oldSelectionStart","_oldSelectionEnd","_onLinuxMouseSelection","_onRedrawRequest","_onRequestScrollLines","_mouseUpListener","_onMouseUp","onUserInput","_trimListener","_onTrim","_onBufferActivate","_activeSelectionMode","_removeMouseDownListeners","finalSelectionStart","finalSelectionEnd","_isClickInSelection","_getMouseBufferCoords","_areCoordsInSelection","_selectWordAtCursor","currentLink","getRangeLength","_selectWordAt","_getMouseEventScrollAmount","macOptionClickForcesSelection","timeStamp","_onIncrementalClick","detail","_onSingleClick","_onDoubleClick","_onTripleClick","_addMouseDownListeners","_dragScrollIntervalTimer","_dragScroll","hasWidth","_selectLineAt","_selectToWordAt","_fireEventIfSelectionChanged","_fireOnSelectionChange","activeBuffer","_convertViewportColToCharacterIndex","_getWordAt","charAt","_isCharWordSeparator","trim","wordSeparator","getWrappedRangeForLine","last","4725","createDecorator","357","_audioContext","AudioContext","webkitAudioContext","audioContext","createBufferSource","decodeAudioData","_base64ToArrayBuffer","_removeMimeType","bellSound","connect","destination","atob","6349","CircularList","_maxLength","onDeleteEmitter","onInsertEmitter","onTrimEmitter","_array","_startIndex","_length","_getCyclicIndex","recycle","trimStart","shiftElements","1439","isArray","8969","_onBinary","_onData","_onLineFeed","InstantiationService","OptionsService","BufferService","LogService","CoreService","CoreMouseService","ICoreMouseService","_dirtyRowService","DirtyRowService","IDirtyRowService","UnicodeService","_charsetService","CharsetService","ICharsetService","InputHandler","markRangeDirty","scrollBottom","_writeBuffer","WriteBuffer","parse","_onScrollApi","_windowsMode","writeSync","LogLevelEnum","WARN","MINIMUM_COLS","MINIMUM_ROWS","scroll","windowsMode","_enableWindowsMode","updateWindowsModeWrappedState","final","8460","5435","setWinLines","restoreWin","minimizeWin","setWinPosition","setWinSizePixels","raiseWin","lowerWin","refreshWin","setWinSizeChars","maximizeWin","fullscreenWin","getWinState","getWinPosition","getWinSizePixels","getScreenSizePixels","getCellSizePixels","getWinSizeChars","getScreenSizeChars","getIconTitle","getWinTitle","pushTitle","popTitle","_data","hook","put","unhook","EscapeSequenceParser","_parseBuffer","_stringDecoder","_utf8Decoder","_windowTitle","_iconName","_windowTitleStack","_iconNameStack","_curAttrData","_eraseAttrDataInternal","_onRequestBell","_onRequestRefreshRows","_onRequestReset","_onRequestSyncScrollBar","_onRequestWindowsOptionsReport","_onA11yChar","_onA11yTab","_onAnsiColorChange","_parseStack","paused","cursorStartX","cursorStartY","decodedLength","setCsiHandlerFallback","identifier","identToString","params","setEscHandlerFallback","setExecuteHandlerFallback","setOscHandlerFallback","setDcsHandlerFallback","payload","setPrintHandler","print","insertChars","intermediates","scrollLeft","cursorUp","scrollRight","cursorDown","cursorForward","cursorBackward","cursorNextLine","cursorPrecedingLine","cursorCharAbsolute","cursorPosition","cursorForwardTab","eraseInDisplay","prefix","eraseInLine","insertLines","deleteLines","deleteChars","scrollUp","scrollDown","eraseChars","cursorBackwardTab","charPosAbsolute","hPositionRelative","repeatPrecedingCharacter","sendDeviceAttributesPrimary","sendDeviceAttributesSecondary","linePosAbsolute","vPositionRelative","hVPosition","tabClear","setMode","setModePrivate","resetMode","resetModePrivate","charAttributes","deviceStatus","deviceStatusPrivate","softReset","setCursorStyle","setScrollRegion","saveCursor","windowOptions","restoreCursor","insertColumns","deleteColumns","setExecuteHandler","BEL","LF","lineFeed","VT","FF","carriageReturn","BS","backspace","HT","tab","SO","shiftOut","SI","shiftIn","C1","IND","NEL","nextLine","HTS","tabSet","OscHandler","setTitle","setIconName","setAnsiColor","reverseIndex","keypadApplicationMode","keypadNumericMode","fullReset","setgLevel","selectDefaultCharset","selectCharset","CHARSETS","screenAlignmentPattern","setErrorHandler","_preserveStack","_logSlowResolvingAsync","Promise","race","catch","clearRange","charset","wraparound","modes","insertMode","markDirty","setCellFromCodePoint","wcwidth","_eraseAttrData","insertCells","addCodepointToCell","precedingCodepoint","hasContent","DcsHandler","convertEol","reverseWraparound","_restrictCursor","nextStop","origin","_setCursor","_moveCursor","tabs","prevStop","_eraseInBufferLine","replaceCells","_resetBufferLine","deleteCells","_is","termName","setgCharset","DEFAULT_CHARSET","applicationKeypad","activeEncoding","activateAltBuffer","activateNormalBuffer","_updateAttrColor","_extractColor","hasSubParams","getSubParams","_processUnderline","savedX","savedY","savedCurAttrData","savedCharset","_savedCharset","_parseAnsiColorChange","markAllDirty","844","6114","isIphone","isIpad","navigator","userAgent","platform","includes","test","8273","9282","3734","9092","BufferStringIterator","Buffer","MAX_BUFFER_SIZE","_hasScrollback","_nullCell","_whitespaceCell","_cols","_rows","_getCorrectBufferLength","getWhitespaceCell","BufferLine","maxLength","scrollback","fillViewportRows","_isReflowEnabled","_reflow","_reflowLarger","_reflowSmaller","reflowLargerGetLinesToRemove","reflowLargerCreateNewLayout","reflowLargerApplyNewLayout","layout","_reflowLargerAdjustViewport","countRemoved","reflowSmallerGetNewLineLengths","newLines","copyCellsFrom","getWrappedLineTrimmedLength","setCell","tabStopWidth","Marker","line","onInsert","onDelete","onDispose","_removeMarker","_trimRight","_endIndex","_startOverscan","_endOverscan","_current","8437","_combined","_extendedAttrs","keys","copyFrom","4841","4634","reduce","5295","BufferSet","_alt","inactiveBuffer","511","643","4863","_nextId","_onDispose","7116","B","j","q","z","Q","K","Y","Z","H","2584","NUL","SOH","STX","EOT","ENQ","ACK","DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM","SUB","FS","GS","RS","US","SP","DEL","PAD","HOP","BPH","NBH","SSA","ESA","HTJ","VTS","PLD","PLU","RI","SS2","SS3","DCS","PU1","PU2","STS","CCH","MW","SPA","EPA","SOS","SGCI","SCI","CSI","ST","OSC","PM","APC","7399","48","49","50","51","52","53","54","55","56","57","186","187","188","189","190","191","192","219","220","221","222","482","225","UnicodeV6","version","5981","queueMicrotask","resolve","_action","_callbacks","_pendingData","_bufferOffset","_isSyncWriting","_syncCalls","_innerWrite","5770","PAYLOAD_LIMIT","6351","DcsParser","_handlers","_active","_ident","_handlerFb","_stack","loopPosition","fallThrough","registerHandler","clearHandler","setHandlerFallback","Params","addParam","_params","_hitLimit","2015","VT500_TRANSITION_TABLE","TransitionTable","table","setDefault","addMany","_transitions","handlers","handlerPos","transition","chunkPos","initialState","currentState","_collect","_printHandlerFb","_executeHandlerFb","_csiHandlerFb","_escHandlerFb","_errorHandlerFb","_printHandler","_executeHandlers","_csiHandlers","_escHandlers","_oscParser","OscParser","_dcsParser","_errorHandler","_identifier","reverse","clearPrintHandler","clearEscHandler","clearExecuteHandler","clearCsiHandler","clearDcsHandler","clearOscHandler","clearErrorHandler","collect","abort","addSubParam","addDigit","6242","_start","_put","8742","maxSubParamsLength","Int32Array","_subParams","_subParamsLength","_subParamsIdx","Uint16Array","_rejectDigits","_rejectSubDigits","_digitIsSub","fromArray","getSubParamsAll","744","isUserScrolling","_cachedBlankLine","isFull","7994","glevel","_charsets","1753","NONE","events","restrict","X10","VT200","DRAG","ANY","DEFAULT","SGR","_protocols","_encodings","_activeProtocol","_activeEncoding","_onProtocolChange","_lastEvent","addProtocol","addEncoding","_compareEvents","triggerBinaryEvent","down","up","drag","move","6975","_onUserInput","_scrollToBottom","disableStdin","3730","_end","4348","__spreadArrays","ServiceCollection","_entries","_services","getService","getServiceDependencies","sort","name","7866","DEBUG","info","INFO","ERROR","off","OFF","_updateLogLevel","_evalLazyOptionalParams","_log","7302","DEFAULT_OPTIONS","DEFAULT_BELL_SOUND","altClickMovesCursor","_onOptionChange","_sanitizeAndValidateOption","8343","di$target","di$dependencies","serviceRegistry","2585","1480","_providers","_onChange","_activeProvider","url","protocols","Connection","ConnectionFactory","bare","WebSocket","close","send","isOpen","readyState","CONNECTING","OPEN","onOpen","callback","onopen","onReceive","onmessage","onClose","onclose","msgInputUnknown","msgInput","msgPing","msgResizeTerminal","msgUnknownOutput","msgOutput","msgPong","msgSetWindowTitle","msgSetPreferences","msgSetReconnect","msgSetBufferSize","term","connectionFactory","args","authToken","reconnect","bufSize","pingTimer","reconnectTimeout","connection","setup","termInfo","JSON","stringify","Arguments","AuthToken","resizeHandler","colmuns","columns","onInput","input","effectiveBufferSize","inputChunk","output","setWindowTitle","preferences","setPreferences","autoReconnect","deactivate","showMessage","WebTTY","elem","fitAddOn","message","className","messageTimeout","resizeListener","from","timeout","messageTimer","removeMessage","title","onDataHandler","onResizeHandler","Xterm","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","getElementById","protocol","host","pathname","search","factory","gotty_auth_token"],"mappings":";qBAyBqMA,KAApIC,EAAOC,QAAoJ,MAAM,aAAa,IAAIC,EAAE,CAACC,IAAI,CAACD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEI,cAAS,EAAO,IAAIC,EAAE,WAAW,SAASP,KAAK,OAAOA,EAAEQ,UAAUC,SAAS,SAAST,GAAGU,KAAKC,UAAUX,GAAGA,EAAEQ,UAAUI,QAAQ,aAAaZ,EAAEQ,UAAUK,IAAI,WAAW,IAAIb,EAAEU,KAAKI,oBAAoB,GAAGd,GAAGU,KAAKC,UAAU,CAAC,IAAIT,EAAEQ,KAAKC,UAAUI,MAAML,KAAKC,UAAUK,OAAOhB,EAAEgB,MAAMN,KAAKC,UAAUM,OAAOjB,EAAEiB,OAAOf,EAAEgB,eAAeC,QAAQT,KAAKC,UAAUS,OAAOpB,EAAEiB,KAAKjB,EAAEgB,SAAShB,EAAEQ,UAAUM,kBAAkB,WAAW,GAAGJ,KAAKC,WAAWD,KAAKC,UAAUU,SAASX,KAAKC,UAAUU,QAAQC,cAAc,CAAC,IAAItB,EAAEU,KAAKC,UAAUI,MAAM,GAAG,IAAIf,EAAEkB,eAAeK,WAAWC,iBAAiB,IAAIxB,EAAEkB,eAAeK,WAAWE,iBAAiB,CAAC,IAAIvB,EAAEwB,OAAOC,iBAAiBjB,KAAKC,UAAUU,QAAQC,eAAef,EAAEqB,SAAS1B,EAAE2B,iBAAiB,WAAWC,EAAEC,KAAKC,IAAI,EAAEJ,SAAS1B,EAAE2B,iBAAiB,WAAWI,EAAEP,OAAOC,iBAAiBjB,KAAKC,UAAUU,SAASa,EAAE3B,GAAGqB,SAASK,EAAEJ,iBAAiB,gBAAgBD,SAASK,EAAEJ,iBAAiB,oBAAoBM,EAAEL,GAAGF,SAASK,EAAEJ,iBAAiB,kBAAkBD,SAASK,EAAEJ,iBAAiB,kBAAkB7B,EAAEoC,SAASC,eAAe,MAAM,CAACpB,KAAKc,KAAKC,IAAI,EAAED,KAAKO,MAAMH,EAAEnC,EAAEkB,eAAeK,WAAWC,kBAAkBR,KAAKe,KAAKC,IAAI,EAAED,KAAKO,MAAMJ,EAAElC,EAAEkB,eAAeK,WAAWE,uBAAuBzB,EAAzqC,GAA8qCE,EAAEI,SAASC,IAAIL,EAAE,GAAG,OAAO,SAASK,EAAEuB,GAAG,GAAG5B,EAAE4B,GAAG,OAAO5B,EAAE4B,GAAG/B,QAAQ,IAAIkC,EAAE/B,EAAE4B,GAAG,CAAC/B,QAAQ,IAAI,OAAOC,EAAE8B,GAAGG,EAAEA,EAAElC,QAAQQ,GAAG0B,EAAElC,QAA/F,CAAwG,MAAh6C,I,QCAb2B,OAA9I5B,EAAOC,QAAiK,SAASC,GAAG,IAAIE,EAAE,GAAG,SAAS+B,EAAE1B,GAAG,GAAGL,EAAEK,GAAG,OAAOL,EAAEK,GAAGR,QAAQ,IAAI+B,EAAE5B,EAAEK,GAAG,CAACuB,EAAIS,GAAE,EAAGxC,QAAQ,IAAI,OAAOC,EAAEO,GAAGiC,KAAKV,EAAE/B,QAAQ+B,EAAEA,EAAE/B,QAAQkC,GAAGH,EAAES,GAAE,EAAGT,EAAE/B,QAAQ,OAAOkC,EAAEQ,EAAEzC,EAAEiC,EAAES,EAAExC,EAAE+B,EAAEU,EAAE,SAAS3C,EAAEE,EAAEK,GAAG0B,EAAEC,EAAElC,EAAEE,IAAIC,OAAOC,eAAeJ,EAAEE,EAAE,CAAC0C,YAAW,EAAGC,IAAItC,KAAK0B,EAAE1B,EAAE,SAASP,GAAG,oBAAoB8C,QAAQA,OAAOC,aAAa5C,OAAOC,eAAeJ,EAAE8C,OAAOC,YAAY,CAAC1C,MAAM,WAAWF,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,KAAM4B,EAAE/B,EAAE,SAASF,EAAEE,GAAG,GAAG,EAAEA,IAAIF,EAAEiC,EAAEjC,IAAI,EAAEE,EAAE,OAAOF,EAAE,GAAG,EAAEE,GAAG,iBAAiBF,GAAGA,GAAGA,EAAEgD,WAAW,OAAOhD,EAAE,IAAIO,EAAEJ,OAAO8C,OAAO,MAAM,GAAGhB,EAAE1B,EAAEA,GAAGJ,OAAOC,eAAeG,EAAE,UAAU,CAACqC,YAAW,EAAGvC,MAAML,IAAI,EAAEE,GAAG,iBAAiBF,EAAE,IAAI,IAAI8B,KAAK9B,EAAEiC,EAAEU,EAAEpC,EAAEuB,EAAE,SAAS5B,GAAG,OAAOF,EAAEE,IAAIgD,KAAK,KAAKpB,IAAI,OAAOvB,GAAG0B,EAAEA,EAAE,SAASjC,GAAG,IAAIE,EAAEF,GAAGA,EAAEgD,WAAW,WAAW,OAAOhD,EAAEmD,SAAS,WAAW,OAAOnD,GAAG,OAAOiC,EAAEU,EAAEzC,EAAE,IAAIA,GAAGA,GAAG+B,EAAEC,EAAE,SAASlC,EAAEE,GAAG,OAAOC,OAAOK,UAAU4C,eAAeZ,KAAKxC,EAAEE,IAAI+B,EAAEoB,EAAE,GAAGpB,EAAEA,EAAEqB,EAAE,GAAj5B,CAAq5B,CAAC,SAAStD,EAAEE,EAAE+B,GAAG,aAAa9B,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqD,mBAAc,EAAO,IAAIhD,EAAE0B,EAAE,GAAGH,EAAE,IAAI0B,OAAO,+SAA+S,SAAStB,EAAElC,EAAEE,GAAG,IAAI+B,EAAEP,OAAO+B,OAAOxB,GAAGA,EAAEyB,OAAO,KAAKzB,EAAE0B,SAASC,KAAK1D,GAAG2D,QAAQC,KAAK,uDAAuD,IAAI3B,EAAE,WAAW,SAASnC,EAAEA,EAAEE,EAAE+B,QAAG,IAASjC,IAAIA,EAAEkC,QAAG,IAAShC,IAAIA,EAAE,SAAI,IAAS+B,IAAIA,GAAE,GAAIvB,KAAKqD,SAAS/D,EAAEU,KAAKsD,SAAS9D,EAAEQ,KAAKuD,iBAAiBhC,EAAEvB,KAAKsD,SAASE,WAAW,EAAE,OAAOlE,EAAEQ,UAAUC,SAAS,SAAST,GAAGU,KAAKC,UAAUX,EAAEU,KAAKuD,kBAAkB,yBAAyBvD,KAAKC,UAAUD,KAAKyD,cAAczD,KAAKC,UAAUyD,qBAAqB,IAAI7D,EAAE8D,gBAAgB3D,KAAKC,UAAUmB,EAAEpB,KAAKqD,WAAWrD,KAAK4D,eAAe5D,KAAKC,UAAU4D,oBAAoBzC,EAAEpB,KAAKqD,SAASrD,KAAKsD,WAAWhE,EAAEQ,UAAUI,QAAQ,WAAW,IAAIZ,OAAE,IAASU,KAAK4D,qBAAgB,IAAS5D,KAAKC,WAAWD,KAAKC,UAAU6D,sBAAsB9D,KAAK4D,gBAAgB,QAAQtE,EAAEU,KAAKyD,qBAAgB,IAASnE,GAAGA,EAAEY,WAAWZ,EAAnrB,GAAwrBE,EAAEqD,cAAcpB,GAAG,SAASnC,EAAEE,EAAE+B,GAAG,aAAa9B,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEuE,aAAavE,EAAEmE,qBAAgB,EAAO,IAAI9D,EAAE,WAAW,SAASP,EAAEA,EAAEE,EAAE+B,GAAGvB,KAAKC,UAAUX,EAAEU,KAAKgE,OAAOxE,EAAEQ,KAAKqD,SAAS9B,EAAE,OAAOjC,EAAEQ,UAAUmE,aAAa,SAAS3E,EAAEE,GAAGA,EAAE4B,EAAE8C,YAAY5E,EAAEU,KAAKgE,OAAOhE,KAAKC,UAAUD,KAAKqD,YAAY/D,EAAxL,GAA6LE,EAAEmE,gBAAgB9D,EAAE,IAAIuB,EAAE,WAAW,SAAS9B,KAAK,OAAOA,EAAE4E,YAAY,SAAS1E,EAAE+B,EAAE1B,EAAEuB,GAAG,IAAI,IAAII,EAAEC,EAAE,IAAIqB,OAAOvB,EAAE4C,QAAQ5C,EAAE6C,OAAO,IAAI,KAAKxB,EAAEtD,EAAE+E,qCAAqC7E,EAAE,GAAE,EAAGK,GAAGyE,EAAE1B,EAAE,GAAGX,EAAEW,EAAE,GAAGf,GAAG,EAAEG,EAAE,GAAG,QAAQR,EAAEC,EAAE8C,KAAKD,KAAK,CAAC,IAAIE,EAAEhD,EAAE,GAAG,IAAIgD,EAAE,CAACrB,QAAQsB,IAAI,gDAAgD,MAAM,GAAG5C,EAAEyC,EAAEI,QAAQF,EAAE3C,EAAE,GAAGJ,EAAEkD,UAAU9C,EAAE2C,EAAEI,OAAO/C,EAAE,EAAE,MAAM,IAAI,IAAIc,EAAEd,EAAE2C,EAAEI,OAAOC,EAAE5C,EAAE,EAAEU,EAAE9C,EAAEU,MAAMoC,GAAG9C,EAAEU,KAAKsE,IAAI,IAAIC,EAAE,CAACC,MAAM,CAACC,EAAEnD,EAAE,EAAEoD,EAAEhD,EAAE,GAAGiD,IAAI,CAACF,EAAErC,EAAEsC,EAAEJ,IAAI7C,EAAEmD,KAAK,CAACC,MAAMN,EAAEO,KAAKb,EAAEzE,SAASqB,IAAI,OAAOY,GAAG1C,EAAE+E,qCAAqC,SAAS/E,EAAEE,EAAE+B,GAAG,IAAI1B,EAAEuB,EAAEI,EAAE,GAAG,EAAE,CAAC,KAAKoB,EAAErB,EAAE+D,OAAOC,OAAOC,QAAQlG,IAAI,MAAMsD,EAAE6C,WAAWnG,IAAI8B,EAAEwB,EAAE6C,gBAAgBrE,GAAG,IAAIK,EAAEnC,EAAE,EAAE,CAAC,IAAIsD,EAAE0B,EAAE/C,EAAE+D,OAAOC,OAAOC,QAAQlG,EAAE,GAAG,GAAGO,IAAIyE,GAAGA,EAAEmB,YAAY7C,EAAErB,EAAE+D,OAAOC,OAAOC,QAAQlG,IAAI,MAAMkC,GAAGoB,EAAE8C,mBAAmB7F,GAAGL,GAAGmG,UAAU,EAAEpE,EAAEhB,MAAMjB,UAAUO,GAAG,MAAM,CAAC2B,EAAEC,IAAInC,EAA3zB,GAAg0BE,EAAEuE,aAAa3C,M,QCAj2GjC,KAAxIC,EAAOC,QAAwJ,MAAM,aAAa,IAAIG,EAAE,CAACoG,IAAI,CAACpG,EAAEF,EAAE8B,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEuG,mBAAc,EAAO,IAAIhG,EAAEuB,EAAE,KAAKI,EAAEJ,EAAE,KAAKG,EAAEH,EAAE,KAAKwB,EAAExB,EAAE,KAAKK,EAAEL,EAAE,KAAKS,EAAET,EAAE,KAAKyD,EAAE,GAAG7C,EAAE6C,EAAEiB,aAAaC,kBAAkBC,EAAE,WAAW,SAASxG,EAAEA,EAAEF,EAAE8B,EAAEI,GAAGxB,KAAKC,UAAUT,EAAEQ,KAAKiG,QAAQ3G,EAAEU,KAAKkG,IAAI9E,EAAEpB,KAAKmG,YAAY3E,EAAExB,KAAKoG,cAAc,EAAEpG,KAAKqG,UAAU,CAACC,MAAM,EAAEC,WAAW,IAAIT,aAAa,GAAGU,kBAAkB,CAAC,IAAIV,aAAa,GAAG,IAAIA,aAAa,IAAIW,oBAAoB,IAAIX,aAAa,IAAI,IAAIvE,EAAEvB,KAAKkG,IAAItD,EAAE/C,EAAE6G,aAAa7G,EAAE8G,cAAcpF,EAAE,qjBAAqjB,0LAA0LvB,KAAK4G,SAAShE,EAAE5C,KAAK6G,oBAAoBhH,EAAE6G,aAAanF,EAAEuF,mBAAmB9G,KAAK4G,SAAS,iBAAiB5G,KAAK+G,oBAAoBlH,EAAE6G,aAAanF,EAAEuF,mBAAmB9G,KAAK4G,SAAS,iBAAiB5G,KAAKgH,iBAAiBnH,EAAE6G,aAAanF,EAAEuF,mBAAmB9G,KAAK4G,SAAS,cAAc5G,KAAKiH,mBAAmB1F,EAAE2F,oBAAoB3F,EAAE4F,gBAAgBnH,KAAKiH,oBAAoB,IAAIxF,EAAE,IAAIqE,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAIjE,EAAEN,EAAE6F,eAAe7F,EAAE8F,WAAW9F,EAAE+F,aAAazF,GAAGN,EAAEgG,WAAWhG,EAAE+F,aAAa7F,EAAEF,EAAEiG,aAAajG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAE1H,KAAKkG,IAAIyB,OAAM,EAAG,EAAE,GAAG,IAAI9C,EAAE,IAAI+C,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI5B,EAAEzE,EAAE6F,eAAe7F,EAAE8F,WAAW9F,EAAEsG,qBAAqB7B,GAAGzE,EAAEgG,WAAWhG,EAAEsG,qBAAqBhD,EAAEtD,EAAEiG,aAAaxH,KAAK8H,kBAAkBjI,EAAE6G,aAAanF,EAAE6F,gBAAgB7F,EAAE8F,WAAW9F,EAAE+F,aAAatH,KAAK8H,mBAAmBvG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG3F,EAAE,GAAGT,EAAEwG,oBAAoB,EAAE,GAAGxG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG3F,EAAE,EAAE8D,aAAaC,mBAAmBxE,EAAEwG,oBAAoB,EAAE,GAAGxG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG3F,EAAE,EAAE8D,aAAaC,mBAAmBxE,EAAEwG,oBAAoB,EAAE,GAAGxG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG3F,EAAE,EAAE8D,aAAaC,mBAAmBxE,EAAEwG,oBAAoB,EAAE,GAAGxG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG3F,EAAE,EAAE8D,aAAaC,mBAAmBxE,EAAEwG,oBAAoB,EAAE,GAAG/H,KAAKgI,cAAcnI,EAAE6G,aAAanF,EAAE0G,iBAAiB1G,EAAE2G,YAAY3G,EAAE4G,WAAWnI,KAAKgI,eAAezG,EAAE6G,WAAW7G,EAAE4G,WAAW,EAAE5G,EAAE8G,KAAK,EAAE,EAAE,EAAE9G,EAAE8G,KAAK9G,EAAE+G,cAAc,IAAIV,WAAW,CAAC,EAAE,EAAE,IAAI,OAAOrG,EAAEgH,cAAchH,EAAE4G,WAAW5G,EAAEiH,eAAejH,EAAEkH,eAAelH,EAAEgH,cAAchH,EAAE4G,WAAW5G,EAAEmH,eAAenH,EAAEkH,eAAelH,EAAEoH,OAAOpH,EAAEqH,OAAOrH,EAAEsH,UAAUtH,EAAEuH,UAAUvH,EAAEwH,qBAAqB/I,KAAKgJ,WAAW,OAAOxJ,EAAEM,UAAUmJ,WAAW,WAAW,OAAOjJ,KAAKkJ,QAAQlJ,KAAKkJ,OAAOD,cAAczJ,EAAEM,UAAUqJ,WAAW,SAAS3J,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAED,GAAGvB,KAAKoJ,YAAYpJ,KAAKqG,UAAUE,WAAW/G,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAED,IAAI/B,EAAEM,UAAUsJ,YAAY,SAAS5J,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAEoB,EAAEf,GAAG,IAAIG,EAAEgE,GAAG5E,EAAEpB,KAAKC,UAAUM,KAAKjB,GAAGuF,EAAEhF,IAAI4B,EAAE4H,gBAAgBxJ,IAAI4B,EAAE6H,2BAAsB,IAASzJ,EAAEG,KAAKkJ,UAAUlH,EAAEH,GAAGA,EAAE+C,OAAO,EAAE5E,KAAKkJ,OAAOK,+BAA+B1H,EAAEL,EAAEoB,GAAG5C,KAAKkJ,OAAOM,mBAAmB3J,EAAE2B,EAAEoB,KAAKpD,EAAEwG,IAAIhE,EAAEyH,OAAOzE,EAAEhF,KAAKmG,YAAYuD,eAAelK,EAAEwG,EAAE,IAAIhE,EAAEyH,OAAOxE,EAAEjF,KAAKmG,YAAYwD,cAAcnK,EAAEwG,EAAE,GAAGhE,EAAE4H,KAAK5E,EAAEhF,KAAKmG,YAAY0D,kBAAkBrK,EAAEwG,EAAE,GAAGhE,EAAE4H,KAAK3E,EAAEjF,KAAKmG,YAAY2D,mBAAmBtK,EAAEwG,EAAE,GAAGhE,EAAE+H,yBAAyB/E,EAAExF,EAAEwG,EAAE,GAAGhE,EAAE+H,yBAAyB9E,EAAEzF,EAAEwG,EAAE,GAAGhE,EAAEgI,cAAchF,EAAExF,EAAEwG,EAAE,GAAGhE,EAAEgI,cAAc/E,GAAG1D,EAAE0I,KAAKzK,EAAE,EAAEwG,EAAEA,EAAEnB,EAAE,EAAE,IAAItD,EAAE0I,KAAKzK,EAAE,EAAEwG,EAAEA,EAAEnB,EAAE,EAAE,IAAIrF,EAAEM,UAAUoK,gBAAgB,SAAS1K,GAAG,IAAIF,EAAEU,KAAKC,UAAUD,KAAKqG,UAAUI,oBAAoB7D,EAAEuH,MAAMnK,KAAKqG,UAAUE,WAAW,GAAG,IAAInF,EAAEpB,KAAKiG,QAAQmE,gBAAgBC,OAAO,EAAE,SAAS,GAAG7K,EAAE8K,UAAUC,iBAAiB,IAAI,IAAI1K,EAAEL,EAAE8K,UAAUE,SAAShJ,EAAEhC,EAAE8K,UAAUG,OAAO5K,EAAE0B,EAAE/B,EAAE8K,UAAUI,qBAAqBlL,EAAE8K,UAAUK,uBAAuB,EAAElJ,EAAEjC,EAAE8K,UAAUK,uBAAuBlJ,EAAEjC,EAAE8K,UAAUK,uBAAuBpJ,EAAEE,IAAIzB,KAAK4K,sBAAsB/K,EAAEA,EAAE2B,EAAEC,EAAEjC,EAAE4B,OAAO,CAACvB,EAAEL,EAAE8K,UAAUO,mBAAmBrL,EAAE8K,UAAUK,uBAAuBnL,EAAE8K,UAAUE,SAAS,EAAE,IAAI3I,EAAErC,EAAE8K,UAAUK,yBAAyBnL,EAAE8K,UAAUI,qBAAqBlL,EAAE8K,UAAUG,OAAOnL,EAAEiB,KAAKP,KAAK4K,sBAAsB/K,EAAEgC,EAAErC,EAAE8K,UAAUK,uBAAuBnL,EAAE4B,GAAG,IAAIyD,EAAExD,KAAKC,IAAI9B,EAAE8K,UAAUI,qBAAqBlL,EAAE8K,UAAUK,uBAAuB,EAAE,GAAG,IAAIlJ,EAAEjC,EAAE8K,UAAUK,uBAAuB,EAAElJ,GAAGjC,EAAE8K,UAAUK,uBAAuB9F,EAAEpD,IAAIzB,KAAK4K,sBAAsB,EAAE/I,EAAEJ,EAAEjC,EAAE4B,GAAG,GAAG5B,EAAE8K,UAAUK,yBAAyBnL,EAAE8K,UAAUI,qBAAqB,CAAC,IAAI1I,EAAExC,EAAE8K,UAAUQ,iBAAiBtL,EAAE8K,UAAUI,qBAAqBlL,EAAE8K,UAAUG,OAAOnL,EAAEiB,KAAKP,KAAK4K,sBAAsB,EAAE5I,EAAExC,EAAE8K,UAAUI,qBAAqBlL,EAAE4B,MAAM5B,EAAEM,UAAU8K,sBAAsB,SAASpL,EAAEF,EAAE8B,EAAEvB,EAAE0B,GAAG,IAAI,IAAIqB,EAAEnB,EAAEzB,KAAKC,UAAU4E,EAAEzD,EAAEK,EAAE6D,OAAOC,OAAOwF,UAAU/I,EAAExC,EAAEwC,EAAE1C,EAAE0C,IAAI,CAAC,IAAIgE,GAAG5E,EAAEpB,KAAKC,UAAUM,KAAKyB,GAAGR,EAAEwJ,+BAA+B/I,EAAEpC,EAAEoL,MAAMjF,GAAG1B,EAAEzE,EAAEoL,MAAMjF,EAAExE,EAAE0J,wBAAwB,GAAG,SAAS5G,EAAE,CAAC,IAAIE,EAAE,IAAI3C,EAAEsJ,cAAc,OAAO3G,EAAE4G,GAAG9G,EAAEE,EAAE6G,GAAGxL,EAAEoL,MAAMjF,EAAExE,EAAE8J,wBAAwBhH,IAAI,UAAUE,EAAE+G,kBAAkB,KAAK,SAAS,KAAK,SAAS,IAAI5I,EAAE3C,KAAKwL,uBAAuBhH,EAAEiH,cAAcpB,KAAK/F,GAAG3B,GAAG,EAAE,SAASA,GAAG,EAAE,MAAMA,GAAG,EAAE,IAAI,KAAK,SAAS,IAAI+I,EAAE7J,EAAEsJ,cAAcQ,WAAWnH,EAAEiH,cAAcnH,GAAGoH,EAAE,IAAI,GAAGA,EAAE,IAAI,EAAEA,EAAE,IAAI,EAAE,KAAK,EAAE,QAAQ,IAAI5G,EAAE9E,KAAKiG,QAAQ2F,WAAWvB,KAAK/F,GAAGQ,GAAG,EAAE,SAASA,GAAG,EAAE,MAAMA,GAAG,EAAE,IAAIR,GAAG,SAAS,GAAGrC,EAAET,EAAEqK,uBAAuB,CAACjJ,IAAIA,EAAEnB,EAAE6D,OAAOC,OAAOC,QAAQX,IAAI,IAAIiH,EAAElJ,EAAEmJ,QAAQ/J,GAAGgK,WAAWhM,KAAKoJ,YAAYpJ,KAAKqG,UAAUI,oBAAoBzE,EAAEZ,EAAEvB,EAAEoL,MAAMjF,GAAGzE,EAAE+C,EAAEwH,QAAQ9L,KAAKoJ,YAAYpJ,KAAKqG,UAAUI,oBAAoBzE,EAAEZ,EAAEvB,EAAEoL,MAAMjF,GAAGzE,EAAE+C,KAAK9E,EAAEM,UAAU0L,uBAAuB,SAAShM,GAAG,GAAGA,GAAGQ,KAAKiG,QAAQgG,KAAKrH,OAAO,MAAM,IAAIsH,MAAM,0BAA0B1M,GAAG,OAAOQ,KAAKiG,QAAQgG,KAAKzM,IAAIA,EAAEM,UAAUkJ,SAAS,WAAW,IAAIxJ,EAAEQ,KAAKC,UAAUX,EAAEU,KAAKkG,IAAI5G,EAAEoC,SAAS,EAAE,EAAEpC,EAAE6M,OAAOC,MAAM9M,EAAE6M,OAAOE,QAAQ,IAAIjL,EAAE5B,EAAEe,KAAKf,EAAEc,KAAKuE,EAAE,GAAG7E,KAAKqG,UAAUC,QAAQlF,EAAE,CAACpB,KAAKqG,UAAUC,MAAMlF,EAAEpB,KAAKqG,UAAUE,WAAW,IAAIT,aAAa1E,GAAG,IAAI,IAAIvB,EAAE,EAAEA,EAAEG,KAAKqG,UAAUG,kBAAkB5B,OAAO/E,IAAIG,KAAKqG,UAAUG,kBAAkB3G,GAAG,IAAIiG,aAAa1E,GAAG,IAAI,IAAII,EAAE,EAAED,EAAE,EAAEA,EAAE/B,EAAEc,KAAKiB,IAAI,IAAI,IAAIqB,EAAE,EAAEA,EAAEpD,EAAEe,KAAKqC,IAAI5C,KAAKqG,UAAUE,WAAW/E,EAAE,GAAGoB,EAAEpD,EAAEe,KAAKP,KAAKqG,UAAUE,WAAW/E,EAAE,GAAGD,EAAE/B,EAAEc,KAAKkB,GAAGqD,IAAIrF,EAAEM,UAAUwM,UAAU,aAAa9M,EAAEM,UAAUyM,OAAO,SAAS/M,EAAEF,GAAG,GAAGU,KAAKkJ,OAAO,CAAC,IAAI9H,EAAEpB,KAAKkG,IAAI9E,EAAEoL,WAAWxM,KAAK4G,UAAUxF,EAAE+F,gBAAgBnH,KAAKiH,oBAAoBjH,KAAKoG,eAAepG,KAAKoG,cAAc,GAAG,EAAE,IAAI,IAAI5E,EAAExB,KAAKqG,UAAUG,kBAAkBxG,KAAKoG,eAAe7E,EAAE,EAAEqB,EAAE,EAAEA,EAAEpD,EAAEiN,YAAY7H,OAAOhC,IAAI,CAAC,IAAInB,EAAEmB,EAAE5C,KAAKC,UAAUM,KAAKsE,EAAEhD,GAAGvC,EAAEU,KAAKqG,UAAUI,oBAAoBzG,KAAKqG,UAAUE,YAAYmG,SAASjL,EAAEA,EAAEjC,EAAEiN,YAAY7J,GAAGiC,GAAGrD,EAAEmL,IAAI9K,EAAEN,GAAGA,GAAGM,EAAE+C,OAAOxD,EAAEiG,WAAWjG,EAAEkG,aAAatH,KAAK8H,mBAAmB1G,EAAEmG,WAAWnG,EAAEkG,aAAa9F,EAAEkL,SAAS,EAAEnL,GAAGH,EAAEwL,aAAa5M,KAAKkJ,OAAO2D,mBAAmB7M,KAAKkJ,OAAO2D,kBAAiB,EAAGzL,EAAE0L,UAAU9M,KAAKgH,iBAAiB,GAAG5F,EAAE2L,cAAc3L,EAAE4L,SAAS,GAAG5L,EAAE8G,YAAY9G,EAAE+G,WAAWnI,KAAKgI,eAAe5G,EAAEgH,WAAWhH,EAAE+G,WAAW,EAAE/G,EAAEiH,KAAKjH,EAAEiH,KAAKjH,EAAEkH,cAActI,KAAKkJ,OAAO+D,aAAa7L,EAAE8L,eAAe9L,EAAE+G,aAAa/G,EAAE+L,iBAAiBnN,KAAK6G,qBAAoB,EAAGhH,EAAEuN,mBAAmBhM,EAAEiM,UAAUrN,KAAK+G,oBAAoB3F,EAAE+K,OAAOC,MAAMhL,EAAE+K,OAAOE,QAAQjL,EAAEkM,sBAAsBlM,EAAEmM,UAAU,EAAEnM,EAAEkH,cAAc,EAAE/G,EAAEsD,KAAKrF,EAAEM,UAAU0N,SAAS,SAAShO,GAAG,IAAIF,EAAEU,KAAKkG,IAAIlG,KAAKkJ,OAAO1J,EAAEF,EAAE4I,YAAY5I,EAAE6I,WAAWnI,KAAKgI,eAAe1I,EAAE8I,WAAW9I,EAAE6I,WAAW,EAAE7I,EAAE+I,KAAK/I,EAAE+I,KAAK/I,EAAEgJ,cAAc9I,EAAEyN,aAAa3N,EAAE4N,eAAe5N,EAAE6I,aAAa3I,EAAEM,UAAU2N,cAAc,SAASjO,GAAGQ,KAAKmG,YAAY3G,GAAGA,EAA3qP,GAAgrPF,EAAEuG,cAAcG,GAAG0H,IAAI,CAAClO,EAAEF,EAAE8B,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEqO,uBAAkB,EAAO,IAAI9N,EAAEuB,EAAE,KAAKI,EAAEJ,EAAE,KAAKG,EAAEH,EAAE,KAAKwB,EAAE,EAAEkD,aAAaC,kBAAkBtE,EAAE,WAAW,SAASjC,EAAEA,EAAEF,EAAE8B,EAAEI,GAAGxB,KAAKC,UAAUT,EAAEQ,KAAKiG,QAAQ3G,EAAEU,KAAKkG,IAAI9E,EAAEpB,KAAKmG,YAAY3E,EAAExB,KAAKqG,UAAU,CAACC,MAAM,EAAEC,WAAW,IAAIT,aAAa,KAAKwE,UAAU,IAAIxE,aAAa,KAAK,IAAIvE,EAAEvB,KAAKkG,IAAIlG,KAAK4G,SAAS/G,EAAE6G,aAAa7G,EAAE8G,cAAcpF,EAAE,obAAob,gIAAgIvB,KAAK+G,oBAAoBlH,EAAE6G,aAAanF,EAAEuF,mBAAmB9G,KAAK4G,SAAS,iBAAiB5G,KAAK6G,oBAAoBhH,EAAE6G,aAAanF,EAAEuF,mBAAmB9G,KAAK4G,SAAS,iBAAiB5G,KAAKiH,mBAAmB1F,EAAE2F,oBAAoB3F,EAAE4F,gBAAgBnH,KAAKiH,oBAAoB,IAAIxF,EAAE,IAAIqE,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,IAAIjE,EAAEN,EAAE6F,eAAe7F,EAAE8F,WAAW9F,EAAE+F,aAAazF,GAAGN,EAAEgG,WAAWhG,EAAE+F,aAAa7F,EAAEF,EAAEiG,aAAajG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAE1H,KAAKkG,IAAIyB,OAAM,EAAG,EAAE,GAAG,IAAI9C,EAAE,IAAI+C,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI5F,EAAET,EAAE6F,eAAe7F,EAAE8F,WAAW9F,EAAEsG,qBAAqB7F,GAAGT,EAAEgG,WAAWhG,EAAEsG,qBAAqBhD,EAAEtD,EAAEiG,aAAaxH,KAAK8H,kBAAkBjI,EAAE6G,aAAanF,EAAE6F,gBAAgB7F,EAAE8F,WAAW9F,EAAE+F,aAAatH,KAAK8H,mBAAmBvG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG/E,EAAE,GAAGrB,EAAEwG,oBAAoB,EAAE,GAAGxG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG/E,EAAE,EAAEkD,aAAaC,mBAAmBxE,EAAEwG,oBAAoB,EAAE,GAAGxG,EAAEkG,wBAAwB,GAAGlG,EAAEmG,oBAAoB,EAAE,EAAEnG,EAAEoG,OAAM,EAAG/E,EAAE,EAAEkD,aAAaC,mBAAmBxE,EAAEwG,oBAAoB,EAAE,GAAG/H,KAAK4N,sBAAsB,OAAOpO,EAAEM,UAAUyM,OAAO,WAAW,IAAI/M,EAAEQ,KAAKkG,IAAI1G,EAAEgN,WAAWxM,KAAK4G,UAAUpH,EAAE2H,gBAAgBnH,KAAKiH,oBAAoBzH,EAAE2N,iBAAiBnN,KAAK6G,qBAAoB,EAAGhH,EAAEuN,mBAAmB5N,EAAE6N,UAAUrN,KAAK+G,oBAAoBvH,EAAE2M,OAAOC,MAAM5M,EAAE2M,OAAOE,QAAQ7M,EAAE6H,WAAW7H,EAAE8H,aAAatH,KAAK8H,mBAAmBtI,EAAE+H,WAAW/H,EAAE8H,aAAatH,KAAKqG,UAAUE,WAAW/G,EAAEqO,cAAcrO,EAAE8N,sBAAsBtN,KAAKkG,IAAIqH,UAAU,EAAE/N,EAAE8I,cAAc,EAAEtI,KAAKqG,UAAUC,OAAO9G,EAAE6H,WAAW7H,EAAE8H,aAAatH,KAAK8H,mBAAmBtI,EAAE+H,WAAW/H,EAAE8H,aAAatH,KAAKqG,UAAUiE,UAAU9K,EAAEqO,cAAcrO,EAAE8N,sBAAsBtN,KAAKkG,IAAIqH,UAAU,EAAE/N,EAAE8I,cAAc,EAAE,IAAI9I,EAAEM,UAAUkJ,SAAS,WAAWhJ,KAAK8N,4BAA4BtO,EAAEM,UAAUwM,UAAU,WAAWtM,KAAK4N,sBAAsB5N,KAAK8N,4BAA4BtO,EAAEM,UAAU8N,oBAAoB,WAAW5N,KAAK+N,SAAS/N,KAAKgO,qBAAqBhO,KAAKiG,QAAQ2F,YAAY5L,KAAKiO,gBAAgBjO,KAAKgO,qBAAqBhO,KAAKiG,QAAQmE,kBAAkB5K,EAAEM,UAAUgO,yBAAyB,WAAW9N,KAAKkO,mBAAmBlO,KAAKqG,UAAUE,WAAW,EAAE,EAAE,EAAEvG,KAAKC,UAAUM,KAAKP,KAAKmG,YAAYgI,gBAAgBnO,KAAKC,UAAUK,KAAKN,KAAKmG,YAAYiI,iBAAiBpO,KAAK+N,WAAWvO,EAAEM,UAAUoK,gBAAgB,SAAS1K,GAAG,IAAIF,EAAEU,KAAKC,UAAU,GAAGT,EAAE6O,aAAa,GAAG7O,EAAE+K,iBAAiB,CAAC,IAAInJ,EAAE5B,EAAEgL,SAAS3K,EAAEL,EAAEiL,OAAOrJ,EAAEG,EAAE/B,EAAEkL,qBAAqBlL,EAAEmL,uBAAuB,EAAE3K,KAAKkO,mBAAmBlO,KAAKqG,UAAUiE,UAAU,EAAElJ,EAAEpB,KAAKmG,YAAYgI,gBAAgB3O,EAAEmL,uBAAuB3K,KAAKmG,YAAYiI,iBAAiBvO,EAAEG,KAAKmG,YAAYgI,gBAAgB5M,EAAEvB,KAAKmG,YAAYiI,iBAAiBpO,KAAKiO,iBAAiBzM,EAAEyI,KAAKjK,KAAKqG,UAAUiE,UAAU,EAAE,OAAO,CAAClJ,EAAE5B,EAAEqL,mBAAmBrL,EAAEmL,uBAAuBnL,EAAEgL,SAAS,EAAE,IAAI5H,EAAEpD,EAAEmL,yBAAyBnL,EAAEsL,eAAetL,EAAEiL,OAAOnL,EAAEiB,KAAKP,KAAKkO,mBAAmBlO,KAAKqG,UAAUiE,UAAU,EAAElJ,EAAEpB,KAAKmG,YAAYgI,gBAAgB3O,EAAEmL,uBAAuB3K,KAAKmG,YAAYiI,kBAAkBxL,EAAExB,GAAGpB,KAAKmG,YAAYgI,gBAAgBnO,KAAKmG,YAAYiI,iBAAiBpO,KAAKiO,iBAAiB,IAAIxM,EAAEJ,KAAKC,IAAI9B,EAAEkL,qBAAqBlL,EAAEmL,uBAAuB,EAAE,GAAG,GAAG3K,KAAKkO,mBAAmBlO,KAAKqG,UAAUiE,UAAU,EAAE,GAAG9K,EAAEmL,uBAAuB,GAAG3K,KAAKmG,YAAYiI,iBAAiB9O,EAAEiB,KAAKP,KAAKmG,YAAYgI,gBAAgB1M,EAAEzB,KAAKmG,YAAYiI,iBAAiBpO,KAAKiO,iBAAiBzO,EAAEmL,yBAAyBnL,EAAEkL,qBAAqB,CAAC,IAAI7I,EAAErC,EAAEsL,iBAAiBtL,EAAEkL,qBAAqBlL,EAAEiL,OAAOnL,EAAEiB,KAAKP,KAAKkO,mBAAmBlO,KAAKqG,UAAUiE,UAAU,GAAG,EAAE9K,EAAEkL,qBAAqB1K,KAAKmG,YAAYiI,iBAAiBvM,EAAE7B,KAAKmG,YAAYgI,gBAAgBnO,KAAKmG,YAAYiI,iBAAiBpO,KAAKiO,sBAAsBzM,EAAEyI,KAAKjK,KAAKqG,UAAUiE,UAAU,EAAE,SAAS9I,EAAEyI,KAAKjK,KAAKqG,UAAUiE,UAAU,EAAE,IAAI9K,EAAEM,UAAUwO,kBAAkB,SAAS9O,GAAG,IAAI,IAAIF,EAAEU,KAAKC,UAAUmB,EAAEpB,KAAKqG,UAAUxG,EAAE,EAAE2B,EAAE,EAAEA,EAAElC,EAAEgB,KAAKkB,IAAI,CAAC,IAAI,IAAIoB,GAAG,EAAEnB,EAAE,EAAEI,EAAE,EAAEgD,GAAE,EAAG7C,EAAE,EAAEA,EAAE1C,EAAEiB,KAAKyB,IAAI,CAAC,IAAIgE,GAAGxE,EAAElC,EAAEiB,KAAKyB,GAAGT,EAAEyJ,+BAA+B/I,EAAEzC,EAAEyL,MAAMjF,EAAEzE,EAAE+J,wBAAwBhH,EAAE9E,EAAEyL,MAAMjF,EAAEzE,EAAE2J,wBAAwB1G,KAAK,SAASF,GAAG,GAAGrC,IAAIR,GAAG6C,IAAIzC,IAAIgD,GAAGL,GAAG,CAAC,GAAG,IAAI/C,GAAGoD,GAAG,IAAIhD,EAAE,CAAC,IAAIc,EAAE,EAAE9C,IAAIG,KAAKuO,iBAAiBnN,EAAEuB,EAAEd,EAAEJ,EAAEmB,EAAEZ,EAAER,GAAGoB,EAAEZ,EAAEP,EAAEQ,EAAEJ,EAAEyC,EAAEO,EAAEL,IAAI,IAAI/C,GAAGoD,GAAG,IAAIhD,KAAKc,EAAE,EAAE9C,IAAIG,KAAKuO,iBAAiBnN,EAAEuB,EAAEd,EAAEJ,EAAEmB,EAAEtD,EAAEiB,KAAKiB,IAAIJ,EAAEkF,MAAMzG,GAAGL,EAAEM,UAAUyO,iBAAiB,SAAS/O,EAAEF,EAAE8B,EAAEI,EAAED,EAAEqB,EAAEnB,GAAG,IAAII,EAAE,GAAG,SAAST,EAAE,OAAO,SAASA,GAAG,KAAK,SAAS,KAAK,SAASS,EAAE7B,KAAKiG,QAAQgG,KAAK,IAAI7K,GAAGiJ,KAAK,MAAM,KAAK,SAASxI,GAAG,SAAST,IAAI,EAAE,MAAM,KAAK,EAAE,QAAQS,EAAE7B,KAAKiG,QAAQuI,WAAWnE,UAAU,OAAO,SAAS7I,GAAG,KAAK,SAAS,KAAK,SAASK,EAAE7B,KAAKiG,QAAQgG,KAAK,IAAIzK,GAAG6I,KAAK,MAAM,KAAK,SAASxI,GAAG,SAASL,IAAI,EAAE,MAAM,KAAK,EAAE,QAAQK,EAAE7B,KAAKiG,QAAQ2F,WAAWvB,KAAK7K,EAAE+G,WAAW3B,OAAOtF,EAAE,IAAIE,EAAE+G,WAAW1G,EAAE4O,mBAAmBjP,EAAE+G,WAAWvG,KAAKC,UAAUK,KAAKN,KAAKC,UAAUM,KAAK,IAAI,IAAIsE,EAAEtD,EAAEvB,KAAKmG,YAAYgI,gBAAgBnM,EAAEP,EAAEzB,KAAKmG,YAAYiI,iBAAiBpI,GAAGnE,GAAG,GAAG,KAAK,IAAII,GAAGJ,GAAG,GAAG,KAAK,IAAIyC,GAAGzC,GAAG,EAAE,KAAK,IAAI7B,KAAK0O,cAAclP,EAAE+G,WAAWjH,EAAEuF,EAAE7C,GAAGY,EAAErB,GAAGvB,KAAKmG,YAAYgI,gBAAgBnO,KAAKmG,YAAYiI,iBAAiBpI,EAAE/D,EAAEqC,EAAE,IAAI9E,EAAEM,UAAU4O,cAAc,SAASlP,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAED,EAAEqB,EAAEnB,EAAEI,EAAEgD,GAAGrF,EAAEF,GAAG8B,EAAE5B,EAAEF,EAAE,GAAGO,EAAEL,EAAEF,EAAE,GAAGkC,EAAEhC,EAAEF,EAAE,GAAGiC,EAAE/B,EAAEF,EAAE,GAAGsD,EAAEpD,EAAEF,EAAE,GAAGmC,EAAEjC,EAAEF,EAAE,GAAGuC,EAAErC,EAAEF,EAAE,GAAGuF,GAAGrF,EAAEM,UAAUoO,mBAAmB,SAAS1O,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAED,EAAEqB,GAAGpD,EAAEF,GAAG8B,EAAE5B,EAAEF,EAAE,GAAGO,EAAEL,EAAEF,EAAE,GAAGkC,EAAEhC,EAAEF,EAAE,GAAGiC,EAAE/B,EAAEF,EAAE,GAAGsD,EAAE,GAAGpD,EAAEF,EAAE,GAAGsD,EAAE,GAAGpD,EAAEF,EAAE,GAAGsD,EAAE,GAAGpD,EAAEF,EAAE,GAAGsD,EAAE,IAAIpD,EAAEM,UAAUkO,qBAAqB,SAASxO,GAAG,OAAO,IAAIsG,aAAa,EAAEtG,EAAE6K,MAAM,GAAG,KAAK,KAAK7K,EAAE6K,MAAM,GAAG,KAAK,KAAK7K,EAAE6K,MAAM,EAAE,KAAK,KAAK,IAAI7K,EAAE6K,MAAM,OAAO7K,EAAluM,GAAuuMF,EAAEqO,kBAAkBlM,GAAGkN,IAAI,CAACnP,EAAEF,EAAE8B,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEsP,YAAYtP,EAAEuM,uBAAuBvM,EAAE4L,uBAAuB5L,EAAEgM,uBAAuBhM,EAAE0L,oCAA+B,EAAO,IAAInL,EAAEuB,EAAE,KAAK9B,EAAE0L,+BAA+B,EAAE1L,EAAEgM,uBAAuB,EAAEhM,EAAE4L,uBAAuB,EAAE5L,EAAEuM,uBAAuB,WAAW,IAAIrK,EAAE,WAAW,SAAShC,IAAIQ,KAAKiL,MAAM,IAAI4D,YAAY,GAAG7O,KAAKyM,YAAY,IAAIoC,YAAY,GAAG7O,KAAKsK,UAAU,CAAC+D,cAAa,EAAG9D,kBAAiB,EAAGM,iBAAiB,EAAEC,eAAe,EAAEH,uBAAuB,EAAED,qBAAqB,EAAEF,SAAS,EAAEC,OAAO,GAAG,OAAOjL,EAAEM,UAAUY,OAAO,SAASlB,EAAE4B,GAAG,IAAIvB,EAAEL,EAAE4B,EAAE9B,EAAE0L,+BAA+BnL,IAAIG,KAAKiL,MAAMrG,SAAS5E,KAAKiL,MAAM,IAAI4D,YAAYhP,GAAGG,KAAKyM,YAAY,IAAIoC,YAAYzN,KAAK5B,EAAEM,UAAUW,MAAM,WAAWZ,EAAEoK,KAAKjK,KAAKiL,MAAM,EAAE,GAAGpL,EAAEoK,KAAKjK,KAAKyM,YAAY,EAAE,IAAIjN,EAAEM,UAAUgP,eAAe,WAAW9O,KAAKsK,UAAU+D,cAAa,EAAGrO,KAAKsK,UAAUO,iBAAiB,EAAE7K,KAAKsK,UAAUQ,eAAe,EAAE9K,KAAKsK,UAAUK,uBAAuB,EAAE3K,KAAKsK,UAAUI,qBAAqB,EAAE1K,KAAKsK,UAAUE,SAAS,EAAExK,KAAKsK,UAAUG,OAAO,GAAGjL,EAAhwB,GAAqwBF,EAAEsP,YAAYpN,GAAGuN,IAAI,CAACvP,EAAEF,KAAK,SAAS8B,EAAE5B,EAAEF,EAAE8B,QAAG,IAAS9B,IAAIA,EAAE,QAAG,IAAS8B,IAAIA,EAAE5B,EAAEoF,QAAQtF,EAAE,IAAIA,GAAGE,EAAEoF,OAAOtF,GAAGE,EAAEoF,QAAQxD,EAAEA,GAAG5B,EAAEoF,OAAOpF,EAAEoF,QAAQpF,EAAEoF,OAAOxD,GAAG5B,EAAEoF,OAAOtF,EAAE+B,KAAK2N,IAAI1P,EAAE8B,GAAG,IAAI,IAAIvB,EAAE,IAAIL,EAAEyP,YAAY7N,EAAE9B,GAAGkC,EAAE,EAAEA,EAAEJ,EAAE9B,IAAIkC,EAAE3B,EAAE2B,GAAGhC,EAAEgC,EAAElC,GAAG,OAAOO,EAAEJ,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAE4P,cAAc5P,EAAE6K,WAAM,EAAO7K,EAAE6K,MAAM,SAAS3K,EAAEF,EAAEO,GAAG,OAAOL,EAAE2K,MAAM3K,EAAE2K,MAAM7K,EAAEO,GAAGuB,EAAE5B,EAAEF,EAAEO,IAAIP,EAAE4P,cAAc9N,GAAG+N,IAAI,CAAC3P,EAAEF,EAAE8B,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAE8P,gBAAW,EAAO,IAAIvP,EAAEuB,EAAE,KAAKI,EAAE,WAAW,SAAShC,EAAEA,GAAGQ,KAAKqP,uBAAuB7P,EAAE,OAAOA,EAAEM,UAAUC,SAAS,SAASP,GAAG,IAAIA,EAAEmB,QAAQ,MAAM,IAAIuL,MAAM,mDAAmDlM,KAAKC,UAAUT,EAAE,IAAIF,EAAEE,EAAEa,MAAMG,eAAeY,EAAE5B,EAAEa,MAAMiP,cAAcC,OAAOvP,KAAKwP,UAAU,IAAI3P,EAAE4P,cAAcjQ,EAAE4B,EAAEpB,KAAKqP,wBAAwB/P,EAAEoQ,YAAY1P,KAAKwP,YAAYhQ,EAAEM,UAAUI,QAAQ,WAAW,IAAIF,KAAKC,UAAU,MAAM,IAAIiM,MAAM,qDAAqD,IAAI1M,EAAEQ,KAAKC,UAAUI,MAAMG,eAAehB,EAAEkQ,YAAY1P,KAAKC,UAAUI,MAAMsP,mBAAmBnQ,EAAEwJ,SAAShJ,KAAKC,UAAUM,KAAKP,KAAKC,UAAUK,MAAMN,KAAKwP,eAAU,GAAQ/P,OAAOC,eAAeF,EAAEM,UAAU,eAAe,CAACqC,IAAI,WAAW,IAAI3C,EAAE,OAAO,QAAQA,EAAEQ,KAAKwP,iBAAY,IAAShQ,OAAE,EAAOA,EAAEoQ,cAAc1N,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUgQ,kBAAkB,WAAW,IAAItQ,EAAE,QAAQA,EAAEQ,KAAKwP,iBAAY,IAAShQ,GAAGA,EAAEuQ,kBAAkBvQ,EAAv5B,GAA45BF,EAAE8P,WAAW5N,GAAGwO,IAAI,SAASxQ,EAAEF,EAAE8B,GAAG,IAAIvB,EAAE2B,EAAExB,MAAMA,KAAKiQ,YAAYpQ,EAAE,SAASL,EAAEF,GAAG,OAAOO,EAAEJ,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS5Q,EAAEF,GAAGE,EAAE2Q,UAAU7Q,IAAI,SAASE,EAAEF,GAAG,IAAI,IAAI8B,KAAK9B,EAAEG,OAAOK,UAAU4C,eAAeZ,KAAKxC,EAAE8B,KAAK5B,EAAE4B,GAAG9B,EAAE8B,MAAM5B,EAAEF,IAAI,SAASE,EAAEF,GAAG,SAAS8B,IAAIpB,KAAKiP,YAAYzP,EAAEK,EAAEL,EAAEF,GAAGE,EAAEM,UAAU,OAAOR,EAAEG,OAAO8C,OAAOjD,IAAI8B,EAAEtB,UAAUR,EAAEQ,UAAU,IAAIsB,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEmQ,mBAAc,EAAO,IAAIlO,EAAEH,EAAE,KAAKwB,EAAExB,EAAE,KAAKK,EAAEL,EAAE,KAAKS,EAAET,EAAE,KAAKyD,EAAEzD,EAAE,KAAKY,EAAEZ,EAAE,KAAK4E,EAAE5E,EAAE,KAAKa,EAAEb,EAAE,KAAKkD,EAAElD,EAAE,KAAKoD,EAAEpD,EAAE,KAAKuB,EAAE,SAASnD,GAAG,SAASF,EAAEA,EAAE8B,EAAEvB,GAAG,IAAI2B,EAAEhC,EAAEsC,KAAK9B,OAAOA,KAAKwB,EAAEvB,UAAUX,EAAEkC,EAAEyE,QAAQ7E,EAAEI,EAAE6O,OAAO,IAAIrO,EAAE4M,YAAYpN,EAAE8O,UAAU,IAAI9L,EAAE+L,SAAS/O,EAAEgP,iBAAiB,IAAIlM,EAAEmM,aAAajP,EAAEnB,MAAMmB,EAAEvB,UAAUI,MAAMmB,EAAEkP,cAAc,CAAC,IAAI9N,EAAE+N,gBAAgBnP,EAAEnB,MAAMuQ,cAAc,EAAEpP,EAAEyE,QAAQzE,EAAEnB,OAAO,IAAIoB,EAAEoP,kBAAkBrP,EAAEnB,MAAMuQ,cAAc,EAAEpP,EAAEyE,QAAQzE,EAAEgP,mBAAmBhP,EAAEX,WAAW,CAACiQ,gBAAgB,EAAEC,iBAAiB,EAAE5C,gBAAgB,EAAEC,iBAAiB,EAAE1E,eAAe,EAAEC,cAAc,EAAEE,kBAAkB,EAAEC,mBAAmB,EAAEkH,YAAY,EAAEC,aAAa,EAAEnQ,gBAAgB,EAAEC,iBAAiB,GAAGS,EAAE0P,kBAAkBlQ,OAAOmQ,iBAAiB3P,EAAE4P,oBAAoB5P,EAAE6P,QAAQC,SAASC,cAAc,UAAU,IAAI1P,EAAE,CAAC2P,WAAU,EAAGC,OAAM,EAAGC,sBAAsB7R,GAAG,GAAG2B,EAAE0E,IAAI1E,EAAE6P,QAAQM,WAAW,SAAS9P,IAAIL,EAAE0E,IAAI,MAAM,IAAIgG,MAAM,wBAAwB1K,EAAE0E,KAAK,OAAO1E,EAAEnB,MAAMuQ,cAAcgB,YAAYpQ,EAAE6P,SAAS7P,EAAEqQ,mBAAmB,IAAIhN,EAAE8I,kBAAkBnM,EAAEvB,UAAUuB,EAAEyE,QAAQzE,EAAE0E,IAAI1E,EAAEX,YAAYW,EAAEsQ,eAAe,IAAIvQ,EAAEsE,cAAcrE,EAAEvB,UAAUuB,EAAEyE,QAAQzE,EAAE0E,IAAI1E,EAAEX,YAAYW,EAAEuQ,oBAAoBvQ,EAAEwQ,YAAYV,SAASW,KAAKC,SAAS1Q,EAAEnB,MAAMuQ,eAAepP,EAAE,OAAOA,EAAElC,EAAEE,GAAGC,OAAOC,eAAeJ,EAAEQ,UAAU,kBAAkB,CAACqC,IAAI,WAAW,OAAOnC,KAAKwQ,iBAAiB2B,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUI,QAAQ,WAAWF,KAAK0Q,cAAc0B,SAAQ,SAAU5S,GAAG,OAAOA,EAAEU,aAAaF,KAAKK,MAAMuQ,cAAcyB,YAAYrS,KAAKqR,SAAS7R,EAAEM,UAAUI,QAAQ4B,KAAK9B,OAAOP,OAAOC,eAAeJ,EAAEQ,UAAU,eAAe,CAACqC,IAAI,WAAW,IAAI3C,EAAE,OAAO,QAAQA,EAAEQ,KAAKsS,kBAAa,IAAS9S,OAAE,EAAOA,EAAEyN,aAAa/K,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUwM,UAAU,SAAS9M,GAAG,IAAIF,EAAEU,KAAKA,KAAKiG,QAAQzG,EAAEQ,KAAK0Q,cAAc0B,SAAQ,SAAU5S,GAAGA,EAAE8M,UAAUhN,EAAEW,UAAUX,EAAE2G,SAASzG,EAAE+S,MAAMjT,EAAEW,cAAcD,KAAK6R,mBAAmBvF,YAAYtM,KAAK8R,eAAexF,YAAYtM,KAAKwS,oBAAoBxS,KAAKqQ,OAAO5P,SAASnB,EAAEQ,UAAU2S,yBAAyB,WAAWzS,KAAKkR,oBAAoBlQ,OAAOmQ,mBAAmBnR,KAAKkR,kBAAkBlQ,OAAOmQ,iBAAiBnR,KAAKgJ,SAAShJ,KAAKC,UAAUM,KAAKP,KAAKC,UAAUK,QAAQhB,EAAEQ,UAAUkJ,SAAS,SAASxJ,EAAEF,GAAG,IAAI8B,EAAEpB,KAAKA,KAAKoR,oBAAoBpR,KAAKqQ,OAAO3P,OAAOV,KAAKC,UAAUM,KAAKP,KAAKC,UAAUK,MAAMN,KAAK0Q,cAAc0B,SAAQ,SAAU5S,GAAG,OAAOA,EAAEkB,OAAOU,EAAEnB,UAAUmB,EAAEP,eAAeb,KAAKqR,QAAQjF,MAAMpM,KAAKa,WAAWgJ,kBAAkB7J,KAAKqR,QAAQhF,OAAOrM,KAAKa,WAAWiJ,mBAAmB9J,KAAKqR,QAAQqB,MAAMtG,MAAMpM,KAAKa,WAAWmQ,YAAY,KAAKhR,KAAKqR,QAAQqB,MAAMrG,OAAOrM,KAAKa,WAAWoQ,aAAa,KAAKjR,KAAKK,MAAMuQ,cAAc8B,MAAMtG,MAAMpM,KAAKa,WAAWmQ,YAAY,KAAKhR,KAAKK,MAAMuQ,cAAc8B,MAAMrG,OAAOrM,KAAKa,WAAWoQ,aAAa,KAAKjR,KAAK6R,mBAAmB7I,WAAWhJ,KAAKqQ,OAAO/F,UAAU+D,cAAcrO,KAAK6R,mBAAmB3H,gBAAgBlK,KAAKqQ,OAAO/F,WAAWtK,KAAK8R,eAAerE,cAAczN,KAAKa,YAAYb,KAAK8R,eAAe9I,WAAWhJ,KAAKwS,oBAAoBxS,KAAKqQ,OAAO5P,SAASnB,EAAEQ,UAAUiS,kBAAkB,WAAW/R,KAAKgJ,SAAShJ,KAAKC,UAAUM,KAAKP,KAAKC,UAAUK,OAAOhB,EAAEQ,UAAU6S,OAAO,WAAW,IAAInT,EAAEQ,KAAKA,KAAK0Q,cAAc0B,SAAQ,SAAU9S,GAAG,OAAOA,EAAEqT,OAAOnT,EAAES,eAAeX,EAAEQ,UAAU8S,QAAQ,WAAW,IAAIpT,EAAEQ,KAAKA,KAAK0Q,cAAc0B,SAAQ,SAAU9S,GAAG,OAAOA,EAAEsT,QAAQpT,EAAES,eAAeX,EAAEQ,UAAU+S,mBAAmB,SAASrT,EAAEF,EAAE8B,GAAG,IAAIvB,EAAEG,KAAKA,KAAK0Q,cAAc0B,SAAQ,SAAU5Q,GAAG,OAAOA,EAAEqR,mBAAmBhT,EAAEI,UAAUT,EAAEF,EAAE8B,MAAMpB,KAAK8S,sBAAsBtT,EAAEF,EAAE8B,GAAGpB,KAAKwQ,iBAAiBuC,KAAK,CAAChO,MAAM,EAAEG,IAAIlF,KAAKC,UAAUK,KAAK,KAAKhB,EAAEQ,UAAUkT,aAAa,WAAW,IAAIxT,EAAEQ,KAAKA,KAAK0Q,cAAc0B,SAAQ,SAAU9S,GAAG,OAAOA,EAAE0T,aAAaxT,EAAES,eAAeX,EAAEQ,UAAUmT,iBAAiB,WAAW,IAAIzT,EAAEQ,KAAKA,KAAK0Q,cAAc0B,SAAQ,SAAU9S,GAAG,OAAOA,EAAE2T,iBAAiBzT,EAAES,cAAcD,KAAKoR,oBAAoBpR,KAAKwS,qBAAqBlT,EAAEQ,UAAU0S,kBAAkB,WAAW,GAAGxS,KAAKa,WAAWiQ,iBAAiB,GAAG9Q,KAAKa,WAAWkQ,kBAAkB,EAAE/Q,KAAKgS,aAAY,MAAO,CAAC,IAAIxS,EAAEqC,EAAEqR,iBAAiBlT,KAAKC,UAAUD,KAAKiG,QAAQjG,KAAKa,WAAWiQ,gBAAgB9Q,KAAKa,WAAWkQ,kBAAkB,KAAK,uBAAuBvR,GAAG,MAAM,IAAI0M,MAAM,2DAA2DlM,KAAKsS,WAAW9S,EAAEQ,KAAKsS,WAAWa,SAASnT,KAAK8R,eAAetE,SAASxN,KAAKsS,cAAchT,EAAEQ,UAAUiQ,eAAe,WAAW,IAAIvQ,EAAE,QAAQA,EAAEQ,KAAKsS,kBAAa,IAAS9S,GAAGA,EAAE4T,eAAepT,KAAKqQ,OAAO5P,QAAQT,KAAKqT,aAAa,EAAErT,KAAKC,UAAUK,KAAK,GAAGN,KAAKwQ,iBAAiBuC,KAAK,CAAChO,MAAM,EAAEG,IAAIlF,KAAKC,UAAUK,KAAK,KAAKhB,EAAEQ,UAAUW,MAAM,WAAW,IAAIjB,EAAEQ,KAAKA,KAAK0Q,cAAc0B,SAAQ,SAAU9S,GAAG,OAAOA,EAAEiT,MAAM/S,EAAES,eAAeX,EAAEQ,UAAUwT,wBAAwB,SAAS9T,GAAG,OAAO,GAAGF,EAAEQ,UAAUyT,0BAA0B,SAAS/T,GAAG,OAAM,GAAIF,EAAEQ,UAAU0T,WAAW,SAAShU,EAAEF,GAAG,IAAI8B,EAAEpB,KAAK,IAAIA,KAAKgS,YAAY,CAAC,KAAKV,SAASW,KAAKC,SAASlS,KAAKK,MAAMuQ,gBAAgB5Q,KAAKK,MAAMoT,iBAAiBrH,OAAOpM,KAAKK,MAAMoT,iBAAiBpH,QAAQ,OAAOrM,KAAKoR,oBAAoBpR,KAAKwS,oBAAoBxS,KAAKgS,aAAY,EAAGhS,KAAK0Q,cAAc0B,SAAQ,SAAUvS,GAAG,OAAOA,EAAE6T,cAActS,EAAEnB,UAAUT,EAAEF,MAAMU,KAAK8R,eAAe7I,eAAejJ,KAAKqQ,OAAO5P,QAAQT,KAAK8S,2BAAsB,OAAO,IAAS9S,KAAKqT,aAAa7T,EAAEF,GAAGU,KAAK6R,mBAAmBtF,SAASvM,KAAK8R,eAAevF,OAAOvM,KAAKqQ,OAAOrQ,KAAKqQ,OAAO/F,UAAU+D,eAAe/O,EAAEQ,UAAUuT,aAAa,SAAS7T,EAAEF,GAAG,IAAI,IAAI8B,EAAEpB,KAAKK,MAAMR,EAAEL,EAAEK,GAAGP,EAAEO,IAAI,CAAC,IAAI2B,EAAE3B,EAAEuB,EAAEkE,OAAOqO,MAAMpS,EAAEH,EAAEkE,OAAOsO,MAAMzR,IAAIX,GAAGxB,KAAKqQ,OAAO5D,YAAY5M,GAAG,EAAE,IAAI,IAAI+C,EAAE,EAAEA,EAAExB,EAAEb,KAAKqC,IAAI,CAACrB,EAAEsS,SAASjR,EAAE5C,KAAKsQ,WAAW,IAAI7O,EAAEzB,KAAKsQ,UAAUtE,WAAWnK,EAAE7B,KAAKsQ,UAAUwD,UAAUjP,GAAGhF,EAAEuB,EAAEb,KAAKqC,GAAGZ,EAAEgJ,+BAA+BnJ,IAAII,EAAEoH,iBAAiBrJ,KAAKqQ,OAAO5D,YAAY5M,GAAG+C,EAAE,GAAG5C,KAAKqQ,OAAOpF,MAAMpG,KAAKhD,GAAG7B,KAAKqQ,OAAOpF,MAAMpG,EAAE7C,EAAEsJ,0BAA0BtL,KAAKsQ,UAAUjF,IAAIrL,KAAKqQ,OAAOpF,MAAMpG,EAAE7C,EAAEkJ,0BAA0BlL,KAAKsQ,UAAUlF,KAAK3J,EAAEmD,OAAO,IAAI/C,GAAGG,EAAE6J,wBAAwB7L,KAAKqQ,OAAOpF,MAAMpG,GAAGhD,EAAE7B,KAAKqQ,OAAOpF,MAAMpG,EAAE7C,EAAEsJ,wBAAwBtL,KAAKsQ,UAAUjF,GAAGrL,KAAKqQ,OAAOpF,MAAMpG,EAAE7C,EAAEkJ,wBAAwBlL,KAAKsQ,UAAUlF,GAAGpL,KAAK8R,eAAe3I,WAAWvG,EAAE/C,EAAEgC,EAAE7B,KAAKsQ,UAAUjF,GAAGrL,KAAKsQ,UAAUlF,GAAG3J,KAAKzB,KAAK6R,mBAAmBvD,kBAAkBtO,KAAKqQ,QAAQrQ,KAAKqQ,OAAO/F,UAAU+D,cAAcrO,KAAK8R,eAAe5H,gBAAgBlK,KAAKqQ,SAAS/Q,EAAEQ,UAAUgT,sBAAsB,SAAStT,EAAEF,EAAE8B,QAAG,IAASA,IAAIA,GAAE,GAAI,IAAIvB,EAAEG,KAAKC,UAAU,IAAIT,IAAIF,GAAGE,EAAE,KAAKF,EAAE,IAAIE,EAAE,KAAKF,EAAE,GAAG,OAAOU,KAAKqQ,OAAOvB,sBAAsB9O,KAAK6R,mBAAmB3H,gBAAgBlK,KAAKqQ,OAAO/F,WAAW,IAAI9I,EAAEhC,EAAE,GAAGK,EAAEyF,OAAOC,OAAOwF,UAAUxJ,EAAEjC,EAAE,GAAGO,EAAEyF,OAAOC,OAAOwF,UAAUnI,EAAEvB,KAAKC,IAAIE,EAAE,GAAGC,EAAEJ,KAAK2N,IAAIzN,EAAE1B,EAAES,KAAK,GAAG,GAAGsC,GAAG/C,EAAES,MAAMmB,EAAE,EAAE,OAAOzB,KAAKqQ,OAAOvB,sBAAsB9O,KAAK6R,mBAAmB3H,gBAAgBlK,KAAKqQ,OAAO/F,WAAWtK,KAAKqQ,OAAO/F,UAAU+D,cAAa,EAAGrO,KAAKqQ,OAAO/F,UAAUC,iBAAiBnJ,EAAEpB,KAAKqQ,OAAO/F,UAAUO,iBAAiBrJ,EAAExB,KAAKqQ,OAAO/F,UAAUQ,eAAevJ,EAAEvB,KAAKqQ,OAAO/F,UAAUK,uBAAuB/H,EAAE5C,KAAKqQ,OAAO/F,UAAUI,qBAAqBjJ,EAAEzB,KAAKqQ,OAAO/F,UAAUE,SAAShL,EAAE,GAAGQ,KAAKqQ,OAAO/F,UAAUG,OAAOnL,EAAE,GAAGU,KAAK6R,mBAAmB3H,gBAAgBlK,KAAKqQ,OAAO/F,YAAYhL,EAAEQ,UAAUsR,kBAAkB,WAAWpR,KAAKK,MAAMoT,iBAAiBrH,OAAOpM,KAAKK,MAAMoT,iBAAiBpH,SAASrM,KAAKa,WAAWiQ,gBAAgBzP,KAAKO,MAAM5B,KAAKK,MAAMoT,iBAAiBrH,MAAMpM,KAAKkR,mBAAmBlR,KAAKa,WAAWkQ,iBAAiB1P,KAAK0S,KAAK/T,KAAKK,MAAMoT,iBAAiBpH,OAAOrM,KAAKkR,mBAAmBlR,KAAKa,WAAWuN,iBAAiB/M,KAAKO,MAAM5B,KAAKa,WAAWkQ,iBAAiB/Q,KAAKC,UAAU+T,UAAU,eAAehU,KAAKa,WAAW8I,cAAc,IAAI3J,KAAKC,UAAU+T,UAAU,cAAc,EAAE3S,KAAK4S,OAAOjU,KAAKa,WAAWuN,iBAAiBpO,KAAKa,WAAWkQ,kBAAkB,GAAG/Q,KAAKa,WAAWsN,gBAAgBnO,KAAKa,WAAWiQ,gBAAgBzP,KAAK4S,MAAMjU,KAAKC,UAAU+T,UAAU,kBAAkBhU,KAAKa,WAAW6I,eAAerI,KAAKO,MAAM5B,KAAKC,UAAU+T,UAAU,iBAAiB,GAAGhU,KAAKa,WAAWiJ,mBAAmB9J,KAAKC,UAAUK,KAAKN,KAAKa,WAAWuN,iBAAiBpO,KAAKa,WAAWgJ,kBAAkB7J,KAAKC,UAAUM,KAAKP,KAAKa,WAAWsN,gBAAgBnO,KAAKa,WAAWoQ,aAAa5P,KAAK4S,MAAMjU,KAAKa,WAAWiJ,mBAAmB9J,KAAKkR,mBAAmBlR,KAAKa,WAAWmQ,YAAY3P,KAAK4S,MAAMjU,KAAKa,WAAWgJ,kBAAkB7J,KAAKkR,mBAAmBlR,KAAKa,WAAWE,iBAAiBf,KAAKa,WAAWuN,iBAAiBpO,KAAKkR,kBAAkBlR,KAAKa,WAAWC,gBAAgBd,KAAKa,WAAWsN,gBAAgBnO,KAAKkR,oBAAoB5R,EAApyQ,CAAuyQ0G,EAAEkO,YAAY5U,EAAEmQ,cAAc9M,GAAGwR,IAAI,CAAC3U,EAAEF,KAAK,SAAS8B,EAAE5B,EAAEF,EAAE8B,GAAG,IAAII,EAAE3B,EAAEL,EAAE4U,aAAa9U,IAAI,GAAGE,EAAE6U,aAAa7S,EAAEJ,GAAG5B,EAAE8U,cAAc9S,GAAGhC,EAAE+U,mBAAmB/S,EAAEhC,EAAEgV,gBAAgB,OAAOhT,EAAE2B,QAAQsR,MAAMjV,EAAEkV,iBAAiBlT,IAAIhC,EAAEmV,aAAanT,GAAG,SAAS3B,EAAEL,GAAG,IAAIA,EAAE,MAAM,IAAI0M,MAAM,2BAA2B,OAAO1M,EAAEC,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEoH,aAAapH,EAAEmP,mBAAmBnP,EAAE8U,aAAa9U,EAAEqH,cAAcrH,EAAE8N,uBAAkB,EAAO9N,EAAE8N,kBAAkB,IAAItH,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,IAAIxG,EAAEqH,cAAc,SAASnH,EAAEF,EAAEkC,GAAG,IAAID,EAAE1B,EAAEL,EAAEmH,iBAAiB,GAAGnH,EAAEoV,aAAarT,EAAE1B,EAAEuB,EAAE5B,EAAEA,EAAEqV,cAAcvV,KAAKE,EAAEoV,aAAarT,EAAE1B,EAAEuB,EAAE5B,EAAEA,EAAEsV,gBAAgBtT,KAAKhC,EAAEuV,YAAYxT,GAAG/B,EAAEwV,oBAAoBzT,EAAE/B,EAAEyV,aAAa,OAAO1T,EAAE4B,QAAQsR,MAAMjV,EAAE0V,kBAAkB3T,IAAI/B,EAAE2V,cAAc5T,IAAIjC,EAAE8U,aAAahT,EAAE9B,EAAEmP,mBAAmB,SAASjP,EAAEF,GAAG,IAAI,IAAI8B,EAAEC,KAAK2N,IAAI,EAAExP,EAAEoF,OAAOtF,GAAGO,EAAE,IAAIiG,aAAa1E,GAAGI,EAAE,EAAEA,EAAEhC,EAAEoF,OAAOpD,IAAI3B,EAAE2B,GAAGhC,EAAEgC,GAAG,OAAO3B,GAAGP,EAAEoH,aAAa7G,GAAGuV,IAAI,CAAC5V,EAAEF,EAAE8B,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAE+V,wBAAwB/V,EAAE4T,sBAAiB,EAAO,IAAIrT,EAAEuB,EAAE,KAAKI,EAAEJ,EAAE,KAAKG,EAAE,GAAGjC,EAAE4T,iBAAiB,SAAS1T,EAAEF,EAAE8B,EAAEwB,GAAG,IAAI,IAAInB,EAAE5B,EAAEyV,eAAelU,EAAEwB,EAAEpD,EAAEF,GAAGuC,EAAE,EAAEA,EAAEN,EAAEqD,OAAO/C,IAAI,CAAC,IAAIgD,GAAG7C,EAAET,EAAEM,IAAI0T,QAAQ7Q,QAAQlF,GAAG,GAAGqF,GAAG,EAAE,CAAC,GAAGhF,EAAE2V,aAAaxT,EAAEyT,OAAOhU,GAAG,OAAOO,EAAE0T,MAAM,IAAI1T,EAAEuT,QAAQ3Q,QAAQ5C,EAAE0T,MAAMxV,UAAUqB,EAAEoU,OAAO9T,EAAE,IAAIG,EAAEuT,QAAQI,OAAO9Q,EAAE,GAAG,OAAO,IAAIhD,EAAE,EAAEA,EAAEN,EAAEqD,OAAO/C,IAAI,CAAC,IAAIG,EAAET,EAAEM,GAAG,GAAGhC,EAAE2V,aAAaxT,EAAEyT,OAAOhU,GAAG,OAAOO,EAAEuT,QAAQpQ,KAAK3F,GAAGwC,EAAE0T,MAAM,IAAI1P,EAAE,CAAC0P,MAAM,IAAIlU,EAAEoU,eAAetE,SAAS7P,GAAGgU,OAAOhU,EAAE8T,QAAQ,CAAC/V,IAAI,OAAO+B,EAAE4D,KAAKa,GAAGA,EAAE0P,OAAOpW,EAAE+V,wBAAwB,SAAS7V,GAAG,IAAI,IAAIF,EAAE,EAAEA,EAAEiC,EAAEqD,OAAOtF,IAAI,CAAC,IAAI8B,EAAEG,EAAEjC,GAAGiW,QAAQ7Q,QAAQlF,GAAG,IAAI,IAAI4B,EAAE,CAAC,IAAIG,EAAEjC,GAAGiW,QAAQ3Q,QAAQrD,EAAEjC,GAAGoW,MAAMxV,UAAUqB,EAAEoU,OAAOrW,EAAE,IAAIiC,EAAEjC,GAAGiW,QAAQI,OAAOvU,EAAE,GAAG,UAAUyU,IAAI,CAACrW,EAAEF,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEwW,WAAWxW,EAAEkW,aAAalW,EAAEgW,oBAAe,EAAO,IAAIlU,EAAE,CAAC2U,IAAI,GAAG1L,KAAK,GAAG/K,EAAEgW,eAAe,SAAS9V,EAAEF,EAAEO,EAAE2B,GAAG,IAAID,EAAE,CAACiN,WAAWhN,EAAEgN,WAAW5C,WAAWpK,EAAEoK,WAAWoK,OAAO5U,EAAE6U,aAAa7U,EAAE8U,qBAAqB9U,EAAEgJ,gBAAgBhJ,EAAE6K,KAAKzK,EAAEyK,KAAK9B,QAAQgM,cAAc3U,EAAE2U,eAAe,MAAM,CAAChF,iBAAiBnQ,OAAOmQ,iBAAiBL,gBAAgBtR,EAAEuR,iBAAiBzR,EAAE8W,WAAWvW,EAAEmU,UAAU,cAAcqC,SAASxW,EAAEmU,UAAU,YAAYsC,WAAWzW,EAAEmU,UAAU,cAAcuC,eAAe1W,EAAEmU,UAAU,kBAAkBwC,kBAAkB3W,EAAEmU,UAAU,qBAAqByC,2BAA2B5W,EAAEmU,UAAU,8BAA8B0C,qBAAqB7W,EAAEmU,UAAU,wBAAwBzE,OAAOhO,IAAIjC,EAAEkW,aAAa,SAAShW,EAAEF,GAAG,IAAI,IAAI8B,EAAE,EAAEA,EAAE5B,EAAE+P,OAAOtD,KAAKrH,OAAOxD,IAAI,GAAG5B,EAAE+P,OAAOtD,KAAK7K,GAAGiJ,OAAO/K,EAAEiQ,OAAOtD,KAAK7K,GAAGiJ,KAAK,OAAM,EAAG,OAAO7K,EAAE2R,mBAAmB7R,EAAE6R,kBAAkB3R,EAAE4W,aAAa9W,EAAE8W,YAAY5W,EAAE6W,WAAW/W,EAAE+W,UAAU7W,EAAE8W,aAAahX,EAAEgX,YAAY9W,EAAE+W,iBAAiBjX,EAAEiX,gBAAgB/W,EAAEgX,oBAAoBlX,EAAEkX,mBAAmBhX,EAAEsR,kBAAkBxR,EAAEwR,iBAAiBtR,EAAEuR,mBAAmBzR,EAAEyR,kBAAkBvR,EAAEiX,6BAA6BnX,EAAEmX,4BAA4BjX,EAAEkX,uBAAuBpX,EAAEoX,sBAAsBlX,EAAE+P,OAAOf,aAAalP,EAAEiQ,OAAOf,YAAYhP,EAAE+P,OAAO3D,aAAatM,EAAEiQ,OAAO3D,YAAYtM,EAAEwW,WAAW,SAAStW,GAAG,OAAO,WAAW,SAASA,IAAI,WAAW,SAASA,KAAKmX,IAAI,CAACnX,EAAEF,EAAE8B,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEsW,oBAAe,EAAO,IAAI/V,EAAEuB,EAAE,KAAKI,EAAEJ,EAAE,KAAKG,EAAEH,EAAE,KAAKwB,EAAExB,EAAE,KAAKK,EAAEL,EAAE,KAAKS,EAAE,KAAKgD,EAAE,KAAK7C,EAAEX,KAAKO,MAAM,OAAOoE,EAAE,CAAC+P,IAAI,mBAAmB1L,KAAK,GAAGpI,EAAE,CAACwH,OAAO,CAACzE,EAAE,EAAEC,EAAE,GAAG2R,gBAAgB,CAAC5R,EAAE,EAAEC,EAAE,GAAG8E,yBAAyB,CAAC/E,EAAE,EAAEC,EAAE,GAAG2E,KAAK,CAAC5E,EAAE,EAAEC,EAAE,GAAG+E,cAAc,CAAChF,EAAE,EAAEC,EAAE,IAAIX,EAAE,WAAW,SAAS9E,EAAEA,EAAEF,GAAGU,KAAK6W,QAAQvX,EAAEU,KAAK8W,YAAW,EAAG9W,KAAK+W,UAAU,GAAG/W,KAAKgX,kBAAkB,GAAGhX,KAAKiX,aAAa,EAAEjX,KAAKkX,aAAa,EAAElX,KAAKmX,kBAAkB,EAAEnX,KAAK6M,kBAAiB,EAAG7M,KAAKoX,iBAAiB,CAACC,IAAI,EAAEC,KAAK,EAAEC,OAAO,EAAEC,MAAM,GAAGxX,KAAKyX,mBAAmB,IAAI7U,EAAEuI,cAAcnL,KAAKiN,YAAYzN,EAAE+R,cAAc,UAAUvR,KAAKiN,YAAYb,MAAMvK,EAAE7B,KAAKiN,YAAYZ,OAAOxH,EAAE7E,KAAK0X,UAAUnW,EAAEmF,aAAa1G,KAAKiN,YAAY0E,WAAW,KAAK,CAACgG,OAAM,KAAM3X,KAAK4X,WAAWpY,EAAE+R,cAAc,UAAUvR,KAAK4X,WAAWxL,MAAM,EAAEpM,KAAK6W,QAAQ/F,gBAAgB,EAAE9Q,KAAK4X,WAAWvL,OAAOrM,KAAK6W,QAAQ9F,iBAAiB,EAAE/Q,KAAK6X,QAAQtW,EAAEmF,aAAa1G,KAAK4X,WAAWjG,WAAW,KAAK,CAACgG,MAAM3X,KAAK6W,QAAQL,qBAAqB,OAAOhX,EAAEM,UAAUI,QAAQ,WAAWF,KAAKiN,YAAYrM,eAAeZ,KAAKiN,YAAYrM,cAAcyR,YAAYrS,KAAKiN,cAAczN,EAAEM,UAAUqT,OAAO,WAAWnT,KAAK8W,aAAa9W,KAAK8X,YAAY9X,KAAK8W,YAAW,IAAKtX,EAAEM,UAAUgY,UAAU,WAAW,IAAI,IAAItY,EAAEF,EAAE8B,EAAE,GAAGA,EAAE,IAAIA,IAAI,CAAC,IAAIvB,EAAEG,KAAK+X,aAAa3W,EAAEI,EAAEwW,cAAcxW,EAAEwW,eAAehY,KAAK+W,UAAU3V,KAAK5B,EAAE,IAAIgC,EAAEwW,iBAAiB1Y,EAAE,IAAIkC,EAAEwW,eAAenY,EAAEP,GAAGE,KAAKA,EAAEM,UAAUmJ,WAAW,WAAW,OAAOjJ,KAAKiX,aAAajV,IAAIhC,KAAKoT,eAAepT,KAAKmT,UAAS,IAAK3T,EAAEM,UAAUsT,aAAa,WAAW,IAAIpT,KAAKkX,cAAc,IAAIlX,KAAKiX,eAAejX,KAAK0X,UAAUO,UAAU,EAAE,EAAEpW,EAAEgD,GAAG7E,KAAK+W,UAAU,GAAG/W,KAAKgX,kBAAkB,GAAGhX,KAAKmX,kBAAkB,EAAEnX,KAAKkX,aAAa,EAAElX,KAAKiX,aAAa,EAAEjX,KAAK8W,YAAW,IAAKtX,EAAEM,UAAUyJ,+BAA+B,SAAS/J,EAAEF,EAAE8B,GAAG,IAAIvB,EAAE2B,EAAExB,KAAKgX,kBAAkBxX,GAAGgC,IAAIA,EAAE,GAAGxB,KAAKgX,kBAAkBxX,GAAGgC,GAAG,IAAID,EAAEC,EAAElC,GAAG,OAAOiC,IAAI1B,EAAE0B,EAAEH,IAAIvB,IAAIA,EAAEG,KAAK+X,aAAavY,EAAEF,EAAE8B,GAAGI,EAAElC,KAAKkC,EAAElC,GAAG,IAAIkC,EAAElC,GAAG8B,GAAGvB,GAAGA,GAAGL,EAAEM,UAAU0J,mBAAmB,SAAShK,EAAEF,EAAE8B,GAAG,IAAIvB,EAAE2B,EAAExB,KAAK+W,UAAUvX,GAAGgC,IAAIA,EAAE,GAAGxB,KAAK+W,UAAUvX,GAAGgC,GAAG,IAAID,EAAEC,EAAElC,GAAG,OAAOiC,IAAI1B,EAAE0B,EAAEH,IAAIvB,IAAIA,EAAEG,KAAK+X,aAAavY,EAAEF,EAAE8B,GAAGI,EAAElC,KAAKkC,EAAElC,GAAG,IAAIkC,EAAElC,GAAG8B,GAAGvB,GAAGA,GAAGL,EAAEM,UAAU0L,uBAAuB,SAAShM,GAAG,GAAGA,GAAGQ,KAAK6W,QAAQtH,OAAOtD,KAAKrH,OAAO,MAAM,IAAIsH,MAAM,0BAA0B1M,GAAG,OAAOQ,KAAK6W,QAAQtH,OAAOtD,KAAKzM,IAAIA,EAAEM,UAAUoY,oBAAoB,SAAS1Y,EAAEF,EAAE8B,GAAG,GAAGpB,KAAK6W,QAAQL,kBAAkB,OAAOxQ,EAAE,OAAOxG,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOQ,KAAKwL,uBAAuBlM,GAAG,KAAK,SAAS,IAAIO,EAAE+C,EAAEuI,cAAcQ,WAAWrM,GAAG,MAAM,CAAC+K,KAAK/K,GAAG,EAAEyW,IAAI,IAAIvR,EAAE3E,EAAE,IAAI2E,EAAE3E,EAAE,IAAI2E,EAAE3E,EAAE,KAAK,KAAK,EAAE,QAAQ,OAAOuB,EAAEpB,KAAK6W,QAAQtH,OAAOf,WAAWxO,KAAK6W,QAAQtH,OAAO3D,aAAapM,EAAEM,UAAUqY,kBAAkB,SAAS3Y,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAED,EAAEM,EAAEgD,GAAG,IAAI7C,EAAEhC,KAAKoY,uBAAuB5Y,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAED,EAAEM,EAAEgD,GAAG,GAAG7C,EAAE,OAAOA,EAAE,OAAOR,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOxB,KAAK6W,QAAQJ,4BAA4B5R,GAAGtD,EAAE,IAAIA,GAAG,GAAGvB,KAAKwL,uBAAuBjK,GAAGwU,IAAI,KAAK,SAAS,IAAI/P,EAAEpD,EAAEuI,cAAcQ,WAAWpK,GAAG,OAAOE,EAAE4W,SAASC,MAAMtS,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,KAAK,EAAE,QAAQ,GAAGnE,EAAE,CAAC,IAAII,EAAEjC,KAAK6W,QAAQtH,OAAO3D,WAAWmK,IAAI,OAAO,IAAI9T,EAAE2C,OAAO3C,EAAEsW,OAAO,EAAE,GAAGtW,EAAE,OAAOjC,KAAK6W,QAAQtH,OAAOf,WAAWuH,MAAMvW,EAAEM,UAAU0Y,uBAAuB,SAAShZ,EAAEF,EAAE8B,GAAG,OAAO5B,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOQ,KAAKwL,uBAAuBlM,GAAG+K,KAAK,KAAK,SAAS,OAAO/K,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAO8B,EAAEpB,KAAK6W,QAAQtH,OAAOf,WAAWnE,KAAKrK,KAAK6W,QAAQtH,OAAO3D,WAAWvB,OAAO7K,EAAEM,UAAU2Y,uBAAuB,SAASjZ,EAAEF,EAAE8B,EAAEvB,GAAG,OAAOL,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOQ,KAAK6W,QAAQJ,4BAA4B5W,GAAGP,EAAE,IAAIA,GAAG,GAAGU,KAAKwL,uBAAuBlM,GAAG+K,KAAK,KAAK,SAAS,OAAO/K,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAO8B,EAAEpB,KAAK6W,QAAQtH,OAAO3D,WAAWvB,KAAKrK,KAAK6W,QAAQtH,OAAOf,WAAWnE,OAAO7K,EAAEM,UAAUsY,uBAAuB,SAAS5Y,EAAEF,EAAE8B,EAAEvB,EAAE2B,EAAED,EAAEqB,EAAEf,GAAG,GAAG,IAAI7B,KAAK6W,QAAQH,qBAAqB,CAAC,IAAI7R,EAAE7E,KAAK6W,QAAQtH,OAAO4G,cAAcuC,OAAOlZ,EAAEK,GAAG,QAAG,IAASgF,EAAE,OAAOA,QAAG,EAAO,IAAI7C,EAAEhC,KAAKwY,uBAAuBlZ,EAAE8B,EAAEwB,GAAGoD,EAAEhG,KAAKyY,uBAAuBjX,EAAED,EAAEqB,EAAEf,GAAGI,EAAER,EAAE4I,KAAKsO,oBAAoB3W,EAAEgE,EAAEhG,KAAK6W,QAAQH,sBAAsB,GAAGzU,EAAE,CAAC,IAAIqC,EAAE7C,EAAE4W,SAASC,MAAMrW,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,KAAK,OAAOjC,KAAK6W,QAAQtH,OAAO4G,cAAcyC,OAAOpZ,EAAEK,EAAEyE,GAAGA,EAAEtE,KAAK6W,QAAQtH,OAAO4G,cAAcyC,OAAOpZ,EAAEK,EAAE,QAAQL,EAAEM,UAAUiY,aAAa,SAASvY,EAAEF,EAAE8B,GAAG,IAAII,EAAE,iBAAiBhC,EAAEqZ,OAAOC,aAAatZ,GAAGA,EAAE,GAAGQ,KAAK6M,kBAAiB,EAAG7M,KAAK6X,QAAQkB,OAAO/Y,KAAKyX,mBAAmBrM,GAAGhK,EAAEpB,KAAKyX,mBAAmBpM,GAAG/L,EAAEU,KAAKyX,mBAAmBuB,cAAc,OAAO/W,EAAE,IAAIV,IAAIvB,KAAKyX,mBAAmBwB,SAASrW,IAAI5C,KAAKyX,mBAAmByB,YAAYzX,IAAIzB,KAAKyX,mBAAmB0B,QAAQnX,IAAIhC,KAAKyX,mBAAmB2B,WAAWpT,EAAEhG,KAAKyX,mBAAmB4B,aAAa/U,EAAEtE,KAAKyX,mBAAmB6B,iBAAiB9U,EAAExE,KAAKyX,mBAAmBhM,aAAa9I,EAAE3C,KAAKyX,mBAAmBlM,iBAAiB,GAAG3I,EAAE,CAAC,IAAI8I,EAAE1F,EAAEA,EAAExB,EAAEA,EAAEkH,EAAE,IAAI5G,EAAER,EAAEA,EAAE3B,EAAEA,EAAEmC,EAAE,IAAIgH,EAAE9L,KAAKkY,oBAAoBvV,EAAE6B,EAAE5B,GAAG5C,KAAK6X,QAAQ0B,yBAAyB,OAAOvZ,KAAK6X,QAAQ2B,UAAU1N,EAAEiK,IAAI/V,KAAK6X,QAAQ4B,SAAS,EAAE,EAAEzZ,KAAK4X,WAAWxL,MAAMpM,KAAK4X,WAAWvL,QAAQrM,KAAK6X,QAAQ0B,yBAAyB,cAAc,IAAIxX,EAAER,EAAEvB,KAAK6W,QAAQN,eAAevW,KAAK6W,QAAQP,WAAWrR,EAAEjD,EAAE,SAAS,GAAGhC,KAAK6X,QAAQ6B,KAAKzU,EAAE,IAAIlD,EAAE,IAAI/B,KAAK6W,QAAQR,SAASrW,KAAK6W,QAAQ1F,iBAAiB,MAAMnR,KAAK6W,QAAQT,WAAWpW,KAAK6X,QAAQ8B,aAAa,SAAS3Z,KAAK6X,QAAQ2B,UAAUxZ,KAAKmY,kBAAkB7Y,EAAEqD,EAAE6B,EAAEpD,EAAEkD,EAAE0B,EAAEpD,EAAErB,GAAGE,IAAIzB,KAAK6X,QAAQ+B,YAAY/Z,EAAEga,aAAa7Z,KAAK6X,QAAQiC,SAAStY,EAAE,EAAE,EAAExB,KAAK6W,QAAQ9F,iBAAiB,GAAG/Q,KAAK6X,QAAQkC,UAAU,IAAIC,EAAEha,KAAK6X,QAAQoC,aAAa,EAAE,EAAEja,KAAK4X,WAAWxL,MAAMpM,KAAK4X,WAAWvL,QAAQ,GAAG,SAAS7M,EAAEF,GAAG,IAAI,IAAI8B,GAAE,EAAGvB,EAAEP,EAAE+K,OAAO,GAAG7I,EAAElC,EAAE+K,OAAO,GAAG,IAAI9I,EAAEjC,EAAE+K,OAAO,EAAE,IAAIzH,EAAE,EAAEA,EAAEpD,EAAE0a,KAAKtV,OAAOhC,GAAG,EAAEpD,EAAE0a,KAAKtX,KAAK/C,GAAGL,EAAE0a,KAAKtX,EAAE,KAAKpB,GAAGhC,EAAE0a,KAAKtX,EAAE,KAAKrB,EAAE/B,EAAE0a,KAAKtX,EAAE,GAAG,EAAExB,GAAE,EAAG,OAAOA,EAA/K,CAAkL4Y,EAAElO,GAAG,OAAO7J,EAAE,IAAIkY,EAAEna,KAAKoa,sBAAsBJ,EAAEha,KAAKoX,kBAAkBiD,EAAEra,KAAKsa,eAAeN,EAAEha,KAAKoX,kBAAkB,OAAOpX,KAAKkX,aAAalX,KAAK6W,QAAQ/F,gBAAgBjP,IAAI7B,KAAKkX,aAAa,EAAElX,KAAKiX,cAAcjX,KAAKmX,kBAAkBnX,KAAKmX,kBAAkB,GAAGgD,EAAEvD,gBAAgB5R,EAAEhF,KAAKkX,aAAaiD,EAAEvD,gBAAgB3R,EAAEjF,KAAKiX,aAAakD,EAAEpQ,yBAAyB/E,EAAEhF,KAAKkX,aAAarV,EAAEsY,EAAEpQ,yBAAyB9E,EAAEjF,KAAKiX,aAAapS,EAAE7E,KAAKmX,kBAAkB9V,KAAKC,IAAItB,KAAKmX,kBAAkBgD,EAAEvQ,KAAK3E,GAAGjF,KAAKkX,cAAciD,EAAEvQ,KAAK5E,EAAEhF,KAAK0X,UAAU6C,aAAaF,EAAEF,EAAEvD,gBAAgB5R,EAAEmV,EAAEvD,gBAAgB3R,GAAGkV,GAAG3a,EAAEM,UAAUsa,sBAAsB,SAAS5a,EAAEF,GAAGA,EAAE+X,IAAI,EAAE,IAAI,IAAIjW,GAAE,EAAGvB,EAAE,EAAEA,EAAEG,KAAK4X,WAAWvL,OAAOxM,IAAI,CAAC,IAAI,IAAI2B,EAAE,EAAEA,EAAExB,KAAK4X,WAAWxL,MAAM5K,IAAI,CAAC,IAAID,EAAE1B,EAAEG,KAAK4X,WAAWxL,MAAM,EAAE,EAAE5K,EAAE,EAAE,GAAG,IAAIhC,EAAE0a,KAAK3Y,GAAG,CAACjC,EAAE+X,IAAIxX,EAAEuB,GAAE,EAAG,OAAO,GAAGA,EAAE,MAAM,IAAI9B,EAAEgY,KAAK,EAAElW,GAAE,EAAGI,EAAE,EAAEA,EAAExB,KAAK4X,WAAWxL,MAAM5K,IAAI,CAAC,IAAI3B,EAAE,EAAEA,EAAEG,KAAK4X,WAAWvL,OAAOxM,IAAI,GAAG0B,EAAE1B,EAAEG,KAAK4X,WAAWxL,MAAM,EAAE,EAAE5K,EAAE,EAAE,IAAIhC,EAAE0a,KAAK3Y,GAAG,CAACjC,EAAEgY,KAAK9V,EAAEJ,GAAE,EAAG,MAAM,GAAGA,EAAE,MAAM,IAAI9B,EAAEkY,MAAMxX,KAAK4X,WAAWxL,MAAMhL,GAAE,EAAGI,EAAExB,KAAK4X,WAAWxL,MAAM,EAAE5K,GAAG,EAAEA,IAAI,CAAC,IAAI3B,EAAE,EAAEA,EAAEG,KAAK4X,WAAWvL,OAAOxM,IAAI,GAAG0B,EAAE1B,EAAEG,KAAK4X,WAAWxL,MAAM,EAAE,EAAE5K,EAAE,EAAE,IAAIhC,EAAE0a,KAAK3Y,GAAG,CAACjC,EAAEkY,MAAMhW,EAAEJ,GAAE,EAAG,MAAM,GAAGA,EAAE,MAAM,IAAI9B,EAAEiY,OAAOvX,KAAK4X,WAAWvL,OAAOjL,GAAE,EAAGvB,EAAEG,KAAK4X,WAAWvL,OAAO,EAAExM,GAAG,EAAEA,IAAI,CAAC,IAAI2B,EAAE,EAAEA,EAAExB,KAAK4X,WAAWxL,MAAM5K,IAAI,GAAGD,EAAE1B,EAAEG,KAAK4X,WAAWxL,MAAM,EAAE,EAAE5K,EAAE,EAAE,IAAIhC,EAAE0a,KAAK3Y,GAAG,CAACjC,EAAEiY,OAAO1X,EAAEuB,GAAE,EAAG,MAAM,GAAGA,EAAE,MAAM,MAAM,CAACwV,gBAAgB,CAAC5R,EAAE,EAAEC,EAAE,GAAG8E,yBAAyB,CAAC/E,EAAE,EAAEC,EAAE,GAAG2E,KAAK,CAAC5E,EAAE1F,EAAEkY,MAAMlY,EAAEgY,KAAK,EAAErS,EAAE3F,EAAEiY,OAAOjY,EAAE+X,IAAI,GAAGrN,cAAc,CAAChF,GAAG1F,EAAEkY,MAAMlY,EAAEgY,KAAK,GAAGzV,EAAEoD,GAAG3F,EAAEiY,OAAOjY,EAAE+X,IAAI,GAAGxS,GAAG4E,OAAO,CAACzE,EAAE,EAAE1F,EAAEgY,KAAKrS,EAAE,EAAE3F,EAAE+X,OAAO7X,EAAEM,UAAUwa,eAAe,SAAS9a,EAAEF,GAAG,IAAI,IAAI8B,EAAE9B,EAAEkY,MAAMlY,EAAEgY,KAAK,EAAEzX,EAAEP,EAAEiY,OAAOjY,EAAE+X,IAAI,EAAE7V,EAAE,IAAIgZ,kBAAkBpZ,EAAEvB,EAAE,GAAG0B,EAAEjC,EAAE+X,IAAI9V,GAAGjC,EAAEiY,OAAOhW,IAAI,IAAI,IAAIqB,EAAEtD,EAAEgY,KAAK1U,GAAGtD,EAAEkY,MAAM5U,IAAI,CAAC,IAAInB,EAAEF,EAAEvB,KAAK4X,WAAWxL,MAAM,EAAE,EAAExJ,EAAEf,GAAGN,EAAEjC,EAAE+X,KAAKjW,EAAE,EAAE,GAAGwB,EAAEtD,EAAEgY,MAAM9V,EAAEK,GAAGrC,EAAE0a,KAAKzY,GAAGD,EAAEK,EAAE,GAAGrC,EAAE0a,KAAKzY,EAAE,GAAGD,EAAEK,EAAE,GAAGrC,EAAE0a,KAAKzY,EAAE,GAAGD,EAAEK,EAAE,GAAGrC,EAAE0a,KAAKzY,EAAE,GAAG,OAAO,IAAIgZ,UAAUjZ,EAAEJ,EAAEvB,IAAIL,EAAtxO,GAA2xO,SAASgF,EAAEhF,GAAG,IAAIF,EAAEE,EAAEkb,SAAS,IAAI,OAAOpb,EAAEsF,OAAO,EAAE,IAAItF,EAAEA,EAAEA,EAAEsW,eAAetR,GAAGqW,IAAI,CAACnb,EAAEF,EAAE8B,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEsb,qBAAgB,EAAO,IAAI/a,EAAEuB,EAAE,KAAKI,EAAEJ,EAAE,KAAKG,EAAE,WAAW,SAAS/B,EAAEA,EAAEF,EAAE8B,EAAEvB,EAAE2B,GAAGxB,KAAK6a,WAAWrb,EAAEQ,KAAK8a,OAAOjb,EAAEG,KAAKiG,QAAQzE,EAAExB,KAAK+a,iBAAiB,EAAE/a,KAAKgb,kBAAkB,EAAEhb,KAAKib,iBAAiB,EAAEjb,KAAKkb,kBAAkB,EAAElb,KAAKmb,gBAAgB,EAAEnb,KAAKob,eAAe,EAAEpb,KAAKqR,QAAQC,SAASC,cAAc,UAAUvR,KAAKqR,QAAQgK,UAAUC,IAAI,SAAShc,EAAE,UAAUU,KAAKqR,QAAQqB,MAAM6I,OAAOna,EAAEsZ,WAAW1a,KAAKwb,cAAcxb,KAAK6a,WAAWjJ,YAAY5R,KAAKqR,SAAS,OAAO7R,EAAEM,UAAUI,QAAQ,WAAWF,KAAK6a,WAAWxI,YAAYrS,KAAKqR,SAASrR,KAAKsS,YAAYtS,KAAKsS,WAAWpS,WAAWV,EAAEM,UAAU0b,YAAY,WAAWxb,KAAKyb,KAAKja,EAAEkF,aAAa1G,KAAKqR,QAAQM,WAAW,KAAK,CAACgG,MAAM3X,KAAK8a,UAAU9a,KAAK8a,QAAQ9a,KAAK0b,aAAalc,EAAEM,UAAUmT,iBAAiB,SAASzT,KAAKA,EAAEM,UAAU6S,OAAO,SAASnT,KAAKA,EAAEM,UAAU8S,QAAQ,SAASpT,KAAKA,EAAEM,UAAUkT,aAAa,SAASxT,KAAKA,EAAEM,UAAU4T,cAAc,SAASlU,EAAEF,EAAE8B,KAAK5B,EAAEM,UAAU+S,mBAAmB,SAASrT,EAAEF,EAAE8B,EAAEvB,QAAG,IAASA,IAAIA,GAAE,IAAKL,EAAEM,UAAUwM,UAAU,SAAS9M,EAAEF,GAAGU,KAAKwS,kBAAkBhT,EAAEF,IAAIE,EAAEM,UAAU6b,iBAAiB,SAASnc,EAAEF,GAAG,GAAGA,IAAIU,KAAK8a,OAAO,CAAC,IAAI1Z,EAAEpB,KAAKqR,QAAQrR,KAAK8a,OAAOxb,EAAEU,KAAKqR,QAAQrR,KAAKqR,QAAQuK,YAAY5b,KAAKwb,cAAcxb,KAAK6a,WAAWgB,aAAa7b,KAAKqR,QAAQjQ,GAAGpB,KAAKwS,kBAAkBhT,EAAEQ,KAAKiG,SAASjG,KAAK0T,cAAclU,EAAE,EAAEA,EAAEc,KAAK,KAAKd,EAAEM,UAAU0S,kBAAkB,SAAShT,EAAEF,GAAGU,KAAK+a,kBAAkB,GAAG/a,KAAKgb,mBAAmB,IAAIhb,KAAKsS,WAAWzS,EAAEqT,iBAAiB1T,EAAEF,EAAEU,KAAK+a,iBAAiB/a,KAAKgb,mBAAmBhb,KAAKsS,WAAWa,WAAW3T,EAAEM,UAAUY,OAAO,SAASlB,EAAEF,GAAGU,KAAKib,iBAAiB3b,EAAE6O,gBAAgBnO,KAAKkb,kBAAkB5b,EAAE8O,iBAAiBpO,KAAK+a,iBAAiBzb,EAAEwR,gBAAgB9Q,KAAKgb,kBAAkB1b,EAAEyR,iBAAiB/Q,KAAKmb,gBAAgB7b,EAAEoK,eAAe1J,KAAKob,eAAe9b,EAAEqK,cAAc3J,KAAKqR,QAAQjF,MAAM9M,EAAEuK,kBAAkB7J,KAAKqR,QAAQhF,OAAO/M,EAAEwK,mBAAmB9J,KAAKqR,QAAQqB,MAAMtG,MAAM9M,EAAE0R,YAAY,KAAKhR,KAAKqR,QAAQqB,MAAMrG,OAAO/M,EAAE2R,aAAa,KAAKjR,KAAK8a,QAAQ9a,KAAK0b,YAAY1b,KAAKwS,kBAAkBhT,EAAEQ,KAAKiG,UAAUzG,EAAEM,UAAUgc,WAAW,SAAStc,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAKyb,KAAKhC,SAASja,EAAEQ,KAAKib,iBAAiB3b,EAAEU,KAAKkb,kBAAkB9Z,EAAEpB,KAAKib,iBAAiBpb,EAAEG,KAAKkb,oBAAoB1b,EAAEM,UAAUic,uBAAuB,SAASvc,EAAEF,EAAE8B,QAAG,IAASA,IAAIA,EAAE,GAAGpB,KAAKyb,KAAKhC,SAASja,EAAEQ,KAAKib,kBAAkB3b,EAAE,GAAGU,KAAKkb,kBAAkBla,OAAOmQ,iBAAiB,EAAE/P,EAAEpB,KAAKib,iBAAiBja,OAAOmQ,mBAAmB3R,EAAEM,UAAUkc,oBAAoB,SAASxc,EAAEF,EAAE8B,GAAGpB,KAAKyb,KAAKhC,SAASja,EAAEQ,KAAKib,iBAAiB3b,EAAEU,KAAKkb,kBAAkBla,OAAOmQ,iBAAiB/P,EAAEpB,KAAKkb,oBAAoB1b,EAAEM,UAAUmc,kBAAkB,SAASzc,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAKyb,KAAKS,UAAUlb,OAAOmQ,iBAAiBnR,KAAKyb,KAAKU,WAAW3c,EAAEQ,KAAKib,iBAAiBja,OAAOmQ,iBAAiB,EAAE7R,EAAEU,KAAKkb,kBAAkBla,OAAOmQ,iBAAiB,EAAE/P,EAAEpB,KAAKib,iBAAiBja,OAAOmQ,iBAAiBtR,EAAEG,KAAKkb,kBAAkBla,OAAOmQ,mBAAmB3R,EAAEM,UAAU4b,UAAU,WAAW1b,KAAK8a,OAAO9a,KAAKyb,KAAKxD,UAAU,EAAE,EAAEjY,KAAKqR,QAAQjF,MAAMpM,KAAKqR,QAAQhF,SAASrM,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ2F,WAAWmK,IAAI/V,KAAKyb,KAAKhC,SAAS,EAAE,EAAEzZ,KAAKqR,QAAQjF,MAAMpM,KAAKqR,QAAQhF,UAAU7M,EAAEM,UAAUsc,YAAY,SAAS5c,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAK8a,OAAO9a,KAAKyb,KAAKxD,UAAUzY,EAAEQ,KAAKib,iBAAiB3b,EAAEU,KAAKkb,kBAAkB9Z,EAAEpB,KAAKib,iBAAiBpb,EAAEG,KAAKkb,oBAAoBlb,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ2F,WAAWmK,IAAI/V,KAAKyb,KAAKhC,SAASja,EAAEQ,KAAKib,iBAAiB3b,EAAEU,KAAKkb,kBAAkB9Z,EAAEpB,KAAKib,iBAAiBpb,EAAEG,KAAKkb,qBAAqB1b,EAAEM,UAAUuc,mBAAmB,SAAS7c,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAKyb,KAAK/B,KAAK1Z,KAAKsc,SAAS9c,GAAE,GAAG,GAAIQ,KAAKyb,KAAK9B,aAAa,SAAS3Z,KAAKuc,SAAS/c,EAAEK,GAAGG,KAAKyb,KAAK3B,SAASxa,EAAE0M,WAAW5K,EAAEpB,KAAKib,iBAAiBjb,KAAKmb,gBAAgBtb,EAAEG,KAAKkb,kBAAkBlb,KAAKob,eAAepb,KAAKgb,kBAAkB,IAAIxb,EAAEM,UAAUyc,SAAS,SAAS/c,EAAEF,GAAGU,KAAKyb,KAAKe,YAAYxc,KAAKyb,KAAKgB,KAAK,EAAEnd,EAAEU,KAAKkb,kBAAkB1b,EAAEe,KAAKP,KAAKib,iBAAiBjb,KAAKkb,mBAAmBlb,KAAKyb,KAAKiB,QAAQld,EAAEM,UAAUwc,SAAS,SAAS9c,EAAEF,EAAE8B,GAAG,OAAOA,EAAE,SAAS,IAAI,KAAK9B,EAAEE,EAAEwU,UAAU,kBAAkBxU,EAAEwU,UAAU,eAAe,IAAIxU,EAAEwU,UAAU,YAAYhT,OAAOmQ,iBAAiB,MAAM3R,EAAEwU,UAAU,eAAexU,EAA1/H,GAA+/HF,EAAEsb,gBAAgBrZ,GAAGob,IAAI,SAASnd,EAAEF,EAAE8B,GAAG,IAAIvB,EAAE2B,EAAExB,MAAMA,KAAKiQ,YAAYpQ,EAAE,SAASL,EAAEF,GAAG,OAAOO,EAAEJ,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS5Q,EAAEF,GAAGE,EAAE2Q,UAAU7Q,IAAI,SAASE,EAAEF,GAAG,IAAI,IAAI8B,KAAK9B,EAAEG,OAAOK,UAAU4C,eAAeZ,KAAKxC,EAAE8B,KAAK5B,EAAE4B,GAAG9B,EAAE8B,MAAM5B,EAAEF,IAAI,SAASE,EAAEF,GAAG,SAAS8B,IAAIpB,KAAKiP,YAAYzP,EAAEK,EAAEL,EAAEF,GAAGE,EAAEM,UAAU,OAAOR,EAAEG,OAAO8C,OAAOjD,IAAI8B,EAAEtB,UAAUR,EAAEQ,UAAU,IAAIsB,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEuR,uBAAkB,EAAO,IAAItP,EAAEH,EAAE,KAAKwB,EAAExB,EAAE,KAAKK,EAAE,IAAII,EAAE,SAASrC,GAAG,SAASF,EAAEA,EAAE8B,EAAEvB,EAAE2B,GAAG,IAAID,EAAE/B,EAAEsC,KAAK9B,KAAKV,EAAE,SAAS8B,GAAE,EAAGvB,IAAIG,KAAK,OAAOuB,EAAEqb,2BAA2Bpb,EAAED,EAAEsb,MAAM,IAAIja,EAAE2N,SAAShP,EAAEub,OAAO,CAAC9X,EAAE,EAAEC,EAAE,EAAE8X,WAAU,EAAGrK,MAAM,GAAGtG,MAAM,GAAG7K,EAAEyb,iBAAiB,CAACC,IAAI1b,EAAE2b,iBAAiB1a,KAAKjB,GAAG4b,MAAM5b,EAAE6b,mBAAmB5a,KAAKjB,GAAG8b,UAAU9b,EAAE+b,uBAAuB9a,KAAKjB,IAAIA,EAAE,OAAOC,EAAElC,EAAEE,GAAGF,EAAEQ,UAAUY,OAAO,SAASpB,EAAE8B,GAAG5B,EAAEM,UAAUY,OAAOoB,KAAK9B,KAAKV,EAAE8B,GAAGpB,KAAK8c,OAAO,CAAC9X,EAAE,EAAEC,EAAE,EAAE8X,WAAU,EAAGrK,MAAM,GAAGtG,MAAM,IAAI9M,EAAEQ,UAAUyS,MAAM,SAAS/S,GAAGQ,KAAKud,eAAevd,KAAKwd,2BAA2Bxd,KAAKwd,yBAAyBtd,UAAUF,KAAKiT,iBAAiBzT,KAAKF,EAAEQ,UAAU6S,OAAO,SAASnT,GAAGQ,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBC,QAAQzd,KAAK4c,2BAA2B7J,KAAK,CAAChO,MAAMvF,EAAE8F,OAAOC,OAAOmY,QAAQxY,IAAI1F,EAAE8F,OAAOC,OAAOmY,WAAWpe,EAAEQ,UAAU8S,QAAQ,SAASpT,GAAGQ,KAAKwd,yBAAyBxd,KAAKwd,yBAAyBG,OAAOne,GAAGQ,KAAK4c,2BAA2B7J,KAAK,CAAChO,MAAMvF,EAAE8F,OAAOC,OAAOmY,QAAQxY,IAAI1F,EAAE8F,OAAOC,OAAOmY,WAAWpe,EAAEQ,UAAUmT,iBAAiB,SAASzT,GAAG,IAAIF,EAAE8B,EAAEpB,KAAKR,EAAEwU,UAAU,eAAehU,KAAKwd,2BAA2Bxd,KAAKwd,yBAAyB,IAAI3Y,EAAErF,GAAE,WAAY4B,EAAEwc,QAAQpe,GAAE,QAAS,QAAQF,EAAEU,KAAKwd,gCAA2B,IAASle,GAAGA,EAAEY,UAAUF,KAAKwd,8BAAyB,GAAQxd,KAAK4c,2BAA2B7J,KAAK,CAAChO,MAAMvF,EAAE8F,OAAOC,OAAOmY,QAAQxY,IAAI1F,EAAE8F,OAAOC,OAAOmY,WAAWpe,EAAEQ,UAAUkT,aAAa,SAASxT,GAAGQ,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBK,sBAAsBre,IAAIF,EAAEQ,UAAU4T,cAAc,SAASlU,EAAEF,EAAE8B,IAAIpB,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBM,SAAS9d,KAAK4d,QAAQpe,GAAE,GAAIQ,KAAKwd,yBAAyBK,sBAAsBre,IAAIF,EAAEQ,UAAU8d,QAAQ,SAASpe,EAAEF,GAAG,GAAGE,EAAEa,MAAM0d,aAAaC,sBAAsBxe,EAAEa,MAAM0d,aAAaE,eAAe,CAAC,IAAI7c,EAAE5B,EAAE8F,OAAOC,OAAO2Y,MAAM1e,EAAE8F,OAAOC,OAAOmY,QAAQ7d,EAAEuB,EAAE5B,EAAE8F,OAAOC,OAAOwF,UAAUvJ,EAAEH,KAAK2N,IAAIxP,EAAE8F,OAAOC,OAAO4Y,QAAQ3e,EAAEe,KAAK,GAAG,GAAGV,EAAE,GAAGA,GAAGL,EAAEc,KAAKN,KAAKud,oBAAoB,GAAG/d,EAAEa,MAAMiF,OAAOsO,MAAMzR,IAAIf,GAAGyS,SAASrS,EAAExB,KAAK6c,YAAO,IAAS7c,KAAK6c,MAAMuB,QAAQ,CAAC,IAAIpc,EAAExC,GAAG,CAACQ,KAAKud,eAAevd,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI,IAAIxU,EAAE/B,EAAEwU,UAAU,eAAe,OAAOzS,GAAG,UAAUA,EAAEvB,KAAKgd,iBAAiBzb,GAAG/B,EAAEgC,EAAE3B,EAAEG,KAAK6c,OAAO7c,KAAKqe,kBAAkB7e,EAAEgC,EAAE3B,EAAEG,KAAK6c,OAAO7c,KAAKyb,KAAK1B,UAAU/Z,KAAK8c,OAAO9X,EAAExD,EAAExB,KAAK8c,OAAO7X,EAAEpF,EAAEG,KAAK8c,OAAOC,WAAU,EAAG/c,KAAK8c,OAAOpK,MAAMnR,OAAOvB,KAAK8c,OAAO1Q,MAAMpM,KAAK6c,MAAMyB,YAAY,IAAIte,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBe,gBAAgB,CAAC,GAAGve,KAAK8c,OAAO,CAAC,GAAG9c,KAAK8c,OAAO9X,IAAIxD,GAAGxB,KAAK8c,OAAO7X,IAAIpF,GAAGG,KAAK8c,OAAOC,YAAY/a,EAAExC,IAAIQ,KAAK8c,OAAOpK,QAAQlT,EAAEwU,UAAU,gBAAgBhU,KAAK8c,OAAO1Q,QAAQpM,KAAK6c,MAAMyB,WAAW,OAAOte,KAAKud,eAAevd,KAAKyb,KAAK1C,OAAO/Y,KAAKgd,iBAAiBxd,EAAEwU,UAAU,gBAAgB,SAASxU,EAAEgC,EAAE3B,EAAEG,KAAK6c,OAAO7c,KAAKyb,KAAK1B,UAAU/Z,KAAK8c,OAAO9X,EAAExD,EAAExB,KAAK8c,OAAO7X,EAAEpF,EAAEG,KAAK8c,OAAOC,WAAU,EAAG/c,KAAK8c,OAAOpK,MAAMlT,EAAEwU,UAAU,eAAehU,KAAK8c,OAAO1Q,MAAMpM,KAAK6c,MAAMyB,gBAAgBte,KAAKud,qBAAqBvd,KAAKud,gBAAgBje,EAAEQ,UAAUyd,aAAa,WAAWvd,KAAK8c,SAAS9c,KAAKoc,YAAYpc,KAAK8c,OAAO9X,EAAEhF,KAAK8c,OAAO7X,EAAEjF,KAAK8c,OAAO1Q,MAAM,GAAGpM,KAAK8c,OAAO,CAAC9X,EAAE,EAAEC,EAAE,EAAE8X,WAAU,EAAGrK,MAAM,GAAGtG,MAAM,KAAK9M,EAAEQ,UAAUod,iBAAiB,SAAS1d,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAKgc,oBAAoB1c,EAAE8B,EAAE5B,EAAEwU,UAAU,gBAAgBhU,KAAKyb,KAAK1B,WAAWza,EAAEQ,UAAUsd,mBAAmB,SAAS5d,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAK8b,WAAWxc,EAAE8B,EAAEvB,EAAEye,WAAW,GAAGte,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQgQ,aAAaF,IAAI/V,KAAKqc,mBAAmB7c,EAAEK,EAAEP,EAAE8B,GAAGpB,KAAKyb,KAAK1B,WAAWza,EAAEQ,UAAUwd,uBAAuB,SAAS9d,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAK+b,uBAAuBzc,EAAE8B,GAAGpB,KAAKyb,KAAK1B,WAAWza,EAAEQ,UAAUue,kBAAkB,SAAS7e,EAAEF,EAAE8B,EAAEvB,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAK+C,YAAYxe,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAKic,kBAAkB3c,EAAE8B,EAAEvB,EAAEye,WAAW,GAAGte,KAAKyb,KAAK1B,WAAWza,EAAj5H,CAAo5HiC,EAAEqZ,iBAAiBtb,EAAEuR,kBAAkBhP,EAAE,IAAIgD,EAAE,WAAW,SAASrF,EAAEA,EAAEF,GAAGU,KAAKye,gBAAgBnf,EAAEU,KAAKue,iBAAgB,EAAGvc,EAAExC,IAAIQ,KAAK0e,mBAAmB,OAAOjf,OAAOC,eAAeF,EAAEM,UAAU,WAAW,CAACqC,IAAI,WAAW,QAAQnC,KAAK2e,oBAAoB3e,KAAK4e,iBAAiB1c,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUI,QAAQ,WAAWF,KAAK4e,iBAAiB5d,OAAO6d,cAAc7e,KAAK4e,gBAAgB5e,KAAK4e,oBAAe,GAAQ5e,KAAK2e,qBAAqB3d,OAAO8d,aAAa9e,KAAK2e,oBAAoB3e,KAAK2e,wBAAmB,GAAQ3e,KAAK+e,kBAAkB/d,OAAOge,qBAAqBhf,KAAK+e,iBAAiB/e,KAAK+e,qBAAgB,IAASvf,EAAEM,UAAU+d,sBAAsB,SAASre,GAAG,IAAIF,EAAEU,KAAKA,KAAK8d,WAAW9d,KAAKif,wBAAwBC,KAAKC,MAAMnf,KAAKue,iBAAgB,EAAGve,KAAK+e,kBAAkB/e,KAAK+e,gBAAgB/d,OAAOoe,uBAAsB,WAAY9f,EAAEmf,kBAAkBnf,EAAEyf,qBAAgB,QAAavf,EAAEM,UAAU4e,iBAAiB,SAASlf,GAAG,IAAIF,EAAEU,UAAK,IAASR,IAAIA,EAAEiC,GAAGzB,KAAK4e,gBAAgB5d,OAAO6d,cAAc7e,KAAK4e,gBAAgB5e,KAAK2e,mBAAmB3d,OAAOqe,YAAW,WAAY,GAAG/f,EAAE2f,wBAAwB,CAAC,IAAIzf,EAAEiC,GAAGyd,KAAKC,MAAM7f,EAAE2f,yBAAyB,GAAG3f,EAAE2f,6BAAwB,EAAOzf,EAAE,EAAE,YAAYF,EAAEof,iBAAiBlf,GAAGF,EAAEif,iBAAgB,EAAGjf,EAAEyf,gBAAgB/d,OAAOoe,uBAAsB,WAAY9f,EAAEmf,kBAAkBnf,EAAEyf,qBAAgB,KAAUzf,EAAEsf,eAAe5d,OAAOse,aAAY,WAAY,GAAGhgB,EAAE2f,wBAAwB,CAAC,IAAIzf,EAAEiC,GAAGyd,KAAKC,MAAM7f,EAAE2f,yBAAyB,OAAO3f,EAAE2f,6BAAwB,OAAY3f,EAAEof,iBAAiBlf,GAAGF,EAAEif,iBAAiBjf,EAAEif,gBAAgBjf,EAAEyf,gBAAgB/d,OAAOoe,uBAAsB,WAAY9f,EAAEmf,kBAAkBnf,EAAEyf,qBAAgB,OAAYtd,KAAKjC,IAAIA,EAAEM,UAAU2d,MAAM,WAAWzd,KAAKue,iBAAgB,EAAGve,KAAK4e,iBAAiB5d,OAAO6d,cAAc7e,KAAK4e,gBAAgB5e,KAAK4e,oBAAe,GAAQ5e,KAAK2e,qBAAqB3d,OAAO8d,aAAa9e,KAAK2e,oBAAoB3e,KAAK2e,wBAAmB,GAAQ3e,KAAK+e,kBAAkB/d,OAAOge,qBAAqBhf,KAAK+e,iBAAiB/e,KAAK+e,qBAAgB,IAASvf,EAAEM,UAAU6d,OAAO,SAASne,GAAGQ,KAAKyd,QAAQzd,KAAKif,6BAAwB,EAAOjf,KAAK0e,mBAAmB1e,KAAK6d,sBAAsBre,IAAIA,EAAhnE,GAAqnE,SAASwC,EAAExC,GAAG,OAAO8R,SAASiO,gBAAgB/f,EAAEggB,UAAUlO,SAASmO,aAAaC,IAAI,SAASlgB,EAAEF,EAAE8B,GAAG,IAAIvB,EAAE2B,EAAExB,MAAMA,KAAKiQ,YAAYpQ,EAAE,SAASL,EAAEF,GAAG,OAAOO,EAAEJ,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS5Q,EAAEF,GAAGE,EAAE2Q,UAAU7Q,IAAI,SAASE,EAAEF,GAAG,IAAI,IAAI8B,KAAK9B,EAAEG,OAAOK,UAAU4C,eAAeZ,KAAKxC,EAAE8B,KAAK5B,EAAE4B,GAAG9B,EAAE8B,MAAM5B,EAAEF,IAAI,SAASE,EAAEF,GAAG,SAAS8B,IAAIpB,KAAKiP,YAAYzP,EAAEK,EAAEL,EAAEF,GAAGE,EAAEM,UAAU,OAAOR,EAAEG,OAAO8C,OAAOjD,IAAI8B,EAAEtB,UAAUR,EAAEQ,UAAU,IAAIsB,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEqR,qBAAgB,EAAO,IAAIpP,EAAEH,EAAE,KAAKwB,EAAExB,EAAE,KAAKK,EAAEL,EAAE,KAAKS,EAAE,SAASrC,GAAG,SAASF,EAAEA,EAAE8B,EAAEvB,EAAE2B,GAAG,IAAID,EAAE/B,EAAEsC,KAAK9B,KAAKV,EAAE,OAAO8B,GAAE,EAAGvB,IAAIG,KAAK,OAAOwB,EAAEme,UAAUC,qBAAoB,SAAUpgB,GAAG,OAAO+B,EAAEse,qBAAqBrgB,MAAMgC,EAAEme,UAAUG,qBAAoB,SAAUtgB,GAAG,OAAO+B,EAAEwe,qBAAqBvgB,MAAMgC,EAAEwe,WAAWJ,qBAAoB,SAAUpgB,GAAG,OAAO+B,EAAEse,qBAAqBrgB,MAAMgC,EAAEwe,WAAWF,qBAAoB,SAAUtgB,GAAG,OAAO+B,EAAEwe,qBAAqBvgB,MAAM+B,EAAE,OAAOC,EAAElC,EAAEE,GAAGF,EAAEQ,UAAUY,OAAO,SAASpB,EAAE8B,GAAG5B,EAAEM,UAAUY,OAAOoB,KAAK9B,KAAKV,EAAE8B,GAAGpB,KAAK8c,YAAO,GAAQxd,EAAEQ,UAAUyS,MAAM,SAAS/S,GAAGQ,KAAKigB,qBAAqB3gB,EAAEQ,UAAUmgB,kBAAkB,WAAW,GAAGjgB,KAAK8c,OAAO,CAAC9c,KAAKoc,YAAYpc,KAAK8c,OAAOoD,GAAGlgB,KAAK8c,OAAOqD,GAAGngB,KAAK8c,OAAOvc,KAAKP,KAAK8c,OAAOoD,GAAG,GAAG,IAAI1gB,EAAEQ,KAAK8c,OAAOsD,GAAGpgB,KAAK8c,OAAOqD,GAAG,EAAE3gB,EAAE,GAAGQ,KAAKoc,YAAY,EAAEpc,KAAK8c,OAAOqD,GAAG,EAAEngB,KAAK8c,OAAOvc,KAAKf,GAAGQ,KAAKoc,YAAY,EAAEpc,KAAK8c,OAAOsD,GAAGpgB,KAAK8c,OAAOuD,GAAG,GAAGrgB,KAAK8c,YAAO,IAASxd,EAAEQ,UAAU+f,qBAAqB,SAASrgB,GAAG,GAAGA,EAAE4L,KAAKxI,EAAE0d,uBAAuBtgB,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ2F,WAAWmK,SAAI,IAASvW,EAAE4L,IAAI3J,EAAEqU,WAAWtW,EAAE4L,IAAIpL,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQgG,KAAKzM,EAAE4L,IAAI2K,IAAI/V,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQuI,WAAWuH,IAAIvW,EAAE2gB,KAAK3gB,EAAE4gB,GAAGpgB,KAAK+b,uBAAuBvc,EAAE0gB,GAAG1gB,EAAE2gB,GAAG3gB,EAAE6gB,GAAG7gB,EAAE0gB,QAAQ,CAAClgB,KAAK+b,uBAAuBvc,EAAE0gB,GAAG1gB,EAAE2gB,GAAG3gB,EAAEe,KAAKf,EAAE0gB,IAAI,IAAI,IAAI5gB,EAAEE,EAAE2gB,GAAG,EAAE7gB,EAAEE,EAAE4gB,GAAG9gB,IAAIU,KAAK+b,uBAAuB,EAAEzc,EAAEE,EAAEe,MAAMP,KAAK+b,uBAAuB,EAAEvc,EAAE4gB,GAAG5gB,EAAE6gB,IAAIrgB,KAAK8c,OAAOtd,GAAGF,EAAEQ,UAAUigB,qBAAqB,SAASvgB,GAAGQ,KAAKigB,qBAAqB3gB,EAAt6C,CAAy6CiC,EAAEqZ,iBAAiBtb,EAAEqR,gBAAgB9O,GAAG0e,IAAI,CAAC/gB,EAAEF,KAAK,IAAI8B,EAAEvB,EAAE2B,EAAED,EAAE,SAASqB,EAAEpD,GAAG,IAAIF,EAAEE,EAAEkb,SAAS,IAAI,OAAOpb,EAAEsF,OAAO,EAAE,IAAItF,EAAEA,EAAE,SAASmC,EAAEjC,EAAEF,GAAG,OAAOE,EAAEF,GAAGA,EAAE,MAAME,EAAE,MAAMA,EAAE,MAAMF,EAAE,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEkhB,cAAclhB,EAAEmhB,YAAYnhB,EAAE+K,KAAK/K,EAAEohB,IAAIphB,EAAEyW,IAAIzW,EAAEqhB,MAAMrhB,EAAE+Y,cAAS,EAAO,SAAS7Y,GAAGA,EAAE8Y,MAAM,SAAS9Y,EAAEF,EAAE8B,EAAEvB,GAAG,YAAO,IAASA,EAAE,IAAI+C,EAAEpD,GAAGoD,EAAEtD,GAAGsD,EAAExB,GAAGwB,EAAE/C,GAAG,IAAI+C,EAAEpD,GAAGoD,EAAEtD,GAAGsD,EAAExB,IAAI5B,EAAEohB,OAAO,SAASphB,EAAEF,EAAE8B,EAAEvB,GAAG,YAAO,IAASA,IAAIA,EAAE,MAAML,GAAG,GAAGF,GAAG,GAAG8B,GAAG,EAAEvB,KAAK,GAAjL,CAAqLuB,EAAE9B,EAAE+Y,WAAW/Y,EAAE+Y,SAAS,MAAMxY,EAAEP,EAAEqhB,QAAQrhB,EAAEqhB,MAAM,KAAKE,MAAM,SAASrhB,EAAEF,GAAG,IAAIO,GAAG,IAAIP,EAAE+K,MAAM,IAAI,GAAG,IAAIxK,EAAE,MAAM,CAACkW,IAAIzW,EAAEyW,IAAI1L,KAAK/K,EAAE+K,MAAM,IAAI7I,EAAElC,EAAE+K,MAAM,GAAG,IAAI9I,EAAEjC,EAAE+K,MAAM,GAAG,IAAIzH,EAAEtD,EAAE+K,MAAM,EAAE,IAAI5I,EAAEjC,EAAE6K,MAAM,GAAG,IAAIxI,EAAErC,EAAE6K,MAAM,GAAG,IAAIxF,EAAErF,EAAE6K,MAAM,EAAE,IAAIrI,EAAEP,EAAEJ,KAAK4S,OAAOzS,EAAEC,GAAG5B,GAAGmG,EAAEnE,EAAER,KAAK4S,OAAO1S,EAAEM,GAAGhC,GAAGoC,EAAE4C,EAAExD,KAAK4S,OAAOrR,EAAEiC,GAAGhF,GAAG,MAAM,CAACkW,IAAI3U,EAAEkX,MAAMtW,EAAEgE,EAAE/D,GAAGoI,KAAKjJ,EAAEwf,OAAO5e,EAAEgE,EAAE/D,KAAKpC,EAAEihB,SAAS,SAASthB,GAAG,OAAO,MAAM,IAAIA,EAAE6K,OAAOxK,EAAE8Y,oBAAoB,SAASnZ,EAAEF,EAAE8B,GAAG,IAAIvB,EAAE0B,EAAEoX,oBAAoBnZ,EAAE6K,KAAK/K,EAAE+K,KAAKjJ,GAAG,GAAGvB,EAAE,OAAO0B,EAAEwf,QAAQlhB,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,MAAMA,EAAEmhB,OAAO,SAASxhB,GAAG,IAAIF,GAAG,IAAIE,EAAE6K,QAAQ,EAAExK,EAAE0B,EAAE0f,WAAW3hB,GAAGkC,EAAE3B,EAAE,GAAG+C,EAAE/C,EAAE,GAAG4B,EAAE5B,EAAE,GAAG,MAAM,CAACkW,IAAI3U,EAAEkX,MAAM9W,EAAEoB,EAAEnB,GAAG4I,KAAK/K,IAAIO,EAAEqhB,QAAQ,SAAS1hB,EAAEF,GAAG,IAAIO,EAAEwB,KAAK4S,MAAM,IAAI3U,GAAGkC,EAAED,EAAE0f,WAAWzhB,EAAE6K,MAAMzH,EAAEpB,EAAE,GAAGC,EAAED,EAAE,GAAGK,EAAEL,EAAE,GAAG,MAAM,CAACuU,IAAI3U,EAAEkX,MAAM1V,EAAEnB,EAAEI,EAAEhC,GAAGwK,KAAKjJ,EAAEwf,OAAOhe,EAAEnB,EAAEI,EAAEhC,MAAMP,EAAEyW,MAAMzW,EAAEyW,IAAI,KAAKgL,QAAQ,SAASvhB,GAAG,OAAOA,EAAEoF,QAAQ,KAAK,EAAE,MAAM,CAACmR,IAAIvW,EAAE6K,MAAMnJ,SAAS1B,EAAE2K,MAAM,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,MAAM,CAAC4L,IAAIvW,EAAE6K,KAAKnJ,SAAS1B,EAAE2K,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI+B,MAAM,wCAAwC,SAAS1M,GAAG,SAASF,EAAEE,EAAEF,EAAE8B,GAAG,IAAIvB,EAAEL,EAAE,IAAIgC,EAAElC,EAAE,IAAIiC,EAAEH,EAAE,IAAI,MAAM,OAAOvB,GAAG,OAAOA,EAAE,MAAMwB,KAAK8f,KAAKthB,EAAE,MAAM,MAAM,MAAM,OAAO2B,GAAG,OAAOA,EAAE,MAAMH,KAAK8f,KAAK3f,EAAE,MAAM,MAAM,MAAM,OAAOD,GAAG,OAAOA,EAAE,MAAMF,KAAK8f,KAAK5f,EAAE,MAAM,MAAM,MAAM/B,EAAE4hB,kBAAkB,SAAS5hB,GAAG,OAAOF,EAAEE,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAE6hB,mBAAmB/hB,EAA9T,CAAiUkC,EAAElC,EAAEohB,MAAMphB,EAAEohB,IAAI,KAAK,SAASlhB,GAAG,SAASF,EAAEE,EAAEF,EAAE8B,GAAG,IAAI,IAAIvB,EAAEL,GAAG,GAAG,IAAI+B,EAAE/B,GAAG,GAAG,IAAIoD,EAAEpD,GAAG,EAAE,IAAIqC,EAAEvC,GAAG,GAAG,IAAIuF,EAAEvF,GAAG,GAAG,IAAI0C,EAAE1C,GAAG,EAAE,IAAI0G,EAAEvE,EAAED,EAAE6f,mBAAmBxf,EAAEG,EAAE6C,GAAGrD,EAAE6f,mBAAmBxhB,EAAE0B,EAAEqB,IAAIoD,EAAE5E,IAAIS,EAAE,GAAGgD,EAAE,GAAG7C,EAAE,IAAIH,GAAGR,KAAKC,IAAI,EAAED,KAAK0S,KAAK,GAAGlS,IAAIgD,GAAGxD,KAAKC,IAAI,EAAED,KAAK0S,KAAK,GAAGlP,IAAI7C,GAAGX,KAAKC,IAAI,EAAED,KAAK0S,KAAK,GAAG/R,IAAIgE,EAAEvE,EAAED,EAAE6f,mBAAmBxf,EAAEG,EAAE6C,GAAGrD,EAAE6f,mBAAmBxhB,EAAE0B,EAAEqB,IAAI,OAAOf,GAAG,GAAGgD,GAAG,GAAG7C,GAAG,EAAE,OAAO,EAAE,SAASnC,EAAEL,EAAEF,EAAE8B,GAAG,IAAI,IAAIvB,EAAEL,GAAG,GAAG,IAAI+B,EAAE/B,GAAG,GAAG,IAAIoD,EAAEpD,GAAG,EAAE,IAAIqC,EAAEvC,GAAG,GAAG,IAAIuF,EAAEvF,GAAG,GAAG,IAAI0C,EAAE1C,GAAG,EAAE,IAAI0G,EAAEvE,EAAED,EAAE6f,mBAAmBxf,EAAEG,EAAE6C,GAAGrD,EAAE6f,mBAAmBxhB,EAAE0B,EAAEqB,IAAIoD,EAAE5E,IAAIS,EAAE,KAAKgD,EAAE,KAAK7C,EAAE,MAAMH,EAAER,KAAK2N,IAAI,IAAInN,EAAER,KAAK0S,KAAK,IAAI,IAAIlS,KAAKgD,EAAExD,KAAK2N,IAAI,IAAInK,EAAExD,KAAK0S,KAAK,IAAI,IAAIlP,KAAK7C,EAAEX,KAAK2N,IAAI,IAAIhN,EAAEX,KAAK0S,KAAK,IAAI,IAAI/R,KAAKgE,EAAEvE,EAAED,EAAE6f,mBAAmBxf,EAAEG,EAAE6C,GAAGrD,EAAE6f,mBAAmBxhB,EAAE0B,EAAEqB,IAAI,OAAOf,GAAG,GAAGgD,GAAG,GAAG7C,GAAG,EAAE,OAAO,EAAExC,EAAEmZ,oBAAoB,SAASnZ,EAAE4B,EAAEG,GAAG,IAAIqB,EAAEpB,EAAE4f,kBAAkB5hB,GAAG,GAAGqC,EAAEL,EAAE4f,kBAAkBhgB,GAAG,GAAG,GAAGK,EAAEmB,EAAEf,GAAGN,EAAE,OAAOM,EAAEe,EAAEtD,EAAEE,EAAE4B,EAAEG,GAAG1B,EAAEL,EAAE4B,EAAEG,IAAI/B,EAAE8hB,gBAAgBhiB,EAAEE,EAAE+hB,kBAAkB1hB,EAAEL,EAAEyhB,WAAW,SAASzhB,GAAG,MAAM,CAACA,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAEuhB,QAAQ,SAASvhB,EAAEF,EAAEO,GAAG,MAAM,CAACkW,IAAI3U,EAAEkX,MAAM9Y,EAAEF,EAAEO,GAAGwK,KAAKjJ,EAAEwf,OAAOphB,EAAEF,EAAEO,KAA1kC,CAAglC0B,EAAEjC,EAAE+K,OAAO/K,EAAE+K,KAAK,KAAK/K,EAAEmhB,YAAY7d,EAAEtD,EAAEkhB,cAAc/e,GAAG+f,IAAI,CAAChiB,EAAEF,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEmiB,wBAAwBniB,EAAEua,YAAYva,EAAEghB,4BAAuB,EAAOhhB,EAAEghB,uBAAuB,IAAIhhB,EAAEua,YAAY,GAAGva,EAAEmiB,wBAAwB,GAAGC,IAAI,CAACliB,EAAEF,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEqiB,aAAariB,EAAEmR,kBAAa,EAAO,IAAIrP,EAAE,WAAW,SAAS5B,IAAIQ,KAAK4hB,WAAW,GAAG5hB,KAAK6hB,WAAU,EAAG,OAAOpiB,OAAOC,eAAeF,EAAEM,UAAU,QAAQ,CAACqC,IAAI,WAAW,IAAI3C,EAAEQ,KAAK,OAAOA,KAAK8hB,SAAS9hB,KAAK8hB,OAAO,SAASxiB,GAAG,OAAOE,EAAEoiB,WAAWzc,KAAK7F,GAAG,CAACY,QAAQ,WAAW,IAAIV,EAAEqiB,UAAU,IAAI,IAAIzgB,EAAE,EAAEA,EAAE5B,EAAEoiB,WAAWhd,OAAOxD,IAAI,GAAG5B,EAAEoiB,WAAWxgB,KAAK9B,EAAE,YAAYE,EAAEoiB,WAAWjM,OAAOvU,EAAE,OAAOpB,KAAK8hB,QAAQ5f,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUiT,KAAK,SAASvT,EAAEF,GAAG,IAAI,IAAI8B,EAAE,GAAGvB,EAAE,EAAEA,EAAEG,KAAK4hB,WAAWhd,OAAO/E,IAAIuB,EAAE+D,KAAKnF,KAAK4hB,WAAW/hB,IAAI,IAAIA,EAAE,EAAEA,EAAEuB,EAAEwD,OAAO/E,IAAIuB,EAAEvB,GAAGiC,UAAK,EAAOtC,EAAEF,IAAIE,EAAEM,UAAUI,QAAQ,WAAWF,KAAK4hB,aAAa5hB,KAAK4hB,WAAWhd,OAAO,GAAG5E,KAAK6hB,WAAU,GAAIriB,EAA7nB,GAAkoBF,EAAEmR,aAAarP,EAAE9B,EAAEqiB,aAAa,SAASniB,EAAEF,GAAG,OAAOE,GAAE,SAAUA,GAAG,OAAOF,EAAEyT,KAAKvT,QAAQuiB,IAAI,CAACviB,EAAEF,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAE0iB,0BAA0B1iB,EAAE2iB,aAAa3iB,EAAE4U,gBAAW,EAAO,IAAI9S,EAAE,WAAW,SAAS5B,IAAIQ,KAAKkiB,aAAa,GAAGliB,KAAKmiB,aAAY,EAAG,OAAO3iB,EAAEM,UAAUI,QAAQ,WAAWF,KAAKmiB,aAAY,EAAG,IAAI,IAAI3iB,EAAE,EAAEF,EAAEU,KAAKkiB,aAAa1iB,EAAEF,EAAEsF,OAAOpF,IAAIF,EAAEE,GAAGU,UAAUF,KAAKkiB,aAAatd,OAAO,GAAGpF,EAAEM,UAAUsiB,SAAS,SAAS5iB,GAAG,OAAOQ,KAAKkiB,aAAa/c,KAAK3F,GAAGA,GAAGA,EAAEM,UAAUuiB,WAAW,SAAS7iB,GAAG,IAAIF,EAAEU,KAAKkiB,aAAaxd,QAAQlF,IAAI,IAAIF,GAAGU,KAAKkiB,aAAavM,OAAOrW,EAAE,IAAIE,EAAvY,GAA4Y,SAASK,EAAEL,GAAG,IAAI,IAAIF,EAAE,EAAE8B,EAAE5B,EAAEF,EAAE8B,EAAEwD,OAAOtF,IAAI8B,EAAE9B,GAAGY,UAAUV,EAAEoF,OAAO,EAAEtF,EAAE4U,WAAW9S,EAAE9B,EAAE2iB,aAAapiB,EAAEP,EAAE0iB,0BAA0B,SAASxiB,GAAG,MAAM,CAACU,QAAQ,WAAW,OAAOL,EAAEL,OAAO8iB,IAAI,CAAC9iB,EAAEF,KAAK,SAAS8B,EAAE5B,EAAEF,EAAE8B,EAAEvB,GAAG,QAAG,IAASuB,IAAIA,EAAE,QAAG,IAASvB,IAAIA,EAAEL,EAAEoF,QAAQxD,GAAG5B,EAAEoF,OAAO,OAAOpF,EAAE4B,GAAG5B,EAAEoF,OAAOxD,GAAG5B,EAAEoF,OAAO/E,EAAEA,GAAGL,EAAEoF,OAAOpF,EAAEoF,QAAQpF,EAAEoF,OAAO/E,GAAGL,EAAEoF,OAAO,IAAI,IAAIpD,EAAEJ,EAAEI,EAAE3B,IAAI2B,EAAEhC,EAAEgC,GAAGlC,EAAE,OAAOE,EAAEC,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEijB,OAAOjjB,EAAEkjB,aAAaljB,EAAE2K,UAAK,EAAO3K,EAAE2K,KAAK,SAASzK,EAAEF,EAAEO,EAAE2B,GAAG,OAAOhC,EAAEyK,KAAKzK,EAAEyK,KAAK3K,EAAEO,EAAE2B,GAAGJ,EAAE5B,EAAEF,EAAEO,EAAE2B,IAAIlC,EAAEkjB,aAAaphB,EAAE9B,EAAEijB,OAAO,SAAS/iB,EAAEF,GAAG,IAAI8B,EAAE,IAAI5B,EAAEyP,YAAYzP,EAAEoF,OAAOtF,EAAEsF,QAAQ,OAAOxD,EAAEuL,IAAInN,GAAG4B,EAAEuL,IAAIrN,EAAEE,EAAEoF,QAAQxD,IAAIqhB,IAAI,CAACjjB,EAAEF,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEojB,cAAcpjB,EAAE6L,mBAAc,EAAO,IAAI/J,EAAE,WAAW,SAAS5B,IAAIQ,KAAKoL,GAAG,EAAEpL,KAAKqL,GAAG,EAAErL,KAAK2iB,SAAS,IAAI9iB,EAAE,OAAOL,EAAEmM,WAAW,SAASnM,GAAG,MAAM,CAACA,IAAI,GAAG,IAAIA,IAAI,EAAE,IAAI,IAAIA,IAAIA,EAAEojB,aAAa,SAASpjB,GAAG,OAAO,IAAIA,EAAE,KAAK,IAAI,IAAIA,EAAE,KAAK,EAAE,IAAIA,EAAE,IAAIA,EAAEM,UAAU+iB,MAAM,WAAW,IAAIvjB,EAAE,IAAIE,EAAE,OAAOF,EAAE8L,GAAGpL,KAAKoL,GAAG9L,EAAE+L,GAAGrL,KAAKqL,GAAG/L,EAAEqjB,SAAS3iB,KAAK2iB,SAASE,QAAQvjB,GAAGE,EAAEM,UAAUoZ,UAAU,WAAW,OAAO,SAASlZ,KAAKoL,IAAI5L,EAAEM,UAAUmZ,OAAO,WAAW,OAAO,UAAUjZ,KAAKoL,IAAI5L,EAAEM,UAAUgjB,YAAY,WAAW,OAAO,UAAU9iB,KAAKoL,IAAI5L,EAAEM,UAAUijB,QAAQ,WAAW,OAAO,UAAU/iB,KAAKoL,IAAI5L,EAAEM,UAAUkZ,YAAY,WAAW,OAAO,WAAWhZ,KAAKoL,IAAI5L,EAAEM,UAAUsZ,SAAS,WAAW,OAAO,SAASpZ,KAAKqL,IAAI7L,EAAEM,UAAUqZ,MAAM,WAAW,OAAO,UAAUnZ,KAAKqL,IAAI7L,EAAEM,UAAUwZ,eAAe,WAAW,OAAO,SAAStZ,KAAKoL,IAAI5L,EAAEM,UAAUyL,eAAe,WAAW,OAAO,SAASvL,KAAKqL,IAAI7L,EAAEM,UAAUkjB,QAAQ,WAAW,OAAO,WAAW,SAAShjB,KAAKoL,KAAK5L,EAAEM,UAAUmjB,QAAQ,WAAW,OAAO,WAAW,SAASjjB,KAAKqL,KAAK7L,EAAEM,UAAUojB,YAAY,WAAW,OAAO,WAAW,SAASljB,KAAKoL,KAAK,WAAW,SAASpL,KAAKoL,KAAK5L,EAAEM,UAAUqjB,YAAY,WAAW,OAAO,WAAW,SAASnjB,KAAKqL,KAAK,WAAW,SAASrL,KAAKqL,KAAK7L,EAAEM,UAAUsjB,YAAY,WAAW,OAAO,IAAI,SAASpjB,KAAKoL,KAAK5L,EAAEM,UAAUujB,YAAY,WAAW,OAAO,IAAI,SAASrjB,KAAKqL,KAAK7L,EAAEM,UAAUwjB,mBAAmB,WAAW,OAAO,IAAItjB,KAAKoL,IAAI,IAAIpL,KAAKqL,IAAI7L,EAAEM,UAAUuZ,WAAW,WAAW,OAAO,SAASrZ,KAAKoL,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIpL,KAAKoL,GAAG,KAAK,SAAS,OAAO,SAASpL,KAAKoL,GAAG,QAAQ,OAAO,IAAI5L,EAAEM,UAAU2L,WAAW,WAAW,OAAO,SAASzL,KAAKqL,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIrL,KAAKqL,GAAG,KAAK,SAAS,OAAO,SAASrL,KAAKqL,GAAG,QAAQ,OAAO,IAAI7L,EAAEM,UAAUyjB,iBAAiB,WAAW,OAAO,UAAUvjB,KAAKqL,IAAI7L,EAAEM,UAAU0jB,eAAe,WAAWxjB,KAAK2iB,SAASc,UAAUzjB,KAAKqL,KAAK,UAAUrL,KAAKqL,IAAI,WAAW7L,EAAEM,UAAU4jB,kBAAkB,WAAW,GAAG,UAAU1jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,OAAO,SAAS3jB,KAAK2iB,SAASgB,gBAAgB,KAAK,SAAS,KAAK,SAAS,OAAO,IAAI3jB,KAAK2iB,SAASgB,eAAe,KAAK,SAAS,OAAO,SAAS3jB,KAAK2iB,SAASgB,eAAe,QAAQ,OAAO3jB,KAAKqZ,aAAa,OAAOrZ,KAAKqZ,cAAc7Z,EAAEM,UAAU8jB,sBAAsB,WAAW,OAAO,UAAU5jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,SAAS3jB,KAAK2iB,SAASgB,eAAe3jB,KAAKsZ,kBAAkB9Z,EAAEM,UAAU+jB,oBAAoB,WAAW,OAAO,UAAU7jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,WAAW,SAAS3jB,KAAK2iB,SAASgB,gBAAgB3jB,KAAKgjB,WAAWxjB,EAAEM,UAAUgkB,wBAAwB,WAAW,OAAO,UAAU9jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,WAAW,SAAS3jB,KAAK2iB,SAASgB,iBAAiB,WAAW,SAAS3jB,KAAK2iB,SAASgB,gBAAgB3jB,KAAKkjB,eAAe1jB,EAAEM,UAAUikB,wBAAwB,WAAW,OAAO,UAAU/jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,IAAI,SAAS3jB,KAAK2iB,SAASgB,gBAAgB3jB,KAAKojB,eAAe5jB,EAAEM,UAAUkkB,kBAAkB,WAAW,OAAO,UAAUhkB,KAAKoL,GAAG,UAAUpL,KAAKqL,GAAGrL,KAAK2iB,SAASsB,eAAe,EAAE,GAAGzkB,EAAr+F,GAA0+FF,EAAE6L,cAAc/J,EAAE,IAAIvB,EAAE,WAAW,SAASL,EAAEA,EAAEF,QAAG,IAASE,IAAIA,EAAE,QAAG,IAASF,IAAIA,GAAG,GAAGU,KAAKikB,eAAezkB,EAAEQ,KAAK2jB,eAAerkB,EAAE,OAAOE,EAAEM,UAAU+iB,MAAM,WAAW,OAAO,IAAIrjB,EAAEQ,KAAKikB,eAAejkB,KAAK2jB,iBAAiBnkB,EAAEM,UAAU2jB,QAAQ,WAAW,OAAO,IAAIzjB,KAAKikB,gBAAgBzkB,EAAtQ,GAA2QF,EAAEojB,cAAc7iB,GAAGqkB,IAAI,SAAS1kB,EAAEF,EAAE8B,GAAG,IAAIvB,EAAE2B,EAAExB,MAAMA,KAAKiQ,YAAYpQ,EAAE,SAASL,EAAEF,GAAG,OAAOO,EAAEJ,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS5Q,EAAEF,GAAGE,EAAE2Q,UAAU7Q,IAAI,SAASE,EAAEF,GAAG,IAAI,IAAI8B,KAAK9B,EAAEG,OAAOK,UAAU4C,eAAeZ,KAAKxC,EAAE8B,KAAK5B,EAAE4B,GAAG9B,EAAE8B,MAAM5B,EAAEF,IAAI,SAASE,EAAEF,GAAG,SAAS8B,IAAIpB,KAAKiP,YAAYzP,EAAEK,EAAEL,EAAEF,GAAGE,EAAEM,UAAU,OAAOR,EAAEG,OAAO8C,OAAOjD,IAAI8B,EAAEtB,UAAUR,EAAEQ,UAAU,IAAIsB,KAAK3B,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEiR,cAAS,EAAO,IAAIhP,EAAEH,EAAE,KAAKwB,EAAExB,EAAE,KAAKK,EAAEL,EAAE,KAAKS,EAAE,SAASrC,GAAG,SAASF,IAAI,IAAIA,EAAE,OAAOE,GAAGA,EAAE2kB,MAAMnkB,KAAKokB,YAAYpkB,KAAK,OAAOV,EAAE8e,QAAQ,EAAE9e,EAAE8L,GAAG,EAAE9L,EAAE+L,GAAG,EAAE/L,EAAEqjB,SAAS,IAAIlhB,EAAEihB,cAAcpjB,EAAE+kB,aAAa,GAAG/kB,EAAE,OAAOkC,EAAElC,EAAEE,GAAGF,EAAEglB,aAAa,SAAS9kB,GAAG,IAAI4B,EAAE,IAAI9B,EAAE,OAAO8B,EAAEmjB,gBAAgB/kB,GAAG4B,GAAG9B,EAAEQ,UAAU0kB,WAAW,WAAW,OAAO,QAAQxkB,KAAKoe,SAAS9e,EAAEQ,UAAUwe,SAAS,WAAW,OAAOte,KAAKoe,SAAS,IAAI9e,EAAEQ,UAAUkM,SAAS,WAAW,OAAO,QAAQhM,KAAKoe,QAAQpe,KAAKqkB,aAAa,QAAQrkB,KAAKoe,QAAQ7c,EAAEkjB,oBAAoB,QAAQzkB,KAAKoe,SAAS,IAAI9e,EAAEQ,UAAUgU,QAAQ,WAAW,OAAO9T,KAAKwkB,aAAaxkB,KAAKqkB,aAAaK,WAAW1kB,KAAKqkB,aAAazf,OAAO,GAAG,QAAQ5E,KAAKoe,SAAS9e,EAAEQ,UAAUykB,gBAAgB,SAAS/kB,GAAGQ,KAAKoL,GAAG5L,EAAEoD,EAAE+hB,sBAAsB3kB,KAAKqL,GAAG,EAAE,IAAI/L,GAAE,EAAG,GAAGE,EAAEoD,EAAEgiB,sBAAsBhgB,OAAO,EAAEtF,GAAE,OAAQ,GAAG,IAAIE,EAAEoD,EAAEgiB,sBAAsBhgB,OAAO,CAAC,IAAIxD,EAAE5B,EAAEoD,EAAEgiB,sBAAsBF,WAAW,GAAG,GAAG,OAAOtjB,GAAGA,GAAG,MAAM,CAAC,IAAIvB,EAAEL,EAAEoD,EAAEgiB,sBAAsBF,WAAW,GAAG,OAAO7kB,GAAGA,GAAG,MAAMG,KAAKoe,QAAQ,MAAMhd,EAAE,OAAOvB,EAAE,MAAM,MAAML,EAAEoD,EAAEiiB,wBAAwB,GAAGvlB,GAAE,OAAQA,GAAE,OAAQU,KAAKoe,QAAQ5e,EAAEoD,EAAEgiB,sBAAsBF,WAAW,GAAGllB,EAAEoD,EAAEiiB,wBAAwB,GAAGvlB,IAAIU,KAAKqkB,aAAa7kB,EAAEoD,EAAEgiB,sBAAsB5kB,KAAKoe,QAAQ,QAAQ5e,EAAEoD,EAAEiiB,wBAAwB,KAAKvlB,EAAEQ,UAAUglB,cAAc,WAAW,MAAM,CAAC9kB,KAAKoL,GAAGpL,KAAKgM,WAAWhM,KAAKse,WAAWte,KAAK8T,YAAYxU,EAAzzC,CAA4zCmC,EAAE0J,eAAe7L,EAAEiR,SAAS1O,GAAGkjB,IAAI,CAACvlB,EAAEF,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEgK,qBAAqBhK,EAAE0lB,sBAAsB1lB,EAAE2lB,qBAAqB3lB,EAAE+J,eAAe/J,EAAE4lB,gBAAgB5lB,EAAE6lB,eAAe7lB,EAAE8lB,qBAAqB9lB,EAAEulB,sBAAsBvlB,EAAEslB,qBAAqBtlB,EAAEqlB,qBAAqBrlB,EAAE+lB,aAAa/lB,EAAE0Y,mBAAc,EAAO1Y,EAAE0Y,cAAc,IAAI1Y,EAAE+lB,aAAa,IAAI/lB,EAAE0Y,eAAe,EAAE1Y,EAAEqlB,qBAAqB,EAAErlB,EAAEslB,qBAAqB,EAAEtlB,EAAEulB,sBAAsB,EAAEvlB,EAAE8lB,qBAAqB,EAAE9lB,EAAE6lB,eAAe,GAAG7lB,EAAE4lB,gBAAgB,EAAE5lB,EAAE+J,eAAe,EAAE/J,EAAE2lB,qBAAqB,IAAI3lB,EAAE0lB,sBAAsB,EAAE1lB,EAAEgK,qBAAqB,IAAIgc,IAAI,CAAC9lB,EAAEF,KAAKG,OAAOC,eAAeJ,EAAE,aAAa,CAACK,OAAM,IAAKL,EAAEimB,YAAYjmB,EAAEkmB,cAAclmB,EAAEmmB,cAAcnmB,EAAEmlB,yBAAoB,EAAOnlB,EAAEmlB,oBAAoB,SAASjlB,GAAG,OAAOA,EAAE,OAAOA,GAAG,MAAMqZ,OAAOC,aAAa,OAAOtZ,GAAG,KAAKqZ,OAAOC,aAAatZ,EAAE,KAAK,QAAQqZ,OAAOC,aAAatZ,IAAIF,EAAEmmB,cAAc,SAASjmB,EAAEF,EAAE8B,QAAG,IAAS9B,IAAIA,EAAE,QAAG,IAAS8B,IAAIA,EAAE5B,EAAEoF,QAAQ,IAAI,IAAI/E,EAAE,GAAG2B,EAAElC,EAAEkC,EAAEJ,IAAII,EAAE,CAAC,IAAID,EAAE/B,EAAEgC,GAAGD,EAAE,OAAOA,GAAG,MAAM1B,GAAGgZ,OAAOC,aAAa,OAAOvX,GAAG,KAAKsX,OAAOC,aAAavX,EAAE,KAAK,QAAQ1B,GAAGgZ,OAAOC,aAAavX,GAAG,OAAO1B,GAAG,IAAIuB,EAAE,WAAW,SAAS5B,IAAIQ,KAAK0lB,SAAS,EAAE,OAAOlmB,EAAEM,UAAUW,MAAM,WAAWT,KAAK0lB,SAAS,GAAGlmB,EAAEM,UAAU6lB,OAAO,SAASnmB,EAAEF,GAAG,IAAI8B,EAAE5B,EAAEoF,OAAO,IAAIxD,EAAE,OAAO,EAAE,IAAIvB,EAAE,EAAE2B,EAAE,EAAExB,KAAK0lB,WAAW,QAAQjkB,EAAEjC,EAAEklB,WAAWljB,OAAOC,GAAG,MAAMnC,EAAEO,KAAK,MAAMG,KAAK0lB,SAAS,OAAOjkB,EAAE,MAAM,OAAOnC,EAAEO,KAAKG,KAAK0lB,SAASpmB,EAAEO,KAAK4B,GAAGzB,KAAK0lB,SAAS,GAAG,IAAI,IAAInkB,EAAEC,EAAED,EAAEH,IAAIG,EAAE,CAAC,IAAIqB,EAAEpD,EAAEklB,WAAWnjB,GAAG,GAAG,OAAOqB,GAAGA,GAAG,MAAM,CAAC,KAAKrB,GAAGH,EAAE,OAAOpB,KAAK0lB,SAAS9iB,EAAE/C,EAAE,IAAI4B,EAAE,QAAQA,EAAEjC,EAAEklB,WAAWnjB,KAAKE,GAAG,MAAMnC,EAAEO,KAAK,MAAM+C,EAAE,OAAOnB,EAAE,MAAM,OAAOnC,EAAEO,KAAK+C,EAAEtD,EAAEO,KAAK4B,QAAQ,QAAQmB,IAAItD,EAAEO,KAAK+C,GAAG,OAAO/C,GAAGL,EAA7iB,GAAkjBF,EAAEkmB,cAAcpkB,EAAE,IAAIvB,EAAE,WAAW,SAASL,IAAIQ,KAAK4lB,QAAQ,IAAIhe,WAAW,GAAG,OAAOpI,EAAEM,UAAUW,MAAM,WAAWT,KAAK4lB,QAAQ3b,KAAK,IAAIzK,EAAEM,UAAU6lB,OAAO,SAASnmB,EAAEF,GAAG,IAAI8B,EAAE5B,EAAEoF,OAAO,IAAIxD,EAAE,OAAO,EAAE,IAAIvB,EAAE2B,EAAED,EAAEqB,EAAEnB,EAAE,EAAEI,EAAE,EAAEgD,EAAE,EAAE,GAAG7E,KAAK4lB,QAAQ,GAAG,CAAC,IAAI5jB,GAAE,EAAGgE,EAAEhG,KAAK4lB,QAAQ,GAAG5f,GAAG,MAAM,IAAIA,GAAG,GAAG,MAAM,IAAIA,GAAG,GAAG,EAAE,IAAI,IAAI/D,EAAE,EAAEqC,OAAE,GAAQA,EAAE,GAAGtE,KAAK4lB,UAAU3jB,KAAKA,EAAE,GAAG+D,IAAI,EAAEA,GAAG1B,EAAE,IAAI,IAAIE,EAAE,MAAM,IAAIxE,KAAK4lB,QAAQ,IAAI,EAAE,MAAM,IAAI5lB,KAAK4lB,QAAQ,IAAI,EAAE,EAAEjjB,EAAE6B,EAAEvC,EAAE4C,EAAElC,GAAG,CAAC,GAAGkC,GAAGzD,EAAE,OAAO,EAAE,GAAG,MAAM,KAAKkD,EAAE9E,EAAEqF,OAAO,CAACA,IAAI7C,GAAE,EAAG,MAAMhC,KAAK4lB,QAAQ3jB,KAAKqC,EAAE0B,IAAI,EAAEA,GAAG,GAAG1B,EAAEtC,IAAI,IAAIwC,EAAEwB,EAAE,IAAInB,IAAIvF,EAAEmC,KAAKuE,EAAE,IAAIxB,EAAEwB,EAAE,MAAMA,GAAG,OAAOA,GAAG,OAAO,QAAQA,IAAI1G,EAAEmC,KAAKuE,GAAGA,EAAE,OAAOA,EAAE,UAAU1G,EAAEmC,KAAKuE,IAAIhG,KAAK4lB,QAAQ3b,KAAK,GAAG,IAAI,IAAIyB,EAAEtK,EAAE,EAAE0D,EAAED,EAAEC,EAAE1D,GAAG,CAAC,SAAS0D,EAAE4G,IAAI,KAAK7L,EAAEL,EAAEsF,KAAK,KAAKtD,EAAEhC,EAAEsF,EAAE,KAAK,KAAKvD,EAAE/B,EAAEsF,EAAE,KAAK,KAAKlC,EAAEpD,EAAEsF,EAAE,MAAMxF,EAAEmC,KAAK5B,EAAEP,EAAEmC,KAAKD,EAAElC,EAAEmC,KAAKF,EAAEjC,EAAEmC,KAAKmB,EAAEkC,GAAG,EAAE,IAAIjF,EAAEL,EAAEsF,MAAM,IAAIxF,EAAEmC,KAAK5B,OAAO,GAAG,MAAM,IAAIA,GAAG,CAAC,GAAGiF,GAAG1D,EAAE,OAAOpB,KAAK4lB,QAAQ,GAAG/lB,EAAE4B,EAAE,GAAG,MAAM,KAAKD,EAAEhC,EAAEsF,OAAO,CAACA,IAAI,SAAS,IAAIjD,GAAG,GAAGhC,IAAI,EAAE,GAAG2B,GAAG,IAAI,CAACsD,IAAI,SAASxF,EAAEmC,KAAKI,OAAO,GAAG,MAAM,IAAIhC,GAAG,CAAC,GAAGiF,GAAG1D,EAAE,OAAOpB,KAAK4lB,QAAQ,GAAG/lB,EAAE4B,EAAE,GAAG,MAAM,KAAKD,EAAEhC,EAAEsF,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAG1D,EAAE,OAAOpB,KAAK4lB,QAAQ,GAAG/lB,EAAEG,KAAK4lB,QAAQ,GAAGpkB,EAAEC,EAAE,GAAG,MAAM,KAAKF,EAAE/B,EAAEsF,OAAO,CAACA,IAAI,SAAS,IAAIjD,GAAG,GAAGhC,IAAI,IAAI,GAAG2B,IAAI,EAAE,GAAGD,GAAG,MAAMM,GAAG,OAAOA,GAAG,OAAO,QAAQA,EAAE,SAASvC,EAAEmC,KAAKI,OAAO,GAAG,MAAM,IAAIhC,GAAG,CAAC,GAAGiF,GAAG1D,EAAE,OAAOpB,KAAK4lB,QAAQ,GAAG/lB,EAAE4B,EAAE,GAAG,MAAM,KAAKD,EAAEhC,EAAEsF,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAG1D,EAAE,OAAOpB,KAAK4lB,QAAQ,GAAG/lB,EAAEG,KAAK4lB,QAAQ,GAAGpkB,EAAEC,EAAE,GAAG,MAAM,KAAKF,EAAE/B,EAAEsF,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAG1D,EAAE,OAAOpB,KAAK4lB,QAAQ,GAAG/lB,EAAEG,KAAK4lB,QAAQ,GAAGpkB,EAAExB,KAAK4lB,QAAQ,GAAGrkB,EAAEE,EAAE,GAAG,MAAM,KAAKmB,EAAEpD,EAAEsF,OAAO,CAACA,IAAI,SAAS,IAAIjD,GAAG,EAAEhC,IAAI,IAAI,GAAG2B,IAAI,IAAI,GAAGD,IAAI,EAAE,GAAGqB,GAAG,OAAOf,EAAE,QAAQ,SAASvC,EAAEmC,KAAKI,GAAG,OAAOJ,GAAGjC,EAApmD,GAAymDF,EAAEimB,YAAY1lB,IAAIP,EAAE,GAAG,OAAO,SAAS8B,EAAEvB,GAAG,GAAGP,EAAEO,GAAG,OAAOP,EAAEO,GAAGR,QAAQ,IAAImC,EAAElC,EAAEO,GAAG,CAACR,QAAQ,IAAI,OAAOG,EAAEK,GAAGiC,KAAKN,EAAEnC,QAAQmC,EAAEA,EAAEnC,QAAQ+B,GAAGI,EAAEnC,QAA9G,CAAuH,MAA919D,I,QCEDF,KAA3JC,EAAOC,QAA2K,MAAM,aAAa,IAAIC,EAAE,CAACumB,KAAK,SAASvmB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEsmB,0BAAqB,EAAO,IAAItkB,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAM2E,EAAE,SAASlF,GAAG,SAASE,EAAEA,EAAEK,GAAG,IAAIuB,EAAE9B,EAAEwC,KAAK9B,OAAOA,KAAKoB,EAAEnB,UAAUT,EAAE4B,EAAEZ,eAAeX,EAAEuB,EAAE2kB,qBAAqB,EAAE3kB,EAAE4kB,gBAAgB,GAAG5kB,EAAE6kB,iBAAiB,GAAG7kB,EAAE8kB,uBAAuB5U,SAASC,cAAc,OAAOnQ,EAAE8kB,uBAAuB7K,UAAUC,IAAI,uBAAuBla,EAAE+kB,cAAc7U,SAASC,cAAc,OAAOnQ,EAAE+kB,cAAcC,aAAa,OAAO,QAAQhlB,EAAE+kB,cAAc9K,UAAUC,IAAI,4BAA4Bla,EAAEilB,aAAa,GAAG,IAAI,IAAI9kB,EAAE,EAAEA,EAAEH,EAAEnB,UAAUK,KAAKiB,IAAIH,EAAEilB,aAAa9kB,GAAGH,EAAEklB,+BAA+BllB,EAAE+kB,cAAcvU,YAAYxQ,EAAEilB,aAAa9kB,IAAI,GAAGH,EAAEmlB,0BAA0B,SAASjnB,GAAG,OAAO8B,EAAEolB,iBAAiBlnB,EAAE,IAAI8B,EAAEqlB,6BAA6B,SAASnnB,GAAG,OAAO8B,EAAEolB,iBAAiBlnB,EAAE,IAAI8B,EAAEilB,aAAa,GAAGK,iBAAiB,QAAQtlB,EAAEmlB,2BAA2BnlB,EAAEilB,aAAajlB,EAAEilB,aAAazhB,OAAO,GAAG8hB,iBAAiB,QAAQtlB,EAAEqlB,8BAA8BrlB,EAAEulB,yBAAyBvlB,EAAE8kB,uBAAuBtU,YAAYxQ,EAAE+kB,eAAe/kB,EAAEwlB,qBAAqB,IAAInlB,EAAEolB,gBAAgBzlB,EAAE0lB,YAAYtkB,KAAKpB,IAAIA,EAAE2lB,eAAe3lB,EAAE4lB,YAAY1V,SAASC,cAAc,OAAOnQ,EAAE4lB,YAAY3L,UAAUC,IAAI,eAAela,EAAE4lB,YAAYZ,aAAa,YAAY,aAAahlB,EAAE8kB,uBAAuBtU,YAAYxQ,EAAE4lB,cAAc5lB,EAAEnB,UAAUU,QAAQ,MAAM,IAAIuL,MAAM,oDAAoD,OAAO9K,EAAEnB,UAAUU,QAAQsmB,sBAAsB,aAAa7lB,EAAE8kB,wBAAwB9kB,EAAEghB,SAAShhB,EAAEwlB,sBAAsBxlB,EAAEghB,SAAShhB,EAAEnB,UAAU+I,UAAS,SAAU1J,GAAG,OAAO8B,EAAE8lB,UAAU5nB,EAAEgB,UAAUc,EAAEghB,SAAShhB,EAAEnB,UAAUknB,UAAS,SAAU7nB,GAAG,OAAO8B,EAAE2lB,aAAaznB,EAAEyF,MAAMzF,EAAE4F,SAAS9D,EAAEghB,SAAShhB,EAAEnB,UAAUmnB,UAAS,WAAY,OAAOhmB,EAAE2lB,mBAAmB3lB,EAAEghB,SAAShhB,EAAEnB,UAAUonB,YAAW,SAAU/nB,GAAG,OAAO8B,EAAEkmB,QAAQhoB,OAAO8B,EAAEghB,SAAShhB,EAAEnB,UAAUsnB,YAAW,WAAY,OAAOnmB,EAAEkmB,QAAQ,UAAUlmB,EAAEghB,SAAShhB,EAAEnB,UAAUunB,WAAU,SAAUloB,GAAG,OAAO8B,EAAEqmB,OAAOnoB,OAAO8B,EAAEghB,SAAShhB,EAAEnB,UAAUynB,OAAM,SAAUpoB,GAAG,OAAO8B,EAAEumB,OAAOroB,EAAEsoB,SAASxmB,EAAEghB,SAAShhB,EAAEnB,UAAU0S,QAAO,WAAY,OAAOvR,EAAEymB,uBAAuBzmB,EAAEghB,SAAShhB,EAAEZ,eAAesnB,oBAAmB,WAAY,OAAO1mB,EAAEulB,6BAA6BvlB,EAAE2mB,kBAAkB,IAAIljB,EAAEmjB,iBAAiB5mB,EAAEghB,SAAShhB,EAAE2mB,mBAAmB3mB,EAAE2mB,kBAAkBE,aAAY,WAAY,OAAO7mB,EAAEulB,4BAA4BvlB,EAAEghB,SAASpgB,EAAEkmB,yBAAyBlnB,OAAO,UAAS,WAAY,OAAOI,EAAEulB,6BAA6BvlB,EAAE,OAAOG,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUI,QAAQ,WAAWZ,EAAEQ,UAAUI,QAAQ4B,KAAK9B,MAAMsE,EAAE6jB,wBAAwBnoB,KAAKkmB,wBAAwBlmB,KAAKqmB,aAAazhB,OAAO,GAAGpF,EAAEM,UAAU0mB,iBAAiB,SAASlnB,EAAEE,GAAG,IAAIK,EAAEP,EAAE8oB,OAAOhnB,EAAEpB,KAAKqmB,aAAa,IAAI7mB,EAAE,EAAEQ,KAAKqmB,aAAazhB,OAAO,GAAG,GAAG/E,EAAEwoB,aAAa,oBAAoB,IAAI7oB,EAAE,IAAI,GAAGQ,KAAKC,UAAUqF,OAAOsO,MAAMhP,SAAStF,EAAEgpB,gBAAgBlnB,EAAE,CAAC,IAAIG,EAAEC,EAAE,GAAG,IAAIhC,GAAG+B,EAAE1B,EAAE2B,EAAExB,KAAKqmB,aAAakC,MAAMvoB,KAAKmmB,cAAc9T,YAAY7Q,KAAKD,EAAEvB,KAAKqmB,aAAamC,QAAQhnB,EAAE3B,EAAEG,KAAKmmB,cAAc9T,YAAY9Q,IAAIA,EAAEknB,oBAAoB,QAAQzoB,KAAKumB,2BAA2B/kB,EAAEinB,oBAAoB,QAAQzoB,KAAKymB,8BAA8B,IAAIjnB,EAAE,CAAC,IAAIoD,EAAE5C,KAAKsmB,+BAA+BtmB,KAAKqmB,aAAaqC,QAAQ9lB,GAAG5C,KAAKmmB,cAAcc,sBAAsB,aAAarkB,QAAQA,EAAE5C,KAAKsmB,+BAA+BtmB,KAAKqmB,aAAalhB,KAAKvC,GAAG5C,KAAKmmB,cAAcvU,YAAYhP,GAAG5C,KAAKqmB,aAAa,GAAGK,iBAAiB,QAAQ1mB,KAAKumB,2BAA2BvmB,KAAKqmB,aAAarmB,KAAKqmB,aAAazhB,OAAO,GAAG8hB,iBAAiB,QAAQ1mB,KAAKymB,8BAA8BzmB,KAAKC,UAAU0oB,YAAY,IAAInpB,GAAG,EAAE,GAAGQ,KAAKqmB,aAAa,IAAI7mB,EAAE,EAAEQ,KAAKqmB,aAAazhB,OAAO,GAAGgkB,QAAQtpB,EAAEupB,iBAAiBvpB,EAAEwpB,6BAA6BtpB,EAAEM,UAAUonB,UAAU,SAAS5nB,GAAGU,KAAKqmB,aAAarmB,KAAKqmB,aAAazhB,OAAO,GAAG6jB,oBAAoB,QAAQzoB,KAAKymB,8BAA8B,IAAI,IAAIjnB,EAAEQ,KAAKmmB,cAAc4C,SAASnkB,OAAOpF,EAAEQ,KAAKC,UAAUK,KAAKd,IAAIQ,KAAKqmB,aAAa7mB,GAAGQ,KAAKsmB,+BAA+BtmB,KAAKmmB,cAAcvU,YAAY5R,KAAKqmB,aAAa7mB,IAAI,KAAKQ,KAAKqmB,aAAazhB,OAAOtF,GAAGU,KAAKmmB,cAAc9T,YAAYrS,KAAKqmB,aAAakC,OAAOvoB,KAAKqmB,aAAarmB,KAAKqmB,aAAazhB,OAAO,GAAG8hB,iBAAiB,QAAQ1mB,KAAKymB,8BAA8BzmB,KAAK2mB,0BAA0BnnB,EAAEM,UAAUwmB,6BAA6B,WAAW,IAAIhnB,EAAEgS,SAASC,cAAc,OAAO,OAAOjS,EAAE8mB,aAAa,OAAO,YAAY9mB,EAAE0pB,UAAU,EAAEhpB,KAAKipB,sBAAsB3pB,GAAGA,GAAGE,EAAEM,UAAU2nB,OAAO,SAASnoB,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEF,EAAEE,IAAIQ,KAAKsnB,QAAQ,MAAM9nB,EAAEM,UAAUwnB,QAAQ,SAAShoB,GAAG,IAAIE,EAAEQ,KAAKA,KAAK+lB,qBAAqB,KAAK/lB,KAAKgmB,gBAAgBphB,OAAO,EAAE5E,KAAKgmB,gBAAgBwC,UAAUlpB,IAAIU,KAAKimB,kBAAkB3mB,GAAGU,KAAKimB,kBAAkB3mB,EAAE,OAAOA,IAAIU,KAAK+lB,uBAAuB,KAAK/lB,KAAK+lB,uBAAuB/lB,KAAKgnB,YAAYkC,aAAa1nB,EAAE2nB,gBAAgBvmB,EAAEwmB,OAAOppB,KAAKgnB,YAAYkC,aAAalpB,KAAKgnB,YAAYkC,YAAYtkB,OAAO,IAAI5E,KAAKgnB,YAAYqC,YAAYhK,YAAW,WAAY7f,EAAE0mB,uBAAuBtU,YAAYpS,EAAEwnB,eAAe,KAAKxnB,EAAEM,UAAU+nB,iBAAiB,WAAW7nB,KAAKgnB,YAAYkC,YAAY,GAAGlpB,KAAK+lB,qBAAqB,EAAEnjB,EAAEwmB,OAAO9kB,EAAE6jB,wBAAwBnoB,KAAKgnB,cAAcxnB,EAAEM,UAAU6nB,OAAO,SAASroB,GAAGU,KAAK6nB,mBAAmB7nB,KAAKgmB,gBAAgB7gB,KAAK7F,IAAIE,EAAEM,UAAUinB,aAAa,SAASznB,EAAEE,GAAGQ,KAAK4mB,qBAAqB0C,QAAQhqB,EAAEE,EAAEQ,KAAKC,UAAUK,OAAOd,EAAEM,UAAUgnB,YAAY,SAASxnB,EAAEE,GAAG,IAAI,IAAIK,EAAEG,KAAKC,UAAUqF,OAAOlE,EAAEvB,EAAE+T,MAAMhP,OAAO8V,WAAWnZ,EAAEjC,EAAEiC,GAAG/B,EAAE+B,IAAI,CAAC,IAAIC,EAAE3B,EAAE0pB,4BAA4B1pB,EAAE8T,MAAMpS,GAAE,GAAIqB,GAAG/C,EAAE8T,MAAMpS,EAAE,GAAGmZ,WAAWjZ,EAAEzB,KAAKqmB,aAAa9kB,GAAGE,IAAI,IAAID,EAAEoD,OAAOnD,EAAE+nB,UAAU,IAAI/nB,EAAEynB,YAAY1nB,EAAEC,EAAE2kB,aAAa,gBAAgBxjB,GAAGnB,EAAE2kB,aAAa,eAAehlB,IAAIpB,KAAKypB,uBAAuBjqB,EAAEM,UAAU6mB,uBAAuB,WAAW,GAAG3mB,KAAKQ,eAAeK,WAAWE,iBAAiB,CAACf,KAAKqmB,aAAazhB,SAAS5E,KAAKC,UAAUK,MAAMN,KAAKknB,UAAUlnB,KAAKC,UAAUK,MAAM,IAAI,IAAIhB,EAAE,EAAEA,EAAEU,KAAKC,UAAUK,KAAKhB,IAAIU,KAAKipB,sBAAsBjpB,KAAKqmB,aAAa/mB,MAAME,EAAEM,UAAUmpB,sBAAsB,SAAS3pB,GAAGA,EAAEoT,MAAMrG,OAAOrM,KAAKQ,eAAeK,WAAWE,iBAAiB,MAAMvB,EAAEM,UAAU2pB,oBAAoB,WAAW,IAAIzpB,KAAKimB,iBAAiBrhB,SAAS5E,KAAKgnB,YAAYkC,aAAalpB,KAAKimB,iBAAiBjmB,KAAKimB,iBAAiB,KAAKzmB,EAA9hM,CAAiiMqC,EAAEqS,YAAY1U,EAAEsmB,qBAAqBthB,GAAGklB,KAAK,CAACpqB,EAAEE,KAAK,SAASK,EAAEP,GAAG,OAAOA,EAAEqqB,QAAQ,SAAS,MAAM,SAASvoB,EAAE9B,EAAEE,GAAG,OAAOA,EAAE,SAASF,EAAE,SAASA,EAAE,SAASiC,EAAEjC,EAAEE,EAAE+B,GAAGjC,EAAE8B,EAAE9B,EAAEO,EAAEP,GAAGiC,EAAEqoB,gBAAgBC,oBAAoBtoB,EAAEuoB,iBAAiBxqB,GAAE,GAAIE,EAAEG,MAAM,GAAG,SAAS6B,EAAElC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEvB,EAAEkqB,wBAAwBxoB,EAAEjC,EAAE0qB,QAAQ5oB,EAAEkW,KAAK,GAAG9V,EAAElC,EAAE2qB,QAAQ7oB,EAAEiW,IAAI,GAAG7X,EAAEkT,MAAMtG,MAAM,OAAO5M,EAAEkT,MAAMrG,OAAO,OAAO7M,EAAEkT,MAAM4E,KAAK/V,EAAE,KAAK/B,EAAEkT,MAAM2E,IAAI7V,EAAE,KAAKhC,EAAEkT,MAAM6I,OAAO,OAAO/b,EAAEopB,QAAQnpB,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE0qB,kBAAkB1qB,EAAE2qB,6BAA6B3qB,EAAE4qB,MAAM5qB,EAAE6qB,iBAAiB7qB,EAAE8qB,YAAY9qB,EAAE+qB,oBAAoB/qB,EAAEgrB,4BAAuB,EAAOhrB,EAAEgrB,uBAAuB3qB,EAAEL,EAAE+qB,oBAAoBnpB,EAAE5B,EAAE8qB,YAAY,SAAShrB,EAAEE,GAAGF,EAAEmrB,eAAenrB,EAAEmrB,cAAcC,QAAQ,aAAalrB,EAAEmrB,eAAerrB,EAAEupB,kBAAkBrpB,EAAE6qB,iBAAiB,SAAS/qB,EAAEE,EAAEK,GAAGP,EAAEsrB,kBAAkBtrB,EAAEmrB,eAAelpB,EAAEjC,EAAEmrB,cAAcI,QAAQ,cAAcrrB,EAAEK,IAAIL,EAAE4qB,MAAM7oB,EAAE/B,EAAE2qB,6BAA6B3oB,EAAEhC,EAAE0qB,kBAAkB,SAAS5qB,EAAEE,EAAEK,EAAEuB,EAAEG,GAAGC,EAAElC,EAAEE,EAAEK,GAAG0B,GAAGH,EAAE0pB,iBAAiBxrB,GAAGE,EAAEG,MAAMyB,EAAEupB,cAAcnrB,EAAEurB,WAAWC,KAAK,CAAC1rB,EAAEE,KAAK,IAAIK,EAAEuB,EAAEG,EAAEC,EAAE,SAASoB,EAAEtD,GAAG,IAAIE,EAAEF,EAAEob,SAAS,IAAI,OAAOlb,EAAEoF,OAAO,EAAE,IAAIpF,EAAEA,EAAE,SAASiC,EAAEnC,EAAEE,GAAG,OAAOF,EAAEE,GAAGA,EAAE,MAAMF,EAAE,MAAMA,EAAE,MAAME,EAAE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEghB,cAAchhB,EAAEihB,YAAYjhB,EAAE6K,KAAK7K,EAAEkhB,IAAIlhB,EAAEuW,IAAIvW,EAAEmhB,MAAMnhB,EAAE6Y,cAAS,EAAO,SAAS/Y,GAAGA,EAAEgZ,MAAM,SAAShZ,EAAEE,EAAEK,EAAEuB,GAAG,YAAO,IAASA,EAAE,IAAIwB,EAAEtD,GAAGsD,EAAEpD,GAAGoD,EAAE/C,GAAG+C,EAAExB,GAAG,IAAIwB,EAAEtD,GAAGsD,EAAEpD,GAAGoD,EAAE/C,IAAIP,EAAEshB,OAAO,SAASthB,EAAEE,EAAEK,EAAEuB,GAAG,YAAO,IAASA,IAAIA,EAAE,MAAM9B,GAAG,GAAGE,GAAG,GAAGK,GAAG,EAAEuB,KAAK,GAAjL,CAAqLvB,EAAEL,EAAE6Y,WAAW7Y,EAAE6Y,SAAS,MAAMjX,EAAE5B,EAAEmhB,QAAQnhB,EAAEmhB,MAAM,KAAKE,MAAM,SAASvhB,EAAEE,GAAG,IAAI4B,GAAG,IAAI5B,EAAE6K,MAAM,IAAI,GAAG,IAAIjJ,EAAE,MAAM,CAAC2U,IAAIvW,EAAEuW,IAAI1L,KAAK7K,EAAE6K,MAAM,IAAI9I,EAAE/B,EAAE6K,MAAM,GAAG,IAAI7I,EAAEhC,EAAE6K,MAAM,GAAG,IAAIzH,EAAEpD,EAAE6K,MAAM,EAAE,IAAI5I,EAAEnC,EAAE+K,MAAM,GAAG,IAAIrI,EAAE1C,EAAE+K,MAAM,GAAG,IAAIxI,EAAEvC,EAAE+K,MAAM,EAAE,IAAIxF,EAAEpD,EAAEJ,KAAK4S,OAAO1S,EAAEE,GAAGL,GAAGkD,EAAEtC,EAAEX,KAAK4S,OAAOzS,EAAEQ,GAAGZ,GAAGoD,EAAE3C,EAAER,KAAK4S,OAAOrR,EAAEf,GAAGT,GAAG,MAAM,CAAC2U,IAAIlW,EAAEyY,MAAMzT,EAAEP,EAAEE,GAAG6F,KAAKxK,EAAE+gB,OAAO/b,EAAEP,EAAEE,KAAKpD,EAAE0f,SAAS,SAASxhB,GAAG,OAAO,MAAM,IAAIA,EAAE+K,OAAOjJ,EAAEuX,oBAAoB,SAASrZ,EAAEE,EAAEK,GAAG,IAAIuB,EAAEI,EAAEmX,oBAAoBrZ,EAAE+K,KAAK7K,EAAE6K,KAAKxK,GAAG,GAAGuB,EAAE,OAAOI,EAAEuf,QAAQ3f,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,MAAMA,EAAE4f,OAAO,SAAS1hB,GAAG,IAAIE,GAAG,IAAIF,EAAE+K,QAAQ,EAAEjJ,EAAEI,EAAEyf,WAAWzhB,GAAG+B,EAAEH,EAAE,GAAGwB,EAAExB,EAAE,GAAGK,EAAEL,EAAE,GAAG,MAAM,CAAC2U,IAAIlW,EAAEyY,MAAM/W,EAAEqB,EAAEnB,GAAG4I,KAAK7K,IAAI4B,EAAE8f,QAAQ,SAAS5hB,EAAEE,GAAG,IAAI4B,EAAEC,KAAK4S,MAAM,IAAIzU,GAAG+B,EAAEC,EAAEyf,WAAW3hB,EAAE+K,MAAMzH,EAAErB,EAAE,GAAGE,EAAEF,EAAE,GAAGS,EAAET,EAAE,GAAG,MAAM,CAACwU,IAAIlW,EAAEyY,MAAM1V,EAAEnB,EAAEO,EAAEZ,GAAGiJ,KAAKxK,EAAE+gB,OAAOhe,EAAEnB,EAAEO,EAAEZ,MAAM5B,EAAEuW,MAAMvW,EAAEuW,IAAI,KAAKgL,QAAQ,SAASzhB,GAAG,OAAOA,EAAEsF,QAAQ,KAAK,EAAE,MAAM,CAACmR,IAAIzW,EAAE+K,MAAMnJ,SAAS5B,EAAE6K,MAAM,GAAG,KAAK,EAAE,OAAO,GAAG,KAAK,EAAE,MAAM,CAAC4L,IAAIzW,EAAE+K,KAAKnJ,SAAS5B,EAAE6K,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI+B,MAAM,wCAAwC,SAAS5M,GAAG,SAASE,EAAEF,EAAEE,EAAEK,GAAG,IAAIuB,EAAE9B,EAAE,IAAIiC,EAAE/B,EAAE,IAAIgC,EAAE3B,EAAE,IAAI,MAAM,OAAOuB,GAAG,OAAOA,EAAE,MAAMC,KAAK8f,KAAK/f,EAAE,MAAM,MAAM,MAAM,OAAOG,GAAG,OAAOA,EAAE,MAAMF,KAAK8f,KAAK5f,EAAE,MAAM,MAAM,MAAM,OAAOC,GAAG,OAAOA,EAAE,MAAMH,KAAK8f,KAAK3f,EAAE,MAAM,MAAM,MAAMlC,EAAE8hB,kBAAkB,SAAS9hB,GAAG,OAAOE,EAAEF,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAE+hB,mBAAmB7hB,EAA9T,CAAiU+B,EAAE/B,EAAEkhB,MAAMlhB,EAAEkhB,IAAI,KAAK,SAASphB,GAAG,SAASE,EAAEF,EAAEE,EAAEK,GAAG,IAAI,IAAIuB,EAAE9B,GAAG,GAAG,IAAIkC,EAAElC,GAAG,GAAG,IAAIsD,EAAEtD,GAAG,EAAE,IAAI0C,EAAExC,GAAG,GAAG,IAAIqC,EAAErC,GAAG,GAAG,IAAIqF,EAAErF,GAAG,EAAE,IAAI8E,EAAE7C,EAAEF,EAAE8f,mBAAmBrf,EAAE6C,EAAEhD,GAAGN,EAAE8f,mBAAmBjgB,EAAEI,EAAEoB,IAAI0B,EAAEzE,IAAImC,EAAE,GAAGH,EAAE,GAAGgD,EAAE,IAAI7C,GAAGX,KAAKC,IAAI,EAAED,KAAK0S,KAAK,GAAG/R,IAAIH,GAAGR,KAAKC,IAAI,EAAED,KAAK0S,KAAK,GAAGlS,IAAIgD,GAAGxD,KAAKC,IAAI,EAAED,KAAK0S,KAAK,GAAGlP,IAAIP,EAAE7C,EAAEF,EAAE8f,mBAAmBrf,EAAE6C,EAAEhD,GAAGN,EAAE8f,mBAAmBjgB,EAAEI,EAAEoB,IAAI,OAAOZ,GAAG,GAAGH,GAAG,GAAGgD,GAAG,EAAE,OAAO,EAAE,SAASzD,EAAE9B,EAAEE,EAAEK,GAAG,IAAI,IAAIuB,EAAE9B,GAAG,GAAG,IAAIkC,EAAElC,GAAG,GAAG,IAAIsD,EAAEtD,GAAG,EAAE,IAAI0C,EAAExC,GAAG,GAAG,IAAIqC,EAAErC,GAAG,GAAG,IAAIqF,EAAErF,GAAG,EAAE,IAAI8E,EAAE7C,EAAEF,EAAE8f,mBAAmBrf,EAAE6C,EAAEhD,GAAGN,EAAE8f,mBAAmBjgB,EAAEI,EAAEoB,IAAI0B,EAAEzE,IAAImC,EAAE,KAAKH,EAAE,KAAKgD,EAAE,MAAM7C,EAAEX,KAAK2N,IAAI,IAAIhN,EAAEX,KAAK0S,KAAK,IAAI,IAAI/R,KAAKH,EAAER,KAAK2N,IAAI,IAAInN,EAAER,KAAK0S,KAAK,IAAI,IAAIlS,KAAKgD,EAAExD,KAAK2N,IAAI,IAAInK,EAAExD,KAAK0S,KAAK,IAAI,IAAIlP,KAAKP,EAAE7C,EAAEF,EAAE8f,mBAAmBrf,EAAE6C,EAAEhD,GAAGN,EAAE8f,mBAAmBjgB,EAAEI,EAAEoB,IAAI,OAAOZ,GAAG,GAAGH,GAAG,GAAGgD,GAAG,EAAE,OAAO,EAAEvF,EAAEqZ,oBAAoB,SAASrZ,EAAEO,EAAE2B,GAAG,IAAIoB,EAAErB,EAAE6f,kBAAkB9hB,GAAG,GAAG0C,EAAET,EAAE6f,kBAAkBvhB,GAAG,GAAG,GAAG4B,EAAEmB,EAAEZ,GAAGR,EAAE,OAAOQ,EAAEY,EAAEpD,EAAEF,EAAEO,EAAE2B,GAAGJ,EAAE9B,EAAEO,EAAE2B,IAAIlC,EAAEgiB,gBAAgB9hB,EAAEF,EAAEiiB,kBAAkBngB,EAAE9B,EAAE2hB,WAAW,SAAS3hB,GAAG,MAAM,CAACA,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,IAAIA,EAAEyhB,QAAQ,SAASzhB,EAAEE,EAAE4B,GAAG,MAAM,CAAC2U,IAAIlW,EAAEyY,MAAMhZ,EAAEE,EAAE4B,GAAGiJ,KAAKxK,EAAE+gB,OAAOthB,EAAEE,EAAE4B,KAA1kC,CAAglCI,EAAEhC,EAAE6K,OAAO7K,EAAE6K,KAAK,KAAK7K,EAAEihB,YAAY7d,EAAEpD,EAAEghB,cAAc/e,GAAGwpB,KAAK,CAAC3rB,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE0rB,wBAAmB,EAAO,IAAIrrB,EAAE,WAAW,SAASP,IAAIU,KAAKmrB,OAAO,GAAGnrB,KAAKorB,MAAM,GAAG,OAAO9rB,EAAEQ,UAAUW,MAAM,WAAWT,KAAKmrB,OAAO,GAAGnrB,KAAKorB,MAAM,IAAI9rB,EAAEQ,UAAU8Y,OAAO,SAAStZ,EAAEE,EAAEK,GAAGG,KAAKorB,MAAM9rB,KAAKU,KAAKorB,MAAM9rB,GAAG,IAAIU,KAAKorB,MAAM9rB,GAAGE,GAAGK,GAAGP,EAAEQ,UAAU4Y,OAAO,SAASpZ,EAAEE,GAAG,OAAOQ,KAAKorB,MAAM9rB,GAAGU,KAAKorB,MAAM9rB,GAAGE,QAAG,GAAQF,EAAEQ,UAAUurB,SAAS,SAAS/rB,EAAEE,EAAEK,GAAGG,KAAKmrB,OAAO7rB,KAAKU,KAAKmrB,OAAO7rB,GAAG,IAAIU,KAAKmrB,OAAO7rB,GAAGE,GAAGK,GAAGP,EAAEQ,UAAUwrB,SAAS,SAAShsB,EAAEE,GAAG,OAAOQ,KAAKmrB,OAAO7rB,GAAGU,KAAKmrB,OAAO7rB,GAAGE,QAAG,GAAQF,EAAhd,GAAqdE,EAAE0rB,mBAAmBrrB,GAAG0rB,KAAK,CAACjsB,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEgsB,aAAahsB,EAAEisB,yBAAoB,EAAO,IAAIrqB,EAAEvB,EAAE,MAAM0B,EAAE1B,EAAE,MAAM2B,EAAEJ,EAAE2U,IAAIgL,QAAQ,WAAWne,EAAExB,EAAE2U,IAAIgL,QAAQ,WAAWtf,EAAEL,EAAE2U,IAAIgL,QAAQ,WAAW/e,EAAEZ,EAAE2U,IAAIgL,QAAQ,WAAWlf,EAAE,CAACkU,IAAI,2BAA2B1L,KAAK,YAAY7K,EAAEisB,oBAAoBhsB,OAAOisB,OAAO,WAAW,IAAI,IAAIpsB,EAAE,CAAC8B,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,WAAW3f,EAAE2U,IAAIgL,QAAQ,YAAYvhB,EAAE,CAAC,EAAE,GAAG,IAAI,IAAI,IAAI,KAAKK,EAAE,EAAEA,EAAE,IAAIA,IAAI,CAAC,IAAI0B,EAAE/B,EAAEK,EAAE,GAAG,EAAE,GAAG2B,EAAEhC,EAAEK,EAAE,EAAE,EAAE,GAAG+C,EAAEpD,EAAEK,EAAE,GAAGP,EAAE6F,KAAK,CAAC4Q,IAAI3U,EAAEiX,SAASC,MAAM/W,EAAEC,EAAEoB,GAAGyH,KAAKjJ,EAAEiX,SAASuI,OAAOrf,EAAEC,EAAEoB,KAAK,IAAI/C,EAAE,EAAEA,EAAE,GAAGA,IAAI,CAAC,IAAI4B,EAAE,EAAE,GAAG5B,EAAEP,EAAE6F,KAAK,CAAC4Q,IAAI3U,EAAEiX,SAASC,MAAM7W,EAAEA,EAAEA,GAAG4I,KAAKjJ,EAAEiX,SAASuI,OAAOnf,EAAEA,EAAEA,KAAK,OAAOnC,EAArqB,IAA2qB,IAAIuF,EAAE,WAAW,SAASvF,EAAEA,EAAEO,GAAGG,KAAKwW,kBAAkB3W,EAAE,IAAIgF,EAAEvF,EAAEiS,cAAc,UAAU1M,EAAEuH,MAAM,EAAEvH,EAAEwH,OAAO,EAAE,IAAI/H,EAAEO,EAAE8M,WAAW,MAAM,IAAIrN,EAAE,MAAM,IAAI4H,MAAM,mCAAmClM,KAAKyb,KAAKnX,EAAEtE,KAAKyb,KAAKlC,yBAAyB,OAAOvZ,KAAK2rB,aAAa3rB,KAAKyb,KAAKmQ,qBAAqB,EAAE,EAAE,EAAE,GAAG5rB,KAAK6rB,eAAe,IAAItqB,EAAE2pB,mBAAmBlrB,KAAKuP,OAAO,CAACf,WAAWhN,EAAEoK,WAAWhJ,EAAEoT,OAAOvU,EAAEwU,aAAajU,EAAEkU,qBAAqBrU,EAAEuI,gBAAgBhJ,EAAEuf,MAAME,MAAMje,EAAEf,GAAGoK,KAAKzM,EAAEisB,oBAAoBthB,QAAQgM,cAAcnW,KAAK6rB,gBAAgB,OAAOvsB,EAAEQ,UAAUgsB,gBAAgB,SAASxsB,GAAG,yBAAyBA,GAAGU,KAAK6rB,eAAeprB,SAASnB,EAAEQ,UAAUisB,SAAS,SAASzsB,QAAG,IAASA,IAAIA,EAAE,IAAIU,KAAKuP,OAAOf,WAAWxO,KAAKgsB,YAAY1sB,EAAEkP,WAAWhN,GAAGxB,KAAKuP,OAAO3D,WAAW5L,KAAKgsB,YAAY1sB,EAAEsM,WAAWhJ,GAAG5C,KAAKuP,OAAOyG,OAAOhW,KAAKgsB,YAAY1sB,EAAE0W,OAAOvU,GAAE,GAAIzB,KAAKuP,OAAO0G,aAAajW,KAAKgsB,YAAY1sB,EAAE2W,aAAajU,GAAE,GAAIhC,KAAKuP,OAAO2G,qBAAqBlW,KAAKgsB,YAAY1sB,EAAEgL,UAAUzI,GAAE,GAAI7B,KAAKuP,OAAOnF,gBAAgBhJ,EAAEuf,MAAME,MAAM7gB,KAAKuP,OAAO3D,WAAW5L,KAAKuP,OAAO2G,sBAAsB9U,EAAEuf,MAAMG,SAAS9gB,KAAKuP,OAAO2G,wBAAwBlW,KAAKuP,OAAO2G,qBAAqB9U,EAAEuf,MAAMO,QAAQlhB,KAAKuP,OAAO2G,qBAAqB,KAAKlW,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAE2sB,MAAMzsB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAE4sB,IAAI1sB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAE6sB,MAAM3sB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAE8sB,OAAO5sB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAE+sB,KAAK7sB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAEgtB,QAAQ9sB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAEitB,KAAK/sB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAEktB,MAAMhtB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAEmtB,YAAYjtB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,GAAGjM,KAAKgsB,YAAY1sB,EAAEotB,UAAUltB,EAAEisB,oBAAoB,IAAIzrB,KAAKuP,OAAOtD,KAAK,IAAIjM,KAAKgsB,YAAY1sB,EAAEqtB,YAAYntB,EAAEisB,oBAAoB,KAAKzrB,KAAKuP,OAAOtD,KAAK,IAAIjM,KAAKgsB,YAAY1sB,EAAEstB,aAAaptB,EAAEisB,oBAAoB,KAAKzrB,KAAKuP,OAAOtD,KAAK,IAAIjM,KAAKgsB,YAAY1sB,EAAEutB,WAAWrtB,EAAEisB,oBAAoB,KAAKzrB,KAAKuP,OAAOtD,KAAK,IAAIjM,KAAKgsB,YAAY1sB,EAAEwtB,cAActtB,EAAEisB,oBAAoB,KAAKzrB,KAAKuP,OAAOtD,KAAK,IAAIjM,KAAKgsB,YAAY1sB,EAAEytB,WAAWvtB,EAAEisB,oBAAoB,KAAKzrB,KAAKuP,OAAOtD,KAAK,IAAIjM,KAAKgsB,YAAY1sB,EAAE0tB,YAAYxtB,EAAEisB,oBAAoB,KAAKzrB,KAAK6rB,eAAeprB,SAASnB,EAAEQ,UAAUksB,YAAY,SAAS1sB,EAAEE,EAAEK,GAAG,QAAG,IAASA,IAAIA,EAAEG,KAAKwW,wBAAmB,IAASlX,EAAE,OAAOE,EAAE,GAAGQ,KAAKyb,KAAKjC,UAAUxZ,KAAK2rB,aAAa3rB,KAAKyb,KAAKjC,UAAUla,EAAE,iBAAiBU,KAAKyb,KAAKjC,UAAU,OAAOrW,QAAQC,KAAK,UAAU9D,EAAE,8BAA8BE,EAAEuW,KAAKvW,EAAEQ,KAAKyb,KAAKhC,SAAS,EAAE,EAAE,EAAE,GAAG,IAAIlY,EAAEvB,KAAKyb,KAAKxB,aAAa,EAAE,EAAE,EAAE,GAAGC,KAAK,GAAG,MAAM3Y,EAAE,GAAG,CAAC,IAAI1B,EAAE,OAAOsD,QAAQC,KAAK,UAAU9D,EAAE,0EAA0EE,EAAEuW,IAAI,KAAKvW,EAAE,IAAIgC,EAAExB,KAAKyb,KAAKjC,UAAU7T,UAAU,EAAE3F,KAAKyb,KAAKjC,UAAU5U,OAAO,GAAGqoB,MAAM,KAAKC,KAAI,SAAU5tB,GAAG,OAAO6tB,OAAO7tB,MAAMsD,EAAEpB,EAAE,GAAGC,EAAED,EAAE,GAAGQ,EAAER,EAAE,GAAGK,EAAEL,EAAE,GAAGqD,EAAExD,KAAK4S,MAAM,IAAIpS,GAAG,MAAM,CAACwI,KAAKjJ,EAAEiX,SAASuI,OAAOhe,EAAEnB,EAAEO,EAAE6C,GAAGkR,IAAIzW,GAAG,MAAM,CAACyW,IAAI/V,KAAKyb,KAAKjC,UAAUnP,KAAKjJ,EAAEiX,SAASuI,OAAOrf,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,MAAMjC,EAAlpG,GAAupGE,EAAEgsB,aAAa3mB,GAAGuoB,KAAK,CAAC9tB,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE2oB,6BAAwB,EAAO3oB,EAAE2oB,wBAAwB,WAAW,IAAI,IAAI7oB,EAAEE,EAAE,GAAGK,EAAE,EAAEA,EAAEukB,UAAUxf,OAAO/E,IAAIL,EAAEK,GAAGukB,UAAUvkB,GAAG,IAAI,IAAIuB,EAAE,EAAEG,EAAE/B,EAAE4B,EAAEG,EAAEqD,OAAOxD,IAAI,CAAC,IAAII,EAAED,EAAEH,GAAG,QAAQ9B,EAAE,MAAMkC,OAAE,EAAOA,EAAEZ,qBAAgB,IAAStB,GAAGA,EAAE+S,YAAY7Q,MAAM6rB,KAAK,CAAC/tB,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE0oB,8BAAyB,EAAO1oB,EAAE0oB,yBAAyB,SAAS5oB,EAAEE,EAAEK,EAAEuB,GAAG9B,EAAEonB,iBAAiBlnB,EAAEK,EAAEuB,GAAG,IAAIG,GAAE,EAAG,MAAM,CAACrB,QAAQ,WAAWqB,IAAIA,GAAE,EAAGjC,EAAEmpB,oBAAoBjpB,EAAEK,EAAEuB,QAAQksB,KAAK,SAAShuB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEouB,UAAUpuB,EAAEquB,eAAU,EAAO,IAAIrsB,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE,WAAW,SAASnC,EAAEA,EAAEE,EAAEK,GAAGG,KAAK8tB,eAAexuB,EAAEU,KAAK+tB,YAAYvuB,EAAEQ,KAAKguB,gBAAgBnuB,EAAEG,KAAKiuB,cAAc,GAAGjuB,KAAKkuB,mBAAmB,EAAEluB,KAAK6f,qBAAqB,IAAIre,EAAEiP,aAAazQ,KAAK+f,qBAAqB,IAAIve,EAAEiP,aAAazQ,KAAKmuB,eAAe,IAAI3sB,EAAEiP,aAAazQ,KAAKouB,eAAe,CAACrpB,WAAM,EAAOG,SAAI,GAAQ,OAAOzF,OAAOC,eAAeJ,EAAEQ,UAAU,sBAAsB,CAACqC,IAAI,WAAW,OAAOnC,KAAK6f,qBAAqB1N,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,sBAAsB,CAACqC,IAAI,WAAW,OAAOnC,KAAK+f,qBAAqB5N,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAKmuB,eAAehc,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUuuB,YAAY,SAAS/uB,EAAEE,GAAGQ,KAAKsuB,SAAShvB,EAAEU,KAAKuuB,kBAAkB/uB,GAAGF,EAAEQ,UAAU0uB,YAAY,SAAShvB,EAAEK,GAAG,IAAIuB,EAAEpB,KAAKA,KAAKuuB,yBAAoB,IAASvuB,KAAKouB,eAAerpB,YAAO,IAAS/E,KAAKouB,eAAelpB,KAAKlF,KAAKouB,eAAerpB,MAAMvF,EAAEQ,KAAKouB,eAAelpB,IAAIrF,IAAIG,KAAKouB,eAAerpB,MAAM1D,KAAK2N,IAAIhP,KAAKouB,eAAerpB,MAAMvF,GAAGQ,KAAKouB,eAAelpB,IAAI7D,KAAKC,IAAItB,KAAKouB,eAAelpB,IAAIrF,IAAIG,KAAKuuB,kBAAkBE,SAASjvB,EAAEK,GAAGG,KAAK0uB,gBAAgB5P,aAAa9e,KAAK0uB,gBAAgB1uB,KAAK0uB,eAAerP,YAAW,WAAY,OAAOje,EAAEutB,iBAAiBrvB,EAAEsvB,sBAAsBtvB,EAAEQ,UAAU6uB,aAAa,WAAW3uB,KAAK0uB,oBAAe,EAAO,IAAIpvB,EAAEU,KAAK8tB,eAAexoB,OAAO,QAAG,IAAStF,KAAKouB,eAAerpB,YAAO,IAAS/E,KAAKouB,eAAelpB,IAAI,CAAC,IAAI1F,EAAEF,EAAEqU,MAAM3T,KAAKouB,eAAerpB,MAAM,KAAKvF,GAAGF,EAAEsU,MAAMhP,QAAQ,CAAC,IAAI,IAAI/E,EAAEP,EAAEqU,MAAMtS,KAAK2N,IAAIhP,KAAKouB,eAAelpB,IAAIlF,KAAK8tB,eAAextB,MAAM,EAAEc,EAAEC,KAAK0S,KAAK,IAAI/T,KAAK8tB,eAAevtB,MAAMgB,EAAEvB,KAAK8tB,eAAexoB,OAAOupB,UAAS,EAAGrvB,EAAEK,EAAEuB,EAAEA,GAAGG,EAAEutB,WAAW,IAAI,IAAIttB,EAAED,EAAEwtB,OAAOnsB,EAAE,EAAEA,EAAE5C,KAAKiuB,cAAcrpB,OAAOhC,IAAI5C,KAAKgvB,cAAcxtB,EAAE4D,MAAM6pB,MAAMztB,EAAE4c,QAAQpe,KAAKiuB,cAAcrrB,IAAI5C,KAAKouB,eAAerpB,WAAM,EAAO/E,KAAKouB,eAAelpB,SAAI,QAAalF,KAAK+tB,YAAYmB,MAAM,2DAA2D5vB,EAAEQ,UAAU+D,oBAAoB,SAASvE,EAAEE,EAAEK,GAAG,QAAG,IAASA,IAAIA,EAAE,KAAKL,EAAE,MAAM,IAAI0M,MAAM,2BAA2B,IAAI9K,EAAE,CAAC+tB,GAAGnvB,KAAKkuB,qBAAqBkB,MAAM9vB,EAAE+vB,QAAQ7vB,EAAEgE,WAAW3D,EAAE2D,WAAW8rB,mBAAmBzvB,EAAEyvB,mBAAmBC,qBAAqB1vB,EAAE2vB,gBAAgBC,mBAAmB5vB,EAAE6vB,cAAcC,iBAAiB9vB,EAAE8vB,iBAAiBC,SAAS/vB,EAAE+vB,UAAU,GAAG,OAAO5vB,KAAK6vB,sBAAsBzuB,GAAGA,EAAE+tB,IAAI7vB,EAAEQ,UAAU+vB,sBAAsB,SAASvwB,GAAG,GAAG,IAAIU,KAAKiuB,cAAcrpB,OAAO,CAAC,IAAI,IAAIpF,EAAEQ,KAAKiuB,cAAcrpB,OAAO,EAAEpF,GAAG,EAAEA,IAAI,GAAGF,EAAEswB,UAAU5vB,KAAKiuB,cAAczuB,GAAGowB,SAAS,YAAY5vB,KAAKiuB,cAActY,OAAOnW,EAAE,EAAE,EAAEF,GAAGU,KAAKiuB,cAActY,OAAO,EAAE,EAAErW,QAAQU,KAAKiuB,cAAc9oB,KAAK7F,IAAIA,EAAEQ,UAAUgE,sBAAsB,SAASxE,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEQ,KAAKiuB,cAAcrpB,OAAOpF,IAAI,GAAGQ,KAAKiuB,cAAczuB,GAAG2vB,KAAK7vB,EAAE,OAAOU,KAAKiuB,cAActY,OAAOnW,EAAE,IAAG,EAAG,OAAM,GAAIF,EAAEQ,UAAUkvB,cAAc,SAAS1vB,EAAEE,EAAEK,GAAG,IAAI,IAAIuB,EAAEG,EAAEvB,KAAKwB,EAAE,IAAIsB,OAAOjD,EAAEuvB,MAAMjrB,QAAQtE,EAAEuvB,MAAMhrB,OAAO,IAAI,KAAKxB,GAAG,EAAEnB,EAAE,WAAW,IAAIA,EAAEL,EAAE,iBAAiBvB,EAAE2D,WAAW,EAAE3D,EAAE2D,YAAY,IAAI/B,EAAE,OAAOO,EAAE+rB,YAAYmB,MAAM,+CAA+C9tB,EAAEvB,GAAG,QAAQ,GAAG+C,EAAEpD,EAAEkF,QAAQjD,EAAEmB,EAAE,GAAGpB,EAAEmD,UAAU/B,EAAEnB,EAAEmD,OAAOhC,EAAE,EAAE,MAAM,QAAQ,IAAIf,EAAEG,EAAE8rB,eAAexoB,OAAOwqB,yBAAyBxwB,EAAEsD,GAAG,GAAGf,EAAE,GAAG,EAAE,MAAM,QAAQ,IAAIgD,EAAE7C,EAAE8rB,eAAexoB,OAAOsO,MAAMzR,IAAIN,EAAE,IAAI,IAAIgD,EAAE,MAAM,QAAQ,IAAIP,EAAEO,EAAEkrB,MAAMluB,EAAE,IAAI2C,EAAEF,EAAEA,GAAG,EAAE,SAAI,EAAOzE,EAAEyvB,mBAAmBzvB,EAAEyvB,mBAAmB7tB,GAAE,SAAUnC,GAAGiC,EAAEmtB,gBAAgBpvB,GAAGiC,EAAEyuB,SAASnuB,EAAE,GAAGA,EAAE,GAAGN,EAAEusB,eAAexoB,OAAOqO,MAAMlS,EAAE5B,EAAE2E,MAAMxC,EAAEguB,SAASnuB,EAAE,GAAGA,EAAE,GAAGG,EAAE8rB,eAAexoB,OAAOqO,MAAMlS,EAAE5B,EAAE2E,IAAIxC,EAAEhC,KAAK,QAAQoB,EAAEI,EAAE+C,KAAK/E,KAAK,UAAUiC,QAAQnC,EAAEQ,UAAUkwB,SAAS,SAAS1wB,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,IAAIC,EAAExB,KAAK,GAAGA,KAAKuuB,mBAAmBvuB,KAAKsuB,SAAS,CAAC,IAAI1rB,EAAE5C,KAAKguB,gBAAgBiC,mBAAmBpwB,GAAG4B,EAAEnC,EAAEU,KAAK8tB,eAAevtB,KAAKsB,EAAErC,EAAE6B,KAAKO,MAAMtC,EAAEU,KAAK8tB,eAAevtB,MAAMsE,GAAGpD,EAAEmB,GAAG5C,KAAK8tB,eAAevtB,KAAK+D,EAAEzC,EAAER,KAAKO,OAAOH,EAAEmB,GAAG5C,KAAK8tB,eAAevtB,MAAM,IAAIsE,IAAIA,EAAE7E,KAAK8tB,eAAevtB,KAAK+D,KAAKtE,KAAKuuB,kBAAkBjT,IAAI,IAAItZ,EAAEP,EAAE,EAAEI,EAAE,EAAEgD,EAAE,EAAEP,EAAE,GAAE,SAAUhF,GAAG,GAAG8B,EAAEiuB,QAAQ,OAAOjuB,EAAEiuB,QAAQ/vB,EAAEO,GAAG,IAAIL,EAAEwB,OAAO+B,OAAOvD,GAAGA,EAAEwD,OAAO,KAAKxD,EAAEyD,SAASC,KAAKrD,GAAGsD,QAAQC,KAAK,0DAAyD,WAAY5B,EAAEqe,qBAAqB9M,KAAKvR,EAAE0uB,sBAAsBzuB,EAAEI,EAAEgD,EAAEP,EAAE/C,IAAIC,EAAE8sB,SAASjT,UAAUC,IAAI,2BAA0B,SAAUhc,GAAGkC,EAAE2sB,eAAepb,KAAKvR,EAAE0uB,sBAAsBzuB,EAAEI,EAAEgD,EAAEP,EAAE/C,IAAIH,EAAEmuB,sBAAsBnuB,EAAEmuB,qBAAqBjwB,EAAEO,EAAE,CAACkF,MAAM,CAACC,EAAEvD,EAAEwD,EAAEpD,GAAGqD,IAAI,CAACF,EAAEH,EAAEI,EAAEX,QAAO,WAAY9C,EAAEue,qBAAqBhN,KAAKvR,EAAE0uB,sBAAsBzuB,EAAEI,EAAEgD,EAAEP,EAAE/C,IAAIC,EAAE8sB,SAASjT,UAAU8U,OAAO,wBAAwB/uB,EAAEquB,oBAAoBruB,EAAEquB,wBAAuB,SAAUnwB,GAAG,OAAO8B,EAAEuuB,kBAAkBvuB,EAAEuuB,iBAAiBrwB,EAAEO,SAASP,EAAEQ,UAAUowB,sBAAsB,SAAS5wB,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,MAAM,CAAC2e,GAAG5gB,EAAE6gB,GAAG3gB,EAAE6gB,GAAGxgB,EAAEugB,GAAGhf,EAAEb,KAAKP,KAAK8tB,eAAevtB,KAAK6K,GAAG7J,IAAIjC,EAAEsvB,mBAAmB,IAAItvB,EAAE8B,EAAE,CAACG,EAAE,EAAEqB,EAAEwtB,gBAAgB7uB,EAAE,EAAEqB,EAAEytB,aAAa9uB,EAAE,EAAEqB,EAAE0tB,kBAAkBhxB,GAAz2J,GAA+2JE,EAAEquB,UAAUpsB,EAAE,IAAIO,EAAE,SAAS1C,EAAEE,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEnB,EAAEO,GAAGhC,KAAKkgB,GAAG5gB,EAAEU,KAAKmgB,GAAG3gB,EAAEQ,KAAKqgB,GAAGxgB,EAAEG,KAAKogB,GAAGhf,EAAEpB,KAAKuwB,cAAchvB,EAAEvB,KAAKwwB,cAAchvB,EAAExB,KAAKwvB,gBAAgB5sB,EAAE5C,KAAK0vB,cAAcjuB,EAAEzB,KAAK2vB,iBAAiB3tB,GAAGxC,EAAEouB,UAAU5rB,GAAGyuB,KAAK,SAASnxB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEkxB,gBAAW,EAAO,IAAIjvB,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAE,SAAShF,GAAG,SAASE,EAAEA,GAAG,IAAIK,EAAEP,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOH,EAAEiuB,eAAetuB,EAAEK,EAAE8wB,eAAe,GAAG9wB,EAAE+wB,sBAAsB,GAAG/wB,EAAEgxB,aAAY,EAAGhxB,EAAEixB,aAAa,EAAEjxB,EAAEggB,qBAAqBhgB,EAAEuiB,SAAS,IAAIpgB,EAAEyO,cAAc5Q,EAAEkgB,qBAAqBlgB,EAAEuiB,SAAS,IAAIpgB,EAAEyO,cAAc5Q,EAAEuiB,SAASvgB,EAAEmgB,0BAA0BniB,EAAE+wB,wBAAwB/wB,EAAE,OAAO0B,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,cAAc,CAACqC,IAAI,WAAW,OAAOnC,KAAK+wB,cAAc7uB,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,sBAAsB,CAACqC,IAAI,WAAW,OAAOnC,KAAK6f,qBAAqB1N,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,sBAAsB,CAACqC,IAAI,WAAW,OAAOnC,KAAK+f,qBAAqB5N,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAU4D,qBAAqB,SAASpE,GAAG,IAAIE,EAAEQ,KAAK,OAAOA,KAAK2wB,eAAexrB,KAAK7F,GAAG,CAACY,QAAQ,WAAW,IAAIL,EAAEL,EAAEmxB,eAAejsB,QAAQpF,IAAI,IAAIO,GAAGL,EAAEmxB,eAAehb,OAAO9V,EAAE,MAAML,EAAEM,UAAUuuB,YAAY,SAAS/uB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,KAAKA,KAAKsuB,SAAShvB,EAAEU,KAAKgxB,cAAcxxB,EAAEQ,KAAKQ,eAAeX,EAAEG,KAAKoiB,SAASvd,EAAEqjB,yBAAyBloB,KAAKsuB,SAAS,cAAa,WAAYltB,EAAEyvB,aAAY,EAAGzvB,EAAE6e,wBAAwBjgB,KAAKoiB,SAASvd,EAAEqjB,yBAAyBloB,KAAKsuB,SAAS,YAAYtuB,KAAKixB,aAAazuB,KAAKxC,QAAQA,KAAKoiB,SAASvd,EAAEqjB,yBAAyBloB,KAAKsuB,SAAS,QAAQtuB,KAAKkxB,SAAS1uB,KAAKxC,SAASR,EAAEM,UAAUmxB,aAAa,SAAS3xB,GAAG,GAAGU,KAAKmxB,gBAAgB7xB,EAAEU,KAAKsuB,UAAUtuB,KAAKgxB,cAAc,CAAC,IAAIxxB,EAAEQ,KAAKoxB,wBAAwB9xB,EAAEU,KAAKsuB,SAAStuB,KAAKgxB,eAAe,GAAGxxB,EAAE,CAACQ,KAAK6wB,aAAY,EAAG,IAAI,IAAIhxB,EAAEP,EAAE+xB,eAAejwB,EAAE,EAAEA,EAAEvB,EAAE+E,OAAOxD,IAAI,CAAC,IAAIG,EAAE1B,EAAEuB,GAAG,GAAGG,EAAE8Z,UAAUnJ,SAAS,SAAS,MAAM,GAAG3Q,EAAE8Z,UAAUnJ,SAAS,eAAe,OAAOlS,KAAKsxB,iBAAiB9xB,EAAEwF,IAAIhF,KAAKsxB,gBAAgBtsB,GAAGxF,EAAEyF,IAAIjF,KAAKsxB,gBAAgBrsB,IAAIjF,KAAKuxB,SAAS/xB,GAAGQ,KAAKsxB,gBAAgB9xB,MAAMA,EAAEM,UAAUyxB,SAAS,SAASjyB,GAAG,GAAGU,KAAK8wB,cAAcxxB,EAAE2F,EAAE,OAAOjF,KAAKigB,yBAAyBjgB,KAAKwxB,YAAYlyB,GAAE,GAAIU,KAAK+wB,cAAc/wB,KAAKyxB,gBAAgBzxB,KAAK+wB,aAAaW,KAAKpyB,KAAKU,KAAKigB,oBAAoBjgB,KAAKwxB,YAAYlyB,GAAE,KAAME,EAAEM,UAAU0xB,YAAY,SAASlyB,EAAEE,GAAG,IAAIK,EAAEuB,EAAEpB,KAAKA,KAAK2xB,wBAAwBnyB,IAAI,QAAQK,EAAEG,KAAK2xB,8BAAyB,IAAS9xB,GAAGA,EAAEuS,SAAQ,SAAU9S,GAAG,MAAMA,GAAGA,EAAE8S,SAAQ,SAAU9S,GAAGA,EAAEoyB,KAAKxxB,SAASZ,EAAEoyB,KAAKxxB,gBAAgBF,KAAK2xB,uBAAuB,IAAIC,IAAI5xB,KAAK8wB,YAAYxxB,EAAE2F,GAAG,IAAI1D,GAAE,EAAGvB,KAAK2wB,eAAeve,SAAQ,SAAUvS,EAAE2B,GAAG,IAAIoB,EAAEpD,GAAG,QAAQoD,EAAExB,EAAEuwB,8BAAyB,IAAS/uB,OAAE,EAAOA,EAAET,IAAIX,MAAMD,EAAEH,EAAEywB,yBAAyBrwB,EAAElC,EAAEiC,IAAI1B,EAAEoE,aAAa3E,EAAE2F,GAAE,SAAUzF,GAAG,IAAIK,EAAE+C,EAAE,IAAIxB,EAAEyvB,YAAY,CAAC,IAAIpvB,EAAE,MAAMjC,OAAE,EAAOA,EAAE0tB,KAAI,SAAU5tB,GAAG,MAAM,CAACoyB,KAAKpyB,MAAM,QAAQO,EAAEuB,EAAEuwB,8BAAyB,IAAS9xB,GAAGA,EAAE8M,IAAInL,EAAEC,GAAGF,EAAEH,EAAEywB,yBAAyBrwB,EAAElC,EAAEiC,IAAI,QAAQqB,EAAExB,EAAEuwB,8BAAyB,IAAS/uB,OAAE,EAAOA,EAAEgH,QAAQxI,EAAEuvB,eAAe/rB,QAAQxD,EAAE0wB,yBAAyBxyB,EAAE2F,EAAE7D,EAAEuwB,gCAAgCnyB,EAAEM,UAAUgyB,yBAAyB,SAASxyB,EAAEE,GAAG,IAAI,IAAIK,EAAE,IAAIkyB,IAAI3wB,EAAE,EAAEA,EAAE5B,EAAEoK,KAAKxI,IAAI,CAAC,IAAIG,EAAE/B,EAAE2C,IAAIf,GAAG,GAAGG,EAAE,IAAI,IAAIC,EAAE,EAAEA,EAAED,EAAEqD,OAAOpD,IAAI,IAAI,IAAIoB,EAAErB,EAAEC,GAAGC,EAAEmB,EAAE8uB,KAAKtsB,MAAML,MAAME,EAAE3F,EAAE,EAAEsD,EAAE8uB,KAAKtsB,MAAML,MAAMC,EAAEhD,EAAEY,EAAE8uB,KAAKtsB,MAAMF,IAAID,EAAE3F,EAAEU,KAAK8tB,eAAevtB,KAAKqC,EAAE8uB,KAAKtsB,MAAMF,IAAIF,EAAEnD,EAAEJ,EAAEI,GAAGG,EAAEH,IAAI,CAAC,GAAGhC,EAAEmyB,IAAInwB,GAAG,CAACN,EAAEoU,OAAOnU,IAAI,GAAG,MAAM3B,EAAEyb,IAAIzZ,MAAMrC,EAAEM,UAAU+xB,yBAAyB,SAASvyB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,KAAK,IAAIA,KAAK2xB,uBAAuB,OAAO9xB,EAAE,IAAI,IAAI2B,EAAExB,KAAK2xB,uBAAuBxvB,IAAI7C,GAAGsD,GAAE,EAAGnB,EAAE,EAAEA,EAAEnC,EAAEmC,IAAIzB,KAAK2xB,uBAAuBK,IAAIvwB,KAAKzB,KAAK2xB,uBAAuBxvB,IAAIV,KAAKmB,GAAE,GAAI,IAAIA,GAAGpB,EAAE,CAAC,IAAIQ,EAAER,EAAEywB,MAAK,SAAU3yB,GAAG,OAAOiC,EAAEkwB,gBAAgBnyB,EAAEoyB,KAAKlyB,MAAMwC,IAAInC,GAAE,EAAGG,KAAKkyB,eAAelwB,IAAI,GAAGhC,KAAK2xB,uBAAuB/nB,OAAO5J,KAAK2wB,eAAe/rB,SAAS/E,EAAE,IAAI4B,EAAE,EAAEA,EAAEzB,KAAK2xB,uBAAuB/nB,KAAKnI,IAAI,CAAC,IAAII,EAAE,QAAQT,EAAEpB,KAAK2xB,uBAAuBxvB,IAAIV,UAAK,IAASL,OAAE,EAAOA,EAAE6wB,MAAK,SAAU3yB,GAAG,OAAOiC,EAAEkwB,gBAAgBnyB,EAAEoyB,KAAKlyB,MAAM,GAAGqC,EAAE,CAAChC,GAAE,EAAGG,KAAKkyB,eAAerwB,GAAG,OAAO,OAAOhC,GAAGL,EAAEM,UAAUoxB,SAAS,SAAS5xB,GAAG,GAAGU,KAAKsuB,UAAUtuB,KAAKgxB,eAAehxB,KAAK+wB,aAAa,CAAC,IAAIvxB,EAAEQ,KAAKoxB,wBAAwB9xB,EAAEU,KAAKsuB,SAAStuB,KAAKgxB,eAAexxB,GAAGQ,KAAKyxB,gBAAgBzxB,KAAK+wB,aAAaW,KAAKlyB,IAAIQ,KAAK+wB,aAAaW,KAAK3xB,SAAST,EAAEU,KAAK+wB,aAAaW,KAAKrsB,QAAQ7F,EAAEM,UAAUmgB,kBAAkB,SAAS3gB,EAAEE,GAAGQ,KAAKsuB,UAAUtuB,KAAK+wB,cAAc/wB,KAAKmxB,mBAAmB7xB,IAAIE,GAAGQ,KAAK+wB,aAAaW,KAAKtsB,MAAML,MAAME,GAAG3F,GAAGU,KAAK+wB,aAAaW,KAAKtsB,MAAMF,IAAID,GAAGzF,KAAKQ,KAAKmyB,WAAWnyB,KAAKsuB,SAAStuB,KAAK+wB,aAAaW,KAAK1xB,KAAKmxB,iBAAiBnxB,KAAK+wB,kBAAa,EAAOlvB,EAAEogB,aAAajiB,KAAK4wB,yBAAyBpxB,EAAEM,UAAUoyB,eAAe,SAAS5yB,GAAG,IAAIE,EAAEQ,KAAK,GAAGA,KAAKsuB,UAAUtuB,KAAKmxB,iBAAiBnxB,KAAKgxB,cAAc,CAAC,IAAInxB,EAAEG,KAAKoxB,wBAAwBpxB,KAAKmxB,gBAAgBnxB,KAAKsuB,SAAStuB,KAAKgxB,eAAenxB,GAAGG,KAAKyxB,gBAAgBnyB,EAAEoyB,KAAK7xB,KAAKG,KAAK+wB,aAAazxB,EAAEU,KAAK+wB,aAAaqB,MAAM,CAACC,YAAY,CAAChV,eAAU,IAAS/d,EAAEoyB,KAAKW,aAAa/yB,EAAEoyB,KAAKW,YAAYhV,UAAUiV,mBAAc,IAAShzB,EAAEoyB,KAAKW,aAAa/yB,EAAEoyB,KAAKW,YAAYC,eAAeC,WAAU,GAAIvyB,KAAKwyB,WAAWxyB,KAAKsuB,SAAShvB,EAAEoyB,KAAK1xB,KAAKmxB,iBAAiB7xB,EAAEoyB,KAAKW,YAAY,GAAG5yB,OAAOgzB,iBAAiBnzB,EAAEoyB,KAAKW,YAAY,CAACC,cAAc,CAACnwB,IAAI,WAAW,IAAI7C,EAAEO,EAAE,OAAO,QAAQA,EAAE,QAAQP,EAAEE,EAAEuxB,oBAAe,IAASzxB,OAAE,EAAOA,EAAE8yB,aAAQ,IAASvyB,OAAE,EAAOA,EAAEwyB,YAAYC,eAAe3lB,IAAI,SAASrN,GAAG,IAAIO,EAAEuB,GAAG,QAAQvB,EAAEL,EAAEuxB,oBAAe,IAASlxB,OAAE,EAAOA,EAAEuyB,QAAQ5yB,EAAEuxB,aAAaqB,MAAMC,YAAYC,gBAAgBhzB,IAAIE,EAAEuxB,aAAaqB,MAAMC,YAAYC,cAAchzB,EAAEE,EAAEuxB,aAAaqB,MAAMG,YAAY,QAAQnxB,EAAE5B,EAAE8uB,gBAAW,IAASltB,GAAGA,EAAEia,UAAUqX,OAAO,uBAAuBpzB,OAAO+d,UAAU,CAAClb,IAAI,WAAW,IAAI7C,EAAEO,EAAE,OAAO,QAAQA,EAAE,QAAQP,EAAEE,EAAEuxB,oBAAe,IAASzxB,OAAE,EAAOA,EAAE8yB,aAAQ,IAASvyB,OAAE,EAAOA,EAAEwyB,YAAYhV,WAAW1Q,IAAI,SAAS9M,GAAG,IAAIuB,EAAEG,EAAEC,GAAG,QAAQJ,EAAE5B,EAAEuxB,oBAAe,IAAS3vB,OAAE,EAAOA,EAAEgxB,SAAS,QAAQ5wB,EAAE,QAAQD,EAAE/B,EAAEuxB,oBAAe,IAASxvB,OAAE,EAAOA,EAAE6wB,aAAQ,IAAS5wB,OAAE,EAAOA,EAAE6wB,YAAYhV,aAAaxd,IAAIL,EAAEuxB,aAAaqB,MAAMC,YAAYhV,UAAUxd,EAAEL,EAAEuxB,aAAaqB,MAAMG,WAAW/yB,EAAEmzB,oBAAoBrzB,EAAEoyB,KAAK7xB,QAAQG,KAAKQ,gBAAgBR,KAAK4wB,sBAAsBzrB,KAAKnF,KAAKQ,eAAeoyB,wBAAuB,SAAUtzB,GAAG,IAAIO,EAAE,IAAIP,EAAEyF,MAAM,EAAEzF,EAAEyF,MAAM,EAAEvF,EAAEsuB,eAAexoB,OAAOqO,MAAMnU,EAAEygB,kBAAkBpgB,EAAEP,EAAE4F,IAAI,EAAE1F,EAAEsuB,eAAexoB,OAAOqO,cAAcnU,EAAEM,UAAU0yB,WAAW,SAASlzB,EAAEE,EAAEK,GAAG,IAAIuB,GAAG,QAAQA,EAAEpB,KAAK+wB,oBAAe,IAAS3vB,OAAE,EAAOA,EAAEgxB,SAASpyB,KAAK+wB,aAAaqB,MAAMG,WAAU,EAAGvyB,KAAK+wB,aAAaqB,MAAMC,YAAYhV,WAAWrd,KAAK2yB,oBAAoBnzB,GAAE,GAAIQ,KAAK+wB,aAAaqB,MAAMC,YAAYC,eAAehzB,EAAE+b,UAAUC,IAAI,yBAAyB9b,EAAEqzB,OAAOrzB,EAAEqzB,MAAMhzB,EAAEL,EAAE6F,OAAO7F,EAAEM,UAAU6yB,oBAAoB,SAASrzB,EAAEE,GAAG,IAAIK,EAAEP,EAAE8F,MAAMhE,EAAEpB,KAAK8tB,eAAexoB,OAAOqO,MAAMpS,EAAEvB,KAAK8yB,0BAA0BjzB,EAAEkF,MAAMC,EAAE,EAAEnF,EAAEkF,MAAME,EAAE7D,EAAE,EAAEvB,EAAEqF,IAAIF,EAAEnF,EAAEqF,IAAID,EAAE7D,EAAE,OAAE,IAAS5B,EAAEQ,KAAK6f,qBAAqB7f,KAAK+f,sBAAsBhN,KAAKxR,IAAI/B,EAAEM,UAAUqyB,WAAW,SAAS7yB,EAAEE,EAAEK,GAAG,IAAIuB,GAAG,QAAQA,EAAEpB,KAAK+wB,oBAAe,IAAS3vB,OAAE,EAAOA,EAAEgxB,SAASpyB,KAAK+wB,aAAaqB,MAAMG,WAAU,EAAGvyB,KAAK+wB,aAAaqB,MAAMC,YAAYhV,WAAWrd,KAAK2yB,oBAAoBnzB,GAAE,GAAIQ,KAAK+wB,aAAaqB,MAAMC,YAAYC,eAAehzB,EAAE+b,UAAU8U,OAAO,yBAAyB3wB,EAAEuzB,OAAOvzB,EAAEuzB,MAAMlzB,EAAEL,EAAE6F,OAAO7F,EAAEM,UAAU2xB,gBAAgB,SAASnyB,EAAEE,GAAG,IAAIK,EAAEP,EAAE8F,MAAML,MAAME,IAAI3F,EAAE8F,MAAMF,IAAID,EAAE7D,EAAE9B,EAAE8F,MAAML,MAAME,EAAEzF,EAAEyF,EAAE1D,EAAEjC,EAAE8F,MAAMF,IAAID,EAAEzF,EAAEyF,EAAE,OAAOpF,GAAGP,EAAE8F,MAAML,MAAMC,GAAGxF,EAAEwF,GAAG1F,EAAE8F,MAAMF,IAAIF,GAAGxF,EAAEwF,GAAG5D,GAAG9B,EAAE8F,MAAMF,IAAIF,GAAGxF,EAAEwF,GAAGzD,GAAGjC,EAAE8F,MAAML,MAAMC,GAAGxF,EAAEwF,GAAG5D,GAAGG,IAAIjC,EAAE8F,MAAML,MAAME,GAAGzF,EAAEyF,GAAG3F,EAAE8F,MAAMF,IAAID,GAAGzF,EAAEyF,GAAGzF,EAAEM,UAAUsxB,wBAAwB,SAAS9xB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEvB,EAAEmzB,UAAU1zB,EAAEE,EAAEQ,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAextB,MAAM,GAAGc,EAAE,MAAM,CAAC4D,EAAE5D,EAAE,GAAG6D,EAAE7D,EAAE,GAAGpB,KAAK8tB,eAAexoB,OAAOqO,QAAQnU,EAAEM,UAAUgzB,0BAA0B,SAASxzB,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,MAAM,CAAC2e,GAAG5gB,EAAE6gB,GAAG3gB,EAAE6gB,GAAGxgB,EAAEugB,GAAGhf,EAAEb,KAAKP,KAAK8tB,eAAevtB,KAAK6K,GAAG7J,IAAIC,EAAE,CAACoB,EAAE,EAAEnB,EAAE2uB,iBAAiB5wB,GAAjkP,CAAqkPqC,EAAEqS,YAAY1U,EAAEkxB,WAAWpsB,GAAG2uB,KAAK,CAAC3zB,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE2pB,cAAc3pB,EAAE0zB,iBAAY,EAAO1zB,EAAE0zB,YAAY,iBAAiB1zB,EAAE2pB,cAAc,kEAAkEgK,KAAK,SAAS7zB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE4zB,sBAAiB,EAAO,IAAI3xB,EAAE5B,EAAE,KAAKmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAE,SAAShF,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,GAAG,IAAInB,EAAEnC,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOyB,EAAE6sB,SAAS9uB,EAAEiC,EAAE4xB,eAAexzB,EAAE4B,EAAEqsB,eAAe1sB,EAAEK,EAAEuvB,cAAczvB,EAAEE,EAAE6xB,kBAAkB9xB,EAAEC,EAAE8xB,gBAAgB3wB,EAAEnB,EAAE+xB,OAAO,GAAG/xB,EAAEgyB,iBAAgB,EAAGhyB,EAAEiyB,iBAAiB,MAAC,OAAO,GAAQjyB,EAAEkyB,wBAAwB,EAAElyB,EAAE2gB,SAASpgB,EAAEkmB,yBAAyBzmB,EAAE6sB,SAAS,aAAY,SAAUhvB,GAAG,OAAOmC,EAAEmyB,aAAat0B,OAAOmC,EAAEoyB,mBAAmB,SAASv0B,GAAG,OAAOmC,EAAEwvB,aAAa3xB,IAAImC,EAAEqyB,oBAAoB,SAASx0B,GAAG,OAAOmC,EAAEsyB,cAAcz0B,IAAImC,EAAEuyB,eAAe,SAAS10B,GAAG,OAAOmC,EAAEyvB,SAAS5xB,IAAImC,EAAE,OAAOF,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUI,QAAQ,WAAWZ,EAAEQ,UAAUI,QAAQ4B,KAAK9B,MAAMA,KAAKi0B,eAAez0B,EAAEM,UAAUwb,IAAI,SAAShc,GAAGU,KAAKwzB,OAAOruB,KAAK7F,GAAG,IAAIU,KAAKwzB,OAAO5uB,QAAQ5E,KAAKk0B,aAAa10B,EAAEM,UAAU2uB,SAAS,SAASnvB,EAAEE,GAAG,GAAG,IAAIQ,KAAKwzB,OAAO5uB,OAAO,CAACtF,GAAGE,IAAIF,EAAE,EAAEE,EAAEQ,KAAK8tB,eAAextB,KAAK,GAAG,IAAI,IAAIT,EAAE,EAAEA,EAAEG,KAAKwzB,OAAO5uB,OAAO/E,IAAI,CAAC,IAAIuB,EAAEpB,KAAKwzB,OAAO3zB,IAAIuB,EAAE+e,GAAG7gB,GAAG8B,EAAE+e,IAAI3gB,EAAE,GAAG4B,EAAEgf,GAAG9gB,GAAG8B,EAAEgf,IAAI5gB,EAAE,GAAG4B,EAAE+e,GAAG7gB,GAAG8B,EAAEgf,GAAG5gB,EAAE,KAAKQ,KAAKm0B,cAAcn0B,KAAKm0B,eAAe/yB,IAAIpB,KAAKm0B,aAAazE,gBAAgB1vB,KAAKm0B,kBAAa,GAAQn0B,KAAKwzB,OAAO7d,OAAO9V,IAAI,IAAI,IAAIG,KAAKwzB,OAAO5uB,QAAQ5E,KAAKi0B,gBAAgBz0B,EAAEM,UAAUo0B,UAAU,WAAWl0B,KAAKyzB,kBAAkBzzB,KAAKyzB,iBAAgB,EAAGzzB,KAAKsuB,SAAS5H,iBAAiB,YAAY1mB,KAAK6zB,oBAAoB7zB,KAAKsuB,SAAS5H,iBAAiB,aAAa1mB,KAAK8zB,qBAAqB9zB,KAAKsuB,SAAS5H,iBAAiB,QAAQ1mB,KAAKg0B,kBAAkBx0B,EAAEM,UAAUm0B,YAAY,WAAWj0B,KAAKyzB,kBAAkBzzB,KAAKyzB,iBAAgB,EAAGzzB,KAAKsuB,SAAS7F,oBAAoB,YAAYzoB,KAAK6zB,oBAAoB7zB,KAAKsuB,SAAS7F,oBAAoB,aAAazoB,KAAK8zB,qBAAqB9zB,KAAKsuB,SAAS7F,oBAAoB,QAAQzoB,KAAKg0B,kBAAkBx0B,EAAEM,UAAUmxB,aAAa,SAAS3xB,GAAGU,KAAK0zB,iBAAiB,KAAKp0B,EAAE80B,OAAOp0B,KAAK0zB,iBAAiB,KAAKp0B,EAAE+0B,QAAQr0B,KAAKuxB,SAASjyB,GAAGU,KAAK0zB,iBAAiB,CAACp0B,EAAE80B,MAAM90B,EAAE+0B,SAAS70B,EAAEM,UAAUyxB,SAAS,SAASjyB,GAAG,IAAIE,EAAEQ,KAAKH,EAAEG,KAAKs0B,iBAAiBh1B,GAAGO,IAAIG,KAAKm0B,eAAen0B,KAAKm0B,eAAen0B,KAAKm0B,aAAazE,gBAAgB1vB,KAAKm0B,kBAAa,EAAOn0B,KAAKu0B,iBAAiBzV,aAAa9e,KAAKu0B,kBAAkB10B,IAAIG,KAAKm0B,aAAat0B,EAAEA,EAAE2wB,eAAe3wB,EAAE2wB,cAAclxB,GAAGU,KAAKu0B,gBAAgBvzB,OAAOqe,YAAW,WAAY,OAAO7f,EAAEg1B,WAAWl1B,KAAKU,KAAKuzB,gBAAgBkB,QAAQC,6BAA6Bl1B,EAAEM,UAAU00B,WAAW,SAASl1B,GAAGU,KAAKu0B,qBAAgB,EAAO,IAAI/0B,EAAEQ,KAAKs0B,iBAAiBh1B,GAAG,MAAME,GAAGA,EAAEgwB,gBAAgBlwB,IAAIE,EAAEM,UAAU8zB,aAAa,SAASt0B,GAAG,GAAGU,KAAK2zB,wBAAwB3zB,KAAK20B,sBAAsB30B,KAAKyzB,gBAAgB,CAAC,IAAIj0B,EAAEQ,KAAKs0B,iBAAiBh1B,IAAI,MAAME,OAAE,EAAOA,EAAEmwB,iBAAiBrwB,MAAMA,EAAEupB,iBAAiBvpB,EAAEwpB,8BAA8BtpB,EAAEM,UAAUi0B,cAAc,SAASz0B,GAAGU,KAAKm0B,eAAen0B,KAAKm0B,aAAazE,gBAAgB1vB,KAAKm0B,kBAAa,EAAOn0B,KAAKu0B,iBAAiBzV,aAAa9e,KAAKu0B,mBAAmB/0B,EAAEM,UAAUoxB,SAAS,SAAS5xB,GAAG,IAAIE,EAAEQ,KAAKs0B,iBAAiBh1B,GAAGO,EAAEG,KAAK20B,sBAAsBn1B,GAAGK,IAAIG,KAAK2zB,0BAA0Bn0B,EAAE+wB,cAAcjxB,GAAGA,EAAEupB,iBAAiBvpB,EAAEwpB,6BAA6BtpB,EAAEM,UAAU60B,oBAAoB,WAAW,IAAIr1B,EAAEU,KAAKszB,kBAAkB3I,cAAc,OAAOrrB,EAAEA,EAAEsF,OAAO,GAAGpF,EAAEM,UAAUw0B,iBAAiB,SAASh1B,GAAG,IAAIE,EAAEQ,KAAKgxB,cAAcgC,UAAU1zB,EAAEU,KAAKqzB,eAAerzB,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAextB,MAAM,GAAGd,EAAE,IAAI,IAAIK,EAAEL,EAAE,GAAG4B,EAAE5B,EAAE,GAAG+B,EAAE,EAAEA,EAAEvB,KAAKwzB,OAAO5uB,OAAOrD,IAAI,CAAC,IAAIC,EAAExB,KAAKwzB,OAAOjyB,GAAG,GAAGC,EAAE2e,KAAK3e,EAAE4e,IAAI,GAAGhf,IAAII,EAAE2e,IAAItgB,GAAG2B,EAAE0e,IAAIrgB,EAAE2B,EAAE6e,GAAG,OAAO7e,OAAO,GAAGJ,IAAII,EAAE2e,IAAItgB,GAAG2B,EAAE0e,IAAI9e,IAAII,EAAE4e,IAAIvgB,EAAE2B,EAAE6e,IAAIjf,EAAEI,EAAE2e,IAAI/e,EAAEI,EAAE4e,GAAG,OAAO5e,IAAIA,EAAE,CAACoB,EAAE,EAAEiC,EAAEurB,gBAAgBxtB,EAAE,EAAEf,EAAE+yB,eAAehyB,EAAE,EAAEf,EAAEgzB,mBAAmBjyB,EAAE,EAAEiC,EAAEiwB,kBAAkBt1B,GAA3gH,CAA+gHiC,EAAEyS,YAAY1U,EAAE4zB,iBAAiB9uB,GAAGywB,KAAK,CAACz1B,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqnB,qBAAgB,EAAO,IAAIhnB,EAAE,WAAW,SAASP,EAAEA,GAAGU,KAAKye,gBAAgBnf,EAAE,OAAOA,EAAEQ,UAAUI,QAAQ,WAAWF,KAAK+e,kBAAkB/d,OAAOge,qBAAqBhf,KAAK+e,iBAAiB/e,KAAK+e,qBAAgB,IAASzf,EAAEQ,UAAUwpB,QAAQ,SAAShqB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,KAAKA,KAAKg1B,UAAUn1B,EAAEP,OAAE,IAASA,EAAEA,EAAE,EAAEE,OAAE,IAASA,EAAEA,EAAEQ,KAAKg1B,UAAU,EAAEh1B,KAAKi1B,eAAU,IAASj1B,KAAKi1B,UAAU5zB,KAAK2N,IAAIhP,KAAKi1B,UAAU31B,GAAGA,EAAEU,KAAKk1B,aAAQ,IAASl1B,KAAKk1B,QAAQ7zB,KAAKC,IAAItB,KAAKk1B,QAAQ11B,GAAGA,EAAEQ,KAAK+e,kBAAkB/e,KAAK+e,gBAAgB/d,OAAOoe,uBAAsB,WAAY,OAAOhe,EAAE+zB,qBAAqB71B,EAAEQ,UAAUq1B,cAAc,WAAW,QAAG,IAASn1B,KAAKi1B,gBAAW,IAASj1B,KAAKk1B,cAAS,IAASl1B,KAAKg1B,UAAU,CAAC,IAAI11B,EAAE+B,KAAKC,IAAItB,KAAKi1B,UAAU,GAAGz1B,EAAE6B,KAAK2N,IAAIhP,KAAKk1B,QAAQl1B,KAAKg1B,UAAU,GAAGh1B,KAAKi1B,eAAU,EAAOj1B,KAAKk1B,aAAQ,EAAOl1B,KAAK+e,qBAAgB,EAAO/e,KAAKye,gBAAgBnf,EAAEE,KAAKF,EAAj0B,GAAs0BE,EAAEqnB,gBAAgBhnB,GAAGu1B,KAAK,SAAS91B,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEwoB,sBAAiB,EAAO,IAAIxmB,EAAE,SAASlC,GAAG,SAASE,IAAI,IAAIA,EAAE,OAAOF,GAAGA,EAAE6kB,MAAMnkB,KAAKokB,YAAYpkB,KAAK,OAAOR,EAAE61B,yBAAyBr0B,OAAOmQ,iBAAiB3R,EAAE,OAAO+B,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUmoB,YAAY,SAAS3oB,GAAG,IAAIE,EAAEQ,KAAKA,KAAKs1B,WAAWt1B,KAAKu1B,gBAAgBv1B,KAAKs1B,UAAUh2B,EAAEU,KAAKw1B,eAAe,WAAWh2B,EAAE81B,YAAY91B,EAAE81B,UAAUt0B,OAAOmQ,iBAAiB3R,EAAE61B,0BAA0B71B,EAAEi2B,eAAez1B,KAAKy1B,cAAcj2B,EAAEM,UAAUI,QAAQ,WAAWZ,EAAEQ,UAAUI,QAAQ4B,KAAK9B,MAAMA,KAAKu1B,iBAAiB/1B,EAAEM,UAAU21B,WAAW,WAAW,IAAIn2B,EAAEU,KAAKw1B,iBAAiB,QAAQl2B,EAAEU,KAAK01B,iCAA4B,IAASp2B,GAAGA,EAAEq2B,eAAe31B,KAAKw1B,gBAAgBx1B,KAAKq1B,yBAAyBr0B,OAAOmQ,iBAAiBnR,KAAK01B,0BAA0B10B,OAAO40B,WAAW,2BAA2B50B,OAAOmQ,iBAAiB,SAASnR,KAAK01B,0BAA0BG,YAAY71B,KAAKw1B,kBAAkBh2B,EAAEM,UAAUy1B,cAAc,WAAWv1B,KAAK01B,2BAA2B11B,KAAKs1B,WAAWt1B,KAAKw1B,iBAAiBx1B,KAAK01B,0BAA0BC,eAAe31B,KAAKw1B,gBAAgBx1B,KAAK01B,+BAA0B,EAAO11B,KAAKs1B,eAAU,EAAOt1B,KAAKw1B,oBAAe,IAASh2B,EAAlmC,CAAqmCK,EAAE,KAAKqU,YAAY1U,EAAEwoB,iBAAiBxmB,GAAGs0B,KAAK,SAASx2B,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEu2B,cAAS,EAAO,IAAIv0B,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAM2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAEpC,EAAE,MAAM8C,EAAE9C,EAAE,MAAMiF,EAAEjF,EAAE,KAAK6L,EAAE7L,EAAE,MAAMoF,EAAEpF,EAAE,MAAMsa,EAAEta,EAAE,MAAMm2B,EAAEn2B,EAAE,MAAMkC,EAAElC,EAAE,MAAMiM,EAAEjM,EAAE,MAAMwa,EAAExa,EAAE,MAAMo2B,EAAEp2B,EAAE,MAAMq2B,EAAEr2B,EAAE,MAAMs2B,EAAEt2B,EAAE,KAAKu2B,EAAEv2B,EAAE,MAAMma,EAAEna,EAAE,MAAMmF,EAAEnF,EAAE,MAAMw2B,EAAEx2B,EAAE,MAAMy2B,EAAEz2B,EAAE,MAAM02B,EAAE12B,EAAE,MAAM22B,EAAE,oBAAoBx1B,OAAOA,OAAOsQ,SAAS,KAAKmlB,EAAE,SAASn3B,GAAG,SAASE,EAAEA,QAAG,IAASA,IAAIA,EAAE,IAAI,IAAIK,EAAEP,EAAEwC,KAAK9B,KAAKR,IAAIQ,KAAK,OAAOH,EAAE62B,QAAQ1wB,EAAEnG,EAAE82B,iBAAgB,EAAG92B,EAAE+2B,cAAc,IAAI70B,EAAE0O,aAAa5Q,EAAE8nB,OAAO,IAAI5lB,EAAE0O,aAAa5Q,EAAEg3B,UAAU,IAAI90B,EAAE0O,aAAa5Q,EAAEi3B,mBAAmB,IAAI/0B,EAAE0O,aAAa5Q,EAAEk3B,eAAe,IAAIh1B,EAAE0O,aAAa5Q,EAAEm3B,QAAQ,IAAIj1B,EAAE0O,aAAa5Q,EAAEo3B,SAAS,IAAIl1B,EAAE0O,aAAa5Q,EAAEq3B,QAAQ,IAAIn1B,EAAE0O,aAAa5Q,EAAEs3B,mBAAmB,IAAIp1B,EAAE0O,aAAa5Q,EAAEu3B,kBAAkB,IAAIr1B,EAAE0O,aAAa5Q,EAAEw3B,SAASx3B,EAAE8f,UAAU9f,EAAEy3B,sBAAsBC,eAAejzB,EAAEupB,WAAWhuB,EAAEmgB,WAAWngB,EAAEuiB,SAASviB,EAAEy3B,sBAAsBC,eAAevd,EAAE0W,aAAa7wB,EAAEuiB,SAASviB,EAAE23B,cAAcC,eAAc,WAAY,OAAO53B,EAAE63B,WAAW73B,EAAEuiB,SAASviB,EAAE23B,cAAcG,sBAAqB,SAAUr4B,EAAEE,GAAG,OAAOK,EAAEypB,QAAQhqB,EAAEE,OAAOK,EAAEuiB,SAASviB,EAAE23B,cAAcI,gBAAe,WAAY,OAAO/3B,EAAE0S,YAAY1S,EAAEuiB,SAASviB,EAAE23B,cAAcK,+BAA8B,SAAUv4B,GAAG,OAAOO,EAAEi4B,sBAAsBx4B,OAAOO,EAAEuiB,SAASviB,EAAE23B,cAAcO,mBAAkB,SAAUz4B,GAAG,OAAOO,EAAEm4B,iBAAiB14B,OAAOO,EAAEuiB,SAASrgB,EAAE4f,aAAa9hB,EAAE23B,cAAcxkB,aAAanT,EAAE+2B,gBAAgB/2B,EAAEuiB,SAASrgB,EAAE4f,aAAa9hB,EAAE23B,cAAcS,cAAcp4B,EAAEk3B,iBAAiBl3B,EAAEuiB,SAASrgB,EAAE4f,aAAa9hB,EAAE23B,cAAcnQ,WAAWxnB,EAAEs3B,qBAAqBt3B,EAAEuiB,SAASrgB,EAAE4f,aAAa9hB,EAAE23B,cAAchQ,UAAU3nB,EAAEu3B,oBAAoBv3B,EAAEuiB,SAASviB,EAAEiuB,eAAe9kB,UAAS,SAAU1J,GAAG,OAAOO,EAAEq4B,aAAa54B,EAAEiB,KAAKjB,EAAEgB,UAAUT,EAAE,OAAO0B,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAKm4B,eAAe1D,SAASvyB,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,eAAe,CAACqC,IAAI,WAAW,OAAOnC,KAAK42B,cAAczkB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,QAAQ,CAACqC,IAAI,WAAW,OAAOnC,KAAK2nB,OAAOxV,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAK62B,UAAU1kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,oBAAoB,CAACqC,IAAI,WAAW,OAAOnC,KAAK82B,mBAAmB3kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAK+2B,eAAe5kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKg3B,QAAQ7kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAKi3B,SAAS9kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKk3B,QAAQ/kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,aAAa,CAACqC,IAAI,WAAW,OAAOnC,KAAKm3B,mBAAmBhlB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAKo3B,kBAAkBjlB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUk4B,iBAAiB,SAAS14B,GAAG,IAAIE,EAAEK,EAAE,GAAGG,KAAKsP,cAAc,CAAC,IAAI,IAAIlO,EAAE,EAAEG,EAAEjC,EAAEiQ,OAAOnO,EAAEG,EAAEqD,OAAOxD,IAAI,CAAC,IAAII,EAAED,EAAEH,GAAGwB,EAAE0zB,EAAEjsB,KAAK0W,QAAQvf,EAAE0qB,IAAI1qB,EAAE2qB,MAAM3qB,EAAE6qB,MAAMrsB,KAAKsP,cAAcC,OAAOtD,KAAKzK,EAAE42B,YAAYx1B,EAAE,QAAQpD,EAAEQ,KAAKQ,sBAAiB,IAAShB,GAAGA,EAAE8M,UAAUtM,KAAKsP,cAAcC,QAAQ,QAAQ1P,EAAEG,KAAK0B,gBAAW,IAAS7B,GAAGA,EAAEw4B,cAAcr4B,KAAKsP,cAAcC,UAAU/P,EAAEM,UAAUI,QAAQ,WAAW,IAAIV,EAAEK,EAAEuB,EAAEpB,KAAKmiB,cAAc7iB,EAAEQ,UAAUI,QAAQ4B,KAAK9B,MAAM,QAAQR,EAAEQ,KAAKQ,sBAAiB,IAAShB,GAAGA,EAAEU,UAAUF,KAAKs4B,4BAAuB,EAAOt4B,KAAKu4B,MAAM,aAAa,QAAQn3B,EAAE,QAAQvB,EAAEG,KAAKW,eAAU,IAASd,OAAE,EAAOA,EAAEwpB,kBAAa,IAASjoB,GAAGA,EAAEiR,YAAYrS,KAAKW,WAAWnB,EAAEM,UAAUu3B,OAAO,WAAW/3B,EAAEQ,UAAUu3B,OAAOv1B,KAAK9B,MAAMA,KAAKs4B,4BAAuB,GAAQ74B,OAAOC,eAAeF,EAAEM,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKw4B,QAAQjzB,QAAQrD,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAU8oB,MAAM,WAAW5oB,KAAKwf,UAAUxf,KAAKwf,SAASoJ,MAAM,CAAC6P,eAAc,KAAMj5B,EAAEM,UAAU44B,eAAe,SAASl5B,GAAG,IAAIK,EAAEuB,EAAEG,EAAEC,EAAE,OAAOlC,EAAEQ,UAAU44B,eAAe52B,KAAK9B,KAAKR,GAAGA,GAAG,IAAI,aAAa,IAAI,WAAW,QAAQK,EAAEG,KAAKQ,sBAAiB,IAASX,GAAGA,EAAEY,QAAQ,QAAQW,EAAEpB,KAAKyT,wBAAmB,IAASrS,GAAGA,EAAEu3B,UAAU,MAAM,IAAI,cAAc,IAAI,cAAc34B,KAAKspB,QAAQtpB,KAAKsF,OAAOL,EAAEjF,KAAKsF,OAAOL,GAAG,MAAM,IAAI,6BAA6B,IAAI,gBAAgB,IAAI,aAAa,IAAI,aAAa,IAAI,iBAAiB,IAAI,uBAAuBjF,KAAKQ,iBAAiBR,KAAKQ,eAAeC,QAAQT,KAAKQ,eAAewI,SAAShJ,KAAKO,KAAKP,KAAKM,MAAMN,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,IAAI,MAAM,IAAI,eAAeN,KAAKQ,iBAAiBR,KAAKQ,eAAekP,YAAY1P,KAAK2P,mBAAmB3P,KAAKQ,eAAewI,SAAShJ,KAAKO,KAAKP,KAAKM,OAAO,MAAM,IAAI,aAAa,QAAQiB,EAAEvB,KAAK0B,gBAAW,IAASH,GAAGA,EAAEq3B,iBAAiB,MAAM,IAAI,mBAAmB54B,KAAKm4B,eAAe1D,QAAQoE,kBAAkB74B,KAAK84B,uBAAuB94B,KAAKQ,iBAAiBR,KAAK84B,sBAAsB,IAAI7zB,EAAE6gB,qBAAqB9lB,KAAKA,KAAKQ,kBAAkB,QAAQgB,EAAExB,KAAK84B,6BAAwB,IAASt3B,GAAGA,EAAEtB,UAAUF,KAAK84B,2BAAsB,GAAQ,MAAM,IAAI,eAAe94B,KAAKw4B,QAAQO,gBAAgB,MAAM,IAAI,QAAQ/4B,KAAKg5B,UAAUh5B,KAAKm4B,eAAe1D,QAAQwE,SAASz5B,EAAEM,UAAUo5B,iBAAiB,SAAS55B,GAAGU,KAAK+d,aAAa6L,gBAAgBuP,WAAWn5B,KAAK+d,aAAa+L,iBAAiB9nB,EAAEo3B,GAAGC,IAAI,MAAMr5B,KAAKs5B,kBAAkBh6B,GAAGU,KAAKW,QAAQ0a,UAAUC,IAAI,SAAStb,KAAKu5B,cAAcv5B,KAAKi3B,SAASlkB,QAAQvT,EAAEM,UAAU05B,KAAK,WAAW,IAAIl6B,EAAE,OAAO,QAAQA,EAAEU,KAAKwf,gBAAW,IAASlgB,OAAE,EAAOA,EAAEk6B,QAAQh6B,EAAEM,UAAU25B,gBAAgB,WAAWz5B,KAAKwf,SAAS7f,MAAM,GAAGK,KAAKspB,QAAQtpB,KAAKsF,OAAOL,EAAEjF,KAAKsF,OAAOL,GAAGjF,KAAK+d,aAAa6L,gBAAgBuP,WAAWn5B,KAAK+d,aAAa+L,iBAAiB9nB,EAAEo3B,GAAGC,IAAI,MAAMr5B,KAAKW,QAAQ0a,UAAU8U,OAAO,SAASnwB,KAAKk3B,QAAQnkB,QAAQvT,EAAEM,UAAU45B,cAAc,WAAW,GAAG15B,KAAKwf,UAAUxf,KAAKsF,OAAOq0B,qBAAqB35B,KAAK45B,mBAAmBC,aAAa75B,KAAKQ,eAAe,CAAC,IAAIlB,EAAEU,KAAKsF,OAAOw0B,MAAM95B,KAAKsF,OAAOL,EAAEzF,EAAEQ,KAAKsF,OAAOsO,MAAMzR,IAAI7C,GAAG,GAAGE,EAAE,CAAC,IAAIK,EAAEwB,KAAK2N,IAAIhP,KAAKsF,OAAON,EAAEhF,KAAKO,KAAK,GAAGa,EAAEpB,KAAKQ,eAAeK,WAAWE,iBAAiBQ,EAAE/B,EAAE8e,SAASze,GAAG2B,EAAExB,KAAKQ,eAAeK,WAAWC,gBAAgBS,EAAEqB,EAAE5C,KAAKsF,OAAOL,EAAEjF,KAAKQ,eAAeK,WAAWE,iBAAiBU,EAAE5B,EAAEG,KAAKQ,eAAeK,WAAWC,gBAAgBd,KAAKwf,SAAS9M,MAAM4E,KAAK7V,EAAE,KAAKzB,KAAKwf,SAAS9M,MAAM2E,IAAIzU,EAAE,KAAK5C,KAAKwf,SAAS9M,MAAMtG,MAAM5K,EAAE,KAAKxB,KAAKwf,SAAS9M,MAAMrG,OAAOjL,EAAE,KAAKpB,KAAKwf,SAAS9M,MAAMqnB,WAAW34B,EAAE,KAAKpB,KAAKwf,SAAS9M,MAAM6I,OAAO,QAAQ/b,EAAEM,UAAUk6B,YAAY,WAAW,IAAI16B,EAAEU,KAAKA,KAAKi6B,YAAYj6B,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKW,QAAQ,QAAO,SAAUnB,GAAGF,EAAE+O,gBAAgB5M,EAAE6oB,YAAY9qB,EAAEF,EAAEg0B,uBAAuB,IAAI9zB,EAAE,SAASA,GAAG,OAAOiC,EAAE4oB,iBAAiB7qB,EAAEF,EAAEkgB,SAASlgB,EAAEye,eAAe/d,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,QAAQhgB,IAAIQ,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKW,QAAQ,QAAQnB,IAAIwG,EAAEk0B,UAAUl6B,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKW,QAAQ,aAAY,SAAUnB,GAAG,IAAIA,EAAE26B,QAAQ14B,EAAEyoB,kBAAkB1qB,EAAEF,EAAEkgB,SAASlgB,EAAEsR,cAActR,EAAEg0B,kBAAkBh0B,EAAEm1B,QAAQ2F,2BAA2Bp6B,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKW,QAAQ,eAAc,SAAUnB,GAAGiC,EAAEyoB,kBAAkB1qB,EAAEF,EAAEkgB,SAASlgB,EAAEsR,cAActR,EAAEg0B,kBAAkBh0B,EAAEm1B,QAAQ2F,2BAA2Bp0B,EAAEq0B,SAASr6B,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKW,QAAQ,YAAW,SAAUnB,GAAG,IAAIA,EAAE26B,QAAQ14B,EAAE0oB,6BAA6B3qB,EAAEF,EAAEkgB,SAASlgB,EAAEsR,oBAAoBpR,EAAEM,UAAUm6B,UAAU,WAAW,IAAI36B,EAAEU,KAAKA,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,SAAQ,SAAUhgB,GAAG,OAAOF,EAAEg7B,OAAO96B,MAAK,IAAKQ,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,WAAU,SAAUhgB,GAAG,OAAOF,EAAEi7B,SAAS/6B,MAAK,IAAKQ,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,YAAW,SAAUhgB,GAAG,OAAOF,EAAEk7B,UAAUh7B,MAAK,IAAKQ,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,oBAAmB,WAAY,OAAOlgB,EAAEs6B,mBAAmBa,uBAAuBz6B,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,qBAAoB,SAAUhgB,GAAG,OAAOF,EAAEs6B,mBAAmBc,kBAAkBl7B,OAAOQ,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,kBAAiB,WAAY,OAAOlgB,EAAEs6B,mBAAmBe,qBAAqB36B,KAAKoiB,SAASpiB,KAAKmnB,UAAS,WAAY,OAAO7nB,EAAEs6B,mBAAmBgB,gCAAgC56B,KAAKoiB,SAASpiB,KAAKmnB,UAAS,SAAU3nB,GAAG,OAAOF,EAAEu7B,oBAAoBr7B,EAAEuF,MAAMvF,EAAE0F,UAAU1F,EAAEM,UAAUiD,KAAK,SAASzD,GAAG,IAAIE,EAAEQ,KAAK,IAAIV,EAAE,MAAM,IAAI4M,MAAM,uCAAuC5M,EAAEw7B,aAAa96B,KAAK+tB,YAAYmB,MAAM,2EAA2ElvB,KAAK+6B,UAAUz7B,EAAE07B,cAAch7B,KAAKW,QAAQX,KAAK+6B,UAAUxpB,cAAc,OAAOvR,KAAKW,QAAQs6B,IAAI,MAAMj7B,KAAKW,QAAQ0a,UAAUC,IAAI,YAAYtb,KAAKW,QAAQ0a,UAAUC,IAAI,SAAStb,KAAKW,QAAQylB,aAAa,WAAW,KAAKpmB,KAAKW,QAAQylB,aAAa,OAAO,YAAY9mB,EAAEsS,YAAY5R,KAAKW,SAAS,IAAId,EAAE22B,EAAE0E,yBAAyBl7B,KAAKm7B,iBAAiB3E,EAAEjlB,cAAc,OAAOvR,KAAKm7B,iBAAiB9f,UAAUC,IAAI,kBAAkBzb,EAAE+R,YAAY5R,KAAKm7B,kBAAkBn7B,KAAKo7B,oBAAoB5E,EAAEjlB,cAAc,OAAOvR,KAAKo7B,oBAAoB/f,UAAUC,IAAI,qBAAqBtb,KAAKm7B,iBAAiBvpB,YAAY5R,KAAKo7B,qBAAqBp7B,KAAK4Q,cAAc4lB,EAAEjlB,cAAc,OAAOvR,KAAK4Q,cAAcyK,UAAUC,IAAI,gBAAgBtb,KAAKq7B,iBAAiB7E,EAAEjlB,cAAc,OAAOvR,KAAKq7B,iBAAiBhgB,UAAUC,IAAI,iBAAiBtb,KAAK4Q,cAAcgB,YAAY5R,KAAKq7B,kBAAkBx7B,EAAE+R,YAAY5R,KAAK4Q,eAAe5Q,KAAKwf,SAASgX,EAAEjlB,cAAc,YAAYvR,KAAKwf,SAASnE,UAAUC,IAAI,yBAAyBtb,KAAKwf,SAAS4G,aAAa,aAAazjB,EAAEuwB,aAAalzB,KAAKwf,SAAS4G,aAAa,iBAAiB,SAASpmB,KAAKwf,SAAS4G,aAAa,cAAc,OAAOpmB,KAAKwf,SAAS4G,aAAa,iBAAiB,OAAOpmB,KAAKwf,SAAS4G,aAAa,aAAa,SAASpmB,KAAKwf,SAASwJ,SAAS,EAAEhpB,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,SAAQ,SAAUlgB,GAAG,OAAOE,EAAE05B,iBAAiB55B,OAAOU,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKwf,SAAS,QAAO,WAAY,OAAOhgB,EAAEi6B,sBAAsBz5B,KAAKq7B,iBAAiBzpB,YAAY5R,KAAKwf,UAAU,IAAIpe,EAAEpB,KAAKs3B,sBAAsBC,eAAevyB,EAAEs2B,mBAAmBt7B,KAAKwf,UAAUxf,KAAKs3B,sBAAsBiE,WAAWrF,EAAEsF,oBAAoBp6B,GAAGpB,KAAKyT,iBAAiBzT,KAAKs3B,sBAAsBC,eAAepB,EAAEsF,gBAAgBz7B,KAAK+6B,UAAU/6B,KAAKq7B,kBAAkBr7B,KAAKs3B,sBAAsBiE,WAAWrF,EAAEwF,iBAAiB17B,KAAKyT,kBAAkBzT,KAAK27B,OAAO37B,KAAKy0B,QAAQwE,OAAOj5B,KAAK27B,OAAO37B,KAAKsP,cAAc,IAAI+K,EAAEmR,aAAagL,EAAEx2B,KAAKy0B,QAAQje,mBAAmBxW,KAAKoiB,SAASpiB,KAAKm4B,eAAeyD,gBAAe,SAAUt8B,GAAG,OAAOE,EAAE8P,cAAcwc,gBAAgBxsB,OAAOU,KAAKsP,cAAcyc,SAAS/rB,KAAK27B,QAAQ37B,KAAK67B,wBAAwB77B,KAAKs3B,sBAAsBC,eAAehB,EAAEuF,wBAAwB97B,KAAKs3B,sBAAsBiE,WAAWrF,EAAE6F,wBAAwB/7B,KAAK67B,yBAAyB,IAAIt6B,EAAEvB,KAAK2P,kBAAkB3P,KAAKQ,eAAeR,KAAKoiB,SAASpiB,KAAKs3B,sBAAsBC,eAAetB,EAAE+F,cAAcz6B,EAAEvB,KAAKM,KAAKN,KAAK4Q,gBAAgB5Q,KAAKs3B,sBAAsBiE,WAAWrF,EAAE+F,eAAej8B,KAAKQ,gBAAgBR,KAAKoiB,SAASpiB,KAAKQ,eAAeoyB,wBAAuB,SAAUtzB,GAAG,OAAOE,EAAEq3B,UAAU9jB,KAAKzT,OAAOU,KAAKgJ,UAAS,SAAU1J,GAAG,OAAOE,EAAEgB,eAAeE,OAAOpB,EAAEiB,KAAKjB,EAAEgB,SAASN,KAAKk8B,iBAAiB1F,EAAEjlB,cAAc,OAAOvR,KAAKk8B,iBAAiB7gB,UAAUC,IAAI,oBAAoBtb,KAAK45B,mBAAmB55B,KAAKs3B,sBAAsBC,eAAe/1B,EAAE26B,kBAAkBn8B,KAAKwf,SAASxf,KAAKk8B,kBAAkBl8B,KAAKq7B,iBAAiBzpB,YAAY5R,KAAKk8B,kBAAkBl8B,KAAKW,QAAQiR,YAAY/R,GAAGG,KAAKo8B,cAAcp8B,KAAKs3B,sBAAsBC,eAAezyB,EAAEu3B,cAAcr8B,KAAKs3B,sBAAsBiE,WAAWrF,EAAEoG,cAAct8B,KAAKo8B,eAAep8B,KAAKgxB,cAAchxB,KAAKs3B,sBAAsBC,eAAenB,EAAEmG,cAAcv8B,KAAKs3B,sBAAsBiE,WAAWrF,EAAEtB,cAAc50B,KAAKgxB,eAAehxB,KAAK0B,SAAS1B,KAAKs3B,sBAAsBC,eAAe30B,EAAE45B,UAAS,SAAUl9B,GAAG,OAAOE,EAAEmpB,YAAYrpB,GAAE,EAAG,KAAKU,KAAKm7B,iBAAiBn7B,KAAKo7B,qBAAqBp7B,KAAK0B,SAAS22B,cAAcr4B,KAAKsP,cAAcC,QAAQvP,KAAKoiB,SAASpiB,KAAKw3B,cAAciF,wBAAuB,WAAY,OAAOj9B,EAAEkC,SAASk3B,qBAAqB54B,KAAKoiB,SAASpiB,KAAK0B,UAAU1B,KAAKoiB,SAASpiB,KAAKgT,cAAa,WAAYxT,EAAEgB,eAAewS,eAAexT,EAAEk6B,oBAAoB15B,KAAKoiB,SAASpiB,KAAKgJ,UAAS,WAAY,OAAOxJ,EAAEgB,eAAewI,SAASxJ,EAAEe,KAAKf,EAAEc,UAAUN,KAAKoiB,SAASpiB,KAAK2S,QAAO,WAAY,OAAOnT,EAAEgB,eAAemS,aAAa3S,KAAKoiB,SAASpiB,KAAK4S,SAAQ,WAAY,OAAOpT,EAAEgB,eAAeoS,cAAc5S,KAAKoiB,SAASpiB,KAAKQ,eAAesnB,oBAAmB,WAAY,OAAOtoB,EAAEkC,SAASk3B,qBAAqB54B,KAAKszB,kBAAkBtzB,KAAKoiB,SAASpiB,KAAKs3B,sBAAsBC,eAAe/yB,EAAEk4B,iBAAiB18B,KAAKW,QAAQX,KAAK4Q,cAAc5Q,KAAKggB,aAAahgB,KAAKs3B,sBAAsBiE,WAAWrF,EAAErB,kBAAkB70B,KAAKszB,mBAAmBtzB,KAAKoiB,SAASpiB,KAAKszB,kBAAkBqJ,sBAAqB,SAAUr9B,GAAG,OAAOE,EAAEmpB,YAAYrpB,EAAEs9B,OAAOt9B,EAAEu9B,yBAAyB78B,KAAKoiB,SAASpiB,KAAKszB,kBAAkBwJ,mBAAkB,WAAY,OAAOt9B,EAAEs3B,mBAAmB/jB,WAAW/S,KAAKoiB,SAASpiB,KAAKszB,kBAAkByJ,iBAAgB,SAAUz9B,GAAG,OAAOE,EAAEgB,eAAeqS,mBAAmBvT,EAAEyF,MAAMzF,EAAE4F,IAAI5F,EAAEiL,sBAAsBvK,KAAKoiB,SAASpiB,KAAKszB,kBAAkB0J,uBAAsB,SAAU19B,GAAGE,EAAEggB,SAAS7f,MAAML,EAAEE,EAAEggB,SAASoJ,QAAQppB,EAAEggB,SAASuL,aAAa/qB,KAAKoiB,SAASpiB,KAAKi9B,UAAU9qB,OAAM,SAAU7S,GAAGE,EAAEkC,SAASk3B,iBAAiBp5B,EAAE8zB,kBAAkBhK,cAActpB,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKm7B,iBAAiB,UAAS,WAAY,OAAO37B,EAAE8zB,kBAAkBhK,cAActpB,KAAKuuB,kBAAkBvuB,KAAKs3B,sBAAsBC,eAAe7rB,EAAE0nB,iBAAiBpzB,KAAKW,QAAQX,KAAK4Q,eAAe5Q,KAAKoiB,SAASpiB,KAAKuuB,mBAAmBvuB,KAAKoiB,SAASpiB,KAAKonB,UAAS,WAAY,OAAO5nB,EAAE+uB,kBAAkBE,eAAezuB,KAAK2f,UAAU0O,YAAYruB,KAAKW,QAAQX,KAAKuuB,mBAAmBvuB,KAAKggB,WAAWqO,YAAYruB,KAAKW,QAAQX,KAAKgxB,cAAchxB,KAAKQ,gBAAgBR,KAAKoiB,SAASngB,EAAEimB,yBAAyBloB,KAAKW,QAAQ,aAAY,SAAUrB,GAAG,OAAOE,EAAE8zB,kBAAkB4J,YAAY59B,OAAOU,KAAKm9B,kBAAkBC,sBAAsBp9B,KAAKszB,kBAAkB+J,UAAUr9B,KAAKW,QAAQ0a,UAAUC,IAAI,wBAAwBtb,KAAKszB,kBAAkB3qB,SAAS3I,KAAKy0B,QAAQoE,mBAAmB74B,KAAK84B,sBAAsB,IAAI7zB,EAAE6gB,qBAAqB9lB,KAAKA,KAAKQ,iBAAiBR,KAAKyT,iBAAiBklB,UAAU34B,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,GAAGN,KAAKg6B,cAAch6B,KAAKs9B,aAAa99B,EAAEM,UAAU6P,gBAAgB,WAAW,OAAO3P,KAAKy0B,QAAQ8I,cAAc,IAAI,SAAS,OAAOv9B,KAAKs3B,sBAAsBC,eAAe1yB,EAAE24B,SAASx9B,KAAKsP,cAAcC,OAAOvP,KAAK4Q,cAAc5Q,KAAK2f,UAAU3f,KAAKggB,YAAY,IAAI,MAAM,OAAOhgB,KAAKs3B,sBAAsBC,eAAepd,EAAEsjB,YAAYz9B,KAAKsP,cAAcC,OAAOvP,KAAKW,QAAQX,KAAK4Q,cAAc5Q,KAAKm7B,iBAAiBn7B,KAAK2f,UAAU3f,KAAKggB,YAAY,QAAQ,MAAM,IAAI9T,MAAM,8BAA8BlM,KAAKy0B,QAAQ8I,aAAa,OAAO/9B,EAAEM,UAAUk5B,UAAU,SAAS15B,GAAG,IAAIE,EAAEK,EAAEuB,EAAEpB,KAAK27B,OAAOr8B,EAAE,QAAQE,EAAEQ,KAAKsP,qBAAgB,IAAS9P,GAAGA,EAAEusB,SAASzsB,GAAG,QAAQO,EAAEG,KAAKQ,sBAAiB,IAASX,GAAGA,EAAEyM,UAAUtM,KAAKsP,cAAcC,QAAQ,QAAQnO,EAAEpB,KAAK0B,gBAAW,IAASN,GAAGA,EAAEi3B,cAAcr4B,KAAKsP,cAAcC,SAAS/P,EAAEM,UAAUw9B,UAAU,WAAW,IAAIh+B,EAAEU,KAAKR,EAAEQ,KAAKH,EAAEG,KAAKW,QAAQ,SAASS,EAAE9B,GAAG,IAAIO,EAAEuB,EAAEG,EAAE/B,EAAEwxB,cAAc0M,iBAAiBp+B,EAAEE,EAAEoR,cAAcpR,EAAEe,KAAKf,EAAEc,MAAM,IAAIiB,EAAE,OAAM,EAAG,OAAOjC,EAAEq+B,cAAcr+B,EAAEs+B,MAAM,IAAI,YAAYx8B,EAAE,QAAG,IAAS9B,EAAEu+B,SAASh+B,EAAE,OAAE,IAASP,EAAE66B,SAASt6B,EAAEP,EAAE66B,OAAO,EAAE76B,EAAE66B,OAAO,IAAIt6B,EAAE,EAAEP,EAAEu+B,QAAQ,EAAE,EAAEv+B,EAAEu+B,QAAQ,EAAE,EAAEv+B,EAAEu+B,QAAQ,EAAE,EAAE,MAAM,IAAI,UAAUz8B,EAAE,EAAEvB,EAAEP,EAAE66B,OAAO,EAAE76B,EAAE66B,OAAO,EAAE,MAAM,IAAI,YAAY/4B,EAAE,EAAEvB,EAAEP,EAAE66B,OAAO,EAAE76B,EAAE66B,OAAO,EAAE,MAAM,IAAI,QAAQ,IAAI76B,EAAEw+B,SAAS18B,EAAE9B,EAAEw+B,OAAO,EAAE,EAAE,GAAGj+B,EAAE,EAAE,MAAM,QAAQ,OAAM,EAAG,aAAQ,IAASuB,QAAG,IAASvB,GAAGA,EAAE,IAAIL,EAAE29B,kBAAkBY,kBAAkB,CAACC,IAAIz8B,EAAEyD,EAAE,GAAGi5B,IAAI18B,EAAE0D,EAAE,GAAGk1B,OAAOt6B,EAAEq+B,OAAO98B,EAAE+8B,KAAK7+B,EAAE8+B,QAAQC,IAAI/+B,EAAEg/B,OAAO9V,MAAMlpB,EAAEi/B,WAAW,IAAIh9B,EAAE,CAACi9B,QAAQ,KAAKC,MAAM,KAAKC,UAAU,KAAKC,UAAU,MAAMn9B,EAAE,SAAShC,GAAG,OAAO4B,EAAE5B,GAAGA,EAAEq+B,UAAUv+B,EAAEy7B,UAAUtS,oBAAoB,UAAUlnB,EAAEi9B,SAASj9B,EAAEm9B,WAAWp/B,EAAEy7B,UAAUtS,oBAAoB,YAAYlnB,EAAEm9B,YAAYp/B,EAAEs/B,OAAOp/B,IAAIoD,EAAE,SAASpD,GAAG,OAAO4B,EAAE5B,GAAGA,EAAEqpB,iBAAiBvpB,EAAEs/B,OAAOp/B,IAAIiC,EAAE,SAASnC,GAAGA,EAAEu+B,SAASz8B,EAAE9B,IAAIuC,EAAE,SAASvC,GAAGA,EAAEu+B,SAASz8B,EAAE9B,IAAIU,KAAKoiB,SAASpiB,KAAKm9B,kBAAkB0B,kBAAiB,SAAUr/B,GAAGA,GAAG,UAAUF,EAAE64B,eAAe1D,QAAQqK,UAAUx/B,EAAEyuB,YAAYmB,MAAM,2BAA2B5vB,EAAE69B,kBAAkB4B,cAAcv/B,IAAIF,EAAEqB,QAAQ0a,UAAUC,IAAI,uBAAuBhc,EAAEg0B,kBAAkB+J,YAAY/9B,EAAEyuB,YAAYmB,MAAM,gCAAgC5vB,EAAEqB,QAAQ0a,UAAU8U,OAAO,uBAAuB7wB,EAAEg0B,kBAAkB3qB,UAAU,EAAEnJ,EAAE+B,EAAEo9B,YAAY9+B,EAAE6mB,iBAAiB,YAAY7kB,GAAGN,EAAEo9B,UAAU98B,IAAIhC,EAAE4oB,oBAAoB,YAAYlnB,EAAEo9B,WAAWp9B,EAAEo9B,UAAU,MAAM,GAAGn/B,EAAE+B,EAAEk9B,QAAQ5+B,EAAE6mB,iBAAiB,QAAQ9jB,EAAE,CAACo8B,SAAQ,IAAKz9B,EAAEk9B,MAAM77B,IAAI/C,EAAE4oB,oBAAoB,QAAQlnB,EAAEk9B,OAAOl9B,EAAEk9B,MAAM,MAAM,EAAEj/B,EAAE+B,EAAEi9B,UAAUj9B,EAAEi9B,QAAQh9B,IAAIlC,EAAEy7B,UAAUtS,oBAAoB,UAAUlnB,EAAEi9B,SAASj9B,EAAEi9B,QAAQ,MAAM,EAAEh/B,EAAE+B,EAAEm9B,YAAYn9B,EAAEm9B,UAAUj9B,IAAInC,EAAEy7B,UAAUtS,oBAAoB,YAAYlnB,EAAEm9B,WAAWn9B,EAAEm9B,UAAU,UAAU1+B,KAAKm9B,kBAAkB8B,eAAej/B,KAAKm9B,kBAAkB8B,eAAej/B,KAAKoiB,SAASngB,EAAEimB,yBAAyBroB,EAAE,aAAY,SAAUL,GAAG,GAAGA,EAAEqpB,iBAAiBvpB,EAAEspB,QAAQtpB,EAAE69B,kBAAkBC,uBAAuB99B,EAAEg0B,kBAAkB4L,qBAAqB1/B,GAAG,OAAO4B,EAAE5B,GAAG+B,EAAEi9B,SAASl/B,EAAEy7B,UAAUrU,iBAAiB,UAAUnlB,EAAEi9B,SAASj9B,EAAEm9B,WAAWp/B,EAAEy7B,UAAUrU,iBAAiB,YAAYnlB,EAAEm9B,WAAWp/B,EAAEs/B,OAAOp/B,OAAOQ,KAAKoiB,SAASngB,EAAEimB,yBAAyBroB,EAAE,SAAQ,SAAUL,GAAG,GAAG+B,EAAEk9B,YAAY,IAAIn/B,EAAEgG,OAAO65B,cAAc,CAAC,IAAIt/B,EAAEP,EAAEoC,SAAS09B,iBAAiB5/B,GAAG,GAAG,IAAIK,EAAE,OAAO,IAAI,IAAIuB,EAAEY,EAAEo3B,GAAGC,KAAK/5B,EAAEye,aAAa6L,gBAAgByV,sBAAsB,IAAI,MAAM7/B,EAAEs+B,OAAO,EAAE,IAAI,KAAKt8B,EAAE,GAAGoB,EAAE,EAAEA,EAAEvB,KAAKi+B,IAAIz/B,GAAG+C,IAAIpB,GAAGJ,EAAE9B,EAAEye,aAAa+L,iBAAiBtoB,GAAE,MAAO,CAACw9B,SAAQ,KAAMh/B,KAAKoiB,SAASngB,EAAEimB,yBAAyBroB,EAAE,SAAQ,SAAUL,GAAG,IAAI+B,EAAEk9B,MAAM,OAAOn/B,EAAEoC,SAAS69B,QAAQ//B,QAAG,EAAOF,EAAEs/B,OAAOp/B,KAAK,CAACw/B,SAAQ,KAAMh/B,KAAKoiB,SAASngB,EAAEimB,yBAAyBroB,EAAE,cAAa,SAAUL,GAAG,IAAIF,EAAE69B,kBAAkBC,qBAAqB,OAAO99B,EAAEoC,SAAS89B,aAAahgC,GAAGF,EAAEs/B,OAAOp/B,KAAK,CAACw/B,SAAQ,KAAMh/B,KAAKoiB,SAASngB,EAAEimB,yBAAyBroB,EAAE,aAAY,SAAUL,GAAG,IAAIF,EAAE69B,kBAAkBC,qBAAqB,OAAO99B,EAAEoC,SAAS+9B,YAAYjgC,QAAG,EAAOF,EAAEs/B,OAAOp/B,KAAK,CAACw/B,SAAQ,MAAOx/B,EAAEM,UAAUwpB,QAAQ,SAAShqB,EAAEE,GAAG,IAAIK,EAAE,QAAQA,EAAEG,KAAKQ,sBAAiB,IAASX,GAAGA,EAAE6/B,YAAYpgC,EAAEE,IAAIA,EAAEM,UAAU+6B,oBAAoB,SAASv7B,EAAEE,GAAG,IAAIK,EAAE,QAAQA,EAAEG,KAAK2f,iBAAY,IAAS9f,GAAGA,EAAE2uB,YAAYlvB,EAAEE,IAAIA,EAAEM,UAAUw5B,kBAAkB,SAASh6B,GAAG,IAAIE,GAAG,QAAQA,EAAEQ,KAAKszB,yBAAoB,IAAS9zB,OAAE,EAAOA,EAAEmgC,mBAAmBrgC,IAAIU,KAAKW,QAAQ0a,UAAUC,IAAI,iBAAiBtb,KAAKW,QAAQ0a,UAAU8U,OAAO,kBAAkB3wB,EAAEM,UAAUy5B,YAAY,WAAWv5B,KAAK+d,aAAaC,sBAAsBhe,KAAK+d,aAAaC,qBAAoB,EAAGhe,KAAKspB,QAAQtpB,KAAKsF,OAAOL,EAAEjF,KAAKsF,OAAOL,KAAKzF,EAAEM,UAAU6oB,YAAY,SAASnpB,EAAEK,EAAEuB,QAAG,IAASA,IAAIA,EAAE,GAAG9B,EAAEQ,UAAU6oB,YAAY7mB,KAAK9B,KAAKR,EAAEK,EAAEuB,GAAGpB,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,IAAId,EAAEM,UAAUsqB,MAAM,SAAS9qB,GAAGmC,EAAE2oB,MAAM9qB,EAAEU,KAAKwf,SAASxf,KAAK+d,eAAeve,EAAEM,UAAU8/B,4BAA4B,SAAStgC,GAAGU,KAAKs4B,uBAAuBh5B,GAAGE,EAAEM,UAAU+D,oBAAoB,SAASvE,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,KAAK2f,UAAU9b,oBAAoBvE,EAAEE,EAAEK,GAAG,OAAOG,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,GAAGc,GAAG5B,EAAEM,UAAUgE,sBAAsB,SAASxE,GAAGU,KAAK2f,UAAU7b,sBAAsBxE,IAAIU,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,IAAId,EAAEM,UAAU4D,qBAAqB,SAASpE,GAAG,OAAOU,KAAKggB,WAAWtc,qBAAqBpE,IAAIE,EAAEM,UAAUwT,wBAAwB,SAAShU,GAAG,IAAIU,KAAK67B,wBAAwB,MAAM,IAAI3vB,MAAM,iCAAiC,IAAI1M,EAAEQ,KAAK67B,wBAAwBzZ,SAAS9iB,GAAG,OAAOU,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,GAAGd,GAAGA,EAAEM,UAAUyT,0BAA0B,SAASjU,GAAG,IAAIU,KAAK67B,wBAAwB,MAAM,IAAI3vB,MAAM,iCAAiClM,KAAK67B,wBAAwBgE,WAAWvgC,IAAIU,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,IAAIb,OAAOC,eAAeF,EAAEM,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAKsF,OAAOw6B,SAAS59B,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUigC,UAAU,SAASzgC,GAAG,GAAGU,KAAKsF,SAAStF,KAAKw4B,QAAQwH,OAAO,OAAOhgC,KAAKsF,OAAOy6B,UAAU//B,KAAKsF,OAAOw0B,MAAM95B,KAAKsF,OAAOL,EAAE3F,IAAIE,EAAEM,UAAUuO,aAAa,WAAW,QAAQrO,KAAKszB,mBAAmBtzB,KAAKszB,kBAAkBjlB,cAAc7O,EAAEM,UAAUirB,OAAO,SAASzrB,EAAEE,EAAEK,GAAGG,KAAKszB,kBAAkB2M,aAAa3gC,EAAEE,EAAEK,IAAIL,EAAEM,UAAUogC,aAAa,WAAW,OAAOlgC,KAAKszB,kBAAkBtzB,KAAKszB,kBAAkB3I,cAAc,IAAInrB,EAAEM,UAAUqgC,qBAAqB,WAAW,GAAGngC,KAAKszB,mBAAmBtzB,KAAKszB,kBAAkBjlB,aAAa,MAAM,CAAC+xB,YAAYpgC,KAAKszB,kBAAkB+M,eAAe,GAAGC,SAAStgC,KAAKszB,kBAAkB+M,eAAe,GAAGE,UAAUvgC,KAAKszB,kBAAkBkN,aAAa,GAAGC,OAAOzgC,KAAKszB,kBAAkBkN,aAAa,KAAKhhC,EAAEM,UAAUgP,eAAe,WAAW,IAAIxP,EAAE,QAAQA,EAAEU,KAAKszB,yBAAoB,IAASh0B,GAAGA,EAAEwP,kBAAkBtP,EAAEM,UAAU4gC,UAAU,WAAW,IAAIphC,EAAE,QAAQA,EAAEU,KAAKszB,yBAAoB,IAASh0B,GAAGA,EAAEohC,aAAalhC,EAAEM,UAAU6gC,YAAY,SAASrhC,EAAEE,GAAG,IAAIK,EAAE,QAAQA,EAAEG,KAAKszB,yBAAoB,IAASzzB,GAAGA,EAAE8gC,YAAYrhC,EAAEE,IAAIA,EAAEM,UAAUy6B,SAAS,SAASj7B,GAAG,GAAGU,KAAK22B,iBAAgB,EAAG32B,KAAKs4B,yBAAwB,IAAKt4B,KAAKs4B,uBAAuBh5B,GAAG,OAAM,EAAG,IAAIU,KAAK45B,mBAAmBgH,QAAQthC,GAAG,OAAOU,KAAKsF,OAAOw0B,QAAQ95B,KAAKsF,OAAOqO,OAAO3T,KAAK8tB,eAAe+S,kBAAiB,EAAG,IAAIrhC,EAAEw2B,EAAE8K,sBAAsBxhC,EAAEU,KAAK+d,aAAa6L,gBAAgByV,sBAAsBr/B,KAAK02B,QAAQtN,MAAMppB,KAAKy0B,QAAQsM,iBAAiB,GAAG/gC,KAAKs5B,kBAAkBh6B,GAAG,IAAIE,EAAEo+B,MAAM,IAAIp+B,EAAEo+B,KAAK,CAAC,IAAI/9B,EAAEG,KAAKM,KAAK,EAAE,OAAON,KAAK2oB,YAAY,IAAInpB,EAAEo+B,MAAM/9B,EAAEA,GAAGG,KAAK4+B,OAAOt/B,GAAE,GAAI,OAAO,IAAIE,EAAEo+B,MAAM59B,KAAK0gC,cAAc1gC,KAAKghC,mBAAmBhhC,KAAK02B,QAAQp3B,KAAKE,EAAEo/B,QAAQ5+B,KAAK4+B,OAAOt/B,GAAE,IAAKE,EAAEooB,MAAMpoB,EAAEooB,MAAM5lB,EAAEo3B,GAAG6H,KAAKzhC,EAAEooB,MAAM5lB,EAAEo3B,GAAG8H,KAAKlhC,KAAKwf,SAAS7f,MAAM,IAAIK,KAAK2nB,OAAO5U,KAAK,CAAC6U,IAAIpoB,EAAEooB,IAAIuZ,SAAS7hC,IAAIU,KAAKu5B,cAAcv5B,KAAK+d,aAAa+L,iBAAiBtqB,EAAEooB,KAAI,GAAI5nB,KAAKm4B,eAAe1D,QAAQoE,sBAAsB74B,KAAK22B,iBAAgB,GAAI32B,KAAK4+B,OAAOt/B,GAAE,MAAOE,EAAEM,UAAUkhC,mBAAmB,SAAS1hC,EAAEE,GAAG,IAAIK,EAAEP,EAAE8pB,QAAQppB,KAAKy0B,QAAQsM,iBAAiBvhC,EAAE8+B,SAAS9+B,EAAE4+B,UAAU5+B,EAAE4hC,SAAS9hC,EAAE+hC,WAAW7hC,EAAE8+B,QAAQ9+B,EAAE4+B,UAAU5+B,EAAE4hC,QAAQ,MAAM,aAAa5hC,EAAEo+B,KAAK/9B,EAAEA,KAAKL,EAAE8hC,SAAS9hC,EAAE8hC,QAAQ,KAAK9hC,EAAEM,UAAUw6B,OAAO,SAASh7B,GAAGU,KAAKs4B,yBAAwB,IAAKt4B,KAAKs4B,uBAAuBh5B,KAAK,SAASA,GAAG,OAAO,KAAKA,EAAEgiC,SAAS,KAAKhiC,EAAEgiC,SAAS,KAAKhiC,EAAEgiC,QAA1D,CAAmEhiC,IAAIU,KAAK4oB,QAAQ5oB,KAAKs5B,kBAAkBh6B,KAAKE,EAAEM,UAAU06B,UAAU,SAASl7B,GAAG,IAAIE,EAAE,GAAGQ,KAAK22B,gBAAgB,OAAM,EAAG,GAAG32B,KAAKs4B,yBAAwB,IAAKt4B,KAAKs4B,uBAAuBh5B,GAAG,OAAM,EAAG,GAAGU,KAAK4+B,OAAOt/B,GAAGA,EAAEiiC,SAAS/hC,EAAEF,EAAEiiC,cAAc,GAAG,OAAOjiC,EAAEkiC,YAAO,IAASliC,EAAEkiC,MAAMhiC,EAAEF,EAAEgiC,YAAY,CAAC,GAAG,IAAIhiC,EAAEkiC,OAAO,IAAIliC,EAAEiiC,SAAS,OAAM,EAAG/hC,EAAEF,EAAEkiC,MAAM,SAAShiC,IAAIF,EAAEg/B,QAAQh/B,EAAE8+B,SAAS9+B,EAAE8hC,WAAWphC,KAAKghC,mBAAmBhhC,KAAK02B,QAAQp3B,KAAKE,EAAEqZ,OAAOC,aAAatZ,GAAGQ,KAAK2nB,OAAO5U,KAAK,CAAC6U,IAAIpoB,EAAE2hC,SAAS7hC,IAAIU,KAAKu5B,cAAcv5B,KAAK+d,aAAa+L,iBAAiBtqB,GAAE,GAAI,KAAKA,EAAEM,UAAU43B,KAAK,WAAW,IAAIp4B,EAAEU,KAAKyhC,eAAe,QAAQniC,EAAEU,KAAKo8B,qBAAgB,IAAS98B,GAAGA,EAAEoiC,iBAAiB1hC,KAAKg3B,QAAQjkB,QAAQvT,EAAEM,UAAUY,OAAO,SAASlB,EAAEK,GAAGL,IAAIQ,KAAKO,MAAMV,IAAIG,KAAKM,KAAKhB,EAAEQ,UAAUY,OAAOoB,KAAK9B,KAAKR,EAAEK,GAAGG,KAAKyT,mBAAmBzT,KAAKyT,iBAAiBkuB,cAAc3hC,KAAKyT,iBAAiBklB,WAAWn5B,EAAEM,UAAUo4B,aAAa,SAAS54B,EAAEE,GAAG,IAAIK,EAAEuB,EAAE,QAAQvB,EAAEG,KAAKyT,wBAAmB,IAAS5T,GAAGA,EAAE84B,UAAU,QAAQv3B,EAAEpB,KAAK0B,gBAAW,IAASN,GAAGA,EAAEw3B,gBAAe,IAAKp5B,EAAEM,UAAUW,MAAM,WAAW,GAAG,IAAIT,KAAKsF,OAAOw0B,OAAO,IAAI95B,KAAKsF,OAAOL,EAAE,CAACjF,KAAKsF,OAAOsO,MAAMjH,IAAI,EAAE3M,KAAKsF,OAAOsO,MAAMzR,IAAInC,KAAKsF,OAAOw0B,MAAM95B,KAAKsF,OAAOL,IAAIjF,KAAKsF,OAAOsO,MAAMhP,OAAO,EAAE5E,KAAKsF,OAAOqO,MAAM,EAAE3T,KAAKsF,OAAOw0B,MAAM,EAAE95B,KAAKsF,OAAOL,EAAE,EAAE,IAAI,IAAI3F,EAAE,EAAEA,EAAEU,KAAKM,KAAKhB,IAAIU,KAAKsF,OAAOsO,MAAMzO,KAAKnF,KAAKsF,OAAOs8B,aAAa91B,EAAE+1B,oBAAoB7hC,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,GAAGN,KAAKi9B,UAAUlqB,KAAK,CAAC+uB,SAAS9hC,KAAKsF,OAAOqO,MAAMxP,OAAO,MAAM3E,EAAEM,UAAUyS,MAAM,WAAW,IAAI/S,EAAEK,EAAEG,KAAKy0B,QAAQn0B,KAAKN,KAAKM,KAAKN,KAAKy0B,QAAQl0B,KAAKP,KAAKO,KAAK,IAAIa,EAAEpB,KAAKs4B,uBAAuBt4B,KAAKq3B,SAAS/3B,EAAEQ,UAAUyS,MAAMzQ,KAAK9B,MAAM,QAAQR,EAAEQ,KAAKszB,yBAAoB,IAAS9zB,GAAGA,EAAE+S,QAAQvS,KAAKs4B,uBAAuBl3B,EAAEpB,KAAKspB,QAAQ,EAAEtpB,KAAKM,KAAK,GAAG,QAAQT,EAAEG,KAAK0B,gBAAW,IAAS7B,GAAGA,EAAE+4B,kBAAkBp5B,EAAEM,UAAUg4B,sBAAsB,SAASx4B,GAAG,GAAGU,KAAKQ,eAAe,OAAOlB,GAAG,KAAKuC,EAAEkgC,yBAAyBC,oBAAoB,IAAIxiC,EAAEQ,KAAKQ,eAAeK,WAAWgJ,kBAAkBo4B,QAAQ,GAAGpiC,EAAEG,KAAKQ,eAAeK,WAAWiJ,mBAAmBm4B,QAAQ,GAAGjiC,KAAK+d,aAAa+L,iBAAiB9nB,EAAEo3B,GAAGC,IAAI,MAAMx5B,EAAE,IAAIL,EAAE,KAAK,MAAM,KAAKqC,EAAEkgC,yBAAyBG,qBAAqB,IAAI9gC,EAAEpB,KAAKQ,eAAeK,WAAWsN,gBAAgB8zB,QAAQ,GAAG1gC,EAAEvB,KAAKQ,eAAeK,WAAWuN,iBAAiB6zB,QAAQ,GAAGjiC,KAAK+d,aAAa+L,iBAAiB9nB,EAAEo3B,GAAGC,IAAI,MAAM93B,EAAE,IAAIH,EAAE,OAAO5B,EAAEM,UAAU8+B,OAAO,SAASt/B,EAAEE,GAAG,GAAGQ,KAAKy0B,QAAQ0N,cAAc3iC,EAAE,OAAOF,EAAEupB,iBAAiBvpB,EAAEsrB,mBAAkB,GAAIprB,EAAEM,UAAUsiC,YAAY,WAAW,OAAM,GAAI5iC,EAAEM,UAAU2hC,WAAW,WAAW,MAAM,UAAUzhC,KAAKy0B,QAAQ4N,WAAW7iC,EAAhqxB,CAAmqxB62B,EAAEiM,cAAc9iC,EAAEu2B,SAASU,GAAG8L,KAAK,SAASjjC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEg9B,cAAS,EAAO,IAAI/6B,EAAE5B,EAAE,KAAKmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAE,SAAShF,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEnB,GAAG,IAAII,EAAEvC,EAAEwC,KAAK9B,OAAOA,KAAK,OAAO6B,EAAE2gC,aAAahjC,EAAEqC,EAAEs5B,iBAAiBt7B,EAAEgC,EAAE4gC,YAAYrhC,EAAES,EAAEisB,eAAevsB,EAAEM,EAAE0xB,gBAAgB/xB,EAAEK,EAAE4R,iBAAiB7Q,EAAEf,EAAErB,eAAeiB,EAAEI,EAAEF,eAAe,EAAEE,EAAEsV,kBAAkB,EAAEtV,EAAE6gC,0BAA0B,EAAE7gC,EAAE8gC,4BAA4B,EAAE9gC,EAAE+gC,0BAA0B,EAAE/gC,EAAEghC,YAAY,EAAEhhC,EAAEihC,eAAe,EAAEjhC,EAAEkhC,oBAAoB,EAAElhC,EAAEmhC,uBAAuB,KAAKnhC,EAAEohC,wBAAuB,EAAGphC,EAAEF,eAAeE,EAAEs5B,iBAAiB+H,YAAYrhC,EAAE4gC,YAAYS,aAAa,GAAGrhC,EAAEugB,SAASpgB,EAAEkmB,yBAAyBrmB,EAAEs5B,iBAAiB,SAASt5B,EAAEo7B,UAAUz6B,KAAKX,KAAKwd,YAAW,WAAY,OAAOxd,EAAE+2B,mBAAmB,GAAG/2B,EAAE,OAAON,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUu4B,cAAc,SAAS/4B,GAAGU,KAAKm7B,iBAAiBzoB,MAAMywB,gBAAgB7jC,EAAEsM,WAAWmK,KAAKvW,EAAEM,UAAUsjC,SAAS,SAAS9jC,GAAG,IAAIE,EAAEQ,KAAK,GAAGV,EAAE,OAAOU,KAAKm1B,qBAAqB,OAAOn1B,KAAKgjC,wBAAwBhkB,qBAAqBhf,KAAKgjC,yBAAyB,OAAOhjC,KAAKgjC,yBAAyBhjC,KAAKgjC,uBAAuB5jB,uBAAsB,WAAY,OAAO5f,EAAE21B,qBAAqB31B,EAAEM,UAAUq1B,cAAc,WAAW,GAAGn1B,KAAKyT,iBAAiBpH,OAAO,EAAE,CAACrM,KAAKmX,kBAAkBnX,KAAKQ,eAAeK,WAAWuN,iBAAiBpN,OAAOmQ,iBAAiBnR,KAAK2iC,4BAA4B3iC,KAAKm7B,iBAAiBkI,aAAa,IAAI/jC,EAAE+B,KAAK4S,MAAMjU,KAAKmX,kBAAkBnX,KAAK0iC,4BAA4B1iC,KAAK2iC,4BAA4B3iC,KAAKQ,eAAeK,WAAWoQ,cAAcjR,KAAK4iC,4BAA4BtjC,IAAIU,KAAK4iC,0BAA0BtjC,EAAEU,KAAKyiC,YAAY/vB,MAAMrG,OAAOrM,KAAK4iC,0BAA0B,MAAM,IAAIpjC,EAAEQ,KAAK8tB,eAAexoB,OAAOqO,MAAM3T,KAAKmX,kBAAkBnX,KAAKm7B,iBAAiBmI,YAAY9jC,IAAIQ,KAAKijC,wBAAuB,EAAGjjC,KAAKm7B,iBAAiBmI,UAAU9jC,GAAGQ,KAAKgjC,uBAAuB,MAAMxjC,EAAEM,UAAU84B,eAAe,SAASt5B,GAAG,QAAG,IAASA,IAAIA,GAAE,GAAIU,KAAK0iC,4BAA4B1iC,KAAK8tB,eAAexoB,OAAOsO,MAAMhP,OAAO,OAAO5E,KAAK0iC,0BAA0B1iC,KAAK8tB,eAAexoB,OAAOsO,MAAMhP,YAAY5E,KAAKojC,SAAS9jC,GAAG,GAAGU,KAAK2iC,8BAA8B3iC,KAAKQ,eAAeK,WAAWoQ,aAAa,CAAC,IAAIzR,EAAEQ,KAAK8tB,eAAexoB,OAAOqO,MAAM3T,KAAKmX,kBAAkBnX,KAAK8iC,iBAAiBtjC,GAAGQ,KAAK8iC,iBAAiB9iC,KAAKm7B,iBAAiBmI,WAAWtjC,KAAKQ,eAAeK,WAAWuN,iBAAiBpN,OAAOmQ,mBAAmBnR,KAAKmX,mBAAmBnX,KAAKojC,SAAS9jC,QAAQU,KAAKojC,SAAS9jC,IAAIE,EAAEM,UAAUm9B,UAAU,SAAS39B,GAAG,GAAGU,KAAK8iC,eAAe9iC,KAAKm7B,iBAAiBmI,UAAUtjC,KAAKm7B,iBAAiBoI,aAAa,CAAC,GAAGvjC,KAAKijC,uBAAuB,OAAOjjC,KAAKijC,wBAAuB,OAAQjjC,KAAKwiC,aAAa,GAAG,IAAIhjC,EAAE6B,KAAK4S,MAAMjU,KAAK8iC,eAAe9iC,KAAKmX,mBAAmBnX,KAAK8tB,eAAexoB,OAAOqO,MAAM3T,KAAKwiC,aAAahjC,KAAKA,EAAEM,UAAU0jC,cAAc,SAASlkC,EAAEE,GAAG,IAAIK,EAAEG,KAAKm7B,iBAAiBmI,UAAUtjC,KAAK2iC,4BAA4B,QAAQnjC,EAAE,GAAG,IAAIQ,KAAKm7B,iBAAiBmI,WAAW9jC,EAAE,GAAGK,EAAEG,KAAK4iC,6BAA6BtjC,EAAEmkC,YAAYnkC,EAAEupB,kBAAiB,IAAKrpB,EAAEM,UAAUy/B,QAAQ,SAASjgC,GAAG,IAAIE,EAAEQ,KAAK0jC,mBAAmBpkC,GAAG,OAAO,IAAIE,IAAIQ,KAAKm7B,iBAAiBmI,WAAW9jC,EAAEQ,KAAKwjC,cAAclkC,EAAEE,KAAKA,EAAEM,UAAU4jC,mBAAmB,SAASpkC,GAAG,GAAG,IAAIA,EAAEw+B,OAAO,OAAO,EAAE,IAAIt+B,EAAEQ,KAAK2jC,qBAAqBrkC,EAAEw+B,OAAOx+B,GAAG,OAAOA,EAAEskC,YAAYC,WAAWC,eAAetkC,GAAGQ,KAAKmX,kBAAkB7X,EAAEskC,YAAYC,WAAWE,iBAAiBvkC,GAAGQ,KAAKmX,kBAAkBnX,KAAK8tB,eAAextB,MAAMd,GAAGA,EAAEM,UAAUs/B,iBAAiB,SAAS9/B,GAAG,GAAG,IAAIA,EAAEw+B,OAAO,OAAO,EAAE,IAAIt+B,EAAEQ,KAAK2jC,qBAAqBrkC,EAAEw+B,OAAOx+B,GAAG,OAAOA,EAAEskC,YAAYC,WAAWG,iBAAiBxkC,GAAGQ,KAAKmX,kBAAkB,EAAEnX,KAAK+iC,qBAAqBvjC,EAAEA,EAAE6B,KAAKO,MAAMP,KAAKi+B,IAAIt/B,KAAK+iC,uBAAuB/iC,KAAK+iC,oBAAoB,EAAE,GAAG,GAAG/iC,KAAK+iC,qBAAqB,GAAGzjC,EAAEskC,YAAYC,WAAWE,iBAAiBvkC,GAAGQ,KAAK8tB,eAAextB,MAAMd,GAAGA,EAAEM,UAAU6jC,qBAAqB,SAASrkC,EAAEE,GAAG,IAAIK,EAAEG,KAAKuzB,gBAAgBkB,QAAQwP,mBAAmB,MAAM,QAAQpkC,GAAGL,EAAE8+B,QAAQ,SAASz+B,GAAGL,EAAE4+B,SAAS,UAAUv+B,GAAGL,EAAE++B,SAASj/B,EAAEU,KAAKuzB,gBAAgBkB,QAAQyP,sBAAsBlkC,KAAKuzB,gBAAgBkB,QAAQ0P,kBAAkB7kC,EAAEU,KAAKuzB,gBAAgBkB,QAAQ0P,mBAAmB3kC,EAAEM,UAAU0/B,aAAa,SAASlgC,GAAGU,KAAK6iC,YAAYvjC,EAAE8kC,QAAQ,GAAG/P,OAAO70B,EAAEM,UAAU2/B,YAAY,SAASngC,GAAG,IAAIE,EAAEQ,KAAK6iC,YAAYvjC,EAAE8kC,QAAQ,GAAG/P,MAAM,OAAOr0B,KAAK6iC,YAAYvjC,EAAE8kC,QAAQ,GAAG/P,MAAM,IAAI70B,IAAIQ,KAAKm7B,iBAAiBmI,WAAW9jC,EAAEQ,KAAKwjC,cAAclkC,EAAEE,KAAKgC,EAAE,CAACoB,EAAE,EAAEiC,EAAEurB,gBAAgBxtB,EAAE,EAAEiC,EAAEiwB,iBAAiBlyB,EAAE,EAAEf,EAAE65B,kBAAkB94B,EAAE,EAAEf,EAAEo6B,iBAAiBz8B,GAA54I,CAAg5IiC,EAAEyS,YAAY1U,EAAEg9B,SAASl4B,GAAG+/B,KAAK,SAAS/kC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE28B,uBAAkB,EAAO,IAAI36B,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE,WAAW,SAASnC,EAAEA,EAAEE,EAAEK,EAAEuB,EAAEG,EAAEC,GAAGxB,KAAKskC,UAAUhlC,EAAEU,KAAKk8B,iBAAiB18B,EAAEQ,KAAK8tB,eAAejuB,EAAEG,KAAKuzB,gBAAgBnyB,EAAEpB,KAAK+d,aAAaxc,EAAEvB,KAAKQ,eAAegB,EAAExB,KAAKukC,cAAa,EAAGvkC,KAAKwkC,uBAAsB,EAAGxkC,KAAKykC,qBAAqB,CAAC1/B,MAAM,EAAEG,IAAI,GAAGlF,KAAK0kC,iBAAiB,GAAG,OAAOjlC,OAAOC,eAAeJ,EAAEQ,UAAU,cAAc,CAACqC,IAAI,WAAW,OAAOnC,KAAKukC,cAAcriC,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU26B,iBAAiB,WAAWz6B,KAAKukC,cAAa,EAAGvkC,KAAKykC,qBAAqB1/B,MAAM/E,KAAKskC,UAAU3kC,MAAMiF,OAAO5E,KAAKk8B,iBAAiBhT,YAAY,GAAGlpB,KAAK0kC,iBAAiB,GAAG1kC,KAAKk8B,iBAAiB7gB,UAAUC,IAAI,WAAWhc,EAAEQ,UAAU46B,kBAAkB,SAASp7B,GAAG,IAAIE,EAAEQ,KAAKA,KAAKk8B,iBAAiBhT,YAAY5pB,EAAE4a,KAAKla,KAAK46B,4BAA4Bvb,YAAW,WAAY7f,EAAEilC,qBAAqBv/B,IAAI1F,EAAE8kC,UAAU3kC,MAAMiF,SAAS,IAAItF,EAAEQ,UAAU66B,eAAe,WAAW36B,KAAK2kC,sBAAqB,IAAKrlC,EAAEQ,UAAU8gC,QAAQ,SAASthC,GAAG,GAAGU,KAAKukC,cAAcvkC,KAAKwkC,sBAAsB,CAAC,GAAG,MAAMllC,EAAEgiC,QAAQ,OAAM,EAAG,GAAG,KAAKhiC,EAAEgiC,SAAS,KAAKhiC,EAAEgiC,SAAS,KAAKhiC,EAAEgiC,QAAQ,OAAM,EAAGthC,KAAK2kC,sBAAqB,GAAI,OAAO,MAAMrlC,EAAEgiC,UAAUthC,KAAK4kC,6BAA4B,IAAKtlC,EAAEQ,UAAU6kC,qBAAqB,SAASrlC,GAAG,IAAIE,EAAEQ,KAAK,GAAGA,KAAKk8B,iBAAiB7gB,UAAU8U,OAAO,UAAUnwB,KAAKukC,cAAa,EAAGjlC,EAAE,CAAC,IAAIO,EAAE,CAACkF,MAAM/E,KAAKykC,qBAAqB1/B,MAAMG,IAAIlF,KAAKykC,qBAAqBv/B,KAAKlF,KAAKwkC,uBAAsB,EAAGnlB,YAAW,WAAmE,IAAI/f,EAAxDE,EAAEglC,wBAAuBhlC,EAAEglC,uBAAsB,EAAS3kC,EAAEkF,OAAOvF,EAAEklC,iBAAiB9/B,QAAQtF,EAAEE,EAAE+kC,aAAa/kC,EAAE8kC,UAAU3kC,MAAMgG,UAAU9F,EAAEkF,MAAMlF,EAAEqF,KAAK1F,EAAE8kC,UAAU3kC,MAAMgG,UAAU9F,EAAEkF,QAAQH,OAAO,GAAGpF,EAAEue,aAAa+L,iBAAiBxqB,GAAE,MAAO,OAAO,CAACU,KAAKwkC,uBAAsB,EAAG,IAAIpjC,EAAEpB,KAAKskC,UAAU3kC,MAAMgG,UAAU3F,KAAKykC,qBAAqB1/B,MAAM/E,KAAKykC,qBAAqBv/B,KAAKlF,KAAK+d,aAAa+L,iBAAiB1oB,GAAE,KAAM9B,EAAEQ,UAAU8kC,0BAA0B,WAAW,IAAItlC,EAAEU,KAAKR,EAAEQ,KAAKskC,UAAU3kC,MAAM0f,YAAW,WAAY,IAAI/f,EAAEilC,aAAa,CAAC,IAAI1kC,EAAEP,EAAEglC,UAAU3kC,MAAMgqB,QAAQnqB,EAAE,IAAIK,EAAE+E,OAAO,IAAItF,EAAEolC,iBAAiB7kC,EAAEP,EAAEye,aAAa+L,iBAAiBjqB,GAAE,OAAQ,IAAIP,EAAEQ,UAAU86B,0BAA0B,SAASt7B,GAAG,IAAIE,EAAEQ,KAAK,GAAGA,KAAKukC,aAAa,CAAC,GAAGvkC,KAAK8tB,eAAexoB,OAAOq0B,mBAAmB,CAAC,IAAI95B,EAAEwB,KAAK2N,IAAIhP,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAevtB,KAAK,GAAGa,EAAEpB,KAAKQ,eAAeK,WAAWE,iBAAiBQ,EAAEvB,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAKQ,eAAeK,WAAWE,iBAAiBS,EAAE3B,EAAEG,KAAKQ,eAAeK,WAAWC,gBAAgBd,KAAKk8B,iBAAiBxpB,MAAM4E,KAAK9V,EAAE,KAAKxB,KAAKk8B,iBAAiBxpB,MAAM2E,IAAI9V,EAAE,KAAKvB,KAAKk8B,iBAAiBxpB,MAAMrG,OAAOjL,EAAE,KAAKpB,KAAKk8B,iBAAiBxpB,MAAMqnB,WAAW34B,EAAE,KAAKpB,KAAKk8B,iBAAiBxpB,MAAM0D,WAAWpW,KAAKuzB,gBAAgBkB,QAAQre,WAAWpW,KAAKk8B,iBAAiBxpB,MAAM2D,SAASrW,KAAKuzB,gBAAgBkB,QAAQpe,SAAS,KAAK,IAAIzT,EAAE5C,KAAKk8B,iBAAiBnS,wBAAwB/pB,KAAKskC,UAAU5xB,MAAM4E,KAAK9V,EAAE,KAAKxB,KAAKskC,UAAU5xB,MAAM2E,IAAI9V,EAAE,KAAKvB,KAAKskC,UAAU5xB,MAAMtG,MAAM/K,KAAKC,IAAIsB,EAAEwJ,MAAM,GAAG,KAAKpM,KAAKskC,UAAU5xB,MAAMrG,OAAOhL,KAAKC,IAAIsB,EAAEyJ,OAAO,GAAG,KAAKrM,KAAKskC,UAAU5xB,MAAMqnB,WAAWn3B,EAAEyJ,OAAO,KAAK/M,GAAG+f,YAAW,WAAY,OAAO7f,EAAEo7B,2BAA0B,KAAM,KAAKx5B,EAAE,CAACG,EAAE,EAAEqB,EAAEwtB,gBAAgB7uB,EAAE,EAAEqB,EAAEkyB,iBAAiBvzB,EAAE,EAAEqB,EAAEiiC,cAActjC,EAAE,EAAEC,EAAEy6B,iBAAiB38B,GAA1rG,GAAgsGE,EAAE28B,kBAAkB16B,GAAGqjC,KAAK,CAACxlC,EAAEE,KAAK,SAASK,EAAEP,EAAEE,GAAG,IAAIK,EAAEL,EAAEuqB,wBAAwB,MAAM,CAACzqB,EAAE0qB,QAAQnqB,EAAEyX,KAAKhY,EAAE2qB,QAAQpqB,EAAEwX,KAAK5X,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEk+B,iBAAiBl+B,EAAEwzB,UAAUxzB,EAAEulC,gCAA2B,EAAOvlC,EAAEulC,2BAA2BllC,EAAEL,EAAEwzB,UAAU,SAAS1zB,EAAEE,EAAE4B,EAAEG,EAAEC,EAAEoB,EAAEnB,EAAEO,GAAG,GAAGR,EAAE,CAAC,IAAIK,EAAEhC,EAAEP,EAAEE,GAAG,GAAGqC,EAAE,OAAOA,EAAE,GAAGR,KAAK0S,MAAMlS,EAAE,IAAIG,EAAEY,EAAE,EAAE,IAAIA,GAAGf,EAAE,GAAGR,KAAK0S,KAAKlS,EAAE,GAAGJ,GAAGI,EAAE,GAAGR,KAAK2N,IAAI3N,KAAKC,IAAIO,EAAE,GAAG,GAAGT,GAAGY,EAAE,EAAE,IAAIH,EAAE,GAAGR,KAAK2N,IAAI3N,KAAKC,IAAIO,EAAE,GAAG,GAAGN,GAAGM,IAAIrC,EAAEk+B,iBAAiB,SAASp+B,GAAG,GAAGA,EAAE,MAAM,CAAC0F,EAAE1F,EAAE,GAAG,GAAG2F,EAAE3F,EAAE,GAAG,MAAM0lC,KAAK,CAAC1lC,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEylC,wBAAmB,EAAO,IAAI7jC,EAAEvB,EAAE,MAAM,SAAS0B,EAAEjC,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEjC,EAAEkC,EAAE3B,EAAEP,GAAGmC,EAAEjC,EAAEgC,EAAE3B,EAAEL,GAAG,OAAOqC,EAAER,KAAKi+B,IAAI/9B,EAAEE,GAAG,SAASnC,EAAEE,EAAEK,GAAG,IAAI,IAAIuB,EAAE,EAAEG,EAAEjC,EAAEkC,EAAE3B,EAAEP,GAAGmC,EAAEjC,EAAEgC,EAAE3B,EAAEL,GAAGwC,EAAE,EAAEA,EAAEX,KAAKi+B,IAAI/9B,EAAEE,GAAGO,IAAI,CAAC,IAAIH,EAAE,MAAMe,EAAEtD,EAAEE,IAAI,EAAE,EAAEqF,EAAEhF,EAAEyF,OAAOsO,MAAMzR,IAAIZ,EAAEM,EAAEG,GAAG6C,GAAGA,EAAEY,WAAWrE,IAAI,OAAOA,EAA1J,CAA6J9B,EAAEE,EAAEK,GAAGmC,EAAEY,EAAEtD,EAAEE,GAAG4B,IAAI,SAASI,EAAElC,EAAEE,GAAG,IAAI,IAAIK,EAAE,EAAEuB,EAAE9B,EAAEgG,OAAOsO,MAAMzR,IAAI3C,GAAG+B,EAAEH,GAAGA,EAAEqE,UAAUlE,GAAG/B,GAAG,GAAGA,EAAEF,EAAEgB,MAAMT,IAAI0B,GAAGH,EAAE9B,EAAEgG,OAAOsO,MAAMzR,MAAM3C,KAAK4B,EAAEqE,UAAU,OAAO5F,EAAE,SAAS+C,EAAEtD,EAAEE,GAAG,OAAOF,EAAEE,EAAE,IAAI,IAAI,SAASiC,EAAEnC,EAAEE,EAAEK,EAAEuB,EAAEG,EAAEC,GAAG,IAAI,IAAIoB,EAAEtD,EAAEmC,EAAEjC,EAAEwC,EAAE,GAAGY,IAAI/C,GAAG4B,IAAIL,GAAGwB,GAAGrB,EAAE,GAAG,EAAEA,GAAGqB,EAAEpB,EAAEjB,KAAK,GAAGyB,GAAGR,EAAE8D,OAAOikB,4BAA4B9nB,GAAE,EAAGnC,EAAEsD,GAAGA,EAAE,EAAEtD,EAAE,EAAEmC,MAAMF,GAAGqB,EAAE,IAAIZ,GAAGR,EAAE8D,OAAOikB,4BAA4B9nB,GAAE,EAAG,EAAEnC,EAAE,GAAGA,EAAEsD,EAAEpB,EAAEjB,KAAK,EAAEkB,KAAK,OAAOO,EAAER,EAAE8D,OAAOikB,4BAA4B9nB,GAAE,EAAGnC,EAAEsD,GAAG,SAASZ,EAAE1C,EAAEE,GAAG,IAAIK,EAAEL,EAAE,IAAI,IAAI,OAAO4B,EAAEg4B,GAAGC,IAAIx5B,EAAEP,EAAE,SAASuC,EAAEvC,EAAEE,GAAGF,EAAE+B,KAAKO,MAAMtC,GAAG,IAAI,IAAIO,EAAE,GAAGuB,EAAE,EAAEA,EAAE9B,EAAE8B,IAAIvB,GAAGL,EAAE,OAAOK,EAAEL,EAAEylC,mBAAmB,SAAS3lC,EAAEE,EAAEK,EAAEuB,GAAG,IAAIwB,EAAEiC,EAAEhF,EAAEyF,OAAON,EAAEV,EAAEzE,EAAEyF,OAAOL,EAAE,IAAIpF,EAAEyF,OAAO65B,cAAc,OAAO,SAAS7/B,EAAEE,EAAEK,EAAEuB,EAAEwB,EAAEiC,GAAG,OAAO,IAAItD,EAAE/B,EAAE4B,EAAEwB,EAAEiC,GAAGD,OAAO,GAAG/C,EAAEJ,EAAEnC,EAAEE,EAAEF,EAAEE,EAAEgC,EAAEoB,EAAEpD,IAAG,EAAGoD,GAAGgC,OAAO5C,EAAE,IAAI6C,IAA5F,CAAiGA,EAAEP,EAAE,EAAE9E,EAAEK,EAAEuB,GAAGG,EAAE+C,EAAE9E,EAAEK,EAAEuB,GAAG,SAAS9B,EAAEE,EAAEK,EAAEuB,EAAEwB,EAAEiC,GAAG,IAAIP,EAAEA,EAAE/C,EAAE/B,EAAE4B,EAAEwB,EAAEiC,GAAGD,OAAO,EAAExD,EAAEI,EAAEoB,EAAExB,GAAG5B,EAAE,IAAIgF,EAAEpD,EAAE4E,EAAE,SAAS1G,EAAEE,EAAEK,EAAEuB,EAAEwB,EAAEnB,GAAG,IAAIO,EAAE,OAAOA,EAAET,EAAE1B,EAAEuB,EAAEwB,EAAEnB,GAAGmD,OAAO,EAAExD,EAAEI,EAAEoB,EAAExB,GAAG5B,EAAEF,EAAEO,GAAGmC,GAAGZ,GAAG9B,GAAGO,GAAGmC,EAAEZ,EAAE,IAAI,IAA7F,CAAkG9B,EAAEE,EAAEK,EAAEuB,EAAEwB,EAAEiC,GAAG,OAAOhD,EAAEJ,EAAEnC,EAAEgF,EAAEzE,EAAE2E,EAAE,MAAMwB,EAAEpD,GAAGgC,OAAO5C,EAAEgE,EAAEnB,IAA/N,CAAoOA,EAAEP,EAAEhF,EAAEE,EAAEK,EAAEuB,GAAG,GAAGkD,IAAI9E,EAAE,OAAOoD,EAAEiC,EAAEvF,EAAE,IAAI,IAAIuC,EAAER,KAAKi+B,IAAIz6B,EAAEvF,GAAG0C,EAAEY,EAAExB,IAAIwB,EAAE0B,EAAE9E,EAAE,IAAI,IAAI,IAAIgF,EAAEnD,KAAKi+B,IAAIh7B,EAAE9E,GAAG,OAAOqC,EAAE,SAASvC,EAAEE,GAAG,OAAOA,EAAEe,KAAKjB,EAA5B,CAA+BgF,EAAE9E,EAAEF,EAAEuF,EAAEhF,IAAI2E,EAAE,GAAG3E,EAAEU,KAAK,IAAI+D,EAAE9E,EAAEqF,EAAEvF,GAAG,GAAG0C,EAAEY,EAAExB,MAAM8jC,IAAI,CAAC5lC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE2lC,kBAAa,EAAO,IAAItlC,EAAE,WAAW,SAASP,IAAIU,KAAKolC,QAAQ,GAAG,OAAO9lC,EAAEQ,UAAUI,QAAQ,WAAW,IAAI,IAAIZ,EAAEU,KAAKolC,QAAQxgC,OAAO,EAAEtF,GAAG,EAAEA,IAAIU,KAAKolC,QAAQ9lC,GAAG+lC,SAASnlC,WAAWZ,EAAEQ,UAAUwlC,UAAU,SAAShmC,EAAEE,GAAG,IAAIK,EAAEG,KAAKoB,EAAE,CAACikC,SAAS7lC,EAAEU,QAAQV,EAAEU,QAAQqlC,YAAW,GAAIvlC,KAAKolC,QAAQjgC,KAAK/D,GAAG5B,EAAEU,QAAQ,WAAW,OAAOL,EAAE2lC,qBAAqBpkC,IAAI5B,EAAEO,SAAST,IAAIA,EAAEQ,UAAU0lC,qBAAqB,SAASlmC,GAAG,IAAIA,EAAEimC,WAAW,CAAC,IAAI,IAAI/lC,GAAG,EAAEK,EAAE,EAAEA,EAAEG,KAAKolC,QAAQxgC,OAAO/E,IAAI,GAAGG,KAAKolC,QAAQvlC,KAAKP,EAAE,CAACE,EAAEK,EAAE,MAAM,IAAI,IAAIL,EAAE,MAAM,IAAI0M,MAAM,uDAAuD5M,EAAEimC,YAAW,EAAGjmC,EAAEY,QAAQikB,MAAM7kB,EAAE+lC,UAAUrlC,KAAKolC,QAAQzvB,OAAOnW,EAAE,KAAKF,EAAxnB,GAA6nBE,EAAE2lC,aAAatlC,GAAG4lC,KAAK,CAACnmC,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEu2B,cAAS,EAAO,IAAI30B,EAAEvB,EAAE,KAAK0B,EAAE1B,EAAE,MAAM2B,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,KAAKmC,EAAE,WAAW,SAAS1C,EAAEA,GAAGU,KAAKK,MAAM,IAAIkB,EAAEw0B,SAASz2B,GAAGU,KAAK0lC,cAAc,IAAIjkC,EAAE0jC,aAAa,OAAO7lC,EAAEQ,UAAU6lC,kBAAkB,WAAW,IAAI3lC,KAAKK,MAAM83B,eAAe1D,QAAQmR,iBAAiB,MAAM,IAAI15B,MAAM,yEAAyEzM,OAAOC,eAAeJ,EAAEQ,UAAU,eAAe,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAM2S,cAAc9Q,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,aAAa,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMknB,YAAYrlB,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,oBAAoB,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMy8B,mBAAmB56B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMwlC,QAAQ3jC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMylC,UAAU5jC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAM43B,eAAe/1B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAM0lC,QAAQ7jC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAM+mB,UAAUllB,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,QAAQ,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMqnB,OAAOxlB,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAM8mB,UAAUjlB,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAM2I,UAAU9G,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMM,SAASuB,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAK2lC,oBAAoB3lC,KAAKgmC,UAAUhmC,KAAKgmC,QAAQ,IAAIxhC,EAAExE,KAAKK,QAAQL,KAAKgmC,SAAS9jC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAK2lC,oBAAoB,IAAI3/B,EAAEhG,KAAKK,QAAQ6B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMmf,UAAUtd,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,OAAO,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMC,MAAM4B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,OAAO,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAME,MAAM2B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAK2lC,oBAAoB3lC,KAAKimC,UAAUjmC,KAAKimC,QAAQ,IAAIphC,EAAE7E,KAAKK,QAAQL,KAAKimC,SAAS/jC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAK2lC,oBAAoB3lC,KAAKK,MAAMy/B,SAAS59B,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU05B,KAAK,WAAWx5B,KAAKK,MAAMm5B,QAAQl6B,EAAEQ,UAAU8oB,MAAM,WAAW5oB,KAAKK,MAAMuoB,SAAStpB,EAAEQ,UAAUY,OAAO,SAASpB,EAAEE,GAAGQ,KAAKkmC,gBAAgB5mC,EAAEE,GAAGQ,KAAKK,MAAMK,OAAOpB,EAAEE,IAAIF,EAAEQ,UAAUiD,KAAK,SAASzD,GAAGU,KAAKK,MAAM0C,KAAKzD,IAAIA,EAAEQ,UAAU8/B,4BAA4B,SAAStgC,GAAGU,KAAKK,MAAMu/B,4BAA4BtgC,IAAIA,EAAEQ,UAAU+D,oBAAoB,SAASvE,EAAEE,EAAEK,GAAG,OAAOG,KAAK2lC,oBAAoB3lC,KAAKK,MAAMwD,oBAAoBvE,EAAEE,EAAEK,IAAIP,EAAEQ,UAAUgE,sBAAsB,SAASxE,GAAGU,KAAK2lC,oBAAoB3lC,KAAKK,MAAMyD,sBAAsBxE,IAAIA,EAAEQ,UAAU4D,qBAAqB,SAASpE,GAAG,OAAOU,KAAK2lC,oBAAoB3lC,KAAKK,MAAMqD,qBAAqBpE,IAAIA,EAAEQ,UAAUwT,wBAAwB,SAAShU,GAAG,OAAOU,KAAK2lC,oBAAoB3lC,KAAKK,MAAMiT,wBAAwBhU,IAAIA,EAAEQ,UAAUyT,0BAA0B,SAASjU,GAAGU,KAAK2lC,oBAAoB3lC,KAAKK,MAAMkT,0BAA0BjU,IAAIA,EAAEQ,UAAUqmC,eAAe,SAAS7mC,GAAG,OAAOU,KAAK2lC,oBAAoB3lC,KAAKkmC,gBAAgB5mC,GAAGU,KAAKK,MAAM0/B,UAAUzgC,IAAIA,EAAEQ,UAAUigC,UAAU,SAASzgC,GAAG,OAAOU,KAAKmmC,eAAe7mC,IAAIA,EAAEQ,UAAUuO,aAAa,WAAW,OAAOrO,KAAKK,MAAMgO,gBAAgB/O,EAAEQ,UAAUirB,OAAO,SAASzrB,EAAEE,EAAEK,GAAGG,KAAKkmC,gBAAgB5mC,EAAEE,EAAEK,GAAGG,KAAKK,MAAM0qB,OAAOzrB,EAAEE,EAAEK,IAAIP,EAAEQ,UAAUogC,aAAa,WAAW,OAAOlgC,KAAKK,MAAM6/B,gBAAgB5gC,EAAEQ,UAAUqgC,qBAAqB,WAAW,OAAOngC,KAAKK,MAAM8/B,wBAAwB7gC,EAAEQ,UAAUgP,eAAe,WAAW9O,KAAKK,MAAMyO,kBAAkBxP,EAAEQ,UAAU4gC,UAAU,WAAW1gC,KAAKK,MAAMqgC,aAAaphC,EAAEQ,UAAU6gC,YAAY,SAASrhC,EAAEE,GAAGQ,KAAKkmC,gBAAgB5mC,EAAEE,GAAGQ,KAAKK,MAAMsgC,YAAYrhC,EAAEE,IAAIF,EAAEQ,UAAUI,QAAQ,WAAWF,KAAK0lC,cAAcxlC,UAAUF,KAAKK,MAAMH,WAAWZ,EAAEQ,UAAU6oB,YAAY,SAASrpB,GAAGU,KAAKkmC,gBAAgB5mC,GAAGU,KAAKK,MAAMsoB,YAAYrpB,IAAIA,EAAEQ,UAAUsmC,YAAY,SAAS9mC,GAAGU,KAAKkmC,gBAAgB5mC,GAAGU,KAAKK,MAAM+lC,YAAY9mC,IAAIA,EAAEQ,UAAUumC,YAAY,WAAWrmC,KAAKK,MAAMgmC,eAAe/mC,EAAEQ,UAAU+gC,eAAe,WAAW7gC,KAAKK,MAAMwgC,kBAAkBvhC,EAAEQ,UAAUwmC,aAAa,SAAShnC,GAAGU,KAAKkmC,gBAAgB5mC,GAAGU,KAAKK,MAAMimC,aAAahnC,IAAIA,EAAEQ,UAAUW,MAAM,WAAWT,KAAKK,MAAMI,SAASnB,EAAEQ,UAAUy4B,MAAM,SAASj5B,EAAEE,GAAGQ,KAAKK,MAAMk4B,MAAMj5B,EAAEE,IAAIF,EAAEQ,UAAUymC,UAAU,SAASjnC,EAAEE,GAAGQ,KAAKK,MAAMk4B,MAAMj5B,EAAEE,IAAIF,EAAEQ,UAAU0mC,QAAQ,SAASlnC,EAAEE,GAAGQ,KAAKK,MAAMk4B,MAAMj5B,GAAGU,KAAKK,MAAMk4B,MAAM,OAAO/4B,IAAIF,EAAEQ,UAAUsqB,MAAM,SAAS9qB,GAAGU,KAAKK,MAAM+pB,MAAM9qB,IAAIA,EAAEQ,UAAUkU,UAAU,SAAS1U,GAAG,OAAOU,KAAKK,MAAM83B,eAAenkB,UAAU1U,IAAIA,EAAEQ,UAAU2mC,UAAU,SAASnnC,EAAEE,GAAGQ,KAAKK,MAAM83B,eAAesO,UAAUnnC,EAAEE,IAAIF,EAAEQ,UAAUwpB,QAAQ,SAAShqB,EAAEE,GAAGQ,KAAKkmC,gBAAgB5mC,EAAEE,GAAGQ,KAAKK,MAAMipB,QAAQhqB,EAAEE,IAAIF,EAAEQ,UAAUyS,MAAM,WAAWvS,KAAKK,MAAMkS,SAASjT,EAAEQ,UAAUwlC,UAAU,SAAShmC,GAAG,OAAOU,KAAK0lC,cAAcJ,UAAUtlC,KAAKV,IAAIG,OAAOC,eAAeJ,EAAE,UAAU,CAAC6C,IAAI,WAAW,OAAOX,GAAGU,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUomC,gBAAgB,WAAW,IAAI,IAAI5mC,EAAE,GAAGE,EAAE,EAAEA,EAAE4kB,UAAUxf,OAAOpF,IAAIF,EAAEE,GAAG4kB,UAAU5kB,GAAG,IAAI,IAAIK,EAAE,EAAEuB,EAAE9B,EAAEO,EAAEuB,EAAEwD,OAAO/E,IAAI,CAAC,IAAI0B,EAAEH,EAAEvB,GAAG,GAAG0B,IAAI,KAAKmlC,MAAMnlC,IAAIA,EAAE,GAAG,EAAE,MAAM,IAAI2K,MAAM,oCAAoC5M,EAAvsL,GAA4sLE,EAAEu2B,SAAS/zB,EAAE,IAAIH,EAAE,WAAW,SAASvC,EAAEA,EAAEE,GAAGQ,KAAKimC,QAAQ3mC,EAAEU,KAAK49B,KAAKp+B,EAAE,OAAOF,EAAEQ,UAAU6mC,KAAK,SAASrnC,GAAG,OAAOU,KAAKimC,QAAQ3mC,EAAEU,MAAMP,OAAOC,eAAeJ,EAAEQ,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAKimC,QAAQhhC,GAAG/C,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAKimC,QAAQjhC,GAAG9C,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAKimC,QAAQtyB,OAAOzR,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,QAAQ,CAACqC,IAAI,WAAW,OAAOnC,KAAKimC,QAAQnM,OAAO53B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKimC,QAAQryB,MAAMhP,QAAQ1C,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU0F,QAAQ,SAASlG,GAAG,IAAIE,EAAEQ,KAAKimC,QAAQryB,MAAMzR,IAAI7C,GAAG,GAAGE,EAAE,OAAO,IAAI8E,EAAE9E,IAAIF,EAAEQ,UAAU8mC,YAAY,WAAW,OAAO,IAAIxlC,EAAEmP,UAAUjR,EAAv1B,GAA41BuF,EAAE,WAAW,SAASvF,EAAEA,GAAG,IAAIE,EAAEQ,KAAKA,KAAKK,MAAMf,EAAEU,KAAK6mC,gBAAgB,IAAIjkC,EAAE6N,aAAazQ,KAAK8mC,QAAQ,IAAIjlC,EAAE7B,KAAKK,MAAMm4B,QAAQwH,OAAO,UAAUhgC,KAAK+mC,WAAW,IAAIllC,EAAE7B,KAAKK,MAAMm4B,QAAQ6F,IAAI,aAAar+B,KAAKK,MAAMm4B,QAAQwO,kBAAiB,WAAY,OAAOxnC,EAAEqnC,gBAAgB9zB,KAAKvT,EAAE+F,WAAW,OAAO9F,OAAOC,eAAeJ,EAAEQ,UAAU,iBAAiB,CAACqC,IAAI,WAAW,OAAOnC,KAAK6mC,gBAAgB10B,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,GAAGnC,KAAKK,MAAMm4B,QAAQjzB,SAASvF,KAAKK,MAAMm4B,QAAQwH,OAAO,OAAOhgC,KAAKggC,OAAO,GAAGhgC,KAAKK,MAAMm4B,QAAQjzB,SAASvF,KAAKK,MAAMm4B,QAAQ6F,IAAI,OAAOr+B,KAAKinC,UAAU,MAAM,IAAI/6B,MAAM,kDAAkDhK,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAK8mC,QAAQH,KAAK3mC,KAAKK,MAAMm4B,QAAQwH,SAAS99B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAK+mC,WAAWJ,KAAK3mC,KAAKK,MAAMm4B,QAAQ6F,MAAMn8B,YAAW,EAAG2N,cAAa,IAAKvQ,EAA1gC,GAA+gCgF,EAAE,WAAW,SAAShF,EAAEA,GAAGU,KAAKknC,MAAM5nC,EAAE,OAAOG,OAAOC,eAAeJ,EAAEQ,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAKknC,MAAMzhC,WAAWvD,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKknC,MAAMtiC,QAAQ1C,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUiM,QAAQ,SAASzM,EAAEE,GAAG,KAAKF,EAAE,GAAGA,GAAGU,KAAKknC,MAAMtiC,QAAQ,OAAOpF,GAAGQ,KAAKknC,MAAMrzB,SAASvU,EAAEE,GAAGA,GAAGQ,KAAKknC,MAAMrzB,SAASvU,EAAE,IAAI8B,EAAEmP,WAAWjR,EAAEQ,UAAU4F,kBAAkB,SAASpG,EAAEE,EAAEK,GAAG,OAAOG,KAAKknC,MAAMxhC,kBAAkBpG,EAAEE,EAAEK,IAAIP,EAAtgB,GAA2gBkF,EAAE,WAAW,SAASlF,EAAEA,GAAGU,KAAKK,MAAMf,EAAE,OAAOA,EAAEQ,UAAUqnC,mBAAmB,SAAS7nC,EAAEE,GAAG,OAAOQ,KAAKK,MAAM8mC,mBAAmB7nC,GAAE,SAAUA,GAAG,OAAOE,EAAEF,EAAE8nC,eAAe9nC,EAAEQ,UAAUunC,cAAc,SAAS/nC,EAAEE,GAAG,OAAOQ,KAAKmnC,mBAAmB7nC,EAAEE,IAAIF,EAAEQ,UAAUwnC,mBAAmB,SAAShoC,EAAEE,GAAG,OAAOQ,KAAKK,MAAMinC,mBAAmBhoC,GAAE,SAAUA,EAAEO,GAAG,OAAOL,EAAEF,EAAEO,EAAEunC,eAAe9nC,EAAEQ,UAAUynC,cAAc,SAASjoC,EAAEE,GAAG,OAAOQ,KAAKsnC,mBAAmBhoC,EAAEE,IAAIF,EAAEQ,UAAU0nC,mBAAmB,SAASloC,EAAEE,GAAG,OAAOQ,KAAKK,MAAMmnC,mBAAmBloC,EAAEE,IAAIF,EAAEQ,UAAU2nC,cAAc,SAASnoC,EAAEE,GAAG,OAAOQ,KAAKwnC,mBAAmBloC,EAAEE,IAAIF,EAAEQ,UAAU4nC,mBAAmB,SAASpoC,EAAEE,GAAG,OAAOQ,KAAKK,MAAMqnC,mBAAmBpoC,EAAEE,IAAIF,EAAEQ,UAAU6nC,cAAc,SAASroC,EAAEE,GAAG,OAAOQ,KAAK0nC,mBAAmBpoC,EAAEE,IAAIF,EAA3wB,GAAgxB0G,EAAE,WAAW,SAAS1G,EAAEA,GAAGU,KAAKK,MAAMf,EAAE,OAAOA,EAAEQ,UAAUsiB,SAAS,SAAS9iB,GAAGU,KAAKK,MAAMunC,eAAexlB,SAAS9iB,IAAIG,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMunC,eAAeC,UAAU3lC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAKK,MAAMunC,eAAeE,eAAen7B,IAAI,SAASrN,GAAGU,KAAKK,MAAMunC,eAAeE,cAAcxoC,GAAG4C,YAAW,EAAG2N,cAAa,IAAKvQ,EAA1c,IAAgdyoC,KAAK,CAACzoC,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEob,qBAAgB,EAAO,IAAIxZ,EAAEvB,EAAE,KAAK0B,EAAE1B,EAAE,MAAM2B,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAE,WAAW,SAASvF,EAAEA,EAAEE,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEnB,GAAGzB,KAAK6a,WAAWvb,EAAEU,KAAK8a,OAAO1Z,EAAEpB,KAAKiG,QAAQ1E,EAAEvB,KAAKgoC,YAAYxmC,EAAExB,KAAK8tB,eAAelrB,EAAE5C,KAAKuzB,gBAAgB9xB,EAAEzB,KAAK+a,iBAAiB,EAAE/a,KAAKgb,kBAAkB,EAAEhb,KAAKib,iBAAiB,EAAEjb,KAAKkb,kBAAkB,EAAElb,KAAKmb,gBAAgB,EAAEnb,KAAKob,eAAe,EAAEpb,KAAKioC,wBAAwB,CAACC,MAAM,GAAGC,KAAK,EAAE98B,GAAG,EAAED,GAAG,EAAEg9B,MAAK,EAAGC,KAAI,EAAGC,QAAO,GAAItoC,KAAKqR,QAAQC,SAASC,cAAc,UAAUvR,KAAKqR,QAAQgK,UAAUC,IAAI,SAAS9b,EAAE,UAAUQ,KAAKqR,QAAQqB,MAAM6I,OAAO1b,EAAE6a,WAAW1a,KAAKwb,cAAcxb,KAAK6a,WAAWjJ,YAAY5R,KAAKqR,SAAS,OAAO/R,EAAEQ,UAAUI,QAAQ,WAAW,IAAIZ,EAAEuC,EAAEsmB,wBAAwBnoB,KAAKqR,SAAS,QAAQ/R,EAAEU,KAAKsS,kBAAa,IAAShT,GAAGA,EAAEY,WAAWZ,EAAEQ,UAAU0b,YAAY,WAAWxb,KAAKyb,KAAKha,EAAEiF,aAAa1G,KAAKqR,QAAQM,WAAW,KAAK,CAACgG,MAAM3X,KAAK8a,UAAU9a,KAAK8a,QAAQ9a,KAAK0b,aAAapc,EAAEQ,UAAUmT,iBAAiB,aAAa3T,EAAEQ,UAAU6S,OAAO,aAAarT,EAAEQ,UAAU8S,QAAQ,aAAatT,EAAEQ,UAAUkT,aAAa,aAAa1T,EAAEQ,UAAU4T,cAAc,SAASpU,EAAEE,KAAKF,EAAEQ,UAAU+S,mBAAmB,SAASvT,EAAEE,EAAEK,QAAG,IAASA,IAAIA,GAAE,IAAKP,EAAEQ,UAAUwM,UAAU,SAAShN,GAAGU,KAAKwS,kBAAkBlT,IAAIA,EAAEQ,UAAU6b,iBAAiB,SAASrc,GAAG,GAAGA,IAAIU,KAAK8a,OAAO,CAAC,IAAItb,EAAEQ,KAAKqR,QAAQrR,KAAK8a,OAAOxb,EAAEU,KAAKqR,QAAQrR,KAAKqR,QAAQuK,YAAY5b,KAAKwb,cAAcxb,KAAK6a,WAAWgB,aAAa7b,KAAKqR,QAAQ7R,GAAGQ,KAAKwS,kBAAkBxS,KAAKiG,SAASjG,KAAK0T,cAAc,EAAE1T,KAAK8tB,eAAextB,KAAK,KAAKhB,EAAEQ,UAAU0S,kBAAkB,SAASlT,GAAGU,KAAK+a,kBAAkB,GAAG/a,KAAKgb,mBAAmB,IAAIhb,KAAKsS,WAAW9Q,EAAE0R,iBAAiBlT,KAAKuzB,gBAAgBkB,QAAQz0B,KAAKgoC,YAAY1oC,EAAEU,KAAK+a,iBAAiB/a,KAAKgb,mBAAmBhb,KAAKsS,WAAWa,WAAW7T,EAAEQ,UAAUY,OAAO,SAASpB,GAAGU,KAAKib,iBAAiB3b,EAAE6O,gBAAgBnO,KAAKkb,kBAAkB5b,EAAE8O,iBAAiBpO,KAAK+a,iBAAiBzb,EAAEwR,gBAAgB9Q,KAAKgb,kBAAkB1b,EAAEyR,iBAAiB/Q,KAAKmb,gBAAgB7b,EAAEoK,eAAe1J,KAAKob,eAAe9b,EAAEqK,cAAc3J,KAAKqR,QAAQjF,MAAM9M,EAAEuK,kBAAkB7J,KAAKqR,QAAQhF,OAAO/M,EAAEwK,mBAAmB9J,KAAKqR,QAAQqB,MAAMtG,MAAM9M,EAAE0R,YAAY,KAAKhR,KAAKqR,QAAQqB,MAAMrG,OAAO/M,EAAE2R,aAAa,KAAKjR,KAAK8a,QAAQ9a,KAAK0b,YAAY1b,KAAKwS,kBAAkBxS,KAAKiG,UAAU3G,EAAEQ,UAAUgc,WAAW,SAASxc,EAAEE,EAAEK,EAAEuB,GAAGpB,KAAKyb,KAAKhC,SAASna,EAAEU,KAAKib,iBAAiBzb,EAAEQ,KAAKkb,kBAAkBrb,EAAEG,KAAKib,iBAAiB7Z,EAAEpB,KAAKkb,oBAAoB5b,EAAEQ,UAAUic,uBAAuB,SAASzc,EAAEE,EAAEK,QAAG,IAASA,IAAIA,EAAE,GAAGG,KAAKyb,KAAKhC,SAASna,EAAEU,KAAKib,kBAAkBzb,EAAE,GAAGQ,KAAKkb,kBAAkBla,OAAOmQ,iBAAiB,EAAEtR,EAAEG,KAAKib,iBAAiBja,OAAOmQ,mBAAmB7R,EAAEQ,UAAUkc,oBAAoB,SAAS1c,EAAEE,EAAEK,GAAGG,KAAKyb,KAAKhC,SAASna,EAAEU,KAAKib,iBAAiBzb,EAAEQ,KAAKkb,kBAAkBla,OAAOmQ,iBAAiBtR,EAAEG,KAAKkb,oBAAoB5b,EAAEQ,UAAUmc,kBAAkB,SAAS3c,EAAEE,EAAEK,EAAEuB,GAAGpB,KAAKyb,KAAKS,UAAUlb,OAAOmQ,iBAAiBnR,KAAKyb,KAAKU,WAAW7c,EAAEU,KAAKib,iBAAiBja,OAAOmQ,iBAAiB,EAAE3R,EAAEQ,KAAKkb,kBAAkBla,OAAOmQ,iBAAiB,EAAEtR,EAAEG,KAAKib,iBAAiBja,OAAOmQ,iBAAiB/P,EAAEpB,KAAKkb,kBAAkBla,OAAOmQ,mBAAmB7R,EAAEQ,UAAU4b,UAAU,WAAW1b,KAAK8a,OAAO9a,KAAKyb,KAAKxD,UAAU,EAAE,EAAEjY,KAAKqR,QAAQjF,MAAMpM,KAAKqR,QAAQhF,SAASrM,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ2F,WAAWmK,IAAI/V,KAAKyb,KAAKhC,SAAS,EAAE,EAAEzZ,KAAKqR,QAAQjF,MAAMpM,KAAKqR,QAAQhF,UAAU/M,EAAEQ,UAAUsc,YAAY,SAAS9c,EAAEE,EAAEK,EAAEuB,GAAGpB,KAAK8a,OAAO9a,KAAKyb,KAAKxD,UAAU3Y,EAAEU,KAAKib,iBAAiBzb,EAAEQ,KAAKkb,kBAAkBrb,EAAEG,KAAKib,iBAAiB7Z,EAAEpB,KAAKkb,oBAAoBlb,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ2F,WAAWmK,IAAI/V,KAAKyb,KAAKhC,SAASna,EAAEU,KAAKib,iBAAiBzb,EAAEQ,KAAKkb,kBAAkBrb,EAAEG,KAAKib,iBAAiB7Z,EAAEpB,KAAKkb,qBAAqB5b,EAAEQ,UAAUuc,mBAAmB,SAAS/c,EAAEE,EAAEK,GAAGG,KAAKyb,KAAK/B,KAAK1Z,KAAKsc,UAAS,GAAG,GAAItc,KAAKyb,KAAK9B,aAAa,cAAc3Z,KAAKuc,SAAS1c,GAAGG,KAAKyb,KAAK3B,SAASxa,EAAE0M,WAAWxM,EAAEQ,KAAKib,iBAAiBjb,KAAKmb,gBAAgBtb,EAAEG,KAAKkb,kBAAkBlb,KAAKob,eAAepb,KAAKgb,oBAAoB1b,EAAEQ,UAAUyoC,WAAW,SAASjpC,EAAEE,EAAEK,GAAG,IAAI2B,EAAEoB,EAAEnB,EAAEzB,KAAKwoC,kBAAkBlpC,GAAGmC,GAAGnC,EAAE0jB,WAAW1jB,EAAE2jB,UAAUjjB,KAAKyoC,mBAAmBnpC,EAAEE,EAAEK,EAAE4B,IAAInC,EAAE4Z,aAAa1X,EAAElC,EAAE+jB,cAAc9hB,EAAE+e,uBAAuBhhB,EAAEmM,aAAa7I,EAAEtD,EAAE8jB,cAAc7hB,EAAE+e,uBAAuBhhB,EAAE+Z,eAAezW,EAAEtD,EAAE+jB,cAAcjiB,EAAE4W,cAAc1Y,EAAEmM,aAAajK,EAAElC,EAAE8jB,cAAchiB,EAAE4W,cAAc1Y,EAAE+Z,cAAc7X,GAAGxB,KAAKuzB,gBAAgBkB,QAAQhe,4BAA4BnX,EAAE2Z,UAAUzX,EAAE,EAAE,EAAE,EAAExB,KAAKioC,wBAAwBC,MAAM5oC,EAAE0M,YAAY5K,EAAE6jB,qBAAqBjlB,KAAKioC,wBAAwBE,KAAK7oC,EAAEwU,WAAW1S,EAAEkI,qBAAqBtJ,KAAKioC,wBAAwB58B,GAAGzI,EAAE5C,KAAKioC,wBAAwB78B,GAAG5J,EAAExB,KAAKioC,wBAAwBG,OAAO9oC,EAAE2Z,SAASjZ,KAAKioC,wBAAwBI,MAAM/oC,EAAE6Z,QAAQnZ,KAAKioC,wBAAwBK,SAAShpC,EAAE8Z,WAAWpZ,KAAKsS,YAAYtS,KAAKsS,WAAWo2B,KAAK1oC,KAAKyb,KAAKzb,KAAKioC,wBAAwBzoC,EAAEQ,KAAKib,iBAAiBjb,KAAKmb,gBAAgBtb,EAAEG,KAAKkb,kBAAkBlb,KAAKob,iBAAiBpb,KAAKyoC,mBAAmBnpC,EAAEE,EAAEK,KAAKP,EAAEQ,UAAU2oC,mBAAmB,SAASnpC,EAAEE,EAAEK,EAAEuB,GAAG,GAAGpB,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAK/B,KAAK1Z,KAAKsc,WAAWhd,EAAE2Z,WAAW3Z,EAAE8Z,YAAYpZ,KAAKyb,KAAK9B,aAAa,cAAcra,EAAE4Z,YAAY,GAAG9X,EAAEpB,KAAKyb,KAAKjC,UAAUpY,EAAE2U,SAAS,GAAGzW,EAAE+jB,cAAcrjB,KAAKyb,KAAKjC,UAAUxX,EAAE2e,MAAMK,OAAOhhB,KAAKiG,QAAQ2F,YAAYmK,SAAS,GAAGzW,EAAE2jB,UAAUjjB,KAAKyb,KAAKjC,UAAU,OAAO5W,EAAEuI,cAAcQ,WAAWrM,EAAEmM,cAAck9B,KAAK,KAAK,QAAQ,CAAC,IAAInnC,EAAElC,EAAEmM,aAAazL,KAAKuzB,gBAAgBkB,QAAQhe,4BAA4BnX,EAAE2Z,UAAUzX,EAAE,IAAIA,GAAG,GAAGxB,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQgG,KAAKzK,GAAGuU,SAAS,GAAG3U,EAAEpB,KAAKyb,KAAKjC,UAAUpY,EAAE2U,SAAS,GAAGzW,EAAE8jB,cAAcpjB,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQuI,WAAWuH,SAAS,GAAGzW,EAAE0jB,UAAUhjB,KAAKyb,KAAKjC,UAAU,OAAO5W,EAAEuI,cAAcQ,WAAWrM,EAAE+Z,cAAcsvB,KAAK,KAAK,QAAQ,CAAC,IAAIlnC,EAAEnC,EAAE+Z,aAAarZ,KAAKuzB,gBAAgBkB,QAAQhe,4BAA4BnX,EAAE2Z,UAAUxX,EAAE,IAAIA,GAAG,GAAGzB,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQgG,KAAKxK,GAAGsU,IAAI/V,KAAKuc,SAAS1c,GAAGP,EAAE6Z,UAAUnZ,KAAKyb,KAAK7B,YAAYrY,EAAEsY,aAAa7Z,KAAKyb,KAAK3B,SAASxa,EAAE0M,WAAWxM,EAAEQ,KAAKib,iBAAiBjb,KAAKmb,gBAAgBtb,EAAEG,KAAKkb,kBAAkBlb,KAAKob,eAAepb,KAAKgb,mBAAmBhb,KAAKyb,KAAK1B,WAAWza,EAAEQ,UAAUyc,SAAS,SAASjd,GAAGU,KAAKyb,KAAKe,YAAYxc,KAAKyb,KAAKgB,KAAK,EAAEnd,EAAEU,KAAKkb,kBAAkBlb,KAAK8tB,eAAevtB,KAAKP,KAAKib,iBAAiBjb,KAAKkb,mBAAmBlb,KAAKyb,KAAKiB,QAAQpd,EAAEQ,UAAUwc,SAAS,SAAShd,EAAEE,GAAG,OAAOA,EAAE,SAAS,IAAI,KAAKF,EAAEU,KAAKuzB,gBAAgBkB,QAAQle,eAAevW,KAAKuzB,gBAAgBkB,QAAQne,YAAY,IAAItW,KAAKuzB,gBAAgBkB,QAAQpe,SAASrV,OAAOmQ,iBAAiB,MAAMnR,KAAKuzB,gBAAgBkB,QAAQre,YAAY9W,EAAEQ,UAAU0oC,kBAAkB,SAASlpC,GAAG,GAAG,IAAIU,KAAKuzB,gBAAgBkB,QAAQ/d,qBAAqB,CAAC,IAAIlX,EAAEQ,KAAKiG,QAAQkQ,cAAcmV,SAAShsB,EAAE+L,GAAG/L,EAAE8L,IAAI,QAAG,IAAS5L,EAAE,OAAOA,QAAG,EAAO,IAAIK,EAAEP,EAAE+Z,aAAajY,EAAE9B,EAAEga,iBAAiB/X,EAAEjC,EAAEmM,aAAajK,EAAElC,EAAEiM,iBAAiB3I,IAAItD,EAAE4Z,YAAYzX,IAAInC,EAAE4Z,YAAY,GAAGtW,EAAE,CAAC,IAAIf,EAAEhC,EAAEA,EAAE0B,EAAEA,EAAEM,EAAE,IAAIgD,EAAEzD,EAAEA,EAAEI,EAAEA,EAAEqD,EAAE,IAAIP,EAAEtE,KAAKwY,uBAAuBhX,EAAED,EAAEqB,GAAG4B,EAAExE,KAAKyY,uBAAuBrX,EAAEvB,EAAE+C,EAAEnB,GAAGuE,EAAEhE,EAAEqI,KAAKsO,oBAAoBrU,EAAEE,EAAExE,KAAKuzB,gBAAgBkB,QAAQ/d,sBAAsB,GAAG1Q,EAAE,CAAC,IAAI/D,EAAE,CAAC8T,IAAI/T,EAAEqW,SAASC,MAAMtS,GAAG,GAAG,IAAIA,GAAG,GAAG,IAAIA,GAAG,EAAE,KAAKqE,KAAKrE,GAAG,OAAOhG,KAAKiG,QAAQkQ,cAAckV,SAAS/rB,EAAE+L,GAAG/L,EAAE8L,GAAGnJ,GAAGA,EAAEjC,KAAKiG,QAAQkQ,cAAckV,SAAS/rB,EAAE+L,GAAG/L,EAAE8L,GAAG,QAAQ9L,EAAEQ,UAAU0Y,uBAAuB,SAASlZ,EAAEE,EAAEK,GAAG,OAAOP,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOU,KAAKiG,QAAQgG,KAAKzM,GAAG6K,KAAK,KAAK,SAAS,OAAO7K,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAOK,EAAEG,KAAKiG,QAAQuI,WAAWnE,KAAKrK,KAAKiG,QAAQ2F,WAAWvB,OAAO/K,EAAEQ,UAAU2Y,uBAAuB,SAASnZ,EAAEE,EAAEK,EAAEuB,GAAG,OAAO9B,GAAG,KAAK,SAAS,KAAK,SAAS,OAAOU,KAAKuzB,gBAAgBkB,QAAQhe,4BAA4BrV,GAAG5B,EAAE,IAAIA,GAAG,GAAGQ,KAAKiG,QAAQgG,KAAKzM,GAAG6K,KAAK,KAAK,SAAS,OAAO7K,GAAG,EAAE,KAAK,EAAE,QAAQ,OAAOK,EAAEG,KAAKiG,QAAQ2F,WAAWvB,KAAKrK,KAAKiG,QAAQuI,WAAWnE,OAAO/K,EAA1jP,GAA+jPE,EAAEob,gBAAgB/V,GAAG+jC,KAAK,SAAStpC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqR,uBAAkB,EAAO,IAAIpP,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,KAAKgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAE,IAAIE,EAAE,SAASlF,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEnB,EAAEI,EAAEgD,GAAG,IAAIP,EAAEhF,EAAEwC,KAAK9B,KAAKR,EAAE,SAASK,GAAE,EAAGuB,EAAEG,EAAEqB,EAAEnB,IAAIzB,KAAK,OAAOsE,EAAEkM,iBAAiBhP,EAAE8C,EAAEyZ,aAAalc,EAAEyC,EAAEukC,oBAAoBhkC,EAAEP,EAAEuY,MAAM,IAAI7a,EAAEuO,SAASjM,EAAEwY,OAAO,CAAC9X,EAAE,EAAEC,EAAE,EAAE8X,WAAU,EAAGrK,MAAM,GAAGtG,MAAM,GAAG9H,EAAE0Y,iBAAiB,CAACC,IAAI3Y,EAAE4Y,iBAAiB1a,KAAK8B,GAAG6Y,MAAM7Y,EAAE8Y,mBAAmB5a,KAAK8B,GAAG+Y,UAAU/Y,EAAEgZ,uBAAuB9a,KAAK8B,IAAIA,EAAE,OAAO/C,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUY,OAAO,SAASlB,GAAGF,EAAEQ,UAAUY,OAAOoB,KAAK9B,KAAKR,GAAGQ,KAAK8c,OAAO,CAAC9X,EAAE,EAAEC,EAAE,EAAE8X,WAAU,EAAGrK,MAAM,GAAGtG,MAAM,IAAI5M,EAAEM,UAAUyS,MAAM,WAAWvS,KAAKud,eAAevd,KAAKwd,2BAA2Bxd,KAAKwd,yBAAyBtd,UAAUF,KAAKwd,8BAAyB,EAAOxd,KAAKiT,qBAAqBzT,EAAEM,UAAU6S,OAAO,WAAW3S,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBC,QAAQzd,KAAKwQ,iBAAiBuC,KAAK,CAAChO,MAAM/E,KAAK8tB,eAAexoB,OAAOL,EAAEC,IAAIlF,KAAK8tB,eAAexoB,OAAOL,KAAKzF,EAAEM,UAAU8S,QAAQ,WAAW5S,KAAKwd,yBAAyBxd,KAAKwd,yBAAyBG,SAAS3d,KAAKwQ,iBAAiBuC,KAAK,CAAChO,MAAM/E,KAAK8tB,eAAexoB,OAAOL,EAAEC,IAAIlF,KAAK8tB,eAAexoB,OAAOL,KAAKzF,EAAEM,UAAUmT,iBAAiB,WAAW,IAAI3T,EAAEE,EAAEQ,KAAKA,KAAKuzB,gBAAgBkB,QAAQqU,YAAY9oC,KAAKwd,2BAA2Bxd,KAAKwd,yBAAyB,IAAIxX,EAAEhG,KAAK6oC,oBAAoB9rB,WAAU,WAAYvd,EAAEoe,SAAQ,QAAS,QAAQte,EAAEU,KAAKwd,gCAA2B,IAASle,GAAGA,EAAEY,UAAUF,KAAKwd,8BAAyB,GAAQxd,KAAKwQ,iBAAiBuC,KAAK,CAAChO,MAAM/E,KAAK8tB,eAAexoB,OAAOL,EAAEC,IAAIlF,KAAK8tB,eAAexoB,OAAOL,KAAKzF,EAAEM,UAAUkT,aAAa,WAAWhT,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBK,yBAAyBre,EAAEM,UAAU4T,cAAc,SAASpU,EAAEE,IAAIQ,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBM,SAAS9d,KAAK4d,SAAQ,GAAI5d,KAAKwd,yBAAyBK,yBAAyBre,EAAEM,UAAU8d,QAAQ,SAASte,GAAG,GAAGU,KAAK+d,aAAaC,sBAAsBhe,KAAK+d,aAAaE,eAAe,CAAC,IAAIze,EAAEQ,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAexoB,OAAOL,EAAEpF,EAAEL,EAAEQ,KAAK8tB,eAAexoB,OAAOqO,MAAM,GAAG9T,EAAE,GAAGA,GAAGG,KAAK8tB,eAAextB,KAAKN,KAAKud,mBAAmB,CAAC,IAAInc,EAAEC,KAAK2N,IAAIhP,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAevtB,KAAK,GAAG,GAAGP,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAI3C,GAAGqU,SAASzS,EAAEpB,KAAK6c,YAAO,IAAS7c,KAAK6c,MAAMuB,QAAQ,CAAC,IAAIpe,KAAK6oC,oBAAoB9rB,UAAU,CAAC/c,KAAKud,eAAevd,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI,IAAIxU,EAAEvB,KAAKuzB,gBAAgBkB,QAAQsU,YAAY,OAAOxnC,GAAG,UAAUA,EAAEvB,KAAKgd,iBAAiBzb,GAAGH,EAAEvB,EAAEG,KAAK6c,OAAO7c,KAAKqe,kBAAkBjd,EAAEvB,EAAEG,KAAK6c,OAAO7c,KAAKyb,KAAK1B,UAAU/Z,KAAK8c,OAAO9X,EAAE5D,EAAEpB,KAAK8c,OAAO7X,EAAEpF,EAAEG,KAAK8c,OAAOC,WAAU,EAAG/c,KAAK8c,OAAOpK,MAAMnR,OAAOvB,KAAK8c,OAAO1Q,MAAMpM,KAAK6c,MAAMyB,YAAY,IAAIte,KAAKwd,0BAA0Bxd,KAAKwd,yBAAyBe,gBAAgB,CAAC,GAAGve,KAAK8c,OAAO,CAAC,GAAG9c,KAAK8c,OAAO9X,IAAI5D,GAAGpB,KAAK8c,OAAO7X,IAAIpF,GAAGG,KAAK8c,OAAOC,YAAY/c,KAAK6oC,oBAAoB9rB,WAAW/c,KAAK8c,OAAOpK,QAAQ1S,KAAKuzB,gBAAgBkB,QAAQsU,aAAa/oC,KAAK8c,OAAO1Q,QAAQpM,KAAK6c,MAAMyB,WAAW,OAAOte,KAAKud,eAAevd,KAAKyb,KAAK1C,OAAO/Y,KAAKgd,iBAAiBhd,KAAKuzB,gBAAgBkB,QAAQsU,aAAa,SAAS3nC,EAAEvB,EAAEG,KAAK6c,OAAO7c,KAAKyb,KAAK1B,UAAU/Z,KAAK8c,OAAO9X,EAAE5D,EAAEpB,KAAK8c,OAAO7X,EAAEpF,EAAEG,KAAK8c,OAAOC,WAAU,EAAG/c,KAAK8c,OAAOpK,MAAM1S,KAAKuzB,gBAAgBkB,QAAQsU,YAAY/oC,KAAK8c,OAAO1Q,MAAMpM,KAAK6c,MAAMyB,gBAAgBte,KAAKud,sBAAsBvd,KAAKud,gBAAgB/d,EAAEM,UAAUyd,aAAa,WAAWvd,KAAK8c,SAAS9c,KAAKoc,YAAYpc,KAAK8c,OAAO9X,EAAEhF,KAAK8c,OAAO7X,EAAEjF,KAAK8c,OAAO1Q,MAAM,GAAGpM,KAAK8c,OAAO,CAAC9X,EAAE,EAAEC,EAAE,EAAE8X,WAAU,EAAGrK,MAAM,GAAGtG,MAAM,KAAK5M,EAAEM,UAAUod,iBAAiB,SAAS5d,EAAEE,EAAEK,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAKgc,oBAAoB1c,EAAEE,EAAEQ,KAAKuzB,gBAAgBkB,QAAQuU,aAAahpC,KAAKyb,KAAK1B,WAAWva,EAAEM,UAAUsd,mBAAmB,SAAS9d,EAAEE,EAAEK,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAK8b,WAAWxc,EAAEE,EAAEK,EAAEye,WAAW,GAAGte,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQgQ,aAAaF,IAAI/V,KAAKqc,mBAAmBxc,EAAEP,EAAEE,GAAGQ,KAAKyb,KAAK1B,WAAWva,EAAEM,UAAUwd,uBAAuB,SAAShe,EAAEE,EAAEK,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAK+b,uBAAuBzc,EAAEE,GAAGQ,KAAKyb,KAAK1B,WAAWva,EAAEM,UAAUue,kBAAkB,SAAS/e,EAAEE,EAAEK,GAAGG,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAK+C,YAAYxe,KAAKiG,QAAQ+P,OAAOD,IAAI/V,KAAKic,kBAAkB3c,EAAEE,EAAEK,EAAEye,WAAW,GAAGte,KAAKyb,KAAK1B,WAAWvY,EAAE,CAACoB,EAAE,EAAEf,EAAEuuB,gBAAgBxtB,EAAE,EAAEf,EAAEizB,iBAAiBlyB,EAAE,EAAEf,EAAEgjC,cAAcjiC,EAAE,EAAEiC,EAAE22B,sBAAsBh8B,GAA5xI,CAAgyIiC,EAAEmZ,iBAAiBpb,EAAEqR,kBAAkBrM,EAAE,IAAIwB,EAAE,WAAW,SAAS1G,EAAEA,EAAEE,GAAGQ,KAAKye,gBAAgBjf,EAAEQ,KAAKue,iBAAgB,EAAGjf,GAAGU,KAAK0e,mBAAmB,OAAOjf,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,QAAQnC,KAAK2e,oBAAoB3e,KAAK4e,iBAAiB1c,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUI,QAAQ,WAAWF,KAAK4e,iBAAiB5d,OAAO6d,cAAc7e,KAAK4e,gBAAgB5e,KAAK4e,oBAAe,GAAQ5e,KAAK2e,qBAAqB3d,OAAO8d,aAAa9e,KAAK2e,oBAAoB3e,KAAK2e,wBAAmB,GAAQ3e,KAAK+e,kBAAkB/d,OAAOge,qBAAqBhf,KAAK+e,iBAAiB/e,KAAK+e,qBAAgB,IAASzf,EAAEQ,UAAU+d,sBAAsB,WAAW,IAAIve,EAAEU,KAAKA,KAAK8d,WAAW9d,KAAKif,wBAAwBC,KAAKC,MAAMnf,KAAKue,iBAAgB,EAAGve,KAAK+e,kBAAkB/e,KAAK+e,gBAAgB/d,OAAOoe,uBAAsB,WAAY9f,EAAEmf,kBAAkBnf,EAAEyf,qBAAgB,QAAazf,EAAEQ,UAAU4e,iBAAiB,SAASpf,GAAG,IAAIE,EAAEQ,UAAK,IAASV,IAAIA,EAAEgF,GAAGtE,KAAK4e,gBAAgB5d,OAAO6d,cAAc7e,KAAK4e,gBAAgB5e,KAAK2e,mBAAmB3d,OAAOqe,YAAW,WAAY,GAAG7f,EAAEyf,wBAAwB,CAAC,IAAI3f,EAAEgF,GAAG4a,KAAKC,MAAM3f,EAAEyf,yBAAyB,GAAGzf,EAAEyf,6BAAwB,EAAO3f,EAAE,EAAE,YAAYE,EAAEkf,iBAAiBpf,GAAGE,EAAE+e,iBAAgB,EAAG/e,EAAEuf,gBAAgB/d,OAAOoe,uBAAsB,WAAY5f,EAAEif,kBAAkBjf,EAAEuf,qBAAgB,KAAUvf,EAAEof,eAAe5d,OAAOse,aAAY,WAAY,GAAG9f,EAAEyf,wBAAwB,CAAC,IAAI3f,EAAEgF,GAAG4a,KAAKC,MAAM3f,EAAEyf,yBAAyB,OAAOzf,EAAEyf,6BAAwB,OAAYzf,EAAEkf,iBAAiBpf,GAAGE,EAAE+e,iBAAiB/e,EAAE+e,gBAAgB/e,EAAEuf,gBAAgB/d,OAAOoe,uBAAsB,WAAY5f,EAAEif,kBAAkBjf,EAAEuf,qBAAgB,OAAYza,KAAKhF,IAAIA,EAAEQ,UAAU2d,MAAM,WAAWzd,KAAKue,iBAAgB,EAAGve,KAAK4e,iBAAiB5d,OAAO6d,cAAc7e,KAAK4e,gBAAgB5e,KAAK4e,oBAAe,GAAQ5e,KAAK2e,qBAAqB3d,OAAO8d,aAAa9e,KAAK2e,oBAAoB3e,KAAK2e,wBAAmB,GAAQ3e,KAAK+e,kBAAkB/d,OAAOge,qBAAqBhf,KAAK+e,iBAAiB/e,KAAK+e,qBAAgB,IAASzf,EAAEQ,UAAU6d,OAAO,WAAW3d,KAAKyd,QAAQzd,KAAKif,6BAAwB,EAAOjf,KAAK0e,mBAAmB1e,KAAK6d,yBAAyBve,EAA1mE,IAAgnE2pC,KAAK,CAAC3pC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE0pC,eAAU,EAAO,IAAIrpC,EAAE,WAAW,SAASP,IAAIU,KAAKmpC,MAAM,GAAG,OAAO7pC,EAAEQ,UAAUY,OAAO,SAASpB,EAAEE,GAAG,IAAI,IAAIK,EAAE,EAAEA,EAAEP,EAAEO,IAAI,CAACG,KAAKmpC,MAAMvkC,QAAQ/E,GAAGG,KAAKmpC,MAAMhkC,KAAK,IAAI,IAAI,IAAI/D,EAAEpB,KAAKmpC,MAAMtpC,GAAG+E,OAAOxD,EAAE5B,EAAE4B,IAAIpB,KAAKmpC,MAAMtpC,GAAGsF,UAAK,GAAQnF,KAAKmpC,MAAMtpC,GAAG+E,OAAOpF,EAAEQ,KAAKmpC,MAAMvkC,OAAOtF,GAAGA,EAAEQ,UAAUW,MAAM,WAAW,IAAI,IAAInB,EAAE,EAAEA,EAAEU,KAAKmpC,MAAMvkC,OAAOtF,IAAI,IAAI,IAAIE,EAAE,EAAEA,EAAEQ,KAAKmpC,MAAM7pC,GAAGsF,OAAOpF,IAAIQ,KAAKmpC,MAAM7pC,GAAGE,QAAG,GAAQF,EAA5X,GAAiYE,EAAE0pC,UAAUrpC,GAAGupC,KAAK,SAAS9pC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEmR,qBAAgB,EAAO,IAAIlP,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAE,SAAShF,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEnB,EAAEO,GAAG,IAAIH,EAAEvC,EAAEwC,KAAK9B,KAAKR,EAAE,OAAOK,GAAE,EAAGuB,EAAEG,EAAEE,EAAEO,IAAIhC,KAAK,OAAOwB,EAAEoe,qBAAoB,SAAUtgB,GAAG,OAAOuC,EAAEge,qBAAqBvgB,MAAMkC,EAAEse,qBAAoB,SAAUxgB,GAAG,OAAOuC,EAAEke,qBAAqBzgB,MAAMsD,EAAEgd,qBAAoB,SAAUtgB,GAAG,OAAOuC,EAAEge,qBAAqBvgB,MAAMsD,EAAEkd,qBAAoB,SAAUxgB,GAAG,OAAOuC,EAAEke,qBAAqBzgB,MAAMuC,EAAE,OAAON,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUY,OAAO,SAASlB,GAAGF,EAAEQ,UAAUY,OAAOoB,KAAK9B,KAAKR,GAAGQ,KAAK8c,YAAO,GAAQtd,EAAEM,UAAUyS,MAAM,WAAWvS,KAAKigB,qBAAqBzgB,EAAEM,UAAUmgB,kBAAkB,WAAW,GAAGjgB,KAAK8c,OAAO,CAAC9c,KAAKoc,YAAYpc,KAAK8c,OAAOoD,GAAGlgB,KAAK8c,OAAOqD,GAAGngB,KAAK8c,OAAOvc,KAAKP,KAAK8c,OAAOoD,GAAG,GAAG,IAAI5gB,EAAEU,KAAK8c,OAAOsD,GAAGpgB,KAAK8c,OAAOqD,GAAG,EAAE7gB,EAAE,GAAGU,KAAKoc,YAAY,EAAEpc,KAAK8c,OAAOqD,GAAG,EAAEngB,KAAK8c,OAAOvc,KAAKjB,GAAGU,KAAKoc,YAAY,EAAEpc,KAAK8c,OAAOsD,GAAGpgB,KAAK8c,OAAOuD,GAAG,GAAGrgB,KAAK8c,YAAO,IAAStd,EAAEM,UAAU+f,qBAAqB,SAASvgB,GAAG,GAAGA,EAAE8L,KAAKpJ,EAAEse,uBAAuBtgB,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQ2F,WAAWmK,IAAIzW,EAAE8L,IAAIvJ,EAAEiU,WAAWxW,EAAE8L,IAAIpL,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQgG,KAAK3M,EAAE8L,IAAI2K,IAAI/V,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQuI,WAAWuH,IAAIzW,EAAE6gB,KAAK7gB,EAAE8gB,GAAGpgB,KAAK+b,uBAAuBzc,EAAE4gB,GAAG5gB,EAAE6gB,GAAG7gB,EAAE+gB,GAAG/gB,EAAE4gB,QAAQ,CAAClgB,KAAK+b,uBAAuBzc,EAAE4gB,GAAG5gB,EAAE6gB,GAAG7gB,EAAEiB,KAAKjB,EAAE4gB,IAAI,IAAI,IAAI1gB,EAAEF,EAAE6gB,GAAG,EAAE3gB,EAAEF,EAAE8gB,GAAG5gB,IAAIQ,KAAK+b,uBAAuB,EAAEvc,EAAEF,EAAEiB,MAAMP,KAAK+b,uBAAuB,EAAEzc,EAAE8gB,GAAG9gB,EAAE+gB,IAAIrgB,KAAK8c,OAAOxd,GAAGE,EAAEM,UAAUigB,qBAAqB,SAASzgB,GAAGU,KAAKigB,qBAAqBze,EAAE,CAACoB,EAAE,EAAEiC,EAAEurB,gBAAgBxtB,EAAE,EAAEiC,EAAEiwB,kBAAkBt1B,GAA76C,CAAi7CiC,EAAEmZ,iBAAiBpb,EAAEmR,gBAAgBrM,GAAG+kC,KAAK,SAAS/pC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEg+B,cAAS,EAAO,IAAI/7B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,KAAK2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAEpC,EAAE,MAAM8C,EAAE9C,EAAE,MAAMiF,EAAE,EAAE4G,EAAE,SAASpM,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAE0B,EAAEE,GAAG,IAAIwB,EAAE1G,EAAEwC,KAAK9B,OAAOA,KAAKgG,EAAEC,QAAQzG,EAAEwG,EAAEqtB,eAAexzB,EAAEmG,EAAE8nB,eAAelrB,EAAEoD,EAAEyN,iBAAiBnP,EAAE0B,EAAEutB,gBAAgB/uB,EAAEwB,EAAEsjC,IAAIxkC,IAAIkB,EAAEwK,iBAAiB,IAAI7N,EAAE8N,aAAa,IAAIxO,EAAE+D,EAAEutB,gBAAgBkB,QAAQje,kBAAkB,OAAOxQ,EAAE0K,cAAc,CAAClP,EAAE+1B,eAAe91B,EAAE8nC,gBAAgBvjC,EAAEqtB,eAAe,EAAErtB,EAAEC,QAAQhE,EAAE+D,EAAEsjC,KAAK9nC,EAAE+1B,eAAev1B,EAAEwnC,qBAAqBxjC,EAAEqtB,eAAe,EAAErtB,EAAEC,QAAQD,EAAEsjC,KAAK9nC,EAAE+1B,eAAe1yB,EAAE8L,gBAAgB3K,EAAEqtB,eAAe,EAAErtB,EAAEC,QAAQD,EAAEsjC,IAAIloC,EAAEG,GAAGC,EAAE+1B,eAAe11B,EAAEgP,kBAAkB7K,EAAEqtB,eAAe,EAAErtB,EAAEC,QAAQD,EAAEsjC,IAAItjC,EAAEwK,mBAAmBxK,EAAEnF,WAAW,CAACiQ,gBAAgB,EAAEC,iBAAiB,EAAE5C,gBAAgB,EAAEC,iBAAiB,EAAE1E,eAAe,EAAEC,cAAc,EAAEE,kBAAkB,EAAEC,mBAAmB,EAAEkH,YAAY,EAAEC,aAAa,EAAEnQ,gBAAgB,EAAEC,iBAAiB,GAAGiF,EAAEkL,kBAAkBlQ,OAAOmQ,iBAAiBnL,EAAEoL,oBAAoBpL,EAAEiN,mBAAmBjN,EAAE,OAAOzE,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,kBAAkB,CAACqC,IAAI,WAAW,OAAOnC,KAAKwQ,iBAAiB2B,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUI,QAAQ,WAAW,IAAI,IAAIV,EAAE,EAAEK,EAAEG,KAAK0Q,cAAclR,EAAEK,EAAE+E,OAAOpF,IAAIK,EAAEL,GAAGU,UAAUZ,EAAEQ,UAAUI,QAAQ4B,KAAK9B,MAAMiC,EAAEoT,wBAAwBrV,KAAKspC,MAAM9pC,EAAEM,UAAU2S,yBAAyB,WAAWzS,KAAKkR,oBAAoBlQ,OAAOmQ,mBAAmBnR,KAAKkR,kBAAkBlQ,OAAOmQ,iBAAiBnR,KAAKgJ,SAAShJ,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAextB,QAAQd,EAAEM,UAAUwM,UAAU,SAAShN,GAAGU,KAAKiG,QAAQ3G,EAAE,IAAI,IAAIE,EAAE,EAAEK,EAAEG,KAAK0Q,cAAclR,EAAEK,EAAE+E,OAAOpF,IAAI,CAAC,IAAI4B,EAAEvB,EAAEL,GAAG4B,EAAEkL,UAAUtM,KAAKiG,SAAS7E,EAAEmR,UAAU/S,EAAEM,UAAUkJ,SAAS,SAAS1J,EAAEE,GAAGQ,KAAKoR,oBAAoB,IAAI,IAAIvR,EAAE,EAAEuB,EAAEpB,KAAK0Q,cAAc7Q,EAAEuB,EAAEwD,OAAO/E,IAAIuB,EAAEvB,GAAGa,OAAOV,KAAKa,YAAYb,KAAKqzB,eAAe3gB,MAAMtG,MAAMpM,KAAKa,WAAWmQ,YAAY,KAAKhR,KAAKqzB,eAAe3gB,MAAMrG,OAAOrM,KAAKa,WAAWoQ,aAAa,MAAMzR,EAAEM,UAAUiS,kBAAkB,WAAW/R,KAAKgJ,SAAShJ,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAextB,OAAOd,EAAEM,UAAU6S,OAAO,WAAW3S,KAAKypC,eAAc,SAAUnqC,GAAG,OAAOA,EAAEqT,aAAanT,EAAEM,UAAU8S,QAAQ,WAAW5S,KAAKypC,eAAc,SAAUnqC,GAAG,OAAOA,EAAEsT,cAAcpT,EAAEM,UAAU+S,mBAAmB,SAASvT,EAAEE,EAAEK,QAAG,IAASA,IAAIA,GAAE,GAAIG,KAAKypC,eAAc,SAAUroC,GAAG,OAAOA,EAAEyR,mBAAmBvT,EAAEE,EAAEK,OAAOL,EAAEM,UAAUkT,aAAa,WAAWhT,KAAKypC,eAAc,SAAUnqC,GAAG,OAAOA,EAAE0T,mBAAmBxT,EAAEM,UAAUmT,iBAAiB,WAAWjT,KAAKypC,eAAc,SAAUnqC,GAAG,OAAOA,EAAE2T,uBAAuBzT,EAAEM,UAAUW,MAAM,WAAWT,KAAKypC,eAAc,SAAUnqC,GAAG,OAAOA,EAAEiT,YAAY/S,EAAEM,UAAU2pC,cAAc,SAASnqC,GAAG,IAAI,IAAIE,EAAE,EAAEK,EAAEG,KAAK0Q,cAAclR,EAAEK,EAAE+E,OAAOpF,IAAIF,EAAEO,EAAEL,KAAKA,EAAEM,UAAU0T,WAAW,SAASlU,EAAEE,GAAG,IAAI,IAAIK,EAAE,EAAEuB,EAAEpB,KAAK0Q,cAAc7Q,EAAEuB,EAAEwD,OAAO/E,IAAIuB,EAAEvB,GAAG6T,cAAcpU,EAAEE,IAAIA,EAAEM,UAAUsR,kBAAkB,WAAWpR,KAAKyT,iBAAiBkuB,eAAe3hC,KAAKa,WAAWiQ,gBAAgBzP,KAAKO,MAAM5B,KAAKyT,iBAAiBrH,MAAMpL,OAAOmQ,kBAAkBnR,KAAKa,WAAWkQ,iBAAiB1P,KAAK0S,KAAK/T,KAAKyT,iBAAiBpH,OAAOrL,OAAOmQ,kBAAkBnR,KAAKa,WAAWuN,iBAAiB/M,KAAKO,MAAM5B,KAAKa,WAAWkQ,iBAAiB/Q,KAAKuzB,gBAAgBkB,QAAQsF,YAAY/5B,KAAKa,WAAW8I,cAAc,IAAI3J,KAAKuzB,gBAAgBkB,QAAQsF,WAAW,EAAE14B,KAAK4S,OAAOjU,KAAKa,WAAWuN,iBAAiBpO,KAAKa,WAAWkQ,kBAAkB,GAAG/Q,KAAKa,WAAWsN,gBAAgBnO,KAAKa,WAAWiQ,gBAAgBzP,KAAK4S,MAAMjU,KAAKuzB,gBAAgBkB,QAAQiV,eAAe1pC,KAAKa,WAAW6I,eAAerI,KAAKO,MAAM5B,KAAKuzB,gBAAgBkB,QAAQiV,cAAc,GAAG1pC,KAAKa,WAAWiJ,mBAAmB9J,KAAK8tB,eAAextB,KAAKN,KAAKa,WAAWuN,iBAAiBpO,KAAKa,WAAWgJ,kBAAkB7J,KAAK8tB,eAAevtB,KAAKP,KAAKa,WAAWsN,gBAAgBnO,KAAKa,WAAWoQ,aAAa5P,KAAK4S,MAAMjU,KAAKa,WAAWiJ,mBAAmB9I,OAAOmQ,kBAAkBnR,KAAKa,WAAWmQ,YAAY3P,KAAK4S,MAAMjU,KAAKa,WAAWgJ,kBAAkB7I,OAAOmQ,kBAAkBnR,KAAKa,WAAWE,iBAAiBf,KAAKa,WAAWoQ,aAAajR,KAAK8tB,eAAextB,KAAKN,KAAKa,WAAWC,gBAAgBd,KAAKa,WAAWmQ,YAAYhR,KAAK8tB,eAAevtB,OAAOiB,EAAE,CAACoB,EAAE,EAAEoD,EAAE2jC,uBAAuB/mC,EAAE,EAAEoD,EAAEoqB,gBAAgBxtB,EAAE,EAAE4B,EAAEk3B,kBAAkB94B,EAAE,EAAEoD,EAAE8uB,kBAAkBt1B,GAAxkI,CAA4kI8E,EAAE4P,YAAY1U,EAAEg+B,SAAS9xB,GAAGk+B,KAAK,CAACtqC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEkH,kBAAa,EAAOlH,EAAEkH,aAAa,SAASpH,GAAG,IAAIA,EAAE,MAAM,IAAI4M,MAAM,2BAA2B,OAAO5M,IAAIuqC,KAAK,SAASvqC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEgqC,0BAAqB,EAAO,IAAI/nC,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAE,SAASvC,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,GAAG,IAAInB,EAAEnC,EAAEwC,KAAK9B,KAAKR,EAAE,YAAYK,GAAE,EAAGuB,EAAEG,EAAEC,EAAEoB,IAAI5C,KAAK,OAAOyB,EAAEqoC,cAAcroC,EAAE,OAAOF,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUgqC,YAAY,WAAW9pC,KAAK8c,OAAO,CAAC/X,WAAM,EAAOG,SAAI,EAAOqF,sBAAiB,EAAOoJ,WAAM,IAASnU,EAAEM,UAAUY,OAAO,SAASlB,GAAGF,EAAEQ,UAAUY,OAAOoB,KAAK9B,KAAKR,GAAGQ,KAAK8pC,eAAetqC,EAAEM,UAAUyS,MAAM,WAAWvS,KAAK8c,OAAO/X,OAAO/E,KAAK8c,OAAO5X,MAAMlF,KAAK8pC,cAAc9pC,KAAK0b,cAAclc,EAAEM,UAAU+S,mBAAmB,SAASvT,EAAEE,EAAEK,GAAG,GAAGG,KAAK+pC,gBAAgBzqC,EAAEE,EAAEK,EAAEG,KAAK8tB,eAAexoB,OAAOqO,OAAO,GAAG3T,KAAK0b,YAAYpc,GAAGE,EAAE,CAAC,IAAI4B,EAAE9B,EAAE,GAAGU,KAAK8tB,eAAexoB,OAAOqO,MAAMpS,EAAE/B,EAAE,GAAGQ,KAAK8tB,eAAexoB,OAAOqO,MAAMnS,EAAEH,KAAKC,IAAIF,EAAE,GAAGwB,EAAEvB,KAAK2N,IAAIzN,EAAEvB,KAAK8tB,eAAextB,KAAK,GAAG,GAAGkB,GAAGxB,KAAK8tB,eAAextB,MAAMsC,EAAE,EAAE5C,KAAK8c,OAAOnJ,MAAM3T,KAAK8tB,eAAexoB,OAAOqO,UAAU,CAAC,GAAG3T,KAAKyb,KAAKjC,UAAUxZ,KAAKiG,QAAQiQ,qBAAqBH,IAAIlW,EAAE,CAAC,IAAI4B,EAAEnC,EAAE,GAAG0C,EAAExC,EAAE,GAAGiC,EAAEI,EAAEe,EAAEpB,EAAE,EAAExB,KAAK8b,WAAWra,EAAED,EAAEQ,EAAEH,OAAO,CAACJ,EAAEL,IAAII,EAAElC,EAAE,GAAG,EAAE,IAAIuF,EAAErD,IAAID,EAAE/B,EAAE,GAAGQ,KAAK8tB,eAAevtB,KAAKP,KAAK8b,WAAWra,EAAED,EAAEqD,EAAEpD,EAAE,GAAG,IAAI6C,EAAEjD,KAAKC,IAAIsB,EAAEpB,EAAE,EAAE,GAAG,GAAGxB,KAAK8b,WAAW,EAAEta,EAAE,EAAExB,KAAK8tB,eAAevtB,KAAK+D,GAAG9C,IAAIoB,EAAE,CAAC,IAAI4B,EAAEjD,IAAIqB,EAAEpD,EAAE,GAAGQ,KAAK8tB,eAAevtB,KAAKP,KAAK8b,WAAW,EAAElZ,EAAE4B,EAAE,IAAIxE,KAAK8c,OAAO/X,MAAM,CAACzF,EAAE,GAAGA,EAAE,IAAIU,KAAK8c,OAAO5X,IAAI,CAAC1F,EAAE,GAAGA,EAAE,IAAIQ,KAAK8c,OAAOvS,iBAAiB1K,EAAEG,KAAK8c,OAAOnJ,MAAM3T,KAAK8tB,eAAexoB,OAAOqO,YAAY3T,KAAK8pC,eAAetqC,EAAEM,UAAUiqC,gBAAgB,SAASzqC,EAAEE,EAAEK,EAAEuB,GAAG,OAAOpB,KAAKgqC,qBAAqB1qC,EAAEU,KAAK8c,OAAO/X,SAAS/E,KAAKgqC,qBAAqBxqC,EAAEQ,KAAK8c,OAAO5X,MAAMrF,IAAIG,KAAK8c,OAAOvS,kBAAkBnJ,IAAIpB,KAAK8c,OAAOnJ,OAAOnU,EAAEM,UAAUkqC,qBAAqB,SAAS1qC,EAAEE,GAAG,SAASF,IAAIE,IAAIF,EAAE,KAAKE,EAAE,IAAIF,EAAE,KAAKE,EAAE,IAAIgC,EAAE,CAACoB,EAAE,EAAEZ,EAAEouB,gBAAgBxtB,EAAE,EAAEZ,EAAE8yB,kBAAkBt1B,GAA/nD,CAAmoDiC,EAAEmZ,iBAAiBpb,EAAEgqC,qBAAqB3nC,GAAGooC,KAAK,SAAS3qC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+pC,qBAAgB,EAAO,IAAI9nC,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,KAAKyE,EAAEzE,EAAE,KAAK2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAEpC,EAAE,MAAM8C,EAAE,SAASrD,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEZ,EAAEH,GAAG,IAAIgD,EAAEvF,EAAEwC,KAAK9B,KAAKR,EAAE,OAAOK,EAAE0B,EAAEH,EAAEI,EAAEoB,EAAEZ,IAAIhC,KAAK,OAAO6E,EAAEg3B,wBAAwBh6B,EAAEgD,EAAEqlC,gBAAgB,EAAErlC,EAAEslC,eAAe,GAAGtlC,EAAEulC,uBAAuB,GAAGvlC,EAAEyL,UAAU,IAAIhM,EAAEiM,SAAS1L,EAAEiY,OAAO,IAAIrb,EAAEynC,UAAUrkC,EAAE,OAAOtD,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUY,OAAO,SAASlB,GAAGF,EAAEQ,UAAUY,OAAOoB,KAAK9B,KAAKR,GAAG,IAAIK,EAAEG,KAAKsc,UAAS,GAAG,GAAItc,KAAKkqC,kBAAkB1qC,EAAEsR,iBAAiB9Q,KAAKmqC,iBAAiBtqC,IAAIG,KAAKkqC,gBAAgB1qC,EAAEsR,gBAAgB9Q,KAAKmqC,eAAetqC,EAAEG,KAAKoqC,uBAAuB,IAAIpqC,KAAK8c,OAAOrc,QAAQT,KAAK8c,OAAOpc,OAAOV,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAextB,OAAOd,EAAEM,UAAUyS,MAAM,WAAWvS,KAAK8c,OAAOrc,QAAQT,KAAK0b,aAAalc,EAAEM,UAAUuqC,aAAa,SAAS/qC,EAAEE,EAAEK,GAAG,IAAI,IAAIuB,EAAE9B,EAAE8B,GAAG5B,EAAE4B,IAAI,IAAI,IAAIG,EAAEH,EAAEpB,KAAK8tB,eAAexoB,OAAOqO,MAAMnS,EAAExB,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAIZ,GAAGqB,EAAE5C,KAAK67B,wBAAwByO,oBAAoB/oC,GAAGE,EAAE,EAAEA,EAAEzB,KAAK8tB,eAAevtB,KAAKkB,IAAI,CAACD,EAAEqS,SAASpS,EAAEzB,KAAKsQ,WAAW,IAAItO,EAAEhC,KAAKsQ,UAAUzO,GAAE,EAAGyC,EAAE7C,EAAE,GAAG,IAAIO,EAAEsc,WAAW,CAAC,GAAG1b,EAAEgC,OAAO,GAAGnD,IAAImB,EAAE,GAAG,GAAG,CAACf,GAAE,EAAG,IAAI2C,EAAE5B,EAAE4lB,QAAQxmB,EAAE,IAAIC,EAAEsoC,eAAevqC,KAAKsQ,UAAU9O,EAAEkE,mBAAkB,EAAGlB,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAIF,EAAEE,EAAE,GAAG,GAAG3C,GAAG7B,KAAKwqC,eAAexoC,IAAIsC,EAAE9C,EAAEoD,OAAO,GAAGpD,EAAEipC,aAAanmC,EAAE,KAAKO,EAAEwE,iBAAiBrH,EAAEoc,UAAU,SAASpc,EAAEoc,SAAS,GAAG,IAAIve,EAAEmC,EAAEP,EAAEL,GAAGK,EAAE6C,KAAK9E,EAAEM,UAAU4qC,gBAAgB,SAASprC,EAAEE,GAAG,IAAIK,EAAEG,KAAKoB,EAAEpB,KAAKyb,KAAKla,EAAEvB,KAAK8tB,eAAevtB,KAAKiB,EAAE,EAAEoB,EAAE,EAAEnB,EAAE,KAAKL,EAAE2X,OAAO/Y,KAAKqqC,aAAa/qC,EAAEE,GAAE,SAAUF,EAAEE,EAAEwC,GAAG,IAAI6C,EAAE,KAAKvF,EAAE4Z,YAAYrU,EAAEvF,EAAE8jB,cAAcvjB,EAAEoG,QAAQuI,WAAWuH,IAAIzW,EAAE0jB,UAAU,OAAOnhB,EAAEsJ,cAAcQ,WAAWrM,EAAE+Z,cAAcsvB,KAAK,KAAK,IAAI9oC,EAAEoG,QAAQgG,KAAK3M,EAAE+Z,cAActD,IAAIzW,EAAE2jB,UAAUpe,EAAE,OAAOhD,EAAEsJ,cAAcQ,WAAWrM,EAAEmM,cAAck9B,KAAK,KAAK,IAAIrpC,EAAE6jB,gBAAgBte,EAAEhF,EAAEoG,QAAQgG,KAAK3M,EAAEmM,cAAcsK,KAAK,OAAOtU,IAAID,EAAEhC,EAAEoD,EAAEZ,GAAGA,IAAIY,GAAGxB,EAAEoY,UAAU/X,GAAG,GAAG5B,EAAEic,WAAWta,EAAEoB,EAAErB,EAAEC,EAAE,GAAGA,EAAEhC,EAAEoD,EAAEZ,GAAGP,IAAIoD,IAAIzD,EAAEoY,UAAU/X,GAAG,GAAG5B,EAAEic,WAAWta,EAAEoB,EAAEpD,EAAEgC,EAAE,GAAGA,EAAEhC,EAAEoD,EAAEZ,GAAGP,EAAEoD,KAAK,OAAOpD,IAAIL,EAAEoY,UAAU/X,EAAEzB,KAAK8b,WAAWta,EAAEoB,EAAErB,EAAEC,EAAE,IAAIJ,EAAE2Y,WAAWva,EAAEM,UAAU6qC,gBAAgB,SAASrrC,EAAEE,GAAG,IAAIK,EAAEG,KAAKA,KAAKqqC,aAAa/qC,EAAEE,GAAE,SAAUF,EAAEE,EAAE4B,GAAG,IAAI9B,EAAE0Z,gBAAgBnZ,EAAE0oC,WAAWjpC,EAAEE,EAAE4B,GAAG9B,EAAEwjB,eAAe,CAAC,GAAGjjB,EAAE4b,KAAK1C,OAAOzZ,EAAE4Z,YAAY,GAAG5Z,EAAE+jB,cAAcxjB,EAAE4b,KAAKjC,UAAU3Z,EAAEoG,QAAQ2F,WAAWmK,SAAS,GAAGzW,EAAE2jB,UAAUpjB,EAAE4b,KAAKjC,UAAU,OAAO3X,EAAEsJ,cAAcQ,WAAWrM,EAAEmM,cAAck9B,KAAK,KAAK,QAAQ,CAAC,IAAIpnC,EAAEjC,EAAEmM,aAAa5L,EAAE0zB,gBAAgBkB,QAAQhe,4BAA4BnX,EAAE2Z,UAAU1X,EAAE,IAAIA,GAAG,GAAG1B,EAAE4b,KAAKjC,UAAU3Z,EAAEoG,QAAQgG,KAAK1K,GAAGwU,SAAS,GAAGzW,EAAE8jB,cAAcvjB,EAAE4b,KAAKjC,UAAU3Z,EAAEoG,QAAQuI,WAAWuH,SAAS,GAAGzW,EAAE0jB,UAAUnjB,EAAE4b,KAAKjC,UAAU,OAAO3X,EAAEsJ,cAAcQ,WAAWrM,EAAE+Z,cAAcsvB,KAAK,KAAK,QAAQ,CAAC,IAAInnC,EAAElC,EAAE+Z,aAAaxZ,EAAE0zB,gBAAgBkB,QAAQhe,4BAA4BnX,EAAE2Z,UAAUzX,EAAE,IAAIA,GAAG,GAAG3B,EAAE4b,KAAKjC,UAAU3Z,EAAEoG,QAAQgG,KAAKzK,GAAGuU,IAAIlW,EAAEkc,uBAAuBvc,EAAE4B,EAAE9B,EAAEgf,YAAYze,EAAE4b,KAAK1B,eAAeva,EAAEM,UAAU4T,cAAc,SAASpU,EAAEE,GAAG,IAAIQ,KAAK8c,OAAOqsB,MAAMvkC,SAAS5E,KAAKsS,YAAYtS,KAAKsS,WAAWrJ,aAAajJ,KAAKoc,YAAY,EAAE9c,EAAEU,KAAK8tB,eAAevtB,KAAKf,EAAEF,EAAE,GAAGU,KAAK0qC,gBAAgBprC,EAAEE,GAAGQ,KAAK2qC,gBAAgBrrC,EAAEE,KAAKA,EAAEM,UAAUmT,iBAAiB,WAAWjT,KAAK2b,iBAAiB3b,KAAKuzB,gBAAgBkB,QAAQje,oBAAoBhX,EAAEM,UAAU0qC,eAAe,SAASlrC,GAAG,GAAG,IAAIA,EAAEgf,WAAW,OAAM,EAAG,GAAGhf,EAAEwU,UAAU,IAAI,OAAM,EAAG,IAAItU,EAAEF,EAAE0M,WAAW,GAAGhM,KAAKoqC,uBAAuB1nC,eAAelD,GAAG,OAAOQ,KAAKoqC,uBAAuB5qC,GAAGQ,KAAKyb,KAAK1C,OAAO/Y,KAAKyb,KAAK/B,KAAK1Z,KAAKmqC,eAAe,IAAItqC,EAAEwB,KAAKO,MAAM5B,KAAKyb,KAAKmvB,YAAYprC,GAAG4M,OAAOpM,KAAKkqC,gBAAgB,OAAOlqC,KAAKyb,KAAK1B,UAAU/Z,KAAKoqC,uBAAuB5qC,GAAGK,EAAEA,GAAG2B,EAAE,CAACoB,EAAE,EAAE4B,EAAE4rB,gBAAgBxtB,EAAE,EAAE4B,EAAEswB,iBAAiBlyB,EAAE,EAAEoD,EAAE+1B,0BAA0Bv8B,GAAvhH,CAA2hHwC,EAAE4Y,iBAAiBpb,EAAE+pC,gBAAgB5mC,GAAGkoC,KAAK,CAACvrC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEsrC,mBAAc,EAAO,IAAIjrC,EAAE,WAAW,SAASP,IAAIU,KAAK8W,YAAW,EAAG,OAAOxX,EAAEQ,UAAUI,QAAQ,aAAaZ,EAAEQ,UAAUqT,OAAO,WAAWnT,KAAK8W,aAAa9W,KAAK8X,YAAY9X,KAAK8W,YAAW,IAAKxX,EAAEQ,UAAUgY,UAAU,aAAaxY,EAAEQ,UAAUmJ,WAAW,aAAa3J,EAAhP,GAAqPE,EAAEsrC,cAAcjrC,GAAGkrC,KAAK,CAACzrC,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE6V,wBAAwB7V,EAAE0T,sBAAiB,EAAO,IAAI9R,EAAEvB,EAAE,MAAM0B,EAAE1B,EAAE,MAAM2B,EAAE,GAAGhC,EAAE0T,iBAAiB,SAAS5T,EAAEE,EAAEK,EAAE+C,EAAEnB,GAAG,IAAI,IAAIO,EAAEZ,EAAEkU,eAAe1S,EAAEnB,EAAEnC,EAAEO,GAAGgC,EAAE,EAAEA,EAAEL,EAAEoD,OAAO/C,IAAI,CAAC,IAAIgD,GAAGP,EAAE9C,EAAEK,IAAI0T,QAAQ7Q,QAAQlF,GAAG,GAAGqF,GAAG,EAAE,CAAC,GAAGzD,EAAEoU,aAAalR,EAAEmR,OAAOzT,GAAG,OAAOsC,EAAEoR,MAAM,IAAIpR,EAAEiR,QAAQ3Q,QAAQN,EAAEoR,MAAMxV,UAAUsB,EAAEmU,OAAO9T,EAAE,IAAIyC,EAAEiR,QAAQI,OAAO9Q,EAAE,GAAG,OAAO,IAAIhD,EAAE,EAAEA,EAAEL,EAAEoD,OAAO/C,IAAI,CAAC,IAAIyC,EAAE9C,EAAEK,GAAG,GAAGT,EAAEoU,aAAalR,EAAEmR,OAAOzT,GAAG,OAAOsC,EAAEiR,QAAQpQ,KAAK3F,GAAG8E,EAAEoR,MAAM,IAAIlR,EAAE,CAACkR,MAAM,IAAInU,EAAEypC,iBAAiB15B,SAAStP,GAAGyT,OAAOzT,EAAEuT,QAAQ,CAAC/V,IAAI,OAAOgC,EAAE2D,KAAKX,GAAGA,EAAEkR,OAAOlW,EAAE6V,wBAAwB,SAAS/V,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEgC,EAAEoD,OAAOpF,IAAI,CAAC,IAAIK,EAAE2B,EAAEhC,GAAG+V,QAAQ7Q,QAAQpF,GAAG,IAAI,IAAIO,EAAE,CAAC,IAAI2B,EAAEhC,GAAG+V,QAAQ3Q,QAAQpD,EAAEhC,GAAGkW,MAAMxV,UAAUsB,EAAEmU,OAAOnW,EAAE,IAAIgC,EAAEhC,GAAG+V,QAAQI,OAAO9V,EAAE,GAAG,UAAUorC,KAAK,CAAC3rC,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEsW,WAAWtW,EAAEgW,aAAahW,EAAE8V,oBAAe,EAAO,IAAIlU,EAAEvB,EAAE,KAAKL,EAAE8V,eAAe,SAAShW,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAE,CAACiN,WAAWpN,EAAEoN,WAAW5C,WAAWxK,EAAEwK,WAAWoK,YAAO,EAAOC,kBAAa,EAAO3L,eAAU,EAAO2B,KAAK7K,EAAE6K,MAAM,MAAM,CAACkF,iBAAiBnQ,OAAOmQ,iBAAiBL,gBAAgBxR,EAAEyR,iBAAiBvR,EAAE4W,WAAWvW,EAAEuW,WAAWC,SAASxW,EAAEwW,SAASC,WAAWzW,EAAEyW,WAAWC,eAAe1W,EAAE0W,eAAeC,kBAAkB3W,EAAE2W,kBAAkBjH,OAAOhO,IAAI/B,EAAEgW,aAAa,SAASlW,EAAEE,GAAG,IAAI,IAAIK,EAAE,EAAEA,EAAEP,EAAEiQ,OAAOtD,KAAKrH,OAAO/E,IAAI,GAAGP,EAAEiQ,OAAOtD,KAAKpM,GAAGwK,OAAO7K,EAAE+P,OAAOtD,KAAKpM,GAAGwK,KAAK,OAAM,EAAG,OAAO/K,EAAE6R,mBAAmB3R,EAAE2R,kBAAkB7R,EAAE8W,aAAa5W,EAAE4W,YAAY9W,EAAE+W,WAAW7W,EAAE6W,UAAU/W,EAAEgX,aAAa9W,EAAE8W,YAAYhX,EAAEiX,iBAAiB/W,EAAE+W,gBAAgBjX,EAAEkX,oBAAoBhX,EAAEgX,mBAAmBlX,EAAEwR,kBAAkBtR,EAAEsR,iBAAiBxR,EAAEyR,mBAAmBvR,EAAEuR,kBAAkBzR,EAAEiQ,OAAOf,aAAahP,EAAE+P,OAAOf,YAAYlP,EAAEiQ,OAAO3D,aAAapM,EAAE+P,OAAO3D,YAAYpM,EAAEsW,WAAW,SAASxW,GAAG,OAAOA,EAAE8B,EAAE4W,gBAAgBkzB,KAAK,CAAC5rC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEiiB,wBAAwBjiB,EAAEqa,YAAYra,EAAE8gB,4BAAuB,EAAO9gB,EAAE8gB,uBAAuB,IAAI9gB,EAAEqa,YAAY,GAAGra,EAAEiiB,wBAAwB,GAAG0pB,KAAK,SAAS7rC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE4rC,cAAc5rC,EAAEwrC,iBAAiBxrC,EAAE6rC,sBAAiB,EAAO,IAAI7pC,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAM2E,EAAE,CAACuR,IAAI,mBAAmB1L,KAAK,GAAG,SAASrE,EAAE1G,GAAG,OAAOA,EAAE6oC,MAAM,GAAG7oC,EAAE+L,IAAI,GAAG/L,EAAE8L,IAAI,GAAG9L,EAAE8oC,KAAK,EAAE,IAAI9oC,EAAE+oC,IAAI,EAAE,IAAI/oC,EAAEgpC,OAAO,EAAE,GAAG9oC,EAAE6rC,iBAAiBrlC,EAAE,IAAI/D,EAAE,SAAS3C,GAAG,SAASE,EAAEA,EAAEK,GAAG,IAAIuB,EAAE9B,EAAEwC,KAAK9B,OAAOA,KAAKoB,EAAEyV,QAAQhX,EAAEuB,EAAEkqC,kBAAkB,EAAElqC,EAAEmqC,uBAAuB,GAAGnqC,EAAEoqC,qBAAqB,KAAKpqC,EAAEqqC,QAAQ,KAAKrqC,EAAEsqC,aAAalsC,EAAE+R,cAAc,UAAUnQ,EAAEsqC,aAAat/B,MAAM,KAAKhL,EAAEsqC,aAAar/B,OAAO,KAAKjL,EAAEsW,UAAU7S,EAAE6B,aAAatF,EAAEsqC,aAAa/5B,WAAW,KAAK,CAACgG,OAAM,KAAM,IAAIpW,EAAE/B,EAAE+R,cAAc,UAAUhQ,EAAE6K,MAAMhL,EAAEyV,QAAQ/F,gBAAgBvP,EAAE8K,OAAOjL,EAAEyV,QAAQ9F,iBAAiB3P,EAAEyW,QAAQhT,EAAE6B,aAAanF,EAAEoQ,WAAW,KAAK,CAACgG,MAAMvW,EAAEyV,QAAQL,qBAAqBpV,EAAEuqC,OAAOtqC,KAAKO,MAAM,KAAKR,EAAEyV,QAAQ/F,iBAAiB1P,EAAEwqC,QAAQvqC,KAAKO,MAAM,KAAKR,EAAEyV,QAAQ9F,kBAAkB,IAAIvP,EAAEJ,EAAEuqC,OAAOvqC,EAAEwqC,QAAQ,OAAOxqC,EAAE2V,UAAU,IAAI/U,EAAE6pC,OAAOrqC,GAAGJ,EAAE2V,UAAU+0B,SAAStqC,GAAGJ,EAAE,OAAOG,EAAE/B,EAAEF,GAAGE,EAAEM,UAAUI,QAAQ,WAAW,OAAOF,KAAKwrC,uBAAuBxqC,OAAO8d,aAAa9e,KAAKwrC,sBAAsBxrC,KAAKwrC,qBAAqB,OAAOhsC,EAAEM,UAAUmJ,WAAW,WAAWjJ,KAAKsrC,kBAAkB,GAAG9rC,EAAEM,UAAU4oC,KAAK,SAASppC,EAAEE,EAAEK,EAAEuB,GAAG,GAAG,KAAK5B,EAAE2oC,KAAK,OAAM,EAAG,IAAInoC,KAAK+rC,UAAUvsC,GAAG,OAAM,EAAG,IAAI+B,EAAEyE,EAAExG,GAAGgC,EAAExB,KAAK+W,UAAU5U,IAAIZ,GAAG,GAAG,MAAMC,EAAE,OAAOxB,KAAKgsC,eAAe1sC,EAAEkC,EAAE3B,EAAEuB,IAAG,EAAG,GAAGpB,KAAKsrC,kBAAkB,IAAI,CAAC,IAAI1oC,EAAEA,EAAE5C,KAAK+W,UAAUnN,KAAK5J,KAAK+W,UAAUk1B,SAASjsC,KAAK+W,UAAUnN,KAAK5J,KAAK+W,UAAUm1B,OAAOC,MAAM,IAAI1qC,EAAEzB,KAAK+X,aAAavY,EAAEoD,GAAG,OAAO5C,KAAK+W,UAAUpK,IAAIpL,EAAEE,GAAGzB,KAAKgsC,eAAe1sC,EAAEmC,EAAE5B,EAAEuB,IAAG,EAAG,OAAM,GAAI5B,EAAEM,UAAUisC,UAAU,SAASzsC,GAAG,OAAOA,EAAE6oC,KAAK,KAAK3oC,EAAEM,UAAUssC,eAAe,SAAS9sC,GAAG,OAAOA,EAAEU,KAAK2rC,OAAO3rC,KAAK6W,QAAQ/F,iBAAiBtR,EAAEM,UAAUusC,eAAe,SAAS/sC,GAAG,OAAO+B,KAAKO,MAAMtC,EAAEU,KAAK2rC,QAAQ3rC,KAAK6W,QAAQ9F,kBAAkBvR,EAAEM,UAAUksC,eAAe,SAAS1sC,EAAEE,EAAEK,EAAEuB,GAAG,IAAI5B,EAAEikB,QAAQ,CAAC,IAAIliB,EAAEvB,KAAKosC,eAAe5sC,EAAE2sC,OAAO3qC,EAAExB,KAAKqsC,eAAe7sC,EAAE2sC,OAAO7sC,EAAEgtC,UAAU9sC,EAAE+sC,SAASvsC,KAAKyrC,QAAQzrC,KAAK0rC,aAAanqC,EAAEC,EAAExB,KAAK6W,QAAQ/F,gBAAgB9Q,KAAK6W,QAAQ9F,iBAAiBlR,EAAEuB,EAAEpB,KAAK6W,QAAQ/F,gBAAgB9Q,KAAK6W,QAAQ9F,oBAAoBvR,EAAEM,UAAU0L,uBAAuB,SAASlM,GAAG,OAAOA,EAAEU,KAAK6W,QAAQtH,OAAOtD,KAAKrH,OAAO5E,KAAK6W,QAAQtH,OAAOtD,KAAK3M,GAAGmC,EAAEgqB,oBAAoBnsB,IAAIE,EAAEM,UAAUoY,oBAAoB,SAAS5Y,GAAG,OAAOU,KAAK6W,QAAQL,kBAAkBhS,EAAElF,EAAE+L,KAAK7J,EAAE8e,uBAAuBtgB,KAAK6W,QAAQtH,OAAOf,WAAWlP,EAAE+L,GAAG,IAAIrL,KAAKwL,uBAAuBlM,EAAE+L,IAAIrL,KAAK6W,QAAQtH,OAAO3D,YAAYpM,EAAEM,UAAU0sC,oBAAoB,SAASltC,GAAG,OAAOA,EAAE8L,KAAK5J,EAAE8e,uBAAuBhc,EAAEqc,MAAMK,OAAOhhB,KAAK6W,QAAQtH,OAAO3D,YAAYtM,EAAE8L,GAAG,IAAIpL,KAAKwL,uBAAuBlM,EAAE8L,IAAIpL,KAAK6W,QAAQtH,OAAOf,YAAYhP,EAAEM,UAAUiY,aAAa,SAASzY,EAAEE,GAAGQ,KAAKsrC,oBAAoBtrC,KAAK6X,QAAQkB,OAAO,IAAIlZ,EAAEG,KAAKkY,oBAAoB5Y,GAAGU,KAAK6X,QAAQ0B,yBAAyB,OAAOvZ,KAAK6X,QAAQ2B,UAAU3Z,EAAEkW,IAAI/V,KAAK6X,QAAQ4B,SAAS,EAAE,EAAEzZ,KAAK6W,QAAQ/F,gBAAgB9Q,KAAK6W,QAAQ9F,kBAAkB/Q,KAAK6X,QAAQ0B,yBAAyB,cAAc,IAAInY,EAAE9B,EAAE8oC,KAAKpoC,KAAK6W,QAAQN,eAAevW,KAAK6W,QAAQP,WAAW/U,EAAEjC,EAAEgpC,OAAO,SAAS,GAAGtoC,KAAK6X,QAAQ6B,KAAKnY,EAAE,IAAIH,EAAE,IAAIpB,KAAK6W,QAAQR,SAASrW,KAAK6W,QAAQ1F,iBAAiB,MAAMnR,KAAK6W,QAAQT,WAAWpW,KAAK6X,QAAQ8B,aAAa,cAAc3Z,KAAK6X,QAAQ2B,UAAUxZ,KAAKwsC,oBAAoBltC,GAAGyW,IAAIzW,EAAE+oC,MAAMroC,KAAK6X,QAAQ+B,YAAYpY,EAAEqY,aAAa7Z,KAAK6X,QAAQiC,SAASxa,EAAE4oC,MAAM,EAAEloC,KAAK6W,QAAQ9F,kBAAkB/Q,KAAK6X,QAAQkC,UAAU,IAAInX,EAAE5C,KAAK6X,QAAQoC,aAAa,EAAE,EAAEja,KAAK6W,QAAQ/F,gBAAgB9Q,KAAK6W,QAAQ9F,kBAAkBtP,GAAE,EAAGzB,KAAK6W,QAAQL,oBAAoB/U,EAAE,SAASnC,EAAEE,GAAG,IAAI,IAAIK,GAAE,EAAGuB,EAAE5B,EAAE6K,OAAO,GAAG9I,EAAE/B,EAAE6K,OAAO,GAAG,IAAI7I,EAAEhC,EAAE6K,OAAO,EAAE,IAAIzH,EAAE,EAAEA,EAAEtD,EAAE4a,KAAKtV,OAAOhC,GAAG,EAAEtD,EAAE4a,KAAKtX,KAAKxB,GAAG9B,EAAE4a,KAAKtX,EAAE,KAAKrB,GAAGjC,EAAE4a,KAAKtX,EAAE,KAAKpB,EAAElC,EAAE4a,KAAKtX,EAAE,GAAG,EAAE/C,GAAE,EAAG,OAAOA,EAA/K,CAAkL+C,EAAE/C,IAAI,IAAImC,EAAEhC,KAAKosC,eAAe5sC,GAAGqC,EAAE7B,KAAKqsC,eAAe7sC,GAAGQ,KAAK0X,UAAU6C,aAAa3X,EAAEZ,EAAEH,GAAG,IAAIgD,EAAE,CAACsnC,MAAM3sC,EAAEikB,QAAQhiB,EAAE8qC,UAAS,GAAI,OAAOvsC,KAAKysC,kBAAkB5nC,GAAGA,GAAGrF,EAAEM,UAAU2sC,kBAAkB,SAASntC,GAAG,IAAIE,EAAEQ,OAAO,sBAAsBgB,SAASa,EAAEq4B,WAAWr4B,EAAE6qC,WAAW1sC,KAAKurC,uBAAuBpmC,KAAK7F,GAAG,OAAOU,KAAKwrC,uBAAuBxrC,KAAKwrC,qBAAqBxqC,OAAOqe,YAAW,WAAY,OAAO7f,EAAEmtC,oBAAoB,QAAQntC,EAAEM,UAAU6sC,gBAAgB,WAAW,IAAIrtC,EAAEU,KAAKR,EAAEQ,KAAKurC,uBAAuBvrC,KAAKurC,uBAAuB,GAAGvqC,OAAO4rC,kBAAkB5sC,KAAK0rC,cAAcmB,MAAK,SAAUhtC,GAAGP,EAAEmsC,QAAQ5rC,EAAE,IAAI,IAAIuB,EAAE,EAAEA,EAAE5B,EAAEoF,OAAOxD,IAAI5B,EAAE4B,GAAGmrC,UAAS,KAAMvsC,KAAKwrC,qBAAqB,MAAMhsC,EAAxoI,CAA2oIoD,EAAEkoC,eAAetrC,EAAEwrC,iBAAiB/oC,EAAE,IAAIU,EAAE,SAASrD,GAAG,SAASE,EAAEA,EAAEK,GAAG,OAAOP,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOuB,EAAE/B,EAAEF,GAAGE,EAAEM,UAAU4oC,KAAK,SAASppC,EAAEE,EAAEK,EAAEuB,GAAG,OAAM,GAAI5B,EAAjH,CAAoHoD,EAAEkoC,eAAetrC,EAAE4rC,cAAczoC,GAAGmqC,KAAK,CAACxtC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqsC,YAAO,EAAO,IAAIhsC,EAAE,WAAW,SAASP,EAAEA,GAAGU,KAAKisC,SAAS3sC,EAAEU,KAAK+sC,KAAK,GAAG/sC,KAAKgtC,MAAM,KAAKhtC,KAAKitC,MAAM,KAAKjtC,KAAKktC,UAAU,GAAGltC,KAAK4J,KAAK,EAAE,OAAOtK,EAAEQ,UAAUqtC,YAAY,SAAS7tC,GAAG,IAAIE,EAAEF,EAAE8tC,KAAKvtC,EAAEP,EAAEyvB,KAAKzvB,IAAIU,KAAKgtC,QAAQhtC,KAAKgtC,MAAMntC,GAAGP,IAAIU,KAAKitC,QAAQjtC,KAAKitC,MAAMztC,GAAG,OAAOA,IAAIA,EAAEuvB,KAAKlvB,GAAG,OAAOA,IAAIA,EAAEutC,KAAK5tC,IAAIF,EAAEQ,UAAUutC,YAAY,SAAS/tC,GAAG,IAAIE,EAAEQ,KAAKitC,MAAM,OAAOztC,IAAIA,EAAEuvB,KAAKzvB,GAAGA,EAAE8tC,KAAK5tC,EAAEF,EAAEyvB,KAAK,KAAK/uB,KAAKitC,MAAM3tC,EAAE,OAAOU,KAAKgtC,QAAQhtC,KAAKgtC,MAAM1tC,IAAIA,EAAEQ,UAAUgsC,SAAS,SAASxsC,GAAG,IAAI,IAAIE,EAAEQ,KAAKktC,UAAUrtC,EAAE,EAAEA,EAAEP,EAAEO,IAAIL,EAAE2F,KAAK,CAACioC,KAAK,KAAKre,KAAK,KAAKnH,IAAI,KAAKjoB,MAAM,QAAQL,EAAEQ,UAAUqC,IAAI,SAAS7C,GAAG,IAAIE,EAAEQ,KAAK+sC,KAAKztC,GAAG,YAAO,IAASE,GAAGQ,KAAKmtC,YAAY3tC,GAAGQ,KAAKqtC,YAAY7tC,GAAGA,EAAEG,OAAO,MAAML,EAAEQ,UAAUwtC,UAAU,SAAShuC,GAAG,IAAIE,EAAEQ,KAAK+sC,KAAKztC,GAAG,YAAO,IAASE,EAAEA,EAAEG,MAAM,MAAML,EAAEQ,UAAUosC,KAAK,WAAW,IAAI5sC,EAAEU,KAAKgtC,MAAM,OAAO,OAAO1tC,EAAE,KAAKA,EAAEK,OAAOL,EAAEQ,UAAU6M,IAAI,SAASrN,EAAEE,GAAG,IAAIK,EAAEG,KAAK+sC,KAAKztC,GAAG,QAAG,IAASO,EAAEA,EAAEG,KAAK+sC,KAAKztC,GAAGU,KAAKmtC,YAAYttC,GAAGA,EAAEF,MAAMH,OAAO,GAAGQ,KAAK4J,MAAM5J,KAAKisC,SAASpsC,EAAEG,KAAKgtC,MAAMhtC,KAAKmtC,YAAYttC,UAAUG,KAAK+sC,KAAKltC,EAAE+nB,KAAK/nB,EAAE+nB,IAAItoB,EAAEO,EAAEF,MAAMH,EAAEQ,KAAK+sC,KAAKztC,GAAGO,MAAM,CAAC,IAAIuB,EAAEpB,KAAKktC,UAAU9rC,EAAEwD,OAAO,IAAI/E,EAAEuB,EAAEmnB,OAAOX,IAAItoB,EAAEO,EAAEF,MAAMH,GAAGK,EAAE,CAACutC,KAAK,KAAKre,KAAK,KAAKnH,IAAItoB,EAAEK,MAAMH,GAAGQ,KAAK+sC,KAAKztC,GAAGO,EAAEG,KAAK4J,OAAO5J,KAAKqtC,YAAYxtC,IAAIP,EAA/rC,GAAosCE,EAAEqsC,OAAOhsC,GAAG0tC,KAAK,SAASjuC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEi+B,iBAAY,EAAO,IAAIh8B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAM2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAEpC,EAAE,MAAM8C,EAAE,4BAA4BmC,EAAE,YAAY4G,EAAE,YAAYzG,EAAE,cAAckV,EAAE,EAAE6b,EAAE,SAAS12B,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEZ,EAAEH,EAAEgD,EAAEP,GAAG,IAAIE,EAAElF,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOwE,EAAEyB,QAAQzG,EAAEgF,EAAE8pB,SAASzuB,EAAE2E,EAAE6uB,eAAejyB,EAAEoD,EAAE22B,iBAAiB55B,EAAEiD,EAAEgpC,WAAWhsC,EAAEgD,EAAEipC,YAAY7qC,EAAE4B,EAAEiP,iBAAiB5R,EAAE2C,EAAE+uB,gBAAgB1uB,EAAEL,EAAEspB,eAAexpB,EAAEE,EAAEkpC,eAAevzB,IAAI3V,EAAE6hB,aAAa,GAAG7hB,EAAE2hB,cAAc7U,SAASC,cAAc,OAAO/M,EAAE2hB,cAAc9K,UAAUC,IAAI,cAAc9W,EAAE2hB,cAAczT,MAAMqnB,WAAW,SAASv1B,EAAE2hB,cAAcC,aAAa,cAAc,QAAQ5hB,EAAEmpC,oBAAoBnpC,EAAEspB,eAAevtB,KAAKiE,EAAEspB,eAAextB,MAAMkE,EAAEopC,oBAAoBt8B,SAASC,cAAc,OAAO/M,EAAEopC,oBAAoBvyB,UAAUC,IAAI,mBAAmB9W,EAAEopC,oBAAoBxnB,aAAa,cAAc,QAAQ5hB,EAAE3D,WAAW,CAACiQ,gBAAgB,EAAEC,iBAAiB,EAAE5C,gBAAgB,EAAEC,iBAAiB,EAAE1E,eAAe,EAAEC,cAAc,EAAEE,kBAAkB,EAAEC,mBAAmB,EAAEkH,YAAY,EAAEC,aAAa,EAAEnQ,gBAAgB,EAAEC,iBAAiB,GAAGyD,EAAE4M,oBAAoB5M,EAAEqpC,aAAarpC,EAAEspC,YAAY9rC,EAAEu1B,eAAe91B,EAAEssC,sBAAsBz8B,SAAS9M,EAAEyB,SAASzB,EAAE8pB,SAASjT,UAAUC,IAAI3Y,EAAE6B,EAAEkpC,gBAAgBlpC,EAAE6uB,eAAezhB,YAAYpN,EAAE2hB,eAAe3hB,EAAE6uB,eAAezhB,YAAYpN,EAAEopC,qBAAqBppC,EAAEgpC,WAAW5tB,qBAAoB,SAAUtgB,GAAG,OAAOkF,EAAEwpC,aAAa1uC,MAAMkF,EAAEgpC,WAAW1tB,qBAAoB,SAAUxgB,GAAG,OAAOkF,EAAEypC,aAAa3uC,MAAMkF,EAAEipC,YAAY7tB,qBAAoB,SAAUtgB,GAAG,OAAOkF,EAAEwpC,aAAa1uC,MAAMkF,EAAEipC,YAAY3tB,qBAAoB,SAAUxgB,GAAG,OAAOkF,EAAEypC,aAAa3uC,MAAMkF,EAAE,OAAOjD,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,kBAAkB,CAACqC,IAAI,WAAW,OAAM,IAAKqC,EAAEiM,cAAc0B,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUI,QAAQ,WAAWF,KAAKsuB,SAASjT,UAAU8U,OAAOxtB,EAAE3C,KAAK0tC,gBAAgBzrC,EAAEkmB,wBAAwBnoB,KAAKmmB,cAAcnmB,KAAK4tC,oBAAoB5tC,KAAKkuC,mBAAmBluC,KAAKmuC,yBAAyB7uC,EAAEQ,UAAUI,QAAQ4B,KAAK9B,OAAOR,EAAEM,UAAUsR,kBAAkB,WAAWpR,KAAKa,WAAWiQ,gBAAgB9Q,KAAKyT,iBAAiBrH,MAAMpL,OAAOmQ,iBAAiBnR,KAAKa,WAAWkQ,iBAAiB1P,KAAK0S,KAAK/T,KAAKyT,iBAAiBpH,OAAOrL,OAAOmQ,kBAAkBnR,KAAKa,WAAWsN,gBAAgBnO,KAAKa,WAAWiQ,gBAAgBzP,KAAK4S,MAAMjU,KAAKuzB,gBAAgBkB,QAAQiV,eAAe1pC,KAAKa,WAAWuN,iBAAiB/M,KAAKO,MAAM5B,KAAKa,WAAWkQ,iBAAiB/Q,KAAKuzB,gBAAgBkB,QAAQsF,YAAY/5B,KAAKa,WAAW6I,eAAe,EAAE1J,KAAKa,WAAW8I,cAAc,EAAE3J,KAAKa,WAAWgJ,kBAAkB7J,KAAKa,WAAWsN,gBAAgBnO,KAAK8tB,eAAevtB,KAAKP,KAAKa,WAAWiJ,mBAAmB9J,KAAKa,WAAWuN,iBAAiBpO,KAAK8tB,eAAextB,KAAKN,KAAKa,WAAWmQ,YAAY3P,KAAK4S,MAAMjU,KAAKa,WAAWgJ,kBAAkB7I,OAAOmQ,kBAAkBnR,KAAKa,WAAWoQ,aAAa5P,KAAK4S,MAAMjU,KAAKa,WAAWiJ,mBAAmB9I,OAAOmQ,kBAAkBnR,KAAKa,WAAWC,gBAAgBd,KAAKa,WAAWmQ,YAAYhR,KAAK8tB,eAAevtB,KAAKP,KAAKa,WAAWE,iBAAiBf,KAAKa,WAAWoQ,aAAajR,KAAK8tB,eAAextB,KAAK,IAAI,IAAIhB,EAAE,EAAEE,EAAEQ,KAAKqmB,aAAa/mB,EAAEE,EAAEoF,OAAOtF,IAAI,CAAC,IAAIO,EAAEL,EAAEF,GAAGO,EAAE6S,MAAMtG,MAAMpM,KAAKa,WAAWmQ,YAAY,KAAKnR,EAAE6S,MAAMrG,OAAOrM,KAAKa,WAAWE,iBAAiB,KAAKlB,EAAE6S,MAAMqnB,WAAW/5B,KAAKa,WAAWE,iBAAiB,KAAKlB,EAAE6S,MAAM07B,SAAS,SAASpuC,KAAKmuC,0BAA0BnuC,KAAKmuC,wBAAwB78B,SAASC,cAAc,SAASvR,KAAKqzB,eAAezhB,YAAY5R,KAAKmuC,0BAA0B,IAAI/sC,EAAEpB,KAAKquC,kBAAkB,wFAAwFruC,KAAKa,WAAWC,gBAAgB,MAAMd,KAAKmuC,wBAAwBjlB,YAAY9nB,EAAEpB,KAAK4tC,oBAAoBl7B,MAAMrG,OAAOrM,KAAKm7B,iBAAiBzoB,MAAMrG,OAAOrM,KAAKqzB,eAAe3gB,MAAMtG,MAAMpM,KAAKa,WAAWmQ,YAAY,KAAKhR,KAAKqzB,eAAe3gB,MAAMrG,OAAOrM,KAAKa,WAAWoQ,aAAa,MAAMzR,EAAEM,UAAUwM,UAAU,SAAShN,GAAGU,KAAKiG,QAAQ3G,EAAEU,KAAK6tC,cAAcruC,EAAEM,UAAU+tC,WAAW,WAAW,IAAIvuC,EAAEU,KAAKA,KAAKkuC,qBAAqBluC,KAAKkuC,mBAAmB58B,SAASC,cAAc,SAASvR,KAAKqzB,eAAezhB,YAAY5R,KAAKkuC,qBAAqB,IAAI1uC,EAAEQ,KAAKquC,kBAAkB,yBAAyBruC,KAAKiG,QAAQuI,WAAWuH,IAAI,kBAAkB/V,KAAKuzB,gBAAgBkB,QAAQre,WAAW,gBAAgBpW,KAAKuzB,gBAAgBkB,QAAQpe,SAAS,OAAO7W,GAAGQ,KAAKquC,kBAAkB,cAAc5sC,EAAE6sC,WAAW,oBAAoBtuC,KAAKuzB,gBAAgBkB,QAAQne,WAAW,KAAKtW,KAAKquC,kBAAkB,SAAS5sC,EAAE6sC,WAAW,mBAAmBtuC,KAAKuzB,gBAAgBkB,QAAQle,eAAe,KAAKvW,KAAKquC,kBAAkB,SAAS5sC,EAAE8sC,aAAa,0BAA0B/uC,GAAG,+BAA+BQ,KAAK0tC,eAAe,iCAAiCluC,GAAG,0BAA0BQ,KAAK0tC,eAAe,8BAA8B1tC,KAAKiG,QAAQ+P,OAAOD,IAAI,aAAa/V,KAAKiG,QAAQgQ,aAAaF,IAAI,gCAAgC/V,KAAKiG,QAAQgQ,aAAaF,IAAI,aAAa/V,KAAKiG,QAAQ+P,OAAOD,IAAI,OAAOvW,GAAGQ,KAAKquC,kBAAkB,mCAAmC5sC,EAAE+sC,aAAa,IAAI/sC,EAAEgtC,yBAAyB,yBAAyBzuC,KAAKiG,QAAQ+P,OAAOD,IAAI,2BAA2B/V,KAAKquC,kBAAkB,6BAA6B5sC,EAAE+sC,aAAa,IAAI/sC,EAAEitC,mBAAmB,SAASjtC,EAAEgtC,yBAAyB,mCAAmCzuC,KAAK0tC,eAAe,0BAA0B1tC,KAAKquC,kBAAkB,6BAA6B5sC,EAAE+sC,aAAa,IAAI/sC,EAAEitC,mBAAmB,IAAIjtC,EAAEgtC,yBAAyB,6BAA6BzuC,KAAK0tC,eAAe,0BAA0B1tC,KAAKquC,kBAAkB,6BAA6B5sC,EAAE+sC,aAAa,IAAI/sC,EAAEgtC,yBAAyB,wBAAwBzuC,KAAKiG,QAAQ+P,OAAOD,IAAI,YAAY/V,KAAKiG,QAAQgQ,aAAaF,IAAI,KAAK/V,KAAKquC,kBAAkB,iBAAiB5sC,EAAE+sC,aAAa,IAAI/sC,EAAEktC,uBAAuB,kBAAkB3uC,KAAKuzB,gBAAgBkB,QAAQuU,YAAY,UAAUhpC,KAAKiG,QAAQ+P,OAAOD,IAAI,WAAW/V,KAAKquC,kBAAkB,iBAAiB5sC,EAAE+sC,aAAa,IAAI/sC,EAAEmtC,6BAA6B,2BAA2B5uC,KAAKiG,QAAQ+P,OAAOD,IAAI,WAAWvW,GAAGQ,KAAKquC,kBAAkB,8FAA8FruC,KAAKquC,kBAAkB,iEAAiEruC,KAAKiG,QAAQiQ,qBAAqBH,IAAI,KAAK/V,KAAKiG,QAAQgG,KAAKmG,SAAQ,SAAUvS,EAAEuB,GAAG5B,GAAGF,EAAE+uC,kBAAkB,KAAKvpC,EAAE1D,EAAE,aAAavB,EAAEkW,IAAI,MAAMzW,EAAE+uC,kBAAkB,KAAK3iC,EAAEtK,EAAE,wBAAwBvB,EAAEkW,IAAI,SAASvW,GAAGQ,KAAKquC,kBAAkB,KAAKvpC,EAAE9C,EAAEse,uBAAuB,aAAata,EAAE2a,MAAMK,OAAOhhB,KAAKiG,QAAQ2F,YAAYmK,IAAI,MAAM/V,KAAKquC,kBAAkB,KAAK3iC,EAAE1J,EAAEse,uBAAuB,wBAAwBtgB,KAAKiG,QAAQuI,WAAWuH,IAAI,MAAM/V,KAAKkuC,mBAAmBhlB,YAAY1pB,GAAGA,EAAEM,UAAU2S,yBAAyB,WAAWzS,KAAKoR,qBAAqB5R,EAAEM,UAAU6tC,oBAAoB,SAASruC,EAAEE,GAAG,IAAI,IAAIK,EAAEG,KAAKqmB,aAAazhB,OAAO/E,GAAGL,EAAEK,IAAI,CAAC,IAAIuB,EAAEkQ,SAASC,cAAc,OAAOvR,KAAKmmB,cAAcvU,YAAYxQ,GAAGpB,KAAKqmB,aAAalhB,KAAK/D,GAAG,KAAKpB,KAAKqmB,aAAazhB,OAAOpF,GAAGQ,KAAKmmB,cAAc9T,YAAYrS,KAAKqmB,aAAakC,QAAQ/oB,EAAEM,UAAUkJ,SAAS,SAAS1J,EAAEE,GAAGQ,KAAK2tC,oBAAoBruC,EAAEE,GAAGQ,KAAKoR,qBAAqB5R,EAAEM,UAAUiS,kBAAkB,WAAW/R,KAAKoR,qBAAqB5R,EAAEM,UAAU6S,OAAO,WAAW3S,KAAKmmB,cAAc9K,UAAU8U,OAAOlrB,IAAIzF,EAAEM,UAAU8S,QAAQ,WAAW5S,KAAKmmB,cAAc9K,UAAUC,IAAIrW,IAAIzF,EAAEM,UAAU+S,mBAAmB,SAASvT,EAAEE,EAAEK,GAAG,KAAKG,KAAK4tC,oBAAoB7kB,SAASnkB,QAAQ5E,KAAK4tC,oBAAoBv7B,YAAYrS,KAAK4tC,oBAAoB7kB,SAAS,IAAI,GAAGzpB,GAAGE,EAAE,CAAC,IAAI4B,EAAE9B,EAAE,GAAGU,KAAK8tB,eAAexoB,OAAOqO,MAAMpS,EAAE/B,EAAE,GAAGQ,KAAK8tB,eAAexoB,OAAOqO,MAAMnS,EAAEH,KAAKC,IAAIF,EAAE,GAAGwB,EAAEvB,KAAK2N,IAAIzN,EAAEvB,KAAK8tB,eAAextB,KAAK,GAAG,KAAKkB,GAAGxB,KAAK8tB,eAAextB,MAAMsC,EAAE,GAAG,CAAC,IAAInB,EAAE6P,SAAS4pB,yBAAyB,GAAGr7B,EAAE4B,EAAEmQ,YAAY5R,KAAK6uC,wBAAwBrtC,EAAElC,EAAE,GAAGE,EAAE,GAAGoD,EAAEpB,EAAE,QAAQ,CAAC,IAAIQ,EAAEZ,IAAII,EAAElC,EAAE,GAAG,EAAEuC,EAAEL,IAAID,EAAE/B,EAAE,GAAGQ,KAAK8tB,eAAevtB,KAAKkB,EAAEmQ,YAAY5R,KAAK6uC,wBAAwBrtC,EAAEQ,EAAEH,IAAI,IAAIgD,EAAEjC,EAAEpB,EAAE,EAAE,GAAGC,EAAEmQ,YAAY5R,KAAK6uC,wBAAwBrtC,EAAE,EAAE,EAAExB,KAAK8tB,eAAevtB,KAAKsE,IAAIrD,IAAIoB,EAAE,CAAC,IAAI0B,EAAE/C,IAAIqB,EAAEpD,EAAE,GAAGQ,KAAK8tB,eAAevtB,KAAKkB,EAAEmQ,YAAY5R,KAAK6uC,wBAAwBjsC,EAAE,EAAE0B,KAAKtE,KAAK4tC,oBAAoBh8B,YAAYnQ,MAAMjC,EAAEM,UAAU+uC,wBAAwB,SAASvvC,EAAEE,EAAEK,EAAEuB,QAAG,IAASA,IAAIA,EAAE,GAAG,IAAIG,EAAE+P,SAASC,cAAc,OAAO,OAAOhQ,EAAEmR,MAAMrG,OAAOjL,EAAEpB,KAAKa,WAAWE,iBAAiB,KAAKQ,EAAEmR,MAAM2E,IAAI/X,EAAEU,KAAKa,WAAWE,iBAAiB,KAAKQ,EAAEmR,MAAM4E,KAAK9X,EAAEQ,KAAKa,WAAWC,gBAAgB,KAAKS,EAAEmR,MAAMtG,MAAMpM,KAAKa,WAAWC,iBAAiBjB,EAAEL,GAAG,KAAK+B,GAAG/B,EAAEM,UAAUkT,aAAa,aAAaxT,EAAEM,UAAUmT,iBAAiB,WAAWjT,KAAKoR,oBAAoBpR,KAAK6tC,cAAcruC,EAAEM,UAAUW,MAAM,WAAW,IAAI,IAAInB,EAAE,EAAEE,EAAEQ,KAAKqmB,aAAa/mB,EAAEE,EAAEoF,OAAOtF,IAAIE,EAAEF,GAAGkqB,UAAU,IAAIhqB,EAAEM,UAAU0T,WAAW,SAASlU,EAAEE,GAAG,IAAI,IAAIK,EAAEG,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAexoB,OAAOL,EAAE7D,EAAEC,KAAK2N,IAAIhP,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAevtB,KAAK,GAAGgB,EAAEvB,KAAKuzB,gBAAgBkB,QAAQqU,YAAYtnC,EAAElC,EAAEkC,GAAGhC,EAAEgC,IAAI,CAAC,IAAIoB,EAAE5C,KAAKqmB,aAAa7kB,GAAGoB,EAAE4mB,UAAU,GAAG,IAAI/nB,EAAED,EAAExB,KAAK8tB,eAAexoB,OAAOqO,MAAM3R,EAAEhC,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAIV,GAAGI,EAAE7B,KAAKuzB,gBAAgBkB,QAAQsU,YAAYnmC,EAAEgP,YAAY5R,KAAK8tC,YAAYgB,UAAU9sC,EAAEP,EAAEA,IAAI5B,EAAEgC,EAAET,EAAEG,EAAEvB,KAAKa,WAAWC,gBAAgBd,KAAK8tB,eAAevtB,SAASd,OAAOC,eAAeF,EAAEM,UAAU,oBAAoB,CAACqC,IAAI,WAAW,MAAM,IAAIQ,EAAE3C,KAAK0tC,gBAAgBxrC,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUkuC,aAAa,SAAS1uC,GAAGU,KAAK+uC,kBAAkBzvC,EAAE4gB,GAAG5gB,EAAE+gB,GAAG/gB,EAAE6gB,GAAG7gB,EAAE8gB,GAAG9gB,EAAEiB,MAAK,IAAKf,EAAEM,UAAUmuC,aAAa,SAAS3uC,GAAGU,KAAK+uC,kBAAkBzvC,EAAE4gB,GAAG5gB,EAAE+gB,GAAG/gB,EAAE6gB,GAAG7gB,EAAE8gB,GAAG9gB,EAAEiB,MAAK,IAAKf,EAAEM,UAAUivC,kBAAkB,SAASzvC,EAAEE,EAAEK,EAAEuB,EAAEG,EAAEC,GAAG,KAAKlC,IAAIE,GAAGK,IAAIuB,GAAG,CAAC,IAAIwB,EAAE5C,KAAKqmB,aAAaxmB,GAAG,IAAI+C,EAAE,OAAO,IAAInB,EAAEmB,EAAEmmB,SAASzpB,GAAGmC,IAAIA,EAAEiR,MAAMs8B,eAAextC,EAAE,YAAY,UAAUlC,GAAGiC,IAAIjC,EAAE,EAAEO,OAAO2B,EAAE,CAACoB,EAAE,EAAE0B,EAAEqlC,uBAAuB/mC,EAAE,EAAEiC,EAAE62B,kBAAkB94B,EAAE,EAAE0B,EAAEwwB,iBAAiBlyB,EAAE,EAAE0B,EAAE8rB,iBAAiB5wB,GAA5kT,CAAglTqC,EAAEqS,YAAY1U,EAAEi+B,YAAYzH,GAAGiZ,KAAK,SAAS3vC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEuuC,sBAAsBvuC,EAAEovC,6BAA6BpvC,EAAEmvC,uBAAuBnvC,EAAEivC,yBAAyBjvC,EAAEkvC,mBAAmBlvC,EAAEgvC,aAAahvC,EAAE0vC,gBAAgB1vC,EAAE+uC,aAAa/uC,EAAE2vC,UAAU3vC,EAAE8uC,gBAAW,EAAO,IAAI9sC,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,KAAK4B,EAAE5B,EAAE,KAAKmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAML,EAAE8uC,WAAW,aAAa9uC,EAAE2vC,UAAU,YAAY3vC,EAAE+uC,aAAa,eAAe/uC,EAAE0vC,gBAAgB,kBAAkB1vC,EAAEgvC,aAAa,eAAehvC,EAAEkvC,mBAAmB,qBAAqBlvC,EAAEivC,yBAAyB,qBAAqBjvC,EAAEmvC,uBAAuB,mBAAmBnvC,EAAEovC,6BAA6B,yBAAyB,IAAIpqC,EAAE,WAAW,SAASlF,EAAEA,EAAEE,EAAEK,EAAEuB,GAAGpB,KAAK+6B,UAAUz7B,EAAEU,KAAKiG,QAAQzG,EAAEQ,KAAK67B,wBAAwBh8B,EAAEG,KAAKuzB,gBAAgBnyB,EAAEpB,KAAKsQ,UAAU,IAAI7O,EAAE8O,SAAS,OAAOjR,EAAEQ,UAAUwM,UAAU,SAAShN,GAAGU,KAAKiG,QAAQ3G,GAAGA,EAAEQ,UAAUgvC,UAAU,SAASxvC,EAAEO,EAAEuB,EAAEG,EAAEE,EAAEO,EAAE6C,EAAEL,GAAG,IAAI,IAAIvC,EAAEjC,KAAK+6B,UAAUG,yBAAyBv4B,EAAE3C,KAAK67B,wBAAwByO,oBAAoBzqC,GAAGiF,EAAE,EAAE4G,EAAErK,KAAK2N,IAAI1P,EAAEsF,OAAOJ,GAAG,EAAEkH,GAAG,EAAEA,IAAI,GAAGpM,EAAEuU,SAASnI,EAAE1L,KAAKsQ,WAAWwD,YAAYlR,EAAEyG,gBAAgBjI,GAAGsK,IAAIjK,EAAE,CAACqD,EAAE4G,EAAE,EAAE,MAAM,IAAIA,EAAE,EAAEA,EAAE5G,EAAE4G,IAAI,CAACpM,EAAEuU,SAASnI,EAAE1L,KAAKsQ,WAAW,IAAIrL,EAAEjF,KAAKsQ,UAAUgO,WAAW,GAAG,IAAIrZ,EAAE,CAAC,IAAIkV,GAAE,EAAG6b,EAAEtqB,EAAE3J,EAAE/B,KAAKsQ,UAAU,GAAG3N,EAAEiC,OAAO,GAAG8G,IAAI/I,EAAE,GAAG,GAAG,CAACwX,GAAE,EAAG,IAAIrO,EAAEnJ,EAAE6lB,QAAQzmB,EAAE,IAAIuC,EAAEimC,eAAevqC,KAAKsQ,UAAUhR,EAAEoG,mBAAkB,EAAGoG,EAAE,GAAGA,EAAE,IAAIA,EAAE,GAAGA,EAAE,IAAIkqB,EAAElqB,EAAE,GAAG,EAAE7G,EAAElD,EAAEuc,WAAW,IAAIjE,EAAEra,KAAK+6B,UAAUxpB,cAAc,QAAQ,GAAGtM,EAAE,IAAIoV,EAAE3H,MAAMtG,MAAMvH,EAAEI,EAAE,MAAMkV,IAAIE,EAAE3H,MAAM08B,QAAQ,SAAS3tC,GAAGiK,GAAGjK,GAAGu0B,IAAIv0B,EAAEiK,IAAItK,GAAGsK,IAAIjK,EAAE,OAAO4Y,EAAEgB,UAAUC,IAAI9b,EAAEgvC,cAAcxsC,GAAGqY,EAAEgB,UAAUC,IAAI9b,EAAEkvC,oBAAoBntC,GAAG,IAAI,MAAM8Y,EAAEgB,UAAUC,IAAI9b,EAAEmvC,wBAAwB,MAAM,IAAI,YAAYt0B,EAAEgB,UAAUC,IAAI9b,EAAEovC,8BAA8B,MAAM,QAAQv0B,EAAEgB,UAAUC,IAAI9b,EAAEivC,0BAA0B1sC,EAAEkX,UAAUoB,EAAEgB,UAAUC,IAAI9b,EAAE8uC,YAAYvsC,EAAEqX,YAAYiB,EAAEgB,UAAUC,IAAI9b,EAAE+uC,cAAcxsC,EAAEoX,SAASkB,EAAEgB,UAAUC,IAAI9b,EAAE2vC,WAAWptC,EAAE+gB,eAAezI,EAAEgB,UAAUC,IAAI9b,EAAE0vC,iBAAiBntC,EAAEiX,cAAcqB,EAAE6O,YAAYtmB,EAAEqiB,qBAAqB5K,EAAE6O,YAAYnnB,EAAEiK,YAAYpJ,EAAEqiB,qBAAqB,IAAIgR,EAAEl0B,EAAEsX,aAAa6c,EAAEn0B,EAAEuX,iBAAiB6c,EAAEp0B,EAAE0J,aAAa2qB,EAAEr0B,EAAEwJ,iBAAiByO,IAAIjY,EAAEmX,YAAY,GAAGc,EAAE,CAAC,IAAIhV,EAAEixB,EAAEA,EAAEE,EAAEA,EAAEnxB,EAAE,IAAIqxB,EAAEH,EAAEA,EAAEE,EAAEA,EAAEC,EAAE,OAAOH,GAAG,KAAK,SAAS,KAAK,SAASn0B,EAAEkX,UAAUgd,EAAE,GAAGj2B,KAAKuzB,gBAAgBkB,QAAQhe,6BAA6Bwf,GAAG,GAAGj2B,KAAKqvC,sBAAsBh1B,EAAEra,KAAKiG,QAAQ2F,WAAW5L,KAAKiG,QAAQgG,KAAKgqB,KAAK5b,EAAEgB,UAAUC,IAAI,YAAY2a,GAAG,MAAM,KAAK,SAAS,IAAIK,EAAEz0B,EAAEwI,KAAK0W,QAAQkV,GAAG,GAAG,IAAIA,GAAG,EAAE,IAAI,IAAIA,GAAGj2B,KAAKqvC,sBAAsBh1B,EAAEra,KAAKiG,QAAQ2F,WAAW0qB,IAAIt2B,KAAKsvC,UAAUj1B,EAAE,UAAUrU,EAAEiwB,EAAEvb,SAAS,IAAI,IAAI,IAAI,MAAM,KAAK,EAAE,QAAQ1a,KAAKqvC,sBAAsBh1B,EAAEra,KAAKiG,QAAQ2F,WAAW5L,KAAKiG,QAAQuI,aAAawL,GAAGK,EAAEgB,UAAUC,IAAI,YAAY9Z,EAAE8e,wBAAwB,OAAO8V,GAAG,KAAK,SAAS,KAAK,SAAS/b,EAAEgB,UAAUC,IAAI,YAAY6a,GAAG,MAAM,KAAK,SAASn2B,KAAKsvC,UAAUj1B,EAAE,qBAAqBrU,EAAEmwB,EAAEzb,SAAS,IAAI,IAAI,IAAI,MAAM,KAAK,EAAE,QAAQV,GAAGK,EAAEgB,UAAUC,IAAI,YAAY9Z,EAAE8e,wBAAwBre,EAAE2P,YAAYyI,GAAG3O,EAAEsqB,GAAG,OAAO/zB,GAAG3C,EAAEQ,UAAUuvC,sBAAsB,SAAS/vC,EAAEE,EAAEK,GAAG,GAAG,IAAIG,KAAKuzB,gBAAgBkB,QAAQ/d,qBAAqB,OAAM,EAAG,IAAItV,EAAEpB,KAAKiG,QAAQkQ,cAAcmV,SAAStrB,KAAKsQ,UAAUjF,GAAGrL,KAAKsQ,UAAUlF,IAAI,YAAO,IAAShK,IAAIA,EAAES,EAAE8e,MAAMhI,oBAAoBnZ,EAAEK,EAAEG,KAAKuzB,gBAAgBkB,QAAQ/d,sBAAsB1W,KAAKiG,QAAQkQ,cAAckV,SAASrrB,KAAKsQ,UAAUjF,GAAGrL,KAAKsQ,UAAUlF,GAAG,MAAMhK,EAAEA,EAAE,SAASA,IAAIpB,KAAKsvC,UAAUhwC,EAAE,SAAS8B,EAAE2U,MAAK,IAAKzW,EAAEQ,UAAUwvC,UAAU,SAAShwC,EAAEE,GAAGF,EAAE8mB,aAAa,QAAQ,IAAI9mB,EAAE+oB,aAAa,UAAU,IAAI7oB,EAAE,MAAM4B,EAAE,CAACG,EAAE,EAAEsD,EAAEk3B,yBAAyBx6B,EAAE,EAAES,EAAE8yB,kBAAkBx1B,GAAp6F,GAA06F,SAAS0G,EAAE1G,EAAEE,EAAEK,GAAG,KAAKP,EAAEsF,OAAO/E,GAAGP,EAAEE,EAAEF,EAAE,OAAOA,EAAEE,EAAEuuC,sBAAsBvpC,GAAG+qC,IAAI,CAACjwC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEgwC,oBAAe,EAAO,IAAI3vC,EAAE,WAAW,SAASP,EAAEA,GAAGU,KAAK8tB,eAAexuB,EAAEU,KAAKyvC,mBAAkB,EAAGzvC,KAAK0vC,qBAAqB,EAAE,OAAOpwC,EAAEQ,UAAUgP,eAAe,WAAW9O,KAAKqgC,oBAAe,EAAOrgC,KAAKwgC,kBAAa,EAAOxgC,KAAKyvC,mBAAkB,EAAGzvC,KAAK0vC,qBAAqB,GAAGjwC,OAAOC,eAAeJ,EAAEQ,UAAU,sBAAsB,CAACqC,IAAI,WAAW,OAAOnC,KAAKyvC,kBAAkB,CAAC,EAAE,GAAGzvC,KAAKwgC,cAAcxgC,KAAKqgC,gBAAgBrgC,KAAK2vC,6BAA6B3vC,KAAKwgC,aAAaxgC,KAAKqgC,gBAAgBn+B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,oBAAoB,CAACqC,IAAI,WAAW,GAAGnC,KAAKyvC,kBAAkB,MAAM,CAACzvC,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAextB,KAAK,GAAG,GAAGN,KAAKqgC,eAAe,CAAC,IAAIrgC,KAAKwgC,cAAcxgC,KAAK2vC,6BAA6B,CAAC,IAAIrwC,EAAEU,KAAKqgC,eAAe,GAAGrgC,KAAK0vC,qBAAqB,OAAOpwC,EAAEU,KAAK8tB,eAAevtB,KAAK,CAACjB,EAAEU,KAAK8tB,eAAevtB,KAAKP,KAAKqgC,eAAe,GAAGh/B,KAAKO,MAAMtC,EAAEU,KAAK8tB,eAAevtB,OAAO,CAACjB,EAAEU,KAAKqgC,eAAe,IAAI,OAAOrgC,KAAK0vC,sBAAsB1vC,KAAKwgC,aAAa,KAAKxgC,KAAKqgC,eAAe,GAAG,CAACh/B,KAAKC,IAAItB,KAAKqgC,eAAe,GAAGrgC,KAAK0vC,qBAAqB1vC,KAAKwgC,aAAa,IAAIxgC,KAAKwgC,aAAa,IAAIxgC,KAAKwgC,eAAet+B,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU6vC,2BAA2B,WAAW,IAAIrwC,EAAEU,KAAKqgC,eAAe7gC,EAAEQ,KAAKwgC,aAAa,SAASlhC,IAAIE,KAAKF,EAAE,GAAGE,EAAE,IAAIF,EAAE,KAAKE,EAAE,IAAIF,EAAE,GAAGE,EAAE,KAAKF,EAAEQ,UAAU8vC,OAAO,SAAStwC,GAAG,OAAOU,KAAKqgC,iBAAiBrgC,KAAKqgC,eAAe,IAAI/gC,GAAGU,KAAKwgC,eAAexgC,KAAKwgC,aAAa,IAAIlhC,GAAGU,KAAKwgC,cAAcxgC,KAAKwgC,aAAa,GAAG,GAAGxgC,KAAK8O,kBAAiB,IAAK9O,KAAKqgC,gBAAgBrgC,KAAKqgC,eAAe,GAAG,IAAIrgC,KAAKqgC,eAAe,GAAG,IAAG,IAAK/gC,EAAlnD,GAAunDE,EAAEgwC,eAAe3vC,GAAGgwC,IAAI,SAASvwC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEi8B,qBAAgB,EAAO,IAAIj6B,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE,WAAW,SAASnC,EAAEA,EAAEE,EAAEK,GAAGG,KAAKuzB,gBAAgB1zB,EAAEG,KAAKoM,MAAM,EAAEpM,KAAKqM,OAAO,EAAErM,KAAK8vC,kBAAkB,IAAIltC,EAAE6N,aAAazQ,KAAK+vC,iBAAiB,IAAI/tC,EAAE1C,EAAEE,EAAEQ,KAAKuzB,iBAAiB,OAAO9zB,OAAOC,eAAeJ,EAAEQ,UAAU,eAAe,CAACqC,IAAI,WAAW,OAAOnC,KAAKoM,MAAM,GAAGpM,KAAKqM,OAAO,GAAGnK,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,mBAAmB,CAACqC,IAAI,WAAW,OAAOnC,KAAK8vC,kBAAkB39B,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU64B,QAAQ,WAAW,IAAIr5B,EAAEU,KAAK+vC,iBAAiBpX,UAAUr5B,EAAE8M,QAAQpM,KAAKoM,OAAO9M,EAAE+M,SAASrM,KAAKqM,SAASrM,KAAKoM,MAAM9M,EAAE8M,MAAMpM,KAAKqM,OAAO/M,EAAE+M,OAAOrM,KAAK8vC,kBAAkB/8B,SAAS3R,EAAE,CAACG,EAAE,EAAEC,EAAEszB,kBAAkBx1B,GAA5pB,GAAkqBE,EAAEi8B,gBAAgBh6B,EAAE,IAAIO,EAAE,WAAW,SAAS1C,EAAEA,EAAEE,EAAEK,GAAGG,KAAK+6B,UAAUz7B,EAAEU,KAAKgwC,eAAexwC,EAAEQ,KAAKuzB,gBAAgB1zB,EAAEG,KAAKiwC,QAAQ,CAAC7jC,MAAM,EAAEC,OAAO,GAAGrM,KAAKkwC,gBAAgBlwC,KAAK+6B,UAAUxpB,cAAc,QAAQvR,KAAKkwC,gBAAgB70B,UAAUC,IAAI,8BAA8Btb,KAAKkwC,gBAAgBhnB,YAAY,IAAIlpB,KAAKkwC,gBAAgB9pB,aAAa,cAAc,QAAQpmB,KAAKgwC,eAAep+B,YAAY5R,KAAKkwC,iBAAiB,OAAO5wC,EAAEQ,UAAU64B,QAAQ,WAAW34B,KAAKkwC,gBAAgBx9B,MAAM0D,WAAWpW,KAAKuzB,gBAAgBkB,QAAQre,WAAWpW,KAAKkwC,gBAAgBx9B,MAAM2D,SAASrW,KAAKuzB,gBAAgBkB,QAAQpe,SAAS,KAAK,IAAI/W,EAAEU,KAAKkwC,gBAAgBnmB,wBAAwB,OAAO,IAAIzqB,EAAE8M,OAAO,IAAI9M,EAAE+M,SAASrM,KAAKiwC,QAAQ7jC,MAAM9M,EAAE8M,MAAMpM,KAAKiwC,QAAQ5jC,OAAOhL,KAAK0S,KAAKzU,EAAE+M,SAASrM,KAAKiwC,SAAS3wC,EAApvB,IAA0vB6wC,KAAK,SAAS7wC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEs8B,uBAAuBt8B,EAAE+qC,oBAAe,EAAO,IAAI9oC,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,KAAKgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAE,SAAShF,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,GAAG,IAAIG,EAAEjC,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOuB,EAAE6c,QAAQ,EAAE7c,EAAE8iB,aAAa,GAAG9iB,EAAE6J,GAAG5L,EAAE4L,GAAG7J,EAAE8J,GAAG7L,EAAE6L,GAAG9J,EAAE8iB,aAAaxkB,EAAE0B,EAAEoqC,OAAOvqC,EAAEG,EAAE,OAAOA,EAAE/B,EAAEF,GAAGE,EAAEM,UAAU0kB,WAAW,WAAW,OAAO,SAAShlB,EAAEM,UAAUwe,SAAS,WAAW,OAAOte,KAAK2rC,QAAQnsC,EAAEM,UAAUkM,SAAS,WAAW,OAAOhM,KAAKqkB,cAAc7kB,EAAEM,UAAUgU,QAAQ,WAAW,OAAO,SAAStU,EAAEM,UAAUykB,gBAAgB,SAASjlB,GAAG,MAAM,IAAI4M,MAAM,oBAAoB1M,EAAEM,UAAUglB,cAAc,WAAW,MAAM,CAAC9kB,KAAKoL,GAAGpL,KAAKgM,WAAWhM,KAAKse,WAAWte,KAAK8T,YAAYtU,EAA5hB,CAA+hBiC,EAAE0J,eAAe3L,EAAE+qC,eAAejmC,EAAE,IAAIE,EAAE,WAAW,SAASlF,EAAEA,GAAGU,KAAK8tB,eAAexuB,EAAEU,KAAKowC,kBAAkB,GAAGpwC,KAAKqwC,uBAAuB,EAAErwC,KAAKsQ,UAAU,IAAIzO,EAAE0O,SAAS,OAAOjR,EAAEQ,UAAUsiB,SAAS,SAAS9iB,GAAG,IAAIE,EAAE,CAAC2vB,GAAGnvB,KAAKqwC,yBAAyBhhB,QAAQ/vB,GAAG,OAAOU,KAAKowC,kBAAkBjrC,KAAK3F,GAAGA,EAAE2vB,IAAI7vB,EAAEQ,UAAU+/B,WAAW,SAASvgC,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEQ,KAAKowC,kBAAkBxrC,OAAOpF,IAAI,GAAGQ,KAAKowC,kBAAkB5wC,GAAG2vB,KAAK7vB,EAAE,OAAOU,KAAKowC,kBAAkBz6B,OAAOnW,EAAE,IAAG,EAAG,OAAM,GAAIF,EAAEQ,UAAUwqC,oBAAoB,SAAShrC,GAAG,GAAG,IAAIU,KAAKowC,kBAAkBxrC,OAAO,MAAM,GAAG,IAAIpF,EAAEQ,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAI7C,GAAG,IAAIE,GAAG,IAAIA,EAAEoF,OAAO,MAAM,GAAG,IAAI,IAAI/E,EAAE,GAAGuB,EAAE5B,EAAEkG,mBAAkB,GAAInE,EAAE,EAAEC,EAAE,EAAEoB,EAAE,EAAEnB,EAAEjC,EAAEuwB,MAAM,GAAGluB,EAAErC,EAAE8wC,MAAM,GAAGzrC,EAAE,EAAEA,EAAErF,EAAE+wC,mBAAmB1rC,IAAI,GAAGrF,EAAEqU,SAAShP,EAAE7E,KAAKsQ,WAAW,IAAItQ,KAAKsQ,UAAUgO,WAAW,CAAC,GAAGte,KAAKsQ,UAAUlF,KAAK3J,GAAGzB,KAAKsQ,UAAUjF,KAAKxJ,EAAE,CAAC,GAAGgD,EAAEtD,EAAE,EAAE,IAAI,IAAI+C,EAAEtE,KAAKwwC,iBAAiBpvC,EAAEwB,EAAEpB,EAAEhC,EAAE+B,GAAGiD,EAAE,EAAEA,EAAEF,EAAEM,OAAOJ,IAAI3E,EAAEsF,KAAKb,EAAEE,IAAIjD,EAAEsD,EAAEjC,EAAEpB,EAAEC,EAAEzB,KAAKsQ,UAAUlF,GAAGvJ,EAAE7B,KAAKsQ,UAAUjF,GAAG7J,GAAGxB,KAAKsQ,UAAUtE,WAAWpH,QAAQ5C,EAAEijB,qBAAqBrgB,OAAO,GAAG5E,KAAK8tB,eAAevtB,KAAKgB,EAAE,EAAE,IAAI+C,EAAEtE,KAAKwwC,iBAAiBpvC,EAAEwB,EAAEpB,EAAEhC,EAAE+B,GAAGiD,EAAE,EAAEA,EAAEF,EAAEM,OAAOJ,IAAI3E,EAAEsF,KAAKb,EAAEE,IAAI,OAAO3E,GAAGP,EAAEQ,UAAU0wC,iBAAiB,SAAShxC,EAAEK,EAAEuB,EAAEG,EAAEC,GAAG,IAAI,IAAIoB,EAAEpD,EAAEmG,UAAU9F,EAAEuB,GAAGK,EAAEzB,KAAKowC,kBAAkB,GAAG/gB,QAAQzsB,GAAGZ,EAAE,EAAEA,EAAEhC,KAAKowC,kBAAkBxrC,OAAO5C,IAAI,IAAI,IAAIH,EAAE7B,KAAKowC,kBAAkBpuC,GAAGqtB,QAAQzsB,GAAGiC,EAAE,EAAEA,EAAEhD,EAAE+C,OAAOC,IAAIvF,EAAEmxC,aAAahvC,EAAEI,EAAEgD,IAAI,OAAO7E,KAAK0wC,0BAA0BjvC,EAAEF,EAAEC,GAAGC,GAAGnC,EAAEQ,UAAU4wC,0BAA0B,SAASpxC,EAAEE,EAAEK,GAAG,IAAIuB,EAAE,EAAEG,GAAE,EAAGC,EAAE,EAAEoB,EAAEtD,EAAE8B,GAAG,GAAGwB,EAAE,CAAC,IAAI,IAAInB,EAAE5B,EAAE4B,EAAEzB,KAAK8tB,eAAevtB,KAAKkB,IAAI,CAAC,IAAII,EAAErC,EAAE8e,SAAS7c,GAAGoD,EAAErF,EAAEmxC,UAAUlvC,GAAGmD,QAAQ5C,EAAEijB,qBAAqBrgB,OAAO,GAAG,IAAI/C,EAAE,CAAC,IAAIN,GAAGqB,EAAE,IAAIpB,IAAIoB,EAAE,GAAGnB,EAAEF,GAAE,GAAIqB,EAAE,IAAIpB,EAAE,CAAC,GAAGoB,EAAE,GAAGnB,IAAImB,EAAEtD,IAAI8B,IAAI,MAAMwB,EAAE,IAAIpB,GAAGoB,EAAE,GAAGnB,EAAEF,GAAE,GAAIA,GAAE,EAAGC,GAAGqD,GAAGjC,IAAIA,EAAE,GAAG5C,KAAK8tB,eAAevtB,QAAQjB,EAAEmxC,aAAa,SAASnxC,EAAEE,GAAG,IAAI,IAAIK,GAAE,EAAGuB,EAAE,EAAEA,EAAE9B,EAAEsF,OAAOxD,IAAI,CAAC,IAAIG,EAAEjC,EAAE8B,GAAG,GAAGvB,EAAE,CAAC,GAAGL,EAAE,IAAI+B,EAAE,GAAG,OAAOjC,EAAE8B,EAAE,GAAG,GAAG5B,EAAE,GAAGF,EAAE,GAAGE,EAAE,IAAI+B,EAAE,GAAG,OAAOjC,EAAE8B,EAAE,GAAG,GAAGC,KAAKC,IAAI9B,EAAE,GAAG+B,EAAE,IAAIjC,EAAEqW,OAAOvU,EAAE,GAAG9B,EAAEA,EAAEqW,OAAOvU,EAAE,GAAGA,QAAQ,CAAC,GAAG5B,EAAE,IAAI+B,EAAE,GAAG,OAAOjC,EAAEqW,OAAOvU,EAAE,EAAE5B,GAAGF,EAAE,GAAGE,EAAE,IAAI+B,EAAE,GAAG,OAAOA,EAAE,GAAGF,KAAK2N,IAAIxP,EAAE,GAAG+B,EAAE,IAAIjC,EAAEE,EAAE,GAAG+B,EAAE,KAAKA,EAAE,GAAGF,KAAK2N,IAAIxP,EAAE,GAAG+B,EAAE,IAAI1B,GAAE,IAAK,OAAOA,EAAEP,EAAEA,EAAEsF,OAAO,GAAG,GAAGpF,EAAE,GAAGF,EAAE6F,KAAK3F,GAAGF,GAAGA,EAAEkC,EAAE,CAACoB,EAAE,EAAEiC,EAAEurB,iBAAiB9wB,GAA/oE,GAAqpEE,EAAEs8B,uBAAuBt3B,GAAGosC,KAAK,CAACtxC,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE87B,wBAAmB,EAAO,IAAIz7B,EAAE,WAAW,SAASP,EAAEA,GAAGU,KAAKskC,UAAUhlC,EAAE,OAAOG,OAAOC,eAAeJ,EAAEQ,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAKskC,UAAUuM,YAAY7wC,KAAKskC,UAAUuM,cAAcv/B,UAAUiO,gBAAgBvf,KAAKskC,WAAWhzB,SAASmO,YAAYvd,YAAW,EAAG2N,cAAa,IAAKvQ,EAA7Q,GAAkRE,EAAE87B,mBAAmBz7B,GAAGixC,KAAK,SAASxxC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+8B,kBAAa,EAAO,IAAI/6B,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE,WAAW,SAASnC,EAAEA,EAAEE,GAAGQ,KAAKQ,eAAelB,EAAEU,KAAKyT,iBAAiBjU,EAAE,OAAOF,EAAEQ,UAAUkzB,UAAU,SAAS1zB,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,OAAOqB,EAAEowB,UAAU1zB,EAAEE,EAAEK,EAAEuB,EAAEpB,KAAKyT,iBAAiBkuB,aAAa3hC,KAAKQ,eAAeK,WAAWC,gBAAgBd,KAAKQ,eAAeK,WAAWE,iBAAiBQ,IAAIjC,EAAEQ,UAAU49B,iBAAiB,SAASp+B,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEvB,KAAKgzB,UAAU1zB,EAAEE,EAAEK,EAAEuB,GAAG,OAAOwB,EAAE86B,iBAAiBn8B,IAAIH,EAAE,CAACG,EAAE,EAAEC,EAAEy6B,gBAAgB16B,EAAE,EAAEC,EAAEk6B,mBAAmBp8B,GAAxb,GAA8bE,EAAE+8B,aAAa96B,GAAGsvC,KAAK,SAASzxC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEw8B,mBAAc,EAAO,IAAIv6B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAM2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAE,SAAS3C,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,GAAG,IAAIf,EAAEvC,EAAEwC,KAAK9B,OAAOA,KAAK,GAAG6B,EAAE2N,UAAUhQ,EAAEqC,EAAEmzB,UAAUn1B,EAAEgC,EAAE4R,iBAAiBjS,EAAEK,EAAEmvC,WAAU,EAAGnvC,EAAEovC,mBAAkB,EAAGpvC,EAAEqvC,yBAAwB,EAAGrvC,EAAEsvC,wBAAuB,EAAGtvC,EAAEuvC,aAAa,EAAEvvC,EAAEwvC,cAAc,EAAExvC,EAAEyvC,gBAAgB,CAACvsC,WAAM,EAAOG,SAAI,EAAOqF,kBAAiB,GAAI1I,EAAE0vC,oBAAoB,IAAIvvC,EAAEyO,aAAa5O,EAAEg1B,UAAU,IAAI70B,EAAEyO,aAAa5O,EAAE2vC,kBAAkB,IAAIxvC,EAAEyO,aAAa5O,EAAEugB,SAAS,CAACliB,QAAQ,WAAW,OAAO2B,EAAE2N,UAAUtP,aAAa2B,EAAE4vC,iBAAiB,IAAIhwC,EAAEolB,iBAAgB,SAAUvnB,EAAEE,GAAG,OAAOqC,EAAEilB,YAAYxnB,EAAEE,MAAMqC,EAAEugB,SAASvgB,EAAE4vC,kBAAkB5vC,EAAEkmB,kBAAkB,IAAIljB,EAAEmjB,iBAAiBnmB,EAAEkmB,kBAAkBE,aAAY,WAAY,OAAOpmB,EAAE4Q,8BAA8B5Q,EAAEugB,SAASvgB,EAAEkmB,mBAAmBlmB,EAAEugB,SAASxf,EAAEoG,UAAS,SAAU1J,GAAG,OAAOuC,EAAE6vC,mBAAmB7vC,EAAEugB,SAAS7gB,EAAEq6B,gBAAe,WAAY,OAAO/5B,EAAE2N,UAAUyD,uBAAuBpR,EAAEugB,SAASvgB,EAAE4R,iBAAiBk+B,kBAAiB,WAAY,OAAO9vC,EAAEkQ,wBAAwBlQ,EAAE2N,UAAUutB,iBAAgB,SAAUz9B,GAAG,OAAOuC,EAAE69B,YAAYpgC,EAAEyF,MAAMzF,EAAE4F,KAAI,MAAOrD,EAAEugB,SAAS9d,EAAE4jB,yBAAyBlnB,OAAO,UAAS,WAAY,OAAOa,EAAE4Q,+BAA+B,yBAAyBzR,OAAO,CAAC,IAAIwD,EAAE,IAAIotC,sBAAqB,SAAUtyC,GAAG,OAAOuC,EAAEgwC,sBAAsBvyC,EAAEA,EAAEsF,OAAO,MAAM,CAACktC,UAAU,IAAIttC,EAAEutC,QAAQ3wC,GAAGS,EAAEugB,SAAS,CAACliB,QAAQ,WAAW,OAAOsE,EAAEwtC,gBAAgB,OAAOnwC,EAAE,OAAON,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,qBAAqB,CAACqC,IAAI,WAAW,OAAOnC,KAAKuxC,oBAAoBp/B,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,yBAAyB,CAACqC,IAAI,WAAW,OAAOnC,KAAK62B,UAAU1kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,mBAAmB,CAACqC,IAAI,WAAW,OAAOnC,KAAKwxC,kBAAkBr/B,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,aAAa,CAACqC,IAAI,WAAW,OAAOnC,KAAKwP,UAAU3O,YAAYqB,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAU+xC,sBAAsB,SAASvyC,GAAGU,KAAKgxC,eAAU,IAAS1xC,EAAE2yC,eAAe,IAAI3yC,EAAE4yC,mBAAmB5yC,EAAE2yC,eAAejyC,KAAKgxC,WAAWhxC,KAAKyT,iBAAiBkuB,cAAc3hC,KAAKyT,iBAAiBklB,WAAW34B,KAAKgxC,WAAWhxC,KAAKixC,oBAAoBjxC,KAAK0/B,YAAY,EAAE1/B,KAAKg1B,UAAU,GAAGh1B,KAAKixC,mBAAkB,IAAKzxC,EAAEM,UAAU4/B,YAAY,SAASpgC,EAAEE,EAAEK,QAAG,IAASA,IAAIA,GAAE,GAAIG,KAAKgxC,UAAUhxC,KAAKixC,mBAAkB,GAAIpxC,IAAIG,KAAKkxC,yBAAwB,GAAIlxC,KAAKyxC,iBAAiBnoB,QAAQhqB,EAAEE,EAAEQ,KAAKg1B,aAAax1B,EAAEM,UAAUgnB,YAAY,SAASxnB,EAAEE,GAAGQ,KAAKwP,UAAUgE,WAAWlU,EAAEE,GAAGQ,KAAKmxC,yBAAyBnxC,KAAKwP,UAAUqD,mBAAmB7S,KAAKsxC,gBAAgBvsC,MAAM/E,KAAKsxC,gBAAgBpsC,IAAIlF,KAAKsxC,gBAAgB/mC,kBAAkBvK,KAAKmxC,wBAAuB,GAAInxC,KAAKkxC,yBAAyBlxC,KAAK62B,UAAU9jB,KAAK,CAAChO,MAAMzF,EAAE4F,IAAI1F,IAAIQ,KAAKkxC,yBAAwB,GAAI1xC,EAAEM,UAAUY,OAAO,SAASpB,EAAEE,GAAGQ,KAAKg1B,UAAUx1B,EAAEQ,KAAKmyC,uBAAuB3yC,EAAEM,UAAUsyC,cAAc,WAAWpyC,KAAKwP,UAAUyD,mBAAmBjT,KAAK0/B,YAAY,EAAE1/B,KAAKg1B,UAAU,GAAGh1B,KAAKmyC,uBAAuB3yC,EAAEM,UAAUqyC,oBAAoB,WAAWnyC,KAAKwP,UAAU3O,WAAWmQ,cAAchR,KAAKoxC,cAAcpxC,KAAKwP,UAAU3O,WAAWoQ,eAAejR,KAAKqxC,eAAerxC,KAAKuxC,oBAAoBx+B,KAAK/S,KAAKwP,UAAU3O,aAAarB,EAAEM,UAAUI,QAAQ,WAAWZ,EAAEQ,UAAUI,QAAQ4B,KAAK9B,OAAOR,EAAEM,UAAU4P,YAAY,SAASpQ,GAAG,IAAIE,EAAEQ,KAAKA,KAAKwP,UAAUtP,UAAUF,KAAKwP,UAAUlQ,EAAEU,KAAKwP,UAAUutB,iBAAgB,SAAUz9B,GAAG,OAAOE,EAAEkgC,YAAYpgC,EAAEyF,MAAMzF,EAAE4F,KAAI,MAAOlF,KAAKmxC,wBAAuB,EAAGnxC,KAAK0xC,gBAAgBlyC,EAAEM,UAAU4xC,aAAa,WAAW1xC,KAAKgxC,UAAUhxC,KAAKixC,mBAAkB,EAAGjxC,KAAK0/B,YAAY,EAAE1/B,KAAKg1B,UAAU,IAAIx1B,EAAEM,UAAUwM,UAAU,SAAShN,GAAGU,KAAKwP,UAAUlD,UAAUhN,GAAGU,KAAK0xC,gBAAgBlyC,EAAEM,UAAU2S,yBAAyB,WAAWzS,KAAKyT,iBAAiBklB,UAAU34B,KAAKwP,UAAUiD,2BAA2BzS,KAAK0/B,YAAY,EAAE1/B,KAAKg1B,UAAU,IAAIx1B,EAAEM,UAAUkJ,SAAS,SAAS1J,EAAEE,GAAGQ,KAAKwP,UAAUxG,SAAS1J,EAAEE,GAAGQ,KAAK0xC,gBAAgBlyC,EAAEM,UAAUiS,kBAAkB,WAAW/R,KAAKwP,UAAUuC,qBAAqBvS,EAAEM,UAAU6S,OAAO,WAAW3S,KAAKwP,UAAUmD,UAAUnT,EAAEM,UAAU8S,QAAQ,WAAW5S,KAAKwP,UAAUoD,WAAWpT,EAAEM,UAAU+S,mBAAmB,SAASvT,EAAEE,EAAEK,GAAGG,KAAKsxC,gBAAgBvsC,MAAMzF,EAAEU,KAAKsxC,gBAAgBpsC,IAAI1F,EAAEQ,KAAKsxC,gBAAgB/mC,iBAAiB1K,EAAEG,KAAKwP,UAAUqD,mBAAmBvT,EAAEE,EAAEK,IAAIL,EAAEM,UAAUkT,aAAa,WAAWhT,KAAKwP,UAAUwD,gBAAgBxT,EAAEM,UAAUW,MAAM,WAAWT,KAAKwP,UAAU/O,SAASe,EAAE,CAACoB,EAAE,EAAE4B,EAAEswB,iBAAiBlyB,EAAE,EAAEoD,EAAE01B,kBAAkB94B,EAAE,EAAE4B,EAAE4rB,iBAAiB5wB,GAA/8I,CAAm9IqC,EAAEqS,YAAY1U,EAAEw8B,cAAc/5B,GAAGowC,KAAK,SAAS/yC,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEk9B,sBAAiB,EAAO,IAAIj7B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,KAAKgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAM2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAEpC,EAAE,MAAM8C,EAAE9C,EAAE,KAAKiF,EAAEjF,EAAE,MAAM6L,EAAEmN,OAAOC,aAAa,KAAK7T,EAAE,IAAInC,OAAO4I,EAAE,KAAKyO,EAAE,SAAS7a,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEoB,EAAEnB,EAAE6C,GAAG,IAAIE,EAAElF,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOwE,EAAE8pB,SAAS9uB,EAAEgF,EAAE6uB,eAAexzB,EAAE2E,EAAEgpC,WAAWpsC,EAAEoD,EAAEspB,eAAevsB,EAAEiD,EAAEuZ,aAAavc,EAAEgD,EAAEwsB,cAAcpuB,EAAE4B,EAAE+uB,gBAAgB9xB,EAAE+C,EAAEhE,eAAe8D,EAAEE,EAAE8tC,kBAAkB,EAAE9tC,EAAE+tC,UAAS,EAAG/tC,EAAE8L,UAAU,IAAIzO,EAAE0O,SAAS/L,EAAEguC,oBAAoB,EAAEhuC,EAAEiuC,kBAAiB,EAAGjuC,EAAEkuC,wBAAmB,EAAOluC,EAAEmuC,sBAAiB,EAAOnuC,EAAEouC,uBAAuBpuC,EAAE4d,SAAS,IAAIvd,EAAE4L,cAAcjM,EAAEquC,iBAAiBruC,EAAE4d,SAAS,IAAIvd,EAAE4L,cAAcjM,EAAEsyB,mBAAmBtyB,EAAE4d,SAAS,IAAIvd,EAAE4L,cAAcjM,EAAEsuC,sBAAsBtuC,EAAE4d,SAAS,IAAIvd,EAAE4L,cAAcjM,EAAEqvB,mBAAmB,SAASv0B,GAAG,OAAOkF,EAAEysB,aAAa3xB,IAAIkF,EAAEuuC,iBAAiB,SAASzzC,GAAG,OAAOkF,EAAEwuC,WAAW1zC,IAAIkF,EAAEuZ,aAAak1B,aAAY,WAAYzuC,EAAE6J,cAAc7J,EAAEsK,oBAAoBtK,EAAE0uC,cAAc1uC,EAAEspB,eAAexoB,OAAOsO,MAAMg8B,QAAO,SAAUtwC,GAAG,OAAOkF,EAAE2uC,QAAQ7zC,MAAMkF,EAAE4d,SAAS5d,EAAEspB,eAAe0K,QAAQwO,kBAAiB,SAAU1nC,GAAG,OAAOkF,EAAE4uC,kBAAkB9zC,OAAOkF,EAAEmE,SAASnE,EAAE6L,OAAO,IAAIrO,EAAEwtC,eAAehrC,EAAEspB,gBAAgBtpB,EAAE6uC,qBAAqB,EAAE7uC,EAAE,OAAOjD,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,wBAAwB,CAACqC,IAAI,WAAW,OAAOnC,KAAK4yC,uBAAuBzgC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,kBAAkB,CAACqC,IAAI,WAAW,OAAOnC,KAAK6yC,iBAAiB1gC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,oBAAoB,CAACqC,IAAI,WAAW,OAAOnC,KAAK82B,mBAAmB3kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,uBAAuB,CAACqC,IAAI,WAAW,OAAOnC,KAAK8yC,sBAAsB3gC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUI,QAAQ,WAAWF,KAAKszC,6BAA6B9zC,EAAEM,UAAUyS,MAAM,WAAWvS,KAAK8O,kBAAkBtP,EAAEM,UAAUu9B,QAAQ,WAAWr9B,KAAK8O,iBAAiB9O,KAAKuyC,UAAS,GAAI/yC,EAAEM,UAAU6I,OAAO,WAAW3I,KAAKuyC,UAAS,GAAI9yC,OAAOC,eAAeF,EAAEM,UAAU,iBAAiB,CAACqC,IAAI,WAAW,OAAOnC,KAAKqQ,OAAOkjC,qBAAqBrxC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,eAAe,CAACqC,IAAI,WAAW,OAAOnC,KAAKqQ,OAAOmjC,mBAAmBtxC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,eAAe,CAACqC,IAAI,WAAW,IAAI7C,EAAEU,KAAKqQ,OAAOkjC,oBAAoB/zC,EAAEQ,KAAKqQ,OAAOmjC,kBAAkB,SAASl0C,IAAIE,GAAGF,EAAE,KAAKE,EAAE,IAAIF,EAAE,KAAKE,EAAE,KAAK0C,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,gBAAgB,CAACqC,IAAI,WAAW,IAAI7C,EAAEU,KAAKqQ,OAAOkjC,oBAAoB/zC,EAAEQ,KAAKqQ,OAAOmjC,kBAAkB,IAAIl0C,IAAIE,EAAE,MAAM,GAAG,IAAIK,EAAEG,KAAK8tB,eAAexoB,OAAOlE,EAAE,GAAG,GAAG,IAAIpB,KAAKqzC,qBAAqB,CAAC,GAAG/zC,EAAE,KAAKE,EAAE,GAAG,MAAM,GAAG,IAAI,IAAI+B,EAAEjC,EAAE,GAAGiC,GAAG/B,EAAE,GAAG+B,IAAI,CAAC,IAAIC,EAAE3B,EAAE0pB,4BAA4BhoB,GAAE,EAAGjC,EAAE,GAAGE,EAAE,IAAI4B,EAAE+D,KAAK3D,QAAQ,CAAC,IAAIoB,EAAEtD,EAAE,KAAKE,EAAE,GAAGA,EAAE,QAAG,EAAO,IAAI4B,EAAE+D,KAAKtF,EAAE0pB,4BAA4BjqB,EAAE,IAAG,EAAGA,EAAE,GAAGsD,IAAIrB,EAAEjC,EAAE,GAAG,EAAEiC,GAAG/B,EAAE,GAAG,EAAE+B,IAAI,CAAC,IAAIS,EAAEnC,EAAE+T,MAAMzR,IAAIZ,GAAGC,EAAE3B,EAAE0pB,4BAA4BhoB,GAAE,GAAIS,GAAGA,EAAEyD,UAAUrE,EAAEA,EAAEwD,OAAO,IAAIpD,EAAEJ,EAAE+D,KAAK3D,GAAGlC,EAAE,KAAKE,EAAE,KAAKwC,EAAEnC,EAAE+T,MAAMzR,IAAI3C,EAAE,IAAIgC,EAAE3B,EAAE0pB,4BAA4B/pB,EAAE,IAAG,EAAG,EAAEA,EAAE,IAAIwC,GAAGA,EAAEyD,UAAUrE,EAAEA,EAAEwD,OAAO,IAAIpD,EAAEJ,EAAE+D,KAAK3D,IAAI,OAAOJ,EAAE8rB,KAAI,SAAU5tB,GAAG,OAAOA,EAAEqqB,QAAQ1kB,EAAE,QAAQ0jC,KAAKlnC,EAAE4/B,UAAU,OAAO,OAAOn/B,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUgP,eAAe,WAAW9O,KAAKqQ,OAAOvB,iBAAiB9O,KAAKszC,4BAA4BtzC,KAAKspB,UAAUtpB,KAAK82B,mBAAmB/jB,QAAQvT,EAAEM,UAAUwpB,QAAQ,SAAShqB,GAAG,IAAIE,EAAEQ,KAAKA,KAAKgjC,yBAAyBhjC,KAAKgjC,uBAAuBhiC,OAAOoe,uBAAsB,WAAY,OAAO5f,EAAE4jC,eAAe3hC,EAAE44B,SAAS/6B,GAAGU,KAAK2qB,cAAc/lB,QAAQ5E,KAAK4yC,uBAAuB7/B,KAAK/S,KAAK2qB,gBAAgBnrB,EAAEM,UAAUsjC,SAAS,WAAWpjC,KAAKgjC,4BAAuB,EAAOhjC,KAAK6yC,iBAAiB9/B,KAAK,CAAChO,MAAM/E,KAAKqQ,OAAOkjC,oBAAoBruC,IAAIlF,KAAKqQ,OAAOmjC,kBAAkBjpC,iBAAiB,IAAIvK,KAAKqzC,wBAAwB7zC,EAAEM,UAAU2zC,oBAAoB,SAASn0C,GAAG,IAAIE,EAAEQ,KAAK0zC,sBAAsBp0C,GAAGO,EAAEG,KAAKqQ,OAAOkjC,oBAAoBnyC,EAAEpB,KAAKqQ,OAAOmjC,kBAAkB,SAAS3zC,GAAGuB,GAAG5B,IAAIQ,KAAK2zC,sBAAsBn0C,EAAEK,EAAEuB,IAAI5B,EAAEM,UAAU6zC,sBAAsB,SAASr0C,EAAEE,EAAEK,GAAG,OAAOP,EAAE,GAAGE,EAAE,IAAIF,EAAE,GAAGO,EAAE,IAAIL,EAAE,KAAKK,EAAE,IAAIP,EAAE,KAAKE,EAAE,IAAIF,EAAE,IAAIE,EAAE,IAAIF,EAAE,GAAGO,EAAE,IAAIL,EAAE,GAAGK,EAAE,IAAIP,EAAE,KAAKO,EAAE,IAAIP,EAAE,GAAGO,EAAE,IAAIL,EAAE,GAAGK,EAAE,IAAIP,EAAE,KAAKE,EAAE,IAAIF,EAAE,IAAIE,EAAE,IAAIA,EAAEM,UAAU8zC,oBAAoB,SAASt0C,EAAEE,GAAG,IAAIK,EAAEuB,EAAEG,EAAE,QAAQH,EAAE,QAAQvB,EAAEG,KAAKwtC,WAAWqG,mBAAc,IAASh0C,OAAE,EAAOA,EAAE6xB,YAAO,IAAStwB,OAAE,EAAOA,EAAEgE,MAAM,GAAG7D,EAAE,OAAOvB,KAAKqQ,OAAOgwB,eAAe,CAAC9+B,EAAEwD,MAAMC,EAAE,EAAEzD,EAAEwD,MAAME,EAAE,GAAGjF,KAAKqQ,OAAOq/B,qBAAqB5qC,EAAEgvC,eAAevyC,EAAEvB,KAAK8tB,eAAevtB,MAAMP,KAAKqQ,OAAOmwB,kBAAa,GAAO,EAAG,IAAIh/B,EAAExB,KAAK0zC,sBAAsBp0C,GAAG,QAAQkC,IAAIxB,KAAK+zC,cAAcvyC,EAAEhC,GAAGQ,KAAKqQ,OAAOmwB,kBAAa,GAAO,IAAKhhC,EAAEM,UAAU4gC,UAAU,WAAW1gC,KAAKqQ,OAAOo/B,mBAAkB,EAAGzvC,KAAKspB,UAAUtpB,KAAK82B,mBAAmB/jB,QAAQvT,EAAEM,UAAU6gC,YAAY,SAASrhC,EAAEE,GAAGQ,KAAKqQ,OAAOvB,iBAAiBxP,EAAE+B,KAAKC,IAAIhC,EAAE,GAAGE,EAAE6B,KAAK2N,IAAIxP,EAAEQ,KAAK8tB,eAAexoB,OAAOsO,MAAMhP,OAAO,GAAG5E,KAAKqQ,OAAOgwB,eAAe,CAAC,EAAE/gC,GAAGU,KAAKqQ,OAAOmwB,aAAa,CAACxgC,KAAK8tB,eAAevtB,KAAKf,GAAGQ,KAAKspB,UAAUtpB,KAAK82B,mBAAmB/jB,QAAQvT,EAAEM,UAAUqzC,QAAQ,SAAS7zC,GAAGU,KAAKqQ,OAAOu/B,OAAOtwC,IAAIU,KAAKspB,WAAW9pB,EAAEM,UAAU4zC,sBAAsB,SAASp0C,GAAG,IAAIE,EAAEQ,KAAKgxB,cAAcgC,UAAU1zB,EAAEU,KAAKqzB,eAAerzB,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAextB,MAAK,GAAI,GAAGd,EAAE,OAAOA,EAAE,KAAKA,EAAE,KAAKA,EAAE,IAAIQ,KAAK8tB,eAAexoB,OAAOqO,MAAMnU,GAAGA,EAAEM,UAAUk0C,2BAA2B,SAAS10C,GAAG,IAAIE,EAAEwG,EAAE++B,2BAA2BzlC,EAAEU,KAAKqzB,gBAAgB,GAAGxzB,EAAEG,KAAKQ,eAAeK,WAAWoQ,aAAa,OAAOzR,GAAG,GAAGA,GAAGK,EAAE,GAAGL,EAAEK,IAAIL,GAAGK,GAAGL,EAAE6B,KAAK2N,IAAI3N,KAAKC,IAAI9B,GAAG,IAAI,KAAKA,GAAG,IAAI6B,KAAKi+B,IAAI9/B,GAAG6B,KAAK4S,MAAM,GAAGzU,KAAKA,EAAEM,UAAUo/B,qBAAqB,SAAS5/B,GAAG,OAAOmC,EAAE2nB,MAAM9pB,EAAEg/B,QAAQt+B,KAAKuzB,gBAAgBkB,QAAQwf,8BAA8B30C,EAAEi/B,UAAU/+B,EAAEM,UAAUo9B,YAAY,SAAS59B,GAAG,GAAGU,KAAKwyC,oBAAoBlzC,EAAE40C,WAAW,IAAI50C,EAAE66B,SAASn6B,KAAKqO,eAAe,IAAI/O,EAAE66B,OAAO,CAAC,IAAIn6B,KAAKuyC,SAAS,CAAC,IAAIvyC,KAAKk/B,qBAAqB5/B,GAAG,OAAOA,EAAEsrB,kBAAkBtrB,EAAEupB,iBAAiB7oB,KAAKsyC,kBAAkB,EAAEtyC,KAAKuyC,UAAUjzC,EAAEi/B,SAASv+B,KAAKm0C,oBAAoB70C,GAAG,IAAIA,EAAE80C,OAAOp0C,KAAKq0C,eAAe/0C,GAAG,IAAIA,EAAE80C,OAAOp0C,KAAKs0C,eAAeh1C,GAAG,IAAIA,EAAE80C,QAAQp0C,KAAKu0C,eAAej1C,GAAGU,KAAKw0C,yBAAyBx0C,KAAKspB,SAAQ,KAAM9pB,EAAEM,UAAU00C,uBAAuB,WAAW,IAAIl1C,EAAEU,KAAKA,KAAKqzB,eAAe2H,gBAAgBh7B,KAAKqzB,eAAe2H,cAActU,iBAAiB,YAAY1mB,KAAK6zB,oBAAoB7zB,KAAKqzB,eAAe2H,cAActU,iBAAiB,UAAU1mB,KAAK+yC,mBAAmB/yC,KAAKy0C,yBAAyBzzC,OAAOse,aAAY,WAAY,OAAOhgB,EAAEo1C,gBAAgB,KAAKl1C,EAAEM,UAAUwzC,0BAA0B,WAAWtzC,KAAKqzB,eAAe2H,gBAAgBh7B,KAAKqzB,eAAe2H,cAAcvS,oBAAoB,YAAYzoB,KAAK6zB,oBAAoB7zB,KAAKqzB,eAAe2H,cAAcvS,oBAAoB,UAAUzoB,KAAK+yC,mBAAmBl0B,cAAc7e,KAAKy0C,0BAA0Bz0C,KAAKy0C,8BAAyB,GAAQj1C,EAAEM,UAAUq0C,oBAAoB,SAAS70C,GAAGU,KAAKqQ,OAAOgwB,iBAAiBrgC,KAAKqQ,OAAOmwB,aAAaxgC,KAAK0zC,sBAAsBp0C,KAAKE,EAAEM,UAAUu0C,eAAe,SAAS/0C,GAAG,GAAGU,KAAKqQ,OAAOq/B,qBAAqB,EAAE1vC,KAAKqQ,OAAOo/B,mBAAkB,EAAGzvC,KAAKqzC,qBAAqBrzC,KAAK2/B,mBAAmBrgC,GAAG,EAAE,EAAEU,KAAKqQ,OAAOgwB,eAAergC,KAAK0zC,sBAAsBp0C,GAAGU,KAAKqQ,OAAOgwB,eAAe,CAACrgC,KAAKqQ,OAAOmwB,kBAAa,EAAO,IAAIhhC,EAAEQ,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAInC,KAAKqQ,OAAOgwB,eAAe,IAAI7gC,GAAGA,EAAEoF,SAAS5E,KAAKqQ,OAAOgwB,eAAe,IAAI,IAAI7gC,EAAEm1C,SAAS30C,KAAKqQ,OAAOgwB,eAAe,KAAKrgC,KAAKqQ,OAAOgwB,eAAe,OAAO7gC,EAAEM,UAAUw0C,eAAe,SAASh1C,GAAGU,KAAK4zC,oBAAoBt0C,GAAE,KAAMU,KAAKqzC,qBAAqB,IAAI7zC,EAAEM,UAAUy0C,eAAe,SAASj1C,GAAG,IAAIE,EAAEQ,KAAK0zC,sBAAsBp0C,GAAGE,IAAIQ,KAAKqzC,qBAAqB,EAAErzC,KAAK40C,cAAcp1C,EAAE,MAAMA,EAAEM,UAAU6/B,mBAAmB,SAASrgC,GAAG,OAAOA,EAAEg/B,UAAU78B,EAAE2nB,OAAOppB,KAAKuzB,gBAAgBkB,QAAQwf,gCAAgCz0C,EAAEM,UAAUmxB,aAAa,SAAS3xB,GAAG,GAAGA,EAAEwpB,2BAA2B9oB,KAAKqQ,OAAOgwB,eAAe,CAAC,IAAI7gC,EAAEQ,KAAKqQ,OAAOmwB,aAAa,CAACxgC,KAAKqQ,OAAOmwB,aAAa,GAAGxgC,KAAKqQ,OAAOmwB,aAAa,IAAI,KAAK,GAAGxgC,KAAKqQ,OAAOmwB,aAAaxgC,KAAK0zC,sBAAsBp0C,GAAGU,KAAKqQ,OAAOmwB,aAAa,CAAC,IAAIxgC,KAAKqzC,qBAAqBrzC,KAAKqQ,OAAOmwB,aAAa,GAAGxgC,KAAKqQ,OAAOgwB,eAAe,GAAGrgC,KAAKqQ,OAAOmwB,aAAa,GAAG,EAAExgC,KAAKqQ,OAAOmwB,aAAa,GAAGxgC,KAAK8tB,eAAevtB,KAAK,IAAIP,KAAKqzC,sBAAsBrzC,KAAK60C,gBAAgB70C,KAAKqQ,OAAOmwB,cAAcxgC,KAAKsyC,kBAAkBtyC,KAAKg0C,2BAA2B10C,GAAG,IAAIU,KAAKqzC,uBAAuBrzC,KAAKsyC,kBAAkB,EAAEtyC,KAAKqQ,OAAOmwB,aAAa,GAAGxgC,KAAK8tB,eAAevtB,KAAKP,KAAKsyC,kBAAkB,IAAItyC,KAAKqQ,OAAOmwB,aAAa,GAAG,IAAI,IAAI3gC,EAAEG,KAAK8tB,eAAexoB,OAAO,GAAGtF,KAAKqQ,OAAOmwB,aAAa,GAAG3gC,EAAE+T,MAAMhP,OAAO,CAAC,IAAIxD,EAAEvB,EAAE+T,MAAMzR,IAAInC,KAAKqQ,OAAOmwB,aAAa,IAAIp/B,GAAG,IAAIA,EAAEuzC,SAAS30C,KAAKqQ,OAAOmwB,aAAa,KAAKxgC,KAAKqQ,OAAOmwB,aAAa,KAAKhhC,GAAGA,EAAE,KAAKQ,KAAKqQ,OAAOmwB,aAAa,IAAIhhC,EAAE,KAAKQ,KAAKqQ,OAAOmwB,aAAa,IAAIxgC,KAAKspB,SAAQ,QAAStpB,KAAKspB,SAAQ,KAAM9pB,EAAEM,UAAU40C,YAAY,WAAW,GAAG10C,KAAKqQ,OAAOmwB,cAAcxgC,KAAKqQ,OAAOgwB,gBAAgBrgC,KAAKsyC,kBAAkB,CAACtyC,KAAK8yC,sBAAsB//B,KAAK,CAAC6pB,OAAO58B,KAAKsyC,kBAAkBzV,qBAAoB,IAAK,IAAIv9B,EAAEU,KAAK8tB,eAAexoB,OAAOtF,KAAKsyC,kBAAkB,GAAG,IAAItyC,KAAKqzC,uBAAuBrzC,KAAKqQ,OAAOmwB,aAAa,GAAGxgC,KAAK8tB,eAAevtB,MAAMP,KAAKqQ,OAAOmwB,aAAa,GAAGn/B,KAAK2N,IAAI1P,EAAEqU,MAAM3T,KAAK8tB,eAAextB,KAAKhB,EAAEsU,MAAMhP,OAAO,KAAK,IAAI5E,KAAKqzC,uBAAuBrzC,KAAKqQ,OAAOmwB,aAAa,GAAG,GAAGxgC,KAAKqQ,OAAOmwB,aAAa,GAAGlhC,EAAEqU,OAAO3T,KAAKspB,YAAY9pB,EAAEM,UAAUkzC,WAAW,SAAS1zC,GAAG,IAAIE,EAAEF,EAAE40C,UAAUl0C,KAAKwyC,oBAAoB,GAAGxyC,KAAKszC,4BAA4BtzC,KAAK2qB,cAAc/lB,QAAQ,GAAGpF,EAAE,KAAKF,EAAEg/B,QAAQt+B,KAAKuzB,gBAAgBvf,UAAU,wBAAwB,GAAGhU,KAAK8tB,eAAexoB,OAAOw0B,QAAQ95B,KAAK8tB,eAAexoB,OAAOqO,MAAM,CAAC,IAAI9T,EAAEG,KAAKgxB,cAAcgC,UAAU1zB,EAAEU,KAAKsuB,SAAStuB,KAAK8tB,eAAevtB,KAAKP,KAAK8tB,eAAextB,MAAK,GAAI,GAAGT,QAAG,IAASA,EAAE,SAAI,IAASA,EAAE,GAAG,CAAC,IAAIuB,EAAEa,EAAEgjC,mBAAmBplC,EAAE,GAAG,EAAEA,EAAE,GAAG,EAAEG,KAAK8tB,eAAe9tB,KAAK+d,aAAa6L,gBAAgByV,uBAAuBr/B,KAAK+d,aAAa+L,iBAAiB1oB,GAAE,UAAWpB,KAAK80C,gCAAgCt1C,EAAEM,UAAUg1C,6BAA6B,WAAW,IAAIx1C,EAAEU,KAAKqQ,OAAOkjC,oBAAoB/zC,EAAEQ,KAAKqQ,OAAOmjC,kBAAkB3zC,KAAKP,IAAIE,GAAGF,EAAE,KAAKE,EAAE,IAAIF,EAAE,KAAKE,EAAE,IAAIK,EAAEP,GAAGE,IAAIQ,KAAK0yC,oBAAoB1yC,KAAK2yC,kBAAkBrzC,EAAE,KAAKU,KAAK0yC,mBAAmB,IAAIpzC,EAAE,KAAKU,KAAK0yC,mBAAmB,IAAIlzC,EAAE,KAAKQ,KAAK2yC,iBAAiB,IAAInzC,EAAE,KAAKQ,KAAK2yC,iBAAiB,IAAI3yC,KAAK+0C,uBAAuBz1C,EAAEE,EAAEK,IAAIG,KAAKyyC,kBAAkBzyC,KAAK+0C,uBAAuBz1C,EAAEE,EAAEK,IAAIL,EAAEM,UAAUi1C,uBAAuB,SAASz1C,EAAEE,EAAEK,GAAGG,KAAK0yC,mBAAmBpzC,EAAEU,KAAK2yC,iBAAiBnzC,EAAEQ,KAAKyyC,iBAAiB5yC,EAAEG,KAAK82B,mBAAmB/jB,QAAQvT,EAAEM,UAAUszC,kBAAkB,SAAS9zC,GAAG,IAAIE,EAAEQ,KAAKA,KAAK8O,iBAAiB9O,KAAKkzC,cAAchzC,UAAUF,KAAKkzC,cAAc5zC,EAAE01C,aAAaphC,MAAMg8B,QAAO,SAAUtwC,GAAG,OAAOE,EAAE2zC,QAAQ7zC,OAAOE,EAAEM,UAAUm1C,oCAAoC,SAAS31C,EAAEE,GAAG,IAAI,IAAIK,EAAEL,EAAE,GAAG4B,EAAE,EAAE5B,EAAE,IAAI4B,EAAEA,IAAI,CAAC,IAAIG,EAAEjC,EAAEuU,SAASzS,EAAEpB,KAAKsQ,WAAWtE,WAAWpH,OAAO,IAAI5E,KAAKsQ,UAAUgO,WAAWze,IAAI0B,EAAE,GAAG/B,EAAE,KAAK4B,IAAIvB,GAAG0B,EAAE,GAAG,OAAO1B,GAAGL,EAAEM,UAAUmgC,aAAa,SAAS3gC,EAAEE,EAAEK,GAAGG,KAAKqQ,OAAOvB,iBAAiB9O,KAAKszC,4BAA4BtzC,KAAKqQ,OAAOgwB,eAAe,CAAC/gC,EAAEE,GAAGQ,KAAKqQ,OAAOq/B,qBAAqB7vC,EAAEG,KAAKspB,WAAW9pB,EAAEM,UAAUgrB,iBAAiB,SAASxrB,GAAGU,KAAKyzC,oBAAoBn0C,KAAKU,KAAK4zC,oBAAoBt0C,GAAE,IAAKU,KAAKspB,SAAQ,GAAItpB,KAAK80C,iCAAiCt1C,EAAEM,UAAUo1C,WAAW,SAAS51C,EAAEE,EAAEK,EAAEuB,GAAG,QAAG,IAASvB,IAAIA,GAAE,QAAI,IAASuB,IAAIA,GAAE,KAAM9B,EAAE,IAAIU,KAAK8tB,eAAevtB,MAAM,CAAC,IAAIgB,EAAEvB,KAAK8tB,eAAexoB,OAAO9D,EAAED,EAAEqS,MAAMzR,IAAI7C,EAAE,IAAI,GAAGkC,EAAE,CAAC,IAAIoB,EAAErB,EAAEgoB,4BAA4BjqB,EAAE,IAAG,GAAImC,EAAEzB,KAAKi1C,oCAAoCzzC,EAAElC,GAAG0C,EAAEP,EAAEI,EAAEvC,EAAE,GAAGmC,EAAEoD,EAAE,EAAEP,EAAE,EAAEE,EAAE,EAAEwB,EAAE,EAAE,GAAG,MAAMpD,EAAEuyC,OAAO1zC,GAAG,CAAC,KAAKA,EAAE,GAAG,MAAMmB,EAAEuyC,OAAO1zC,EAAE,IAAIA,IAAI,KAAKO,EAAEY,EAAEgC,QAAQ,MAAMhC,EAAEuyC,OAAOnzC,EAAE,IAAIA,QAAQ,CAAC,IAAIC,EAAE3C,EAAE,GAAGqD,EAAErD,EAAE,GAAG,IAAIkC,EAAE8c,SAASrc,KAAK4C,IAAI5C,KAAK,IAAIT,EAAE8c,SAAS3b,KAAK2B,IAAI3B,KAAK,IAAImC,EAAEtD,EAAEmvC,UAAUhuC,GAAGiC,OAAO,IAAIE,EAAE,IAAIkB,GAAGlB,EAAE,EAAE9C,GAAG8C,EAAE,GAAG7C,EAAE,GAAGR,EAAE,IAAIzB,KAAKo1C,qBAAqB5zC,EAAEqS,SAAS5R,EAAE,EAAEjC,KAAKsQ,aAAa,CAAC9O,EAAEqS,SAAS5R,EAAE,EAAEjC,KAAKsQ,WAAW,IAAI5E,EAAE1L,KAAKsQ,UAAUtE,WAAWpH,OAAO,IAAI5E,KAAKsQ,UAAUgO,YAAYzZ,IAAI5C,KAAKyJ,EAAE,IAAIlH,GAAGkH,EAAE,EAAEjK,GAAGiK,EAAE,GAAGjK,IAAIQ,IAAI,KAAKU,EAAEnB,EAAEoD,QAAQ5C,EAAE,EAAEY,EAAEgC,SAAS5E,KAAKo1C,qBAAqB5zC,EAAEqS,SAASlR,EAAE,EAAE3C,KAAKsQ,aAAa,CAAC9O,EAAEqS,SAASlR,EAAE,EAAE3C,KAAKsQ,WAAW,IAAIrL,EAAEjF,KAAKsQ,UAAUtE,WAAWpH,OAAO,IAAI5E,KAAKsQ,UAAUgO,YAAYha,IAAI3B,KAAKsC,EAAE,IAAIe,GAAGf,EAAE,EAAEjD,GAAGiD,EAAE,GAAGjD,IAAIW,KAAKX,IAAI,IAAImY,EAAE1Y,EAAEI,EAAEgD,EAAEL,EAAEwxB,EAAE30B,KAAK2N,IAAIhP,KAAK8tB,eAAevtB,KAAKyB,EAAEP,EAAEoD,EAAEP,EAAEE,EAAEwB,GAAG,GAAGxG,GAAG,KAAKoD,EAAEuH,MAAM1I,EAAEO,GAAGqzC,OAAO,CAAC,GAAGx1C,GAAG,IAAIsa,GAAG,KAAK3Y,EAAEipC,aAAa,GAAG,CAAC,IAAI1oC,EAAER,EAAEqS,MAAMzR,IAAI7C,EAAE,GAAG,GAAG,GAAGyC,GAAGP,EAAEiE,WAAW,KAAK1D,EAAE0oC,aAAazqC,KAAK8tB,eAAevtB,KAAK,GAAG,CAAC,IAAIuL,EAAE9L,KAAKk1C,WAAW,CAACl1C,KAAK8tB,eAAevtB,KAAK,EAAEjB,EAAE,GAAG,IAAG,GAAG,GAAG,GAAI,GAAGwM,EAAE,CAAC,IAAIuO,EAAEra,KAAK8tB,eAAevtB,KAAKuL,EAAE/G,MAAMoV,GAAGE,EAAE2b,GAAG3b,IAAI,GAAGjZ,GAAG+Y,EAAE6b,IAAIh2B,KAAK8tB,eAAevtB,MAAM,KAAKiB,EAAEipC,aAAazqC,KAAK8tB,eAAevtB,KAAK,GAAG,CAAC,IAAI01B,EAAE10B,EAAEqS,MAAMzR,IAAI7C,EAAE,GAAG,GAAG,GAAG22B,GAAGA,EAAExwB,WAAW,KAAKwwB,EAAEwU,aAAa,GAAG,CAAC,IAAIvU,EAAEl2B,KAAKk1C,WAAW,CAAC,EAAE51C,EAAE,GAAG,IAAG,GAAG,GAAG,GAAI42B,IAAIF,GAAGE,EAAEtxB,SAAS,MAAM,CAACG,MAAMoV,EAAEvV,OAAOoxB,OAAOx2B,EAAEM,UAAUi0C,cAAc,SAASz0C,EAAEE,GAAG,IAAIK,EAAEG,KAAKk1C,WAAW51C,EAAEE,GAAG,GAAGK,EAAE,CAAC,KAAKA,EAAEkF,MAAM,GAAGlF,EAAEkF,OAAO/E,KAAK8tB,eAAevtB,KAAKjB,EAAE,KAAKU,KAAKqQ,OAAOgwB,eAAe,CAACxgC,EAAEkF,MAAMzF,EAAE,IAAIU,KAAKqQ,OAAOq/B,qBAAqB7vC,EAAE+E,SAASpF,EAAEM,UAAU+0C,gBAAgB,SAASv1C,GAAG,IAAIE,EAAEQ,KAAKk1C,WAAW51C,GAAE,GAAI,GAAGE,EAAE,CAAC,IAAI,IAAIK,EAAEP,EAAE,GAAGE,EAAEuF,MAAM,GAAGvF,EAAEuF,OAAO/E,KAAK8tB,eAAevtB,KAAKV,IAAI,IAAIG,KAAKqQ,OAAOs/B,6BAA6B,KAAKnwC,EAAEuF,MAAMvF,EAAEoF,OAAO5E,KAAK8tB,eAAevtB,MAAMf,EAAEoF,QAAQ5E,KAAK8tB,eAAevtB,KAAKV,IAAIG,KAAKqQ,OAAOmwB,aAAa,CAACxgC,KAAKqQ,OAAOs/B,6BAA6BnwC,EAAEuF,MAAMvF,EAAEuF,MAAMvF,EAAEoF,OAAO/E,KAAKL,EAAEM,UAAUs1C,qBAAqB,SAAS91C,GAAG,OAAO,IAAIA,EAAEgf,YAAYte,KAAKuzB,gBAAgBkB,QAAQ6gB,cAAc5wC,QAAQpF,EAAE0M,aAAa,GAAGxM,EAAEM,UAAU80C,cAAc,SAASt1C,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAOiwC,uBAAuBj2C,GAAGU,KAAKqQ,OAAOgwB,eAAe,CAAC,EAAE7gC,EAAEyvB,OAAOjvB,KAAKqQ,OAAOmwB,aAAa,CAACxgC,KAAK8tB,eAAevtB,KAAKf,EAAEg2C,MAAMx1C,KAAKqQ,OAAOq/B,qBAAqB,GAAGluC,EAAE,CAACoB,EAAE,EAAE4B,EAAE4rB,gBAAgBxtB,EAAE,EAAE4B,EAAEqgC,cAAcjiC,EAAE,EAAE0B,EAAEswB,eAAehyB,EAAE,EAAE4B,EAAEswB,iBAAiBlyB,EAAE,EAAE0B,EAAE23B,iBAAiBz8B,GAAhyb,CAAoybmD,EAAEuR,YAAY1U,EAAEk9B,iBAAiBviB,GAAGs7B,KAAK,CAACn2C,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEu8B,wBAAwBv8B,EAAE88B,cAAc98B,EAAEq1B,kBAAkBr1B,EAAEy8B,eAAez8B,EAAEo1B,cAAcp1B,EAAEg8B,oBAAoBh8B,EAAEk8B,sBAAiB,EAAO,IAAIt6B,EAAEvB,EAAE,MAAML,EAAEk8B,iBAAiBt6B,EAAEs0C,gBAAgB,mBAAmBl2C,EAAEg8B,oBAAoBp6B,EAAEs0C,gBAAgB,sBAAsBl2C,EAAEo1B,cAAcxzB,EAAEs0C,gBAAgB,gBAAgBl2C,EAAEy8B,eAAe76B,EAAEs0C,gBAAgB,iBAAiBl2C,EAAEq1B,kBAAkBzzB,EAAEs0C,gBAAgB,oBAAoBl2C,EAAE88B,cAAcl7B,EAAEs0C,gBAAgB,gBAAgBl2C,EAAEu8B,wBAAwB36B,EAAEs0C,gBAAgB,2BAA2BC,IAAI,SAASr2C,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE68B,kBAAa,EAAO,IAAI76B,EAAE3B,EAAE,MAAM+C,EAAE,WAAW,SAAStD,EAAEA,GAAGU,KAAKuzB,gBAAgBj0B,EAAE,OAAOG,OAAOC,eAAeJ,EAAE,eAAe,CAAC6C,IAAI,WAAW,IAAI7C,EAAEs2C,cAAc,CAAC,IAAIp2C,EAAEwB,OAAO60C,cAAc70C,OAAO80C,mBAAmB,IAAIt2C,EAAE,OAAO2D,QAAQC,KAAK,4FAA4F,KAAK9D,EAAEs2C,cAAc,IAAIp2C,EAAE,OAAOF,EAAEs2C,eAAe1zC,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU4hC,cAAc,WAAW,IAAIliC,EAAEF,EAAEy2C,aAAa,GAAGv2C,EAAE,CAAC,IAAIK,EAAEL,EAAEw2C,qBAAqBx2C,EAAEy2C,gBAAgBj2C,KAAKk2C,qBAAqBl2C,KAAKm2C,gBAAgBn2C,KAAKuzB,gBAAgBkB,QAAQ2hB,aAAY,SAAU92C,GAAGO,EAAEyF,OAAOhG,EAAEO,EAAEw2C,QAAQ72C,EAAE82C,aAAaz2C,EAAEkF,MAAM,QAAQzF,EAAEQ,UAAUo2C,qBAAqB,SAAS52C,GAAG,IAAI,IAAIE,EAAEwB,OAAOu1C,KAAKj3C,GAAGO,EAAEL,EAAEoF,OAAOxD,EAAE,IAAIwG,WAAW/H,GAAG0B,EAAE,EAAEA,EAAE1B,EAAE0B,IAAIH,EAAEG,GAAG/B,EAAEklB,WAAWnjB,GAAG,OAAOH,EAAEkE,QAAQhG,EAAEQ,UAAUq2C,gBAAgB,SAAS72C,GAAG,OAAOA,EAAE2tB,MAAM,KAAK,IAAI3tB,EAAE8B,EAAE,CAACG,EAAE,EAAEC,EAAEszB,kBAAkBx1B,GAA73B,GAAm4BE,EAAE68B,aAAaz5B,GAAG4zC,KAAK,CAACl3C,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEi3C,kBAAa,EAAO,IAAIr1C,EAAEvB,EAAE,MAAM0B,EAAE,WAAW,SAASjC,EAAEA,GAAGU,KAAK02C,WAAWp3C,EAAEU,KAAK22C,gBAAgB,IAAIv1C,EAAEqP,aAAazQ,KAAK42C,gBAAgB,IAAIx1C,EAAEqP,aAAazQ,KAAK62C,cAAc,IAAIz1C,EAAEqP,aAAazQ,KAAK82C,OAAO,IAAI1mC,MAAMpQ,KAAK02C,YAAY12C,KAAK+2C,YAAY,EAAE/2C,KAAKg3C,QAAQ,EAAE,OAAOv3C,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAK22C,gBAAgBxkC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAK42C,gBAAgBzkC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAK62C,cAAc1kC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAK02C,YAAY/pC,IAAI,SAASrN,GAAG,GAAGU,KAAK02C,aAAap3C,EAAE,CAAC,IAAI,IAAIE,EAAE,IAAI4Q,MAAM9Q,GAAGO,EAAE,EAAEA,EAAEwB,KAAK2N,IAAI1P,EAAEU,KAAK4E,QAAQ/E,IAAIL,EAAEK,GAAGG,KAAK82C,OAAO92C,KAAKi3C,gBAAgBp3C,IAAIG,KAAK82C,OAAOt3C,EAAEQ,KAAK02C,WAAWp3C,EAAEU,KAAK+2C,YAAY,IAAI70C,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKg3C,SAASrqC,IAAI,SAASrN,GAAG,GAAGA,EAAEU,KAAKg3C,QAAQ,IAAI,IAAIx3C,EAAEQ,KAAKg3C,QAAQx3C,EAAEF,EAAEE,IAAIQ,KAAK82C,OAAOt3C,QAAG,EAAOQ,KAAKg3C,QAAQ13C,GAAG4C,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUqC,IAAI,SAAS7C,GAAG,OAAOU,KAAK82C,OAAO92C,KAAKi3C,gBAAgB33C,KAAKA,EAAEQ,UAAU6M,IAAI,SAASrN,EAAEE,GAAGQ,KAAK82C,OAAO92C,KAAKi3C,gBAAgB33C,IAAIE,GAAGF,EAAEQ,UAAUqF,KAAK,SAAS7F,GAAGU,KAAK82C,OAAO92C,KAAKi3C,gBAAgBj3C,KAAKg3C,UAAU13C,EAAEU,KAAKg3C,UAAUh3C,KAAK02C,YAAY12C,KAAK+2C,cAAc/2C,KAAK+2C,YAAY/2C,KAAK02C,WAAW12C,KAAK62C,cAAc9jC,KAAK,IAAI/S,KAAKg3C,WAAW13C,EAAEQ,UAAUo3C,QAAQ,WAAW,GAAGl3C,KAAKg3C,UAAUh3C,KAAK02C,WAAW,MAAM,IAAIxqC,MAAM,4CAA4C,OAAOlM,KAAK+2C,cAAc/2C,KAAK+2C,YAAY/2C,KAAK02C,WAAW12C,KAAK62C,cAAc9jC,KAAK,GAAG/S,KAAK82C,OAAO92C,KAAKi3C,gBAAgBj3C,KAAKg3C,QAAQ,KAAKv3C,OAAOC,eAAeJ,EAAEQ,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKg3C,UAAUh3C,KAAK02C,YAAYx0C,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUyoB,IAAI,WAAW,OAAOvoB,KAAK82C,OAAO92C,KAAKi3C,gBAAgBj3C,KAAKg3C,UAAU,KAAK13C,EAAEQ,UAAU6V,OAAO,SAASrW,EAAEE,GAAG,IAAI,IAAIK,EAAE,GAAGuB,EAAE,EAAEA,EAAEgjB,UAAUxf,OAAOxD,IAAIvB,EAAEuB,EAAE,GAAGgjB,UAAUhjB,GAAG,GAAG5B,EAAE,CAAC,IAAI,IAAI+B,EAAEjC,EAAEiC,EAAEvB,KAAKg3C,QAAQx3C,EAAE+B,IAAIvB,KAAK82C,OAAO92C,KAAKi3C,gBAAgB11C,IAAIvB,KAAK82C,OAAO92C,KAAKi3C,gBAAgB11C,EAAE/B,IAAIQ,KAAKg3C,SAASx3C,EAAEQ,KAAK22C,gBAAgB5jC,KAAK,CAACo5B,MAAM7sC,EAAEs9B,OAAOp9B,IAAI,IAAI+B,EAAEvB,KAAKg3C,QAAQ,EAAEz1C,GAAGjC,EAAEiC,IAAIvB,KAAK82C,OAAO92C,KAAKi3C,gBAAgB11C,EAAE1B,EAAE+E,SAAS5E,KAAK82C,OAAO92C,KAAKi3C,gBAAgB11C,IAAI,IAAIA,EAAE,EAAEA,EAAE1B,EAAE+E,OAAOrD,IAAIvB,KAAK82C,OAAO92C,KAAKi3C,gBAAgB33C,EAAEiC,IAAI1B,EAAE0B,GAAG,GAAG1B,EAAE+E,QAAQ5E,KAAK42C,gBAAgB7jC,KAAK,CAACo5B,MAAM7sC,EAAEs9B,OAAO/8B,EAAE+E,SAAS5E,KAAKg3C,QAAQn3C,EAAE+E,OAAO5E,KAAK02C,WAAW,CAAC,IAAIl1C,EAAExB,KAAKg3C,QAAQn3C,EAAE+E,OAAO5E,KAAK02C,WAAW12C,KAAK+2C,aAAav1C,EAAExB,KAAKg3C,QAAQh3C,KAAK02C,WAAW12C,KAAK62C,cAAc9jC,KAAKvR,QAAQxB,KAAKg3C,SAASn3C,EAAE+E,QAAQtF,EAAEQ,UAAUq3C,UAAU,SAAS73C,GAAGA,EAAEU,KAAKg3C,UAAU13C,EAAEU,KAAKg3C,SAASh3C,KAAK+2C,aAAaz3C,EAAEU,KAAKg3C,SAAS13C,EAAEU,KAAK62C,cAAc9jC,KAAKzT,IAAIA,EAAEQ,UAAUs3C,cAAc,SAAS93C,EAAEE,EAAEK,GAAG,KAAKL,GAAG,GAAG,CAAC,GAAGF,EAAE,GAAGA,GAAGU,KAAKg3C,QAAQ,MAAM,IAAI9qC,MAAM,+BAA+B,GAAG5M,EAAEO,EAAE,EAAE,MAAM,IAAIqM,MAAM,gDAAgD,GAAGrM,EAAE,EAAE,CAAC,IAAI,IAAIuB,EAAE5B,EAAE,EAAE4B,GAAG,EAAEA,IAAIpB,KAAK2M,IAAIrN,EAAE8B,EAAEvB,EAAEG,KAAKmC,IAAI7C,EAAE8B,IAAI,IAAIG,EAAEjC,EAAEE,EAAEK,EAAEG,KAAKg3C,QAAQ,GAAGz1C,EAAE,EAAE,IAAIvB,KAAKg3C,SAASz1C,EAAEvB,KAAKg3C,QAAQh3C,KAAK02C,YAAY12C,KAAKg3C,UAAUh3C,KAAK+2C,cAAc/2C,KAAK62C,cAAc9jC,KAAK,QAAQ,IAAI3R,EAAE,EAAEA,EAAE5B,EAAE4B,IAAIpB,KAAK2M,IAAIrN,EAAE8B,EAAEvB,EAAEG,KAAKmC,IAAI7C,EAAE8B,MAAM9B,EAAEQ,UAAUm3C,gBAAgB,SAAS33C,GAAG,OAAOU,KAAK+2C,YAAYz3C,GAAGU,KAAK02C,YAAYp3C,EAArxG,GAA0xGE,EAAEi3C,aAAal1C,GAAG81C,KAAK,CAAC/3C,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqjB,WAAM,EAAOrjB,EAAEqjB,MAAM,SAASvjB,EAAEE,EAAEK,GAAG,QAAG,IAASA,IAAIA,EAAE,GAAG,iBAAiBL,EAAE,OAAOA,EAAE,IAAI4B,EAAEgP,MAAMknC,QAAQ93C,GAAG,GAAG,GAAG,IAAI,IAAI+B,KAAK/B,EAAE4B,EAAEG,GAAG1B,GAAG,EAAEL,EAAE+B,GAAG/B,EAAE+B,GAAGjC,EAAEE,EAAE+B,GAAG1B,EAAE,GAAGL,EAAE+B,GAAG,OAAOH,IAAIm2C,KAAK,SAASj4C,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE8iC,kBAAa,EAAO,IAAI9gC,EAAE3B,EAAE,KAAK+C,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,MAAM2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAEpC,EAAE,MAAM8C,EAAE9C,EAAE,MAAMiF,EAAEjF,EAAE,MAAM6L,EAAE7L,EAAE,MAAMoF,EAAEpF,EAAE,MAAMsa,EAAEta,EAAE,MAAMm2B,GAAE,EAAGj0B,EAAE,SAASzC,GAAG,SAASE,EAAEA,GAAG,IAAIK,EAAEP,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOH,EAAE23C,UAAU,IAAIhzC,EAAEiM,aAAa5Q,EAAE43C,QAAQ,IAAIjzC,EAAEiM,aAAa5Q,EAAE63C,YAAY,IAAIlzC,EAAEiM,aAAa5Q,EAAEqnB,UAAU,IAAI1iB,EAAEiM,aAAa5Q,EAAEo9B,UAAU,IAAIz4B,EAAEiM,aAAa5Q,EAAEy3B,sBAAsB,IAAI71B,EAAEk2C,qBAAqB93C,EAAEs4B,eAAe,IAAItzB,EAAE+yC,eAAep4C,GAAGK,EAAEy3B,sBAAsBiE,WAAW34B,EAAEkyB,gBAAgBj1B,EAAEs4B,gBAAgBt4B,EAAEiuB,eAAejuB,EAAEuiB,SAASviB,EAAEy3B,sBAAsBC,eAAe11B,EAAEg2C,gBAAgBh4C,EAAEy3B,sBAAsBiE,WAAW34B,EAAEwtB,eAAevwB,EAAEiuB,gBAAgBjuB,EAAEkuB,YAAYluB,EAAEy3B,sBAAsBC,eAAev1B,EAAE81C,YAAYj4C,EAAEy3B,sBAAsBiE,WAAW34B,EAAEytB,YAAYxwB,EAAEkuB,aAAaluB,EAAEke,aAAale,EAAEuiB,SAASviB,EAAEy3B,sBAAsBC,eAAejzB,EAAEyzC,aAAY,WAAY,OAAOl4C,EAAEghC,qBAAqBhhC,EAAEy3B,sBAAsBiE,WAAW34B,EAAEiiC,aAAahlC,EAAEke,cAAcle,EAAEs9B,kBAAkBt9B,EAAEy3B,sBAAsBC,eAAevxB,EAAEgyC,kBAAkBn4C,EAAEy3B,sBAAsBiE,WAAW34B,EAAEq1C,kBAAkBp4C,EAAEs9B,mBAAmBt9B,EAAEq4C,iBAAiBr4C,EAAEy3B,sBAAsBC,eAAet1B,EAAEk2C,iBAAiBt4C,EAAEy3B,sBAAsBiE,WAAW34B,EAAEw1C,iBAAiBv4C,EAAEq4C,kBAAkBr4C,EAAE+nC,eAAe/nC,EAAEy3B,sBAAsBC,eAAe50B,EAAE01C,gBAAgBx4C,EAAEy3B,sBAAsBiE,WAAW34B,EAAE0tB,gBAAgBzwB,EAAE+nC,gBAAgB/nC,EAAEy4C,gBAAgBz4C,EAAEy3B,sBAAsBC,eAAezyB,EAAEyzC,gBAAgB14C,EAAEy3B,sBAAsBiE,WAAW34B,EAAE41C,gBAAgB34C,EAAEy4C,iBAAiBz4C,EAAE23B,cAAc,IAAIvyB,EAAEwzC,aAAa54C,EAAEiuB,eAAejuB,EAAEy4C,gBAAgBz4C,EAAEke,aAAale,EAAEq4C,iBAAiBr4C,EAAEkuB,YAAYluB,EAAEs4B,eAAet4B,EAAEs9B,kBAAkBt9B,EAAE+nC,gBAAgB/nC,EAAEuiB,SAAS5d,EAAEmd,aAAa9hB,EAAE23B,cAAcjQ,WAAW1nB,EAAE63C,cAAc73C,EAAEuiB,SAASviB,EAAE23B,eAAe33B,EAAEuiB,SAAS5d,EAAEmd,aAAa9hB,EAAEiuB,eAAe9kB,SAASnJ,EAAEqnB,YAAYrnB,EAAEuiB,SAAS5d,EAAEmd,aAAa9hB,EAAEke,aAAa8nB,OAAOhmC,EAAE43C,UAAU53C,EAAEuiB,SAAS5d,EAAEmd,aAAa9hB,EAAEke,aAAa+nB,SAASjmC,EAAE23C,YAAY33C,EAAEuiB,SAASviB,EAAEs4B,eAAeyD,gBAAe,SAAUt8B,GAAG,OAAOO,EAAE64B,eAAep5B,OAAOO,EAAEuiB,SAASviB,EAAEiuB,eAAe1G,UAAS,SAAU9nB,GAAGO,EAAEo9B,UAAUlqB,KAAK,CAAC+uB,SAASjiC,EAAEiuB,eAAexoB,OAAOqO,MAAMxP,OAAO,IAAItE,EAAEq4C,iBAAiBQ,eAAe74C,EAAEiuB,eAAexoB,OAAOg+B,UAAUzjC,EAAEiuB,eAAexoB,OAAOqzC,kBAAkB94C,EAAE+4C,aAAa,IAAIz+B,EAAE0+B,aAAY,SAAUv5C,EAAEE,GAAG,OAAOK,EAAE23B,cAAcshB,MAAMx5C,EAAEE,MAAMK,EAAE,OAAO0B,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKw3C,UAAUrlC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKy3C,QAAQtlC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,aAAa,CAACqC,IAAI,WAAW,OAAOnC,KAAK03C,YAAYvlC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKknB,UAAU/U,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,WAAW,CAACqC,IAAI,WAAW,IAAI7C,EAAEU,KAAK,OAAOA,KAAK+4C,eAAe/4C,KAAK+4C,aAAa,IAAIv0C,EAAEiM,aAAazQ,KAAKoiB,SAASpiB,KAAKi9B,UAAU9qB,OAAM,SAAU3S,GAAG,IAAIK,EAAE,QAAQA,EAAEP,EAAEy5C,oBAAe,IAASl5C,GAAGA,EAAEkT,KAAKvT,EAAEsiC,eAAe9hC,KAAK+4C,aAAa5mC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,OAAO,CAACqC,IAAI,WAAW,OAAOnC,KAAK8tB,eAAevtB,MAAM2B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,OAAO,CAACqC,IAAI,WAAW,OAAOnC,KAAK8tB,eAAextB,MAAM4B,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,UAAU,CAACqC,IAAI,WAAW,OAAOnC,KAAK8tB,eAAe0K,SAASt2B,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUI,QAAQ,WAAW,IAAIV,EAAEQ,KAAKmiB,cAAc7iB,EAAEQ,UAAUI,QAAQ4B,KAAK9B,MAAM,QAAQR,EAAEQ,KAAKg5C,oBAAe,IAASx5C,GAAGA,EAAEU,UAAUF,KAAKg5C,kBAAa,IAASx5C,EAAEM,UAAUy4B,MAAM,SAASj5B,EAAEE,GAAGQ,KAAK44C,aAAargB,MAAMj5B,EAAEE,IAAIA,EAAEM,UAAUm5C,UAAU,SAAS35C,EAAEE,GAAGQ,KAAK+tB,YAAY+Q,UAAUl8B,EAAEs2C,aAAaC,OAAOnjB,IAAIh2B,KAAK+tB,YAAY3qB,KAAK,qDAAqD4yB,GAAE,GAAIh2B,KAAK44C,aAAaK,UAAU35C,EAAEE,IAAIA,EAAEM,UAAUY,OAAO,SAASpB,EAAEE,GAAGknC,MAAMpnC,IAAIonC,MAAMlnC,KAAKF,EAAE+B,KAAKC,IAAIhC,EAAEuC,EAAEu3C,cAAc55C,EAAE6B,KAAKC,IAAI9B,EAAEqC,EAAEw3C,cAAcr5C,KAAK8tB,eAAeptB,OAAOpB,EAAEE,KAAKA,EAAEM,UAAUw5C,OAAO,SAASh6C,EAAEE,QAAG,IAASA,IAAIA,GAAE,GAAIQ,KAAK8tB,eAAewrB,OAAOh6C,EAAEE,IAAIA,EAAEM,UAAU6oB,YAAY,SAASrpB,EAAEE,EAAEK,GAAGG,KAAK8tB,eAAenF,YAAYrpB,EAAEE,EAAEK,IAAIL,EAAEM,UAAUsmC,YAAY,SAAS9mC,GAAGU,KAAK8tB,eAAesY,YAAY9mC,IAAIE,EAAEM,UAAUumC,YAAY,WAAWrmC,KAAK8tB,eAAeuY,eAAe7mC,EAAEM,UAAU+gC,eAAe,WAAW7gC,KAAK8tB,eAAe+S,kBAAkBrhC,EAAEM,UAAUwmC,aAAa,SAAShnC,GAAGU,KAAK8tB,eAAewY,aAAahnC,IAAIE,EAAEM,UAAU0nC,mBAAmB,SAASloC,EAAEE,GAAG,OAAOQ,KAAKw3B,cAAcgQ,mBAAmBloC,EAAEE,IAAIA,EAAEM,UAAUwnC,mBAAmB,SAAShoC,EAAEE,GAAG,OAAOQ,KAAKw3B,cAAc8P,mBAAmBhoC,EAAEE,IAAIA,EAAEM,UAAUqnC,mBAAmB,SAAS7nC,EAAEE,GAAG,OAAOQ,KAAKw3B,cAAc2P,mBAAmB7nC,EAAEE,IAAIA,EAAEM,UAAU4nC,mBAAmB,SAASpoC,EAAEE,GAAG,OAAOQ,KAAKw3B,cAAckQ,mBAAmBpoC,EAAEE,IAAIA,EAAEM,UAAUu3B,OAAO,WAAWr3B,KAAKm4B,eAAe1D,QAAQ8kB,aAAav5C,KAAKw5C,sBAAsBh6C,EAAEM,UAAUyS,MAAM,WAAWvS,KAAKw3B,cAAcjlB,QAAQvS,KAAK8tB,eAAevb,QAAQvS,KAAKs4C,gBAAgB/lC,QAAQvS,KAAK+d,aAAaxL,QAAQvS,KAAKm9B,kBAAkB5qB,SAAS/S,EAAEM,UAAU44B,eAAe,SAASp5B,GAAG,IAAIE,EAAE,OAAOF,GAAG,IAAI,aAAaU,KAAKw4B,QAAQ93B,OAAOV,KAAKO,KAAKP,KAAKM,MAAM,MAAM,IAAI,cAAcN,KAAKm4B,eAAe1D,QAAQ8kB,YAAYv5C,KAAKw5C,sBAAsB,QAAQh6C,EAAEQ,KAAKg5C,oBAAe,IAASx5C,GAAGA,EAAEU,UAAUF,KAAKg5C,kBAAa,KAAUx5C,EAAEM,UAAU05C,mBAAmB,WAAW,IAAIl6C,EAAEU,KAAK,IAAIA,KAAKg5C,aAAa,CAAC,IAAIx5C,EAAE,GAAGA,EAAE2F,KAAKnF,KAAKunB,WAAW7b,EAAE+tC,8BAA8Bj3C,KAAK,KAAKxC,KAAK8tB,kBAAkBtuB,EAAE2F,KAAKnF,KAAKmnC,mBAAmB,CAACuS,MAAM,MAAK,WAAY,OAAOhuC,EAAE+tC,8BAA8Bn6C,EAAEwuB,iBAAgB,MAAO9tB,KAAKg5C,aAAa,CAAC94C,QAAQ,WAAW,IAAI,IAAIZ,EAAE,EAAEO,EAAEL,EAAEF,EAAEO,EAAE+E,OAAOtF,IAAIO,EAAEP,GAAGY,cAAcV,EAAztL,CAA4tLgC,EAAE0S,YAAY1U,EAAE8iC,aAAavgC,GAAG43C,KAAK,CAACr6C,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEmiB,aAAaniB,EAAEiR,kBAAa,EAAO,IAAI5Q,EAAE,WAAW,SAASP,IAAIU,KAAK4hB,WAAW,GAAG5hB,KAAK6hB,WAAU,EAAG,OAAOpiB,OAAOC,eAAeJ,EAAEQ,UAAU,QAAQ,CAACqC,IAAI,WAAW,IAAI7C,EAAEU,KAAK,OAAOA,KAAK8hB,SAAS9hB,KAAK8hB,OAAO,SAAStiB,GAAG,OAAOF,EAAEsiB,WAAWzc,KAAK3F,GAAG,CAACU,QAAQ,WAAW,IAAIZ,EAAEuiB,UAAU,IAAI,IAAIhiB,EAAE,EAAEA,EAAEP,EAAEsiB,WAAWhd,OAAO/E,IAAI,GAAGP,EAAEsiB,WAAW/hB,KAAKL,EAAE,YAAYF,EAAEsiB,WAAWjM,OAAO9V,EAAE,OAAOG,KAAK8hB,QAAQ5f,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUiT,KAAK,SAASzT,EAAEE,GAAG,IAAI,IAAIK,EAAE,GAAGuB,EAAE,EAAEA,EAAEpB,KAAK4hB,WAAWhd,OAAOxD,IAAIvB,EAAEsF,KAAKnF,KAAK4hB,WAAWxgB,IAAI,IAAIA,EAAE,EAAEA,EAAEvB,EAAE+E,OAAOxD,IAAIvB,EAAEuB,GAAGU,UAAK,EAAOxC,EAAEE,IAAIF,EAAEQ,UAAUI,QAAQ,WAAWF,KAAK4hB,aAAa5hB,KAAK4hB,WAAWhd,OAAO,GAAG5E,KAAK6hB,WAAU,GAAIviB,EAA7nB,GAAkoBE,EAAEiR,aAAa5Q,EAAEL,EAAEmiB,aAAa,SAASriB,EAAEE,GAAG,OAAOF,GAAE,SAAUA,GAAG,OAAOE,EAAEuT,KAAKzT,QAAQs6C,KAAK,SAASt6C,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEi5C,aAAaj5C,EAAEuiC,8BAAyB,EAAO,IAAIvgC,EAAEoB,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,KAAKgF,EAAEhF,EAAE,MAAMyE,EAAEzE,EAAE,KAAK2E,EAAE3E,EAAE,MAAMmG,EAAEnG,EAAE,MAAMoC,EAAEpC,EAAE,KAAK8C,EAAE9C,EAAE,KAAKiF,EAAEjF,EAAE,MAAM6L,EAAE7L,EAAE,MAAMoF,EAAEpF,EAAE,MAAMsa,EAAEta,EAAE,MAAMm2B,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,GAAGj0B,EAAE,OAAO,SAAS+J,EAAExM,EAAEE,GAAG,GAAGF,EAAE,GAAG,OAAOE,EAAEq6C,cAAa,EAAG,OAAOv6C,GAAG,KAAK,EAAE,QAAQE,EAAEs6C,WAAW,KAAK,EAAE,QAAQt6C,EAAEu6C,YAAY,KAAK,EAAE,QAAQv6C,EAAEw6C,eAAe,KAAK,EAAE,QAAQx6C,EAAEy6C,iBAAiB,KAAK,EAAE,QAAQz6C,EAAE06C,SAAS,KAAK,EAAE,QAAQ16C,EAAE26C,SAAS,KAAK,EAAE,QAAQ36C,EAAE46C,WAAW,KAAK,EAAE,QAAQ56C,EAAE66C,gBAAgB,KAAK,EAAE,QAAQ76C,EAAE86C,YAAY,KAAK,GAAG,QAAQ96C,EAAE+6C,cAAc,KAAK,GAAG,QAAQ/6C,EAAEg7C,YAAY,KAAK,GAAG,QAAQh7C,EAAEi7C,eAAe,KAAK,GAAG,QAAQj7C,EAAEk7C,iBAAiB,KAAK,GAAG,QAAQl7C,EAAEm7C,oBAAoB,KAAK,GAAG,QAAQn7C,EAAEo7C,kBAAkB,KAAK,GAAG,QAAQp7C,EAAEq7C,gBAAgB,KAAK,GAAG,QAAQr7C,EAAEs7C,mBAAmB,KAAK,GAAG,QAAQt7C,EAAEu7C,aAAa,KAAK,GAAG,QAAQv7C,EAAEw7C,YAAY,KAAK,GAAG,QAAQx7C,EAAEy7C,UAAU,KAAK,GAAG,QAAQz7C,EAAE07C,SAAS,KAAK,GAAG,QAAQ17C,EAAEq6C,YAAY,OAAM,GAAI,SAASv6C,GAAGA,EAAEA,EAAE0iC,oBAAoB,GAAG,sBAAsB1iC,EAAEA,EAAE4iC,qBAAqB,GAAG,uBAAzF,CAAiH1gC,EAAEhC,EAAEuiC,2BAA2BviC,EAAEuiC,yBAAyB,KAAK,IAAI1nB,EAAE,WAAW,SAAS/a,EAAEA,EAAEE,EAAEK,EAAEuB,GAAGpB,KAAK8tB,eAAexuB,EAAEU,KAAK+d,aAAave,EAAEQ,KAAK+tB,YAAYluB,EAAEG,KAAKuzB,gBAAgBnyB,EAAEpB,KAAKm7C,MAAM,IAAItsC,YAAY,GAAG,OAAOvP,EAAEQ,UAAUs7C,KAAK,SAAS97C,GAAGU,KAAKm7C,MAAM,IAAItsC,YAAY,IAAIvP,EAAEQ,UAAUu7C,IAAI,SAAS/7C,EAAEE,EAAEK,GAAGG,KAAKm7C,MAAMt2C,EAAE0d,OAAOviB,KAAKm7C,MAAM77C,EAAEoN,SAASlN,EAAEK,KAAKP,EAAEQ,UAAUw7C,OAAO,SAASh8C,GAAG,IAAIA,EAAE,OAAOU,KAAKm7C,MAAM,IAAItsC,YAAY,IAAG,EAAG,IAAIrP,EAAE8E,EAAEmhB,cAAczlB,KAAKm7C,OAAO,OAAOn7C,KAAKm7C,MAAM,IAAItsC,YAAY,GAAGrP,GAAG,IAAI,KAAKQ,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,UAAUz2B,EAAEw2B,GAAGC,IAAI,MAAM,MAAM,IAAI,KAAKr5B,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,aAAaz2B,EAAEw2B,GAAGC,IAAI,MAAM,MAAM,IAAI,IAAI,IAAIx5B,EAAEG,KAAK8tB,eAAexoB,OAAOg+B,UAAU,EAAE,KAAKtjC,KAAK8tB,eAAexoB,OAAOqzC,aAAa,GAAG,IAAI34C,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,OAAOx5B,EAAE+C,EAAEw2B,GAAGC,IAAI,MAAM,MAAM,IAAI,IAAIr5B,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,SAASz2B,EAAEw2B,GAAGC,IAAI,MAAM,MAAM,IAAI,KAAK,IAAIj4B,EAAE,CAAC+b,MAAM,EAAEE,UAAU,EAAEJ,IAAI,GAAGjd,KAAKuzB,gBAAgBkB,QAAQsU,aAAa3nC,GAAGpB,KAAKuzB,gBAAgBkB,QAAQqU,YAAY,EAAE,EAAE9oC,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,OAAOj4B,EAAE,KAAKwB,EAAEw2B,GAAGC,IAAI,MAAM,MAAM,QAAQr5B,KAAK+tB,YAAYmB,MAAM,oBAAoB1vB,GAAGQ,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,OAAOz2B,EAAEw2B,GAAGC,IAAI,MAAM,OAAM,GAAI/5B,EAAlsC,GAAusC22B,EAAE,SAAS32B,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,EAAEC,EAAEK,EAAEgD,EAAE5C,EAAE6C,QAAG,IAASA,IAAIA,EAAE,IAAI9C,EAAEu5C,sBAAsB,IAAI7vC,EAAEpM,EAAEwC,KAAK9B,OAAOA,KAAK0L,EAAEoiB,eAAetuB,EAAEkM,EAAE4sC,gBAAgBz4C,EAAE6L,EAAEqS,aAAa3c,EAAEsK,EAAEwsC,iBAAiB32C,EAAEmK,EAAEqiB,YAAYvsB,EAAEkK,EAAE6nB,gBAAgB1xB,EAAE6J,EAAEyxB,kBAAkBt4B,EAAE6G,EAAEsiB,gBAAgB/rB,EAAEyJ,EAAEs6B,QAAQlhC,EAAE4G,EAAE8vC,aAAa,IAAI3sC,YAAY,MAAMnD,EAAE+vC,eAAe,IAAIn3C,EAAEkhB,cAAc9Z,EAAEgwC,aAAa,IAAIp3C,EAAEihB,YAAY7Z,EAAE4E,UAAU,IAAI3N,EAAE4N,SAAS7E,EAAEiwC,aAAa,GAAGjwC,EAAEkwC,UAAU,GAAGlwC,EAAEmwC,kBAAkB,GAAGnwC,EAAEowC,eAAe,GAAGpwC,EAAEqwC,aAAav3C,EAAEq9B,kBAAkBhf,QAAQnX,EAAEswC,uBAAuBx3C,EAAEq9B,kBAAkBhf,QAAQnX,EAAEuwC,eAAe,IAAIj2C,EAAEyK,aAAa/E,EAAEwwC,sBAAsB,IAAIl2C,EAAEyK,aAAa/E,EAAEywC,gBAAgB,IAAIn2C,EAAEyK,aAAa/E,EAAE0wC,wBAAwB,IAAIp2C,EAAEyK,aAAa/E,EAAE2wC,+BAA+B,IAAIr2C,EAAEyK,aAAa/E,EAAE4wC,YAAY,IAAIt2C,EAAEyK,aAAa/E,EAAE6wC,WAAW,IAAIv2C,EAAEyK,aAAa/E,EAAEkrB,cAAc,IAAI5wB,EAAEyK,aAAa/E,EAAEgsC,YAAY,IAAI1xC,EAAEyK,aAAa/E,EAAEuxB,UAAU,IAAIj3B,EAAEyK,aAAa/E,EAAEqrB,eAAe,IAAI/wB,EAAEyK,aAAa/E,EAAE8wC,mBAAmB,IAAIx2C,EAAEyK,aAAa/E,EAAE+wC,YAAY,CAACC,QAAO,EAAGC,aAAa,EAAEC,aAAa,EAAEC,cAAc,EAAE/a,SAAS,GAAGp2B,EAAE0W,SAAS1W,EAAEs6B,SAASt6B,EAAEs6B,QAAQ8W,uBAAsB,SAAUx9C,EAAEE,GAAGkM,EAAEqiB,YAAYmB,MAAM,qBAAqB,CAAC6tB,WAAWrxC,EAAEs6B,QAAQgX,cAAc19C,GAAG29C,OAAOz9C,EAAE4nC,eAAe17B,EAAEs6B,QAAQkX,uBAAsB,SAAU59C,GAAGoM,EAAEqiB,YAAYmB,MAAM,qBAAqB,CAAC6tB,WAAWrxC,EAAEs6B,QAAQgX,cAAc19C,QAAQoM,EAAEs6B,QAAQmX,2BAA0B,SAAU79C,GAAGoM,EAAEqiB,YAAYmB,MAAM,yBAAyB,CAACiZ,KAAK7oC,OAAOoM,EAAEs6B,QAAQoX,uBAAsB,SAAU99C,EAAEE,EAAEK,GAAG6L,EAAEqiB,YAAYmB,MAAM,qBAAqB,CAAC6tB,WAAWz9C,EAAE4+B,OAAO1+B,EAAE0a,KAAKra,OAAO6L,EAAEs6B,QAAQqX,uBAAsB,SAAU/9C,EAAEE,EAAEK,GAAG,SAASL,IAAIK,EAAEA,EAAEunC,WAAW17B,EAAEqiB,YAAYmB,MAAM,qBAAqB,CAAC6tB,WAAWrxC,EAAEs6B,QAAQgX,cAAc19C,GAAG4+B,OAAO1+B,EAAE89C,QAAQz9C,OAAO6L,EAAEs6B,QAAQuX,iBAAgB,SAAUj+C,EAAEE,EAAEK,GAAG,OAAO6L,EAAE8xC,MAAMl+C,EAAEE,EAAEK,MAAM6L,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE+xC,YAAYn+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuW,cAAc,IAAIhE,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEiyC,WAAWr+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEkyC,SAASt+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuW,cAAc,IAAIhE,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEmyC,YAAYv+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEoyC,WAAWx+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEqyC,cAAcz+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEsyC,eAAe1+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEuyC,eAAe3+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEwyC,oBAAoB5+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEyyC,mBAAmB7+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE0yC,eAAe9+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE2yC,iBAAiB/+C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE4yC,eAAeh/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACoX,OAAO,IAAI7E,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE4yC,eAAeh/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE8yC,YAAYl/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACoX,OAAO,IAAI7E,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE8yC,YAAYl/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE+yC,YAAYn/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEgzC,YAAYp/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEizC,YAAYr/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEkzC,SAASt/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEmzC,WAAWv/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEozC,WAAWx/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEqzC,kBAAkBz/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEszC,gBAAgB1/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEuzC,kBAAkB3/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEwzC,yBAAyB5/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEyzC,4BAA4B7/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACoX,OAAO,IAAI7E,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE0zC,8BAA8B9/C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE2zC,gBAAgB//C,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE4zC,kBAAkBhgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE6zC,WAAWjgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE8zC,SAASlgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE+zC,QAAQngD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACoX,OAAO,IAAI7E,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEg0C,eAAepgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEi0C,UAAUrgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACoX,OAAO,IAAI7E,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEk0C,iBAAiBtgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEm0C,eAAevgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEo0C,aAAaxgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACoX,OAAO,IAAI7E,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEq0C,oBAAoBzgD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuW,cAAc,IAAIhE,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEs0C,UAAU1gD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuW,cAAc,IAAIhE,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEu0C,eAAe3gD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEw0C,gBAAgB5gD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAEy0C,WAAW7gD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE00C,cAAc9gD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuS,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE20C,cAAc/gD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuW,cAAc,IAAIhE,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE40C,cAAchhD,MAAMoM,EAAEs6B,QAAQmB,mBAAmB,CAACuW,cAAc,IAAIhE,MAAM,MAAK,SAAUp6C,GAAG,OAAOoM,EAAE60C,cAAcjhD,MAAMoM,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAGqnB,KAAI,WAAY,OAAO/0C,EAAEgsB,UAAUhsB,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAGsnB,IAAG,WAAY,OAAOh1C,EAAEi1C,cAAcj1C,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAGwnB,IAAG,WAAY,OAAOl1C,EAAEi1C,cAAcj1C,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAGynB,IAAG,WAAY,OAAOn1C,EAAEi1C,cAAcj1C,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAG8H,IAAG,WAAY,OAAOx1B,EAAEo1C,oBAAoBp1C,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAG2nB,IAAG,WAAY,OAAOr1C,EAAEs1C,eAAet1C,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAG6nB,IAAG,WAAY,OAAOv1C,EAAEw1C,SAASx1C,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAG+nB,IAAG,WAAY,OAAOz1C,EAAE01C,cAAc11C,EAAEs6B,QAAQwa,kBAAkB59C,EAAEw2B,GAAGioB,IAAG,WAAY,OAAO31C,EAAE41C,aAAa51C,EAAEs6B,QAAQwa,kBAAkB59C,EAAE2+C,GAAGC,KAAI,WAAY,OAAO91C,EAAEygC,WAAWzgC,EAAEs6B,QAAQwa,kBAAkB59C,EAAE2+C,GAAGE,KAAI,WAAY,OAAO/1C,EAAEg2C,cAAch2C,EAAEs6B,QAAQwa,kBAAkB59C,EAAE2+C,GAAGI,KAAI,WAAY,OAAOj2C,EAAEk2C,YAAYl2C,EAAEs6B,QAAQ0B,mBAAmB,EAAE,IAAIziC,EAAE48C,YAAW,SAAUviD,GAAG,OAAOoM,EAAEo2C,SAASxiD,GAAGoM,EAAEq2C,YAAYziD,IAAG,MAAOoM,EAAEs6B,QAAQ0B,mBAAmB,EAAE,IAAIziC,EAAE48C,YAAW,SAAUviD,GAAG,OAAOoM,EAAEq2C,YAAYziD,OAAOoM,EAAEs6B,QAAQ0B,mBAAmB,EAAE,IAAIziC,EAAE48C,YAAW,SAAUviD,GAAG,OAAOoM,EAAEo2C,SAASxiD,OAAOoM,EAAEs6B,QAAQ0B,mBAAmB,EAAE,IAAIziC,EAAE48C,YAAW,SAAUviD,GAAG,OAAOoM,EAAEs2C,aAAa1iD,OAAOoM,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAEy0C,gBAAgBz0C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAE20C,mBAAmB30C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAEygC,WAAWzgC,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAEg2C,cAAch2C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAEk2C,YAAYl2C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAEu2C,kBAAkBv2C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAEw2C,2BAA2Bx2C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAEy2C,uBAAuBz2C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAE02C,eAAe12C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAE22C,UAAU,MAAM32C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAE22C,UAAU,MAAM32C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAE22C,UAAU,MAAM32C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAE22C,UAAU,MAAM32C,EAAEs6B,QAAQwB,mBAAmB,CAACkS,MAAM,MAAK,WAAY,OAAOhuC,EAAE22C,UAAU,MAAM32C,EAAEs6B,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAM,MAAK,WAAY,OAAOhuC,EAAE42C,0BAA0B52C,EAAEs6B,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAM,MAAK,WAAY,OAAOhuC,EAAE42C,0BAA0B,IAAInoC,EAAE,SAAS7a,GAAG02B,EAAEgQ,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAMp6C,IAAG,WAAY,OAAOoM,EAAE62C,cAAc,IAAIjjD,MAAM02B,EAAEgQ,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAMp6C,IAAG,WAAY,OAAOoM,EAAE62C,cAAc,IAAIjjD,MAAM02B,EAAEgQ,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAMp6C,IAAG,WAAY,OAAOoM,EAAE62C,cAAc,IAAIjjD,MAAM02B,EAAEgQ,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAMp6C,IAAG,WAAY,OAAOoM,EAAE62C,cAAc,IAAIjjD,MAAM02B,EAAEgQ,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAMp6C,IAAG,WAAY,OAAOoM,EAAE62C,cAAc,IAAIjjD,MAAM02B,EAAEgQ,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAMp6C,IAAG,WAAY,OAAOoM,EAAE62C,cAAc,IAAIjjD,MAAM02B,EAAEgQ,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAMp6C,IAAG,WAAY,OAAOoM,EAAE62C,cAAc,IAAIjjD,OAAO02B,EAAEh2B,KAAK,IAAI,IAAI+B,KAAKN,EAAE+gD,SAASroC,EAAEpY,GAAG,OAAO2J,EAAEs6B,QAAQwB,mBAAmB,CAACkW,cAAc,IAAIhE,MAAM,MAAK,WAAY,OAAOhuC,EAAE+2C,4BAA4B/2C,EAAEs6B,QAAQ0c,iBAAgB,SAAUpjD,GAAG,OAAOoM,EAAEqiB,YAAYtZ,MAAM,kBAAkBnV,GAAGA,KAAKoM,EAAEs6B,QAAQsB,mBAAmB,CAACoW,cAAc,IAAIhE,MAAM,KAAK,IAAIr/B,EAAE3O,EAAEoiB,eAAepiB,EAAEqS,aAAarS,EAAEqiB,YAAYriB,EAAE6nB,kBAAkB7nB,EAAE,OAAOnK,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAKi8C,eAAe9pC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,uBAAuB,CAACqC,IAAI,WAAW,OAAOnC,KAAKk8C,sBAAsB/pC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,iBAAiB,CAACqC,IAAI,WAAW,OAAOnC,KAAKm8C,gBAAgBhqC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,yBAAyB,CAACqC,IAAI,WAAW,OAAOnC,KAAKo8C,wBAAwBjqC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,gCAAgC,CAACqC,IAAI,WAAW,OAAOnC,KAAKq8C,+BAA+BlqC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,aAAa,CAACqC,IAAI,WAAW,OAAOnC,KAAKs8C,YAAYnqC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAKu8C,WAAWpqC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,eAAe,CAACqC,IAAI,WAAW,OAAOnC,KAAK42B,cAAczkB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,aAAa,CAACqC,IAAI,WAAW,OAAOnC,KAAK03C,YAAYvlC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKi9B,UAAU9qB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAK+2B,eAAe5kB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,oBAAoB,CAACqC,IAAI,WAAW,OAAOnC,KAAKw8C,mBAAmBrqC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUI,QAAQ,WAAWZ,EAAEQ,UAAUI,QAAQ4B,KAAK9B,OAAOR,EAAEM,UAAU6iD,eAAe,SAASrjD,EAAEE,EAAEK,EAAEuB,GAAGpB,KAAKy8C,YAAYC,QAAO,EAAG18C,KAAKy8C,YAAYE,aAAar9C,EAAEU,KAAKy8C,YAAYG,aAAap9C,EAAEQ,KAAKy8C,YAAYI,cAAch9C,EAAEG,KAAKy8C,YAAY3a,SAAS1gC,GAAG5B,EAAEM,UAAU8iD,uBAAuB,SAAStjD,GAAGU,KAAK+tB,YAAY+Q,UAAUpzB,EAAEwtC,aAAaC,MAAM0J,QAAQC,KAAK,CAACxjD,EAAE,IAAIujD,SAAQ,SAAUvjD,EAAEE,GAAG,OAAO6f,YAAW,WAAY,OAAO7f,EAAE,mBAAmB,UAAUujD,OAAM,SAAUzjD,GAAG,GAAG,kBAAkBA,EAAE,MAAMA,EAAE6D,QAAQC,KAAK,uDAAuD5D,EAAEM,UAAUg5C,MAAM,SAASx5C,EAAEE,GAAG,IAAIK,EAAEuB,EAAEpB,KAAK8tB,eAAexoB,OAAO/D,EAAEH,EAAE4D,EAAExD,EAAEJ,EAAE6D,EAAErC,EAAE,EAAEnB,EAAEzB,KAAKy8C,YAAYC,OAAO,GAAGj7C,EAAE,CAAC,GAAG5B,EAAEG,KAAKgmC,QAAQ8S,MAAM94C,KAAKw7C,aAAax7C,KAAKy8C,YAAYI,cAAcr9C,GAAG,OAAOQ,KAAK4iD,uBAAuB/iD,GAAGA,EAAE0B,EAAEvB,KAAKy8C,YAAYE,aAAan7C,EAAExB,KAAKy8C,YAAYG,aAAa58C,KAAKy8C,YAAYC,QAAO,EAAGp9C,EAAEsF,OAAO7C,IAAIa,EAAE5C,KAAKy8C,YAAY3a,SAAS//B,GAAG,GAAG/B,KAAK+tB,YAAYmB,MAAM,eAAe5vB,GAAGU,KAAKw7C,aAAa52C,OAAOtF,EAAEsF,QAAQ5E,KAAKw7C,aAAa52C,OAAO7C,IAAI/B,KAAKw7C,aAAa,IAAI3sC,YAAYxN,KAAK2N,IAAI1P,EAAEsF,OAAO7C,KAAKN,GAAGzB,KAAKk4C,iBAAiB8K,aAAa1jD,EAAEsF,OAAO7C,EAAE,IAAI,IAAIC,EAAEY,EAAEZ,EAAE1C,EAAEsF,OAAO5C,GAAGD,EAAE,CAAC,IAAIF,EAAEG,EAAED,EAAEzC,EAAEsF,OAAO5C,EAAED,EAAEzC,EAAEsF,OAAOC,EAAE,iBAAiBvF,EAAEU,KAAKy7C,eAAe91B,OAAOrmB,EAAEqG,UAAU3D,EAAEH,GAAG7B,KAAKw7C,cAAcx7C,KAAK07C,aAAa/1B,OAAOrmB,EAAEoN,SAAS1K,EAAEH,GAAG7B,KAAKw7C,cAAc,GAAG37C,EAAEG,KAAKgmC,QAAQ8S,MAAM94C,KAAKw7C,aAAa32C,GAAG,OAAO7E,KAAK2iD,eAAephD,EAAEC,EAAEqD,EAAE7C,GAAGhC,KAAK4iD,uBAAuB/iD,GAAGA,OAAO,IAAI4B,IAAIoD,EAAE,iBAAiBvF,EAAEU,KAAKy7C,eAAe91B,OAAOrmB,EAAEU,KAAKw7C,cAAcx7C,KAAK07C,aAAa/1B,OAAOrmB,EAAEU,KAAKw7C,cAAc37C,EAAEG,KAAKgmC,QAAQ8S,MAAM94C,KAAKw7C,aAAa32C,IAAI,OAAO7E,KAAK2iD,eAAephD,EAAEC,EAAEqD,EAAE,GAAG7E,KAAK4iD,uBAAuB/iD,GAAGA,GAAGuB,EAAEpB,KAAK8tB,eAAexoB,QAAQN,IAAIzD,GAAGH,EAAE6D,IAAIzD,GAAGxB,KAAK42B,cAAc7jB,OAAO/S,KAAKk8C,sBAAsBnpC,KAAK/S,KAAKk4C,iBAAiBnzC,MAAM/E,KAAKk4C,iBAAiBhzC,MAAM1F,EAAEM,UAAU09C,MAAM,SAASl+C,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEC,EAAExB,KAAK8tB,eAAexoB,OAAO1C,EAAE5C,KAAKs4C,gBAAgB2K,QAAQxhD,EAAEzB,KAAKuzB,gBAAgBkB,QAAQoE,iBAAiB72B,EAAEhC,KAAK8tB,eAAevtB,KAAKsB,EAAE7B,KAAK+d,aAAa6L,gBAAgBs5B,WAAWr+C,EAAE7E,KAAK+d,aAAaolC,MAAMC,WAAW5+C,EAAExE,KAAK+7C,aAAa/1C,EAAExE,EAAEoS,MAAMzR,IAAIX,EAAEs4B,MAAMt4B,EAAEyD,GAAGjF,KAAKk4C,iBAAiBmL,UAAU7hD,EAAEyD,GAAGzD,EAAEwD,GAAGnF,EAAEL,EAAE,GAAG,IAAIwG,EAAEsY,SAAS9c,EAAEwD,EAAE,IAAIgB,EAAEs9C,qBAAqB9hD,EAAEwD,EAAE,EAAE,EAAE,EAAER,EAAE4G,GAAG5G,EAAE6G,GAAG7G,EAAEme,UAAU,IAAI,IAAIhgB,EAAEnD,EAAEmD,EAAE9C,IAAI8C,EAAE,CAAC,GAAGvB,EAAE9B,EAAEqD,GAAGpB,EAAEvB,KAAKguB,gBAAgBu1B,QAAQniD,GAAGA,EAAE,KAAKwB,EAAE,CAAC,IAAIkC,EAAElC,EAAEiW,OAAOC,aAAa1X,IAAI0D,IAAI1D,EAAE0D,EAAE4f,WAAW,IAAI,GAAGjjB,GAAGzB,KAAKs8C,YAAYvpC,KAAKzO,EAAEmgB,oBAAoBrjB,IAAIG,IAAIC,EAAEwD,EAAE,CAAC,GAAGxD,EAAEwD,EAAEzD,EAAE,GAAGS,EAAE,GAAGH,EAAE,CAAC,KAAKL,EAAEwD,EAAEhD,GAAGgE,EAAEs9C,qBAAqB9hD,EAAEwD,IAAI,EAAE,EAAER,EAAE4G,GAAG5G,EAAE6G,GAAG7G,EAAEme,UAAUnhB,EAAEwD,EAAE,EAAExD,EAAEyD,IAAIzD,EAAEyD,IAAIzD,EAAEm3C,aAAa,GAAGn3C,EAAEyD,IAAIjF,KAAK8tB,eAAewrB,OAAOt5C,KAAKwjD,kBAAiB,KAAMhiD,EAAEyD,GAAGjF,KAAK8tB,eAAextB,OAAOkB,EAAEyD,EAAEjF,KAAK8tB,eAAextB,KAAK,GAAGkB,EAAEoS,MAAMzR,IAAIX,EAAEs4B,MAAMt4B,EAAEyD,GAAGQ,WAAU,GAAIO,EAAExE,EAAEoS,MAAMzR,IAAIX,EAAEs4B,MAAMt4B,EAAEyD,QAAQ,GAAGzD,EAAEwD,EAAEhD,EAAE,EAAE,IAAIT,EAAE,SAAS,GAAGsD,IAAImB,EAAEy9C,YAAYjiD,EAAEwD,EAAEzD,EAAEC,EAAEolC,YAAYpiC,GAAGA,GAAG,IAAIwB,EAAEsY,SAAStc,EAAE,IAAIgE,EAAEs9C,qBAAqBthD,EAAE,EAAEC,EAAEoH,eAAepH,EAAEijB,gBAAgB1gB,EAAE4G,GAAG5G,EAAE6G,GAAG7G,EAAEme,WAAW3c,EAAEs9C,qBAAqB9hD,EAAEwD,IAAI5D,EAAEG,EAAEiD,EAAE4G,GAAG5G,EAAE6G,GAAG7G,EAAEme,UAAUphB,EAAE,EAAE,OAAOA,GAAGyE,EAAEs9C,qBAAqB9hD,EAAEwD,IAAI,EAAE,EAAER,EAAE4G,GAAG5G,EAAE6G,GAAG7G,EAAEme,eAAe3c,EAAEsY,SAAS9c,EAAEwD,EAAE,GAAGgB,EAAE09C,mBAAmBliD,EAAEwD,EAAE,EAAE5D,GAAG4E,EAAE09C,mBAAmBliD,EAAEwD,EAAE,EAAE5D,GAAGvB,EAAEL,EAAE,IAAIwG,EAAE6N,SAASrS,EAAEwD,EAAE,EAAEhF,KAAKsQ,WAAW,IAAItQ,KAAKsQ,UAAUgO,YAAYte,KAAKsQ,UAAUwD,UAAU,MAAM9T,KAAKgmC,QAAQ2d,mBAAmB,EAAE3jD,KAAKsQ,UAAUkU,aAAaxkB,KAAKgmC,QAAQ2d,mBAAmB3jD,KAAKsQ,UAAUtE,WAAW0Y,WAAW,GAAG1kB,KAAKgmC,QAAQ2d,mBAAmB3jD,KAAKsQ,UAAU8N,SAAS5c,EAAEwD,EAAEhD,GAAGnC,EAAEL,EAAE,GAAG,IAAIwG,EAAEsY,SAAS9c,EAAEwD,KAAKgB,EAAE49C,WAAWpiD,EAAEwD,IAAIgB,EAAEs9C,qBAAqB9hD,EAAEwD,EAAE,EAAE,EAAER,EAAE4G,GAAG5G,EAAE6G,GAAG7G,EAAEme,UAAU3iB,KAAKk4C,iBAAiBmL,UAAU7hD,EAAEyD,IAAIzF,EAAEM,UAAUqnC,mBAAmB,SAAS7nC,EAAEE,GAAG,IAAIK,EAAEG,KAAK,MAAM,MAAMV,EAAEo6C,OAAOp6C,EAAEi/C,QAAQj/C,EAAEo+C,cAAc19C,KAAKgmC,QAAQmB,mBAAmB7nC,EAAEE,GAAGQ,KAAKgmC,QAAQmB,mBAAmB7nC,GAAE,SAAUA,GAAG,OAAOwM,EAAExM,EAAE29C,OAAO,GAAGp9C,EAAE0zB,gBAAgBkB,QAAQ2rB,gBAAgB5gD,EAAEF,OAAOE,EAAEM,UAAUwnC,mBAAmB,SAAShoC,EAAEE,GAAG,OAAOQ,KAAKgmC,QAAQsB,mBAAmBhoC,EAAE,IAAI6a,EAAE0pC,WAAWrkD,KAAKA,EAAEM,UAAU0nC,mBAAmB,SAASloC,EAAEE,GAAG,OAAOQ,KAAKgmC,QAAQwB,mBAAmBloC,EAAEE,IAAIA,EAAEM,UAAU4nC,mBAAmB,SAASpoC,EAAEE,GAAG,OAAOQ,KAAKgmC,QAAQ0B,mBAAmBpoC,EAAE,IAAI2F,EAAE48C,WAAWriD,KAAKA,EAAEM,UAAU43B,KAAK,WAAW,OAAO13B,KAAKi8C,eAAelpC,QAAO,GAAIvT,EAAEM,UAAU6gD,SAAS,WAAW,IAAIrhD,EAAEU,KAAK8tB,eAAexoB,OAAO,OAAOtF,KAAKk4C,iBAAiBmL,UAAU/jD,EAAE2F,GAAGjF,KAAKuzB,gBAAgBkB,QAAQqvB,aAAaxkD,EAAE0F,EAAE,GAAG1F,EAAE2F,IAAI3F,EAAE2F,IAAI3F,EAAEq5C,aAAa,GAAGr5C,EAAE2F,IAAIjF,KAAK8tB,eAAewrB,OAAOt5C,KAAKwjD,mBAAmBlkD,EAAE2F,GAAGjF,KAAK8tB,eAAextB,OAAOhB,EAAE2F,EAAEjF,KAAK8tB,eAAextB,KAAK,GAAGhB,EAAE0F,GAAGhF,KAAK8tB,eAAevtB,MAAMjB,EAAE0F,IAAIhF,KAAKk4C,iBAAiBmL,UAAU/jD,EAAE2F,GAAGjF,KAAK03C,YAAY3kC,QAAO,GAAIvT,EAAEM,UAAUghD,eAAe,WAAW,OAAO9gD,KAAK8tB,eAAexoB,OAAON,EAAE,GAAE,GAAIxF,EAAEM,UAAUkhD,UAAU,WAAW,IAAI1hD,EAAEE,EAAEQ,KAAK8tB,eAAexoB,OAAO,IAAItF,KAAK+d,aAAa6L,gBAAgBm6B,kBAAkB,OAAO/jD,KAAKgkD,kBAAkBxkD,EAAEwF,EAAE,GAAGxF,EAAEwF,KAAI,EAAG,GAAGhF,KAAKgkD,gBAAgBhkD,KAAK8tB,eAAevtB,MAAMf,EAAEwF,EAAE,EAAExF,EAAEwF,SAAS,GAAG,IAAIxF,EAAEwF,GAAGxF,EAAEyF,EAAEzF,EAAE8jC,WAAW9jC,EAAEyF,GAAGzF,EAAEm5C,eAAe,QAAQr5C,EAAEE,EAAEoU,MAAMzR,IAAI3C,EAAEs6B,MAAMt6B,EAAEyF,UAAK,IAAS3F,OAAE,EAAOA,EAAEmG,WAAW,CAACjG,EAAEoU,MAAMzR,IAAI3C,EAAEs6B,MAAMt6B,EAAEyF,GAAGQ,WAAU,EAAGjG,EAAEyF,IAAIzF,EAAEwF,EAAEhF,KAAK8tB,eAAevtB,KAAK,EAAE,IAAIV,EAAEL,EAAEoU,MAAMzR,IAAI3C,EAAEs6B,MAAMt6B,EAAEyF,GAAGpF,EAAE80C,SAASn1C,EAAEwF,KAAKnF,EAAE+jD,WAAWpkD,EAAEwF,IAAIxF,EAAEwF,IAAI,OAAOhF,KAAKgkD,mBAAkB,GAAIxkD,EAAEM,UAAUohD,IAAI,WAAW,GAAGlhD,KAAK8tB,eAAexoB,OAAON,GAAGhF,KAAK8tB,eAAevtB,KAAK,OAAM,EAAG,IAAIjB,EAAEU,KAAK8tB,eAAexoB,OAAON,EAAE,OAAOhF,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAexoB,OAAO2+C,WAAWjkD,KAAKuzB,gBAAgBkB,QAAQoE,kBAAkB74B,KAAKu8C,WAAWxpC,KAAK/S,KAAK8tB,eAAexoB,OAAON,EAAE1F,IAAG,GAAIE,EAAEM,UAAUshD,SAAS,WAAW,OAAOphD,KAAKs4C,gBAAgB+J,UAAU,IAAG,GAAI7iD,EAAEM,UAAUwhD,QAAQ,WAAW,OAAOthD,KAAKs4C,gBAAgB+J,UAAU,IAAG,GAAI7iD,EAAEM,UAAUkkD,gBAAgB,SAAS1kD,QAAG,IAASA,IAAIA,EAAEU,KAAK8tB,eAAevtB,KAAK,GAAGP,KAAK8tB,eAAexoB,OAAON,EAAE3D,KAAK2N,IAAI1P,EAAE+B,KAAKC,IAAI,EAAEtB,KAAK8tB,eAAexoB,OAAON,IAAIhF,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAK+d,aAAa6L,gBAAgBs6B,OAAO7iD,KAAK2N,IAAIhP,KAAK8tB,eAAexoB,OAAOqzC,aAAat3C,KAAKC,IAAItB,KAAK8tB,eAAexoB,OAAOg+B,UAAUtjC,KAAK8tB,eAAexoB,OAAOL,IAAI5D,KAAK2N,IAAIhP,KAAK8tB,eAAextB,KAAK,EAAEe,KAAKC,IAAI,EAAEtB,KAAK8tB,eAAexoB,OAAOL,IAAIjF,KAAKk4C,iBAAiBmL,UAAUrjD,KAAK8tB,eAAexoB,OAAOL,IAAIzF,EAAEM,UAAUqkD,WAAW,SAAS7kD,EAAEE,GAAGQ,KAAKk4C,iBAAiBmL,UAAUrjD,KAAK8tB,eAAexoB,OAAOL,GAAGjF,KAAK+d,aAAa6L,gBAAgBs6B,QAAQlkD,KAAK8tB,eAAexoB,OAAON,EAAE1F,EAAEU,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAK8tB,eAAexoB,OAAOg+B,UAAU9jC,IAAIQ,KAAK8tB,eAAexoB,OAAON,EAAE1F,EAAEU,KAAK8tB,eAAexoB,OAAOL,EAAEzF,GAAGQ,KAAKgkD,kBAAkBhkD,KAAKk4C,iBAAiBmL,UAAUrjD,KAAK8tB,eAAexoB,OAAOL,IAAIzF,EAAEM,UAAUskD,YAAY,SAAS9kD,EAAEE,GAAGQ,KAAKgkD,kBAAkBhkD,KAAKmkD,WAAWnkD,KAAK8tB,eAAexoB,OAAON,EAAE1F,EAAEU,KAAK8tB,eAAexoB,OAAOL,EAAEzF,IAAIA,EAAEM,UAAU89C,SAAS,SAASt+C,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAK8tB,eAAexoB,OAAOg+B,UAAU,OAAO9jC,GAAG,EAAEQ,KAAKokD,YAAY,GAAG/iD,KAAK2N,IAAIxP,EAAEF,EAAE29C,OAAO,IAAI,IAAIj9C,KAAKokD,YAAY,IAAI9kD,EAAE29C,OAAO,IAAI,KAAI,GAAIz9C,EAAEM,UAAUg+C,WAAW,SAASx+C,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAOqzC,aAAa34C,KAAK8tB,eAAexoB,OAAOL,EAAE,OAAOzF,GAAG,EAAEQ,KAAKokD,YAAY,EAAE/iD,KAAK2N,IAAIxP,EAAEF,EAAE29C,OAAO,IAAI,IAAIj9C,KAAKokD,YAAY,EAAE9kD,EAAE29C,OAAO,IAAI,IAAG,GAAIz9C,EAAEM,UAAUi+C,cAAc,SAASz+C,GAAG,OAAOU,KAAKokD,YAAY9kD,EAAE29C,OAAO,IAAI,EAAE,IAAG,GAAIz9C,EAAEM,UAAUk+C,eAAe,SAAS1+C,GAAG,OAAOU,KAAKokD,cAAc9kD,EAAE29C,OAAO,IAAI,GAAG,IAAG,GAAIz9C,EAAEM,UAAUm+C,eAAe,SAAS3+C,GAAG,OAAOU,KAAK89C,WAAWx+C,GAAGU,KAAK8tB,eAAexoB,OAAON,EAAE,GAAE,GAAIxF,EAAEM,UAAUo+C,oBAAoB,SAAS5+C,GAAG,OAAOU,KAAK49C,SAASt+C,GAAGU,KAAK8tB,eAAexoB,OAAON,EAAE,GAAE,GAAIxF,EAAEM,UAAUq+C,mBAAmB,SAAS7+C,GAAG,OAAOU,KAAKmkD,YAAY7kD,EAAE29C,OAAO,IAAI,GAAG,EAAEj9C,KAAK8tB,eAAexoB,OAAOL,IAAG,GAAIzF,EAAEM,UAAUs+C,eAAe,SAAS9+C,GAAG,OAAOU,KAAKmkD,WAAW7kD,EAAEsF,QAAQ,GAAGtF,EAAE29C,OAAO,IAAI,GAAG,EAAE,GAAG39C,EAAE29C,OAAO,IAAI,GAAG,IAAG,GAAIz9C,EAAEM,UAAUk/C,gBAAgB,SAAS1/C,GAAG,OAAOU,KAAKmkD,YAAY7kD,EAAE29C,OAAO,IAAI,GAAG,EAAEj9C,KAAK8tB,eAAexoB,OAAOL,IAAG,GAAIzF,EAAEM,UAAUm/C,kBAAkB,SAAS3/C,GAAG,OAAOU,KAAKokD,YAAY9kD,EAAE29C,OAAO,IAAI,EAAE,IAAG,GAAIz9C,EAAEM,UAAUu/C,gBAAgB,SAAS//C,GAAG,OAAOU,KAAKmkD,WAAWnkD,KAAK8tB,eAAexoB,OAAON,GAAG1F,EAAE29C,OAAO,IAAI,GAAG,IAAG,GAAIz9C,EAAEM,UAAUw/C,kBAAkB,SAAShgD,GAAG,OAAOU,KAAKokD,YAAY,EAAE9kD,EAAE29C,OAAO,IAAI,IAAG,GAAIz9C,EAAEM,UAAUy/C,WAAW,SAASjgD,GAAG,OAAOU,KAAKo+C,eAAe9+C,IAAG,GAAIE,EAAEM,UAAU0/C,SAAS,SAASlgD,GAAG,IAAIE,EAAEF,EAAE29C,OAAO,GAAG,OAAO,IAAIz9C,SAASQ,KAAK8tB,eAAexoB,OAAO++C,KAAKrkD,KAAK8tB,eAAexoB,OAAON,GAAG,IAAIxF,IAAIQ,KAAK8tB,eAAexoB,OAAO++C,KAAK,KAAI,GAAI7kD,EAAEM,UAAUu+C,iBAAiB,SAAS/+C,GAAG,GAAGU,KAAK8tB,eAAexoB,OAAON,GAAGhF,KAAK8tB,eAAevtB,KAAK,OAAM,EAAG,IAAI,IAAIf,EAAEF,EAAE29C,OAAO,IAAI,EAAEz9C,KAAKQ,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAexoB,OAAO2+C,WAAW,OAAM,GAAIzkD,EAAEM,UAAUi/C,kBAAkB,SAASz/C,GAAG,GAAGU,KAAK8tB,eAAexoB,OAAON,GAAGhF,KAAK8tB,eAAevtB,KAAK,OAAM,EAAG,IAAI,IAAIf,EAAEF,EAAE29C,OAAO,IAAI,EAAEp9C,EAAEG,KAAK8tB,eAAexoB,OAAO9F,KAAKK,EAAEmF,EAAEnF,EAAEykD,WAAW,OAAM,GAAI9kD,EAAEM,UAAUykD,mBAAmB,SAASjlD,EAAEE,EAAEK,EAAEuB,QAAG,IAASA,IAAIA,GAAE,GAAI,IAAIG,EAAEvB,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAInC,KAAK8tB,eAAexoB,OAAOw0B,MAAMx6B,GAAGiC,EAAEijD,aAAahlD,EAAEK,EAAEG,KAAK8tB,eAAexoB,OAAOshC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBpiD,IAAIG,EAAEkE,WAAU,IAAKjG,EAAEM,UAAU2kD,iBAAiB,SAASnlD,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAInC,KAAK8tB,eAAexoB,OAAOw0B,MAAMx6B,GAAGE,EAAEyK,KAAKjK,KAAK8tB,eAAexoB,OAAOshC,YAAY5mC,KAAKwjD,mBAAmBhkD,EAAEiG,WAAU,GAAIjG,EAAEM,UAAUw+C,eAAe,SAASh/C,GAAG,IAAIE,EAAE,OAAOQ,KAAKgkD,kBAAkB1kD,EAAE29C,OAAO,IAAI,KAAK,EAAE,IAAIz9C,EAAEQ,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAKk4C,iBAAiBmL,UAAU7jD,GAAGQ,KAAKukD,mBAAmB/kD,IAAIQ,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAevtB,KAAK,IAAIP,KAAK8tB,eAAexoB,OAAON,GAAGxF,EAAEQ,KAAK8tB,eAAextB,KAAKd,IAAIQ,KAAKykD,iBAAiBjlD,GAAGQ,KAAKk4C,iBAAiBmL,UAAU7jD,GAAG,MAAM,KAAK,EAAE,IAAIA,EAAEQ,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAKk4C,iBAAiBmL,UAAU7jD,GAAGQ,KAAKukD,mBAAmB/kD,EAAE,EAAEQ,KAAK8tB,eAAexoB,OAAON,EAAE,GAAE,GAAIhF,KAAK8tB,eAAexoB,OAAON,EAAE,GAAGhF,KAAK8tB,eAAevtB,OAAOP,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAI3C,EAAE,GAAGiG,WAAU,GAAIjG,KAAKQ,KAAKykD,iBAAiBjlD,GAAGQ,KAAKk4C,iBAAiBmL,UAAU,GAAG,MAAM,KAAK,EAAE,IAAI7jD,EAAEQ,KAAK8tB,eAAextB,KAAKN,KAAKk4C,iBAAiBmL,UAAU7jD,EAAE,GAAGA,KAAKQ,KAAKykD,iBAAiBjlD,GAAGQ,KAAKk4C,iBAAiBmL,UAAU,GAAG,MAAM,KAAK,EAAE,IAAIxjD,EAAEG,KAAK8tB,eAAexoB,OAAOsO,MAAMhP,OAAO5E,KAAK8tB,eAAextB,KAAKT,EAAE,IAAIG,KAAK8tB,eAAexoB,OAAOsO,MAAMujC,UAAUt3C,GAAGG,KAAK8tB,eAAexoB,OAAOw0B,MAAMz4B,KAAKC,IAAItB,KAAK8tB,eAAexoB,OAAOw0B,MAAMj6B,EAAE,GAAGG,KAAK8tB,eAAexoB,OAAOqO,MAAMtS,KAAKC,IAAItB,KAAK8tB,eAAexoB,OAAOqO,MAAM9T,EAAE,GAAGG,KAAKi9B,UAAUlqB,KAAK,IAAI,OAAM,GAAIvT,EAAEM,UAAU0+C,YAAY,SAASl/C,GAAG,OAAOU,KAAKgkD,kBAAkB1kD,EAAE29C,OAAO,IAAI,KAAK,EAAEj9C,KAAKukD,mBAAmBvkD,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAevtB,MAAM,MAAM,KAAK,EAAEP,KAAKukD,mBAAmBvkD,KAAK8tB,eAAexoB,OAAOL,EAAE,EAAEjF,KAAK8tB,eAAexoB,OAAON,EAAE,GAAG,MAAM,KAAK,EAAEhF,KAAKukD,mBAAmBvkD,KAAK8tB,eAAexoB,OAAOL,EAAE,EAAEjF,KAAK8tB,eAAevtB,MAAM,OAAOP,KAAKk4C,iBAAiBmL,UAAUrjD,KAAK8tB,eAAexoB,OAAOL,IAAG,GAAIzF,EAAEM,UAAU2+C,YAAY,SAASn/C,GAAGU,KAAKgkD,kBAAkB,IAAIxkD,EAAEF,EAAE29C,OAAO,IAAI,EAAEp9C,EAAEG,KAAK8tB,eAAexoB,OAAO,GAAGzF,EAAEoF,EAAEpF,EAAE84C,cAAc94C,EAAEoF,EAAEpF,EAAEyjC,UAAU,OAAM,EAAG,IAAI,IAAIliC,EAAEvB,EAAEi6B,MAAMj6B,EAAEoF,EAAE1D,EAAEvB,KAAK8tB,eAAextB,KAAK,EAAET,EAAE84C,aAAan3C,EAAExB,KAAK8tB,eAAextB,KAAK,EAAET,EAAEi6B,MAAMv4B,EAAE,EAAE/B,KAAKK,EAAE+T,MAAM+B,OAAOnU,EAAE,EAAE,GAAG3B,EAAE+T,MAAM+B,OAAOvU,EAAE,EAAEvB,EAAE+hC,aAAa5hC,KAAKwjD,mBAAmB,OAAOxjD,KAAKk4C,iBAAiBQ,eAAe74C,EAAEoF,EAAEpF,EAAE84C,cAAc94C,EAAEmF,EAAE,GAAE,GAAIxF,EAAEM,UAAU4+C,YAAY,SAASp/C,GAAGU,KAAKgkD,kBAAkB,IAAIxkD,EAAEF,EAAE29C,OAAO,IAAI,EAAEp9C,EAAEG,KAAK8tB,eAAexoB,OAAO,GAAGzF,EAAEoF,EAAEpF,EAAE84C,cAAc94C,EAAEoF,EAAEpF,EAAEyjC,UAAU,OAAM,EAAG,IAAIliC,EAAEG,EAAE1B,EAAEi6B,MAAMj6B,EAAEoF,EAAE,IAAI7D,EAAEpB,KAAK8tB,eAAextB,KAAK,EAAET,EAAE84C,aAAav3C,EAAEpB,KAAK8tB,eAAextB,KAAK,EAAET,EAAEi6B,MAAM14B,EAAE5B,KAAKK,EAAE+T,MAAM+B,OAAOpU,EAAE,GAAG1B,EAAE+T,MAAM+B,OAAOvU,EAAE,EAAEvB,EAAE+hC,aAAa5hC,KAAKwjD,mBAAmB,OAAOxjD,KAAKk4C,iBAAiBQ,eAAe74C,EAAEoF,EAAEpF,EAAE84C,cAAc94C,EAAEmF,EAAE,GAAE,GAAIxF,EAAEM,UAAU29C,YAAY,SAASn+C,GAAGU,KAAKgkD,kBAAkB,IAAIxkD,EAAEQ,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAInC,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAexoB,OAAOL,GAAG,OAAOzF,IAAIA,EAAEikD,YAAYzjD,KAAK8tB,eAAexoB,OAAON,EAAE1F,EAAE29C,OAAO,IAAI,EAAEj9C,KAAK8tB,eAAexoB,OAAOshC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBxjD,KAAKk4C,iBAAiBmL,UAAUrjD,KAAK8tB,eAAexoB,OAAOL,KAAI,GAAIzF,EAAEM,UAAU6+C,YAAY,SAASr/C,GAAGU,KAAKgkD,kBAAkB,IAAIxkD,EAAEQ,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAInC,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAexoB,OAAOL,GAAG,OAAOzF,IAAIA,EAAEklD,YAAY1kD,KAAK8tB,eAAexoB,OAAON,EAAE1F,EAAE29C,OAAO,IAAI,EAAEj9C,KAAK8tB,eAAexoB,OAAOshC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBxjD,KAAKk4C,iBAAiBmL,UAAUrjD,KAAK8tB,eAAexoB,OAAOL,KAAI,GAAIzF,EAAEM,UAAU8+C,SAAS,SAASt/C,GAAG,IAAI,IAAIE,EAAEF,EAAE29C,OAAO,IAAI,EAAEp9C,EAAEG,KAAK8tB,eAAexoB,OAAO9F,KAAKK,EAAE+T,MAAM+B,OAAO9V,EAAEi6B,MAAMj6B,EAAEyjC,UAAU,GAAGzjC,EAAE+T,MAAM+B,OAAO9V,EAAEi6B,MAAMj6B,EAAE84C,aAAa,EAAE94C,EAAE+hC,aAAa5hC,KAAKwjD,mBAAmB,OAAOxjD,KAAKk4C,iBAAiBQ,eAAe74C,EAAEyjC,UAAUzjC,EAAE84C,eAAc,GAAIn5C,EAAEM,UAAU++C,WAAW,SAASv/C,GAAG,IAAI,IAAIE,EAAEF,EAAE29C,OAAO,IAAI,EAAEp9C,EAAEG,KAAK8tB,eAAexoB,OAAO9F,KAAKK,EAAE+T,MAAM+B,OAAO9V,EAAEi6B,MAAMj6B,EAAE84C,aAAa,GAAG94C,EAAE+T,MAAM+B,OAAO9V,EAAEi6B,MAAMj6B,EAAEyjC,UAAU,EAAEzjC,EAAE+hC,aAAap9B,EAAEq9B,oBAAoB,OAAO7hC,KAAKk4C,iBAAiBQ,eAAe74C,EAAEyjC,UAAUzjC,EAAE84C,eAAc,GAAIn5C,EAAEM,UAAU69C,WAAW,SAASr+C,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAO,GAAG9F,EAAEyF,EAAEzF,EAAEm5C,cAAcn5C,EAAEyF,EAAEzF,EAAE8jC,UAAU,OAAM,EAAG,IAAI,IAAIzjC,EAAEP,EAAE29C,OAAO,IAAI,EAAE77C,EAAE5B,EAAE8jC,UAAUliC,GAAG5B,EAAEm5C,eAAev3C,EAAE,CAAC,IAAIG,EAAE/B,EAAEoU,MAAMzR,IAAI3C,EAAEs6B,MAAM14B,GAAGG,EAAEmjD,YAAY,EAAE7kD,EAAEL,EAAEonC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBjiD,EAAEkE,WAAU,EAAG,OAAOzF,KAAKk4C,iBAAiBQ,eAAel5C,EAAE8jC,UAAU9jC,EAAEm5C,eAAc,GAAIn5C,EAAEM,UAAU+9C,YAAY,SAASv+C,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAO,GAAG9F,EAAEyF,EAAEzF,EAAEm5C,cAAcn5C,EAAEyF,EAAEzF,EAAE8jC,UAAU,OAAM,EAAG,IAAI,IAAIzjC,EAAEP,EAAE29C,OAAO,IAAI,EAAE77C,EAAE5B,EAAE8jC,UAAUliC,GAAG5B,EAAEm5C,eAAev3C,EAAE,CAAC,IAAIG,EAAE/B,EAAEoU,MAAMzR,IAAI3C,EAAEs6B,MAAM14B,GAAGG,EAAEkiD,YAAY,EAAE5jD,EAAEL,EAAEonC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBjiD,EAAEkE,WAAU,EAAG,OAAOzF,KAAKk4C,iBAAiBQ,eAAel5C,EAAE8jC,UAAU9jC,EAAEm5C,eAAc,GAAIn5C,EAAEM,UAAUwgD,cAAc,SAAShhD,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAO,GAAG9F,EAAEyF,EAAEzF,EAAEm5C,cAAcn5C,EAAEyF,EAAEzF,EAAE8jC,UAAU,OAAM,EAAG,IAAI,IAAIzjC,EAAEP,EAAE29C,OAAO,IAAI,EAAE77C,EAAE5B,EAAE8jC,UAAUliC,GAAG5B,EAAEm5C,eAAev3C,EAAE,CAAC,IAAIG,EAAEvB,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAI3C,EAAEs6B,MAAM14B,GAAGG,EAAEkiD,YAAYjkD,EAAEwF,EAAEnF,EAAEL,EAAEonC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBjiD,EAAEkE,WAAU,EAAG,OAAOzF,KAAKk4C,iBAAiBQ,eAAel5C,EAAE8jC,UAAU9jC,EAAEm5C,eAAc,GAAIn5C,EAAEM,UAAUygD,cAAc,SAASjhD,GAAG,IAAIE,EAAEQ,KAAK8tB,eAAexoB,OAAO,GAAG9F,EAAEyF,EAAEzF,EAAEm5C,cAAcn5C,EAAEyF,EAAEzF,EAAE8jC,UAAU,OAAM,EAAG,IAAI,IAAIzjC,EAAEP,EAAE29C,OAAO,IAAI,EAAE77C,EAAE5B,EAAE8jC,UAAUliC,GAAG5B,EAAEm5C,eAAev3C,EAAE,CAAC,IAAIG,EAAE/B,EAAEoU,MAAMzR,IAAI3C,EAAEs6B,MAAM14B,GAAGG,EAAEmjD,YAAYllD,EAAEwF,EAAEnF,EAAEL,EAAEonC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBjiD,EAAEkE,WAAU,EAAG,OAAOzF,KAAKk4C,iBAAiBQ,eAAel5C,EAAE8jC,UAAU9jC,EAAEm5C,eAAc,GAAIn5C,EAAEM,UAAUg/C,WAAW,SAASx/C,GAAGU,KAAKgkD,kBAAkB,IAAIxkD,EAAEQ,KAAK8tB,eAAexoB,OAAOsO,MAAMzR,IAAInC,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAexoB,OAAOL,GAAG,OAAOzF,IAAIA,EAAEglD,aAAaxkD,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAexoB,OAAON,GAAG1F,EAAE29C,OAAO,IAAI,GAAGj9C,KAAK8tB,eAAexoB,OAAOshC,YAAY5mC,KAAKwjD,kBAAkBxjD,KAAKwjD,kBAAkBxjD,KAAKk4C,iBAAiBmL,UAAUrjD,KAAK8tB,eAAexoB,OAAOL,KAAI,GAAIzF,EAAEM,UAAUo/C,yBAAyB,SAAS5/C,GAAG,IAAIU,KAAKgmC,QAAQ2d,mBAAmB,OAAM,EAAG,IAAI,IAAInkD,EAAEF,EAAE29C,OAAO,IAAI,EAAEp9C,EAAE,IAAIgP,YAAYrP,GAAG4B,EAAE,EAAEA,EAAE5B,IAAI4B,EAAEvB,EAAEuB,GAAGpB,KAAKgmC,QAAQ2d,mBAAmB,OAAO3jD,KAAKw9C,MAAM39C,EAAE,EAAEA,EAAE+E,SAAQ,GAAIpF,EAAEM,UAAUq/C,4BAA4B,SAAS7/C,GAAG,OAAOA,EAAE29C,OAAO,GAAG,IAAIj9C,KAAK2kD,IAAI,UAAU3kD,KAAK2kD,IAAI,iBAAiB3kD,KAAK2kD,IAAI,UAAU3kD,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,UAAUr5B,KAAK2kD,IAAI,UAAU3kD,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,UAAS,GAAI75B,EAAEM,UAAUs/C,8BAA8B,SAAS9/C,GAAG,OAAOA,EAAE29C,OAAO,GAAG,IAAIj9C,KAAK2kD,IAAI,SAAS3kD,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,cAAcr5B,KAAK2kD,IAAI,gBAAgB3kD,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,cAAcr5B,KAAK2kD,IAAI,SAAS3kD,KAAK+d,aAAa+L,iBAAiBxqB,EAAE29C,OAAO,GAAG,KAAKj9C,KAAK2kD,IAAI,WAAW3kD,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,mBAAkB,GAAI75B,EAAEM,UAAU6kD,IAAI,SAASrlD,GAAG,OAAO,KAAKU,KAAKuzB,gBAAgBkB,QAAQmwB,SAAS,IAAIlgD,QAAQpF,IAAIE,EAAEM,UAAU2/C,QAAQ,SAASngD,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEF,EAAEsF,OAAOpF,IAAI,OAAOF,EAAE29C,OAAOz9C,IAAI,KAAK,EAAEQ,KAAK+d,aAAaolC,MAAMC,YAAW,EAAG,OAAM,GAAI5jD,EAAEM,UAAU4/C,eAAe,SAASpgD,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEF,EAAEsF,OAAOpF,IAAI,OAAOF,EAAE29C,OAAOz9C,IAAI,KAAK,EAAEQ,KAAK+d,aAAa6L,gBAAgByV,uBAAsB,EAAG,MAAM,KAAK,EAAEr/B,KAAKs4C,gBAAgBuM,YAAY,EAAEpjD,EAAEqjD,iBAAiB9kD,KAAKs4C,gBAAgBuM,YAAY,EAAEpjD,EAAEqjD,iBAAiB9kD,KAAKs4C,gBAAgBuM,YAAY,EAAEpjD,EAAEqjD,iBAAiB9kD,KAAKs4C,gBAAgBuM,YAAY,EAAEpjD,EAAEqjD,iBAAiB,MAAM,KAAK,EAAE9kD,KAAKuzB,gBAAgBkB,QAAQ2rB,cAAcvG,cAAc75C,KAAK8tB,eAAeptB,OAAO,IAAIV,KAAK8tB,eAAextB,MAAMN,KAAKm8C,gBAAgBppC,QAAQ,MAAM,KAAK,EAAE/S,KAAK+d,aAAa6L,gBAAgBs6B,QAAO,EAAGlkD,KAAKmkD,WAAW,EAAE,GAAG,MAAM,KAAK,EAAEnkD,KAAK+d,aAAa6L,gBAAgBs5B,YAAW,EAAG,MAAM,KAAK,GAAG,MAAM,KAAK,GAAGljD,KAAK+d,aAAa6L,gBAAgBm6B,mBAAkB,EAAG,MAAM,KAAK,GAAG/jD,KAAK+tB,YAAYmB,MAAM,6CAA6ClvB,KAAK+d,aAAa6L,gBAAgBm7B,mBAAkB,EAAG/kD,KAAKo8C,wBAAwBrpC,OAAO,MAAM,KAAK,EAAE/S,KAAKm9B,kBAAkB8B,eAAe,MAAM,MAAM,KAAK,IAAIj/B,KAAKm9B,kBAAkB8B,eAAe,QAAQ,MAAM,KAAK,KAAKj/B,KAAKm9B,kBAAkB8B,eAAe,OAAO,MAAM,KAAK,KAAKj/B,KAAKm9B,kBAAkB8B,eAAe,MAAM,MAAM,KAAK,KAAKj/B,KAAK+d,aAAa6L,gBAAgBuP,WAAU,EAAG,MAAM,KAAK,KAAKn5B,KAAK+tB,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,KAAKlvB,KAAKm9B,kBAAkB6nB,eAAe,MAAM,MAAM,KAAK,KAAKhlD,KAAK+tB,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,GAAGlvB,KAAK+d,aAAaE,gBAAe,EAAG,MAAM,KAAK,KAAKje,KAAKmgD,aAAa,MAAM,KAAK,KAAKngD,KAAKmgD,aAAa,KAAK,GAAG,KAAK,KAAKngD,KAAK8tB,eAAe0K,QAAQysB,kBAAkBjlD,KAAKwjD,kBAAkBxjD,KAAK+d,aAAaC,qBAAoB,EAAGhe,KAAKk8C,sBAAsBnpC,KAAK,EAAE/S,KAAK8tB,eAAextB,KAAK,GAAGN,KAAKo8C,wBAAwBrpC,OAAO,MAAM,KAAK,KAAK/S,KAAK+d,aAAa6L,gBAAgBC,oBAAmB,EAAG,OAAM,GAAIrqB,EAAEM,UAAU6/C,UAAU,SAASrgD,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEF,EAAEsF,OAAOpF,IAAI,OAAOF,EAAE29C,OAAOz9C,IAAI,KAAK,EAAEQ,KAAK+d,aAAaolC,MAAMC,YAAW,EAAG,OAAM,GAAI5jD,EAAEM,UAAU8/C,iBAAiB,SAAStgD,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEF,EAAEsF,OAAOpF,IAAI,OAAOF,EAAE29C,OAAOz9C,IAAI,KAAK,EAAEQ,KAAK+d,aAAa6L,gBAAgByV,uBAAsB,EAAG,MAAM,KAAK,EAAEr/B,KAAKuzB,gBAAgBkB,QAAQ2rB,cAAcvG,cAAc75C,KAAK8tB,eAAeptB,OAAO,GAAGV,KAAK8tB,eAAextB,MAAMN,KAAKm8C,gBAAgBppC,QAAQ,MAAM,KAAK,EAAE/S,KAAK+d,aAAa6L,gBAAgBs6B,QAAO,EAAGlkD,KAAKmkD,WAAW,EAAE,GAAG,MAAM,KAAK,EAAEnkD,KAAK+d,aAAa6L,gBAAgBs5B,YAAW,EAAG,MAAM,KAAK,GAAG,MAAM,KAAK,GAAGljD,KAAK+d,aAAa6L,gBAAgBm6B,mBAAkB,EAAG,MAAM,KAAK,GAAG/jD,KAAK+tB,YAAYmB,MAAM,oCAAoClvB,KAAK+d,aAAa6L,gBAAgBm7B,mBAAkB,EAAG/kD,KAAKo8C,wBAAwBrpC,OAAO,MAAM,KAAK,EAAE,KAAK,IAAI,KAAK,KAAK,KAAK,KAAK/S,KAAKm9B,kBAAkB8B,eAAe,OAAO,MAAM,KAAK,KAAKj/B,KAAK+d,aAAa6L,gBAAgBuP,WAAU,EAAG,MAAM,KAAK,KAAKn5B,KAAK+tB,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,KAAKlvB,KAAKm9B,kBAAkB6nB,eAAe,UAAU,MAAM,KAAK,KAAKhlD,KAAK+tB,YAAYmB,MAAM,yCAAyC,MAAM,KAAK,GAAGlvB,KAAK+d,aAAaE,gBAAe,EAAG,MAAM,KAAK,KAAKje,KAAKqgD,gBAAgB,MAAM,KAAK,KAAK,KAAK,GAAG,KAAK,KAAKrgD,KAAK8tB,eAAe0K,QAAQ0sB,uBAAuB,OAAO5lD,EAAE29C,OAAOz9C,IAAIQ,KAAKqgD,gBAAgBrgD,KAAK+d,aAAaC,qBAAoB,EAAGhe,KAAKk8C,sBAAsBnpC,KAAK,EAAE/S,KAAK8tB,eAAextB,KAAK,GAAGN,KAAKo8C,wBAAwBrpC,OAAO,MAAM,KAAK,KAAK/S,KAAK+d,aAAa6L,gBAAgBC,oBAAmB,EAAG,OAAM,GAAIrqB,EAAEM,UAAUqlD,iBAAiB,SAAS7lD,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,OAAO,IAAI/B,GAAGF,GAAG,SAASA,IAAI,SAASA,GAAGwF,EAAEqG,cAAcyX,aAAa,CAAC/iB,EAAEuB,EAAEG,KAAK,IAAI/B,IAAIF,IAAI,SAASA,GAAG,SAAS,IAAIO,GAAGP,GAAGE,EAAEM,UAAUslD,cAAc,SAAS9lD,EAAEE,EAAEK,GAAG,IAAIuB,EAAE,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,GAAGG,EAAE,EAAEC,EAAE,EAAE,EAAE,CAAC,GAAGJ,EAAEI,EAAED,GAAGjC,EAAE29C,OAAOz9C,EAAEgC,GAAGlC,EAAE+lD,aAAa7lD,EAAEgC,GAAG,CAAC,IAAIoB,EAAEtD,EAAEgmD,aAAa9lD,EAAEgC,GAAGC,EAAE,EAAE,GAAG,IAAIL,EAAE,KAAKG,EAAE,GAAGH,EAAEI,EAAEC,EAAE,EAAEF,GAAGqB,EAAEnB,WAAWA,EAAEmB,EAAEgC,QAAQnD,EAAED,EAAE,EAAED,EAAEH,EAAEwD,QAAQ,MAAM,GAAG,IAAIxD,EAAE,IAAII,EAAED,GAAG,GAAG,IAAIH,EAAE,IAAII,EAAED,GAAG,EAAE,MAAMH,EAAE,KAAKG,EAAE,WAAWC,EAAEhC,EAAEF,EAAEsF,QAAQpD,EAAED,EAAEH,EAAEwD,QAAQ,IAAInD,EAAE,EAAEA,EAAEL,EAAEwD,SAASnD,GAAG,IAAIL,EAAEK,KAAKL,EAAEK,GAAG,GAAG,OAAOL,EAAE,IAAI,KAAK,GAAGvB,EAAEuL,GAAGpL,KAAKmlD,iBAAiBtlD,EAAEuL,GAAGhK,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,MAAM,KAAK,GAAGvB,EAAEwL,GAAGrL,KAAKmlD,iBAAiBtlD,EAAEwL,GAAGjK,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,MAAM,KAAK,GAAGvB,EAAE8iB,SAAS9iB,EAAE8iB,SAASE,QAAQhjB,EAAE8iB,SAASgB,eAAe3jB,KAAKmlD,iBAAiBtlD,EAAE8iB,SAASgB,eAAeviB,EAAE,GAAGA,EAAE,GAAGA,EAAE,GAAGA,EAAE,IAAI,OAAOI,GAAGhC,EAAEM,UAAUylD,kBAAkB,SAASjmD,EAAEE,GAAGA,EAAEmjB,SAASnjB,EAAEmjB,SAASE,WAAWvjB,GAAGA,EAAE,KAAKA,EAAE,GAAGE,EAAEmjB,SAASsB,eAAe3kB,EAAEE,EAAE4L,IAAI,UAAU,IAAI9L,IAAIE,EAAE4L,KAAK,WAAW5L,EAAEgkB,kBAAkBhkB,EAAEM,UAAU+/C,eAAe,SAASvgD,GAAG,GAAG,IAAIA,EAAEsF,QAAQ,IAAItF,EAAE29C,OAAO,GAAG,OAAOj9C,KAAK+7C,aAAa3wC,GAAG5G,EAAEq9B,kBAAkBz2B,GAAGpL,KAAK+7C,aAAa1wC,GAAG7G,EAAEq9B,kBAAkBx2B,IAAG,EAAG,IAAI,IAAI7L,EAAEK,EAAEP,EAAEsF,OAAOxD,EAAEpB,KAAK+7C,aAAax6C,EAAE,EAAEA,EAAE1B,EAAE0B,KAAK/B,EAAEF,EAAE29C,OAAO17C,KAAK,IAAI/B,GAAG,IAAI4B,EAAEgK,KAAK,SAAShK,EAAEgK,IAAI,SAAS5L,EAAE,IAAIA,GAAG,IAAIA,GAAG,IAAI4B,EAAEiK,KAAK,SAASjK,EAAEiK,IAAI,SAAS7L,EAAE,IAAIA,GAAG,IAAIA,GAAG,IAAI4B,EAAEgK,KAAK,SAAShK,EAAEgK,IAAI,SAAS5L,EAAE,IAAIA,GAAG,KAAKA,GAAG,KAAK4B,EAAEiK,KAAK,SAASjK,EAAEiK,IAAI,SAAS7L,EAAE,KAAK,IAAIA,GAAG4B,EAAEgK,GAAG5G,EAAEq9B,kBAAkBz2B,GAAGhK,EAAEiK,GAAG7G,EAAEq9B,kBAAkBx2B,IAAI,IAAI7L,EAAE4B,EAAEgK,IAAI,UAAU,IAAI5L,EAAE4B,EAAEiK,IAAI,SAAS,IAAI7L,GAAG4B,EAAEgK,IAAI,UAAUpL,KAAKulD,kBAAkBjmD,EAAE+lD,aAAa9jD,GAAGjC,EAAEgmD,aAAa/jD,GAAG,GAAG,EAAEH,IAAI,IAAI5B,EAAE4B,EAAEgK,IAAI,UAAU,IAAI5L,EAAE4B,EAAEgK,IAAI,SAAS,IAAI5L,EAAE4B,EAAEgK,IAAI,WAAW,IAAI5L,EAAE4B,EAAEiK,IAAI,UAAU,KAAK7L,EAAEQ,KAAKulD,kBAAkB,EAAEnkD,GAAG,KAAK5B,GAAG4B,EAAEgK,KAAK,UAAUhK,EAAEiK,KAAK,WAAW,KAAK7L,EAAE4B,EAAEiK,KAAK,SAAS,KAAK7L,EAAE4B,EAAEgK,KAAK,UAAU,KAAK5L,EAAE4B,EAAEgK,KAAK,UAAU,KAAK5L,EAAE4B,EAAEgK,KAAK,SAAS,KAAK5L,EAAE4B,EAAEgK,KAAK,WAAW,KAAK5L,GAAG4B,EAAEgK,KAAK,SAAShK,EAAEgK,IAAI,SAAS5G,EAAEq9B,kBAAkBz2B,IAAI,KAAK5L,GAAG4B,EAAEiK,KAAK,SAASjK,EAAEiK,IAAI,SAAS7G,EAAEq9B,kBAAkBx2B,IAAI,KAAK7L,GAAG,KAAKA,GAAG,KAAKA,EAAE+B,GAAGvB,KAAKolD,cAAc9lD,EAAEiC,EAAEH,GAAG,KAAK5B,GAAG4B,EAAEuhB,SAASvhB,EAAEuhB,SAASE,QAAQzhB,EAAEuhB,SAASgB,gBAAgB,EAAEviB,EAAEoiB,kBAAkB,MAAMhkB,GAAG4B,EAAEgK,KAAK,SAAShK,EAAEgK,IAAI,SAAS5G,EAAEq9B,kBAAkBz2B,GAAGhK,EAAEiK,KAAK,SAASjK,EAAEiK,IAAI,SAAS7G,EAAEq9B,kBAAkBx2B,IAAIrL,KAAK+tB,YAAYmB,MAAM,6BAA6B1vB,GAAG,OAAM,GAAIA,EAAEM,UAAUggD,aAAa,SAASxgD,GAAG,OAAOA,EAAE29C,OAAO,IAAI,KAAK,EAAEj9C,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,OAAO,MAAM,KAAK,EAAE,IAAI75B,EAAEQ,KAAK8tB,eAAexoB,OAAOL,EAAE,EAAEpF,EAAEG,KAAK8tB,eAAexoB,OAAON,EAAE,EAAEhF,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,IAAI75B,EAAE,IAAIK,EAAE,KAAK,OAAM,GAAIL,EAAEM,UAAUigD,oBAAoB,SAASzgD,GAAG,OAAOA,EAAE29C,OAAO,IAAI,KAAK,EAAE,IAAIz9C,EAAEQ,KAAK8tB,eAAexoB,OAAOL,EAAE,EAAEpF,EAAEG,KAAK8tB,eAAexoB,OAAON,EAAE,EAAEhF,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,KAAK75B,EAAE,IAAIK,EAAE,KAAK,OAAM,GAAIL,EAAEM,UAAUkgD,UAAU,SAAS1gD,GAAG,OAAOU,KAAK+d,aAAaE,gBAAe,EAAGje,KAAKo8C,wBAAwBrpC,OAAO/S,KAAK8tB,eAAexoB,OAAOg+B,UAAU,EAAEtjC,KAAK8tB,eAAexoB,OAAOqzC,aAAa34C,KAAK8tB,eAAextB,KAAK,EAAEN,KAAK+7C,aAAav3C,EAAEq9B,kBAAkBhf,QAAQ7iB,KAAK+d,aAAaxL,QAAQvS,KAAKs4C,gBAAgB/lC,QAAQvS,KAAK8tB,eAAexoB,OAAOkgD,OAAO,EAAExlD,KAAK8tB,eAAexoB,OAAOmgD,OAAOzlD,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAexoB,OAAOogD,iBAAiBt6C,GAAGpL,KAAK+7C,aAAa3wC,GAAGpL,KAAK8tB,eAAexoB,OAAOogD,iBAAiBr6C,GAAGrL,KAAK+7C,aAAa1wC,GAAGrL,KAAK8tB,eAAexoB,OAAOqgD,aAAa3lD,KAAKs4C,gBAAgB2K,QAAQjjD,KAAK+d,aAAa6L,gBAAgBs6B,QAAO,GAAG,GAAI1kD,EAAEM,UAAUmgD,eAAe,SAAS3gD,GAAG,IAAIE,EAAEF,EAAE29C,OAAO,IAAI,EAAE,OAAOz9C,GAAG,KAAK,EAAE,KAAK,EAAEQ,KAAKuzB,gBAAgBkB,QAAQsU,YAAY,QAAQ,MAAM,KAAK,EAAE,KAAK,EAAE/oC,KAAKuzB,gBAAgBkB,QAAQsU,YAAY,YAAY,MAAM,KAAK,EAAE,KAAK,EAAE/oC,KAAKuzB,gBAAgBkB,QAAQsU,YAAY,MAAM,IAAIlpC,EAAEL,EAAE,GAAG,EAAE,OAAOQ,KAAKuzB,gBAAgBkB,QAAQqU,YAAYjpC,GAAE,GAAIL,EAAEM,UAAUogD,gBAAgB,SAAS5gD,GAAG,IAAIE,EAAEK,EAAEP,EAAE29C,OAAO,IAAI,EAAE,OAAO39C,EAAEsF,OAAO,IAAIpF,EAAEF,EAAE29C,OAAO,IAAIj9C,KAAK8tB,eAAextB,MAAM,IAAId,KAAKA,EAAEQ,KAAK8tB,eAAextB,MAAMd,EAAEK,IAAIG,KAAK8tB,eAAexoB,OAAOg+B,UAAUzjC,EAAE,EAAEG,KAAK8tB,eAAexoB,OAAOqzC,aAAan5C,EAAE,EAAEQ,KAAKmkD,WAAW,EAAE,KAAI,GAAI3kD,EAAEM,UAAUsgD,cAAc,SAAS9gD,GAAG,IAAIwM,EAAExM,EAAE29C,OAAO,GAAGj9C,KAAKuzB,gBAAgBkB,QAAQ2rB,eAAe,OAAM,EAAG,IAAI5gD,EAAEF,EAAEsF,OAAO,EAAEtF,EAAE29C,OAAO,GAAG,EAAE,OAAO39C,EAAE29C,OAAO,IAAI,KAAK,GAAG,IAAIz9C,GAAGQ,KAAKq8C,+BAA+BtpC,KAAKvR,EAAEwgC,qBAAqB,MAAM,KAAK,GAAGhiC,KAAKq8C,+BAA+BtpC,KAAKvR,EAAE0gC,sBAAsB,MAAM,KAAK,GAAGliC,KAAK8tB,gBAAgB9tB,KAAK+d,aAAa+L,iBAAiBlnB,EAAEw2B,GAAGC,IAAI,MAAMr5B,KAAK8tB,eAAextB,KAAK,IAAIN,KAAK8tB,eAAevtB,KAAK,KAAK,MAAM,KAAK,GAAG,IAAIf,GAAG,IAAIA,IAAIQ,KAAK67C,kBAAkB12C,KAAKnF,KAAK27C,cAAc37C,KAAK67C,kBAAkBj3C,OAAO,IAAI5E,KAAK67C,kBAAkBrzB,SAAS,IAAIhpB,GAAG,IAAIA,IAAIQ,KAAK87C,eAAe32C,KAAKnF,KAAK47C,WAAW57C,KAAK87C,eAAel3C,OAAO,IAAI5E,KAAK87C,eAAetzB,SAAS,MAAM,KAAK,GAAG,IAAIhpB,GAAG,IAAIA,GAAGQ,KAAK67C,kBAAkBj3C,QAAQ5E,KAAK8hD,SAAS9hD,KAAK67C,kBAAkBtzB,OAAO,IAAI/oB,GAAG,IAAIA,GAAGQ,KAAK87C,eAAel3C,QAAQ5E,KAAK+hD,YAAY/hD,KAAK87C,eAAevzB,OAAO,OAAM,GAAI/oB,EAAEM,UAAUqgD,WAAW,SAAS7gD,GAAG,OAAOU,KAAK8tB,eAAexoB,OAAOkgD,OAAOxlD,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAexoB,OAAOmgD,OAAOzlD,KAAK8tB,eAAexoB,OAAOw0B,MAAM95B,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAK8tB,eAAexoB,OAAOogD,iBAAiBt6C,GAAGpL,KAAK+7C,aAAa3wC,GAAGpL,KAAK8tB,eAAexoB,OAAOogD,iBAAiBr6C,GAAGrL,KAAK+7C,aAAa1wC,GAAGrL,KAAK8tB,eAAexoB,OAAOqgD,aAAa3lD,KAAKs4C,gBAAgB2K,SAAQ,GAAIzjD,EAAEM,UAAUugD,cAAc,SAAS/gD,GAAG,OAAOU,KAAK8tB,eAAexoB,OAAON,EAAEhF,KAAK8tB,eAAexoB,OAAOkgD,QAAQ,EAAExlD,KAAK8tB,eAAexoB,OAAOL,EAAE5D,KAAKC,IAAItB,KAAK8tB,eAAexoB,OAAOmgD,OAAOzlD,KAAK8tB,eAAexoB,OAAOw0B,MAAM,GAAG95B,KAAK+7C,aAAa3wC,GAAGpL,KAAK8tB,eAAexoB,OAAOogD,iBAAiBt6C,GAAGpL,KAAK+7C,aAAa1wC,GAAGrL,KAAK8tB,eAAexoB,OAAOogD,iBAAiBr6C,GAAGrL,KAAKs4C,gBAAgB2K,QAAQjjD,KAAK4lD,cAAc5lD,KAAK8tB,eAAexoB,OAAOqgD,eAAe3lD,KAAKs4C,gBAAgB2K,QAAQjjD,KAAK8tB,eAAexoB,OAAOqgD,cAAc3lD,KAAKgkD,mBAAkB,GAAIxkD,EAAEM,UAAUgiD,SAAS,SAASxiD,GAAG,OAAOU,KAAK27C,aAAar8C,EAAEU,KAAK+2B,eAAehkB,KAAKzT,IAAG,GAAIE,EAAEM,UAAUiiD,YAAY,SAASziD,GAAG,OAAOU,KAAK47C,UAAUt8C,GAAE,GAAIE,EAAEM,UAAU+lD,sBAAsB,SAASvmD,GAAG,IAAI,IAAIE,EAAEK,EAAE,CAAC0P,OAAO,IAAInO,EAAE,uDAAuD,QAAQ5B,EAAE4B,EAAEmD,KAAKjF,KAAKO,EAAE0P,OAAOpK,KAAK,CAACizB,WAAWl3B,SAAS1B,EAAE,IAAI0sB,IAAIhrB,SAAS1B,EAAE,GAAG,IAAI2sB,MAAMjrB,SAAS1B,EAAE,GAAG,IAAI6sB,KAAKnrB,SAAS1B,EAAE,GAAG,MAAM,OAAO,IAAIK,EAAE0P,OAAO3K,OAAO,KAAK/E,GAAGL,EAAEM,UAAUkiD,aAAa,SAAS1iD,GAAG,IAAIE,EAAEQ,KAAK6lD,sBAAsBvmD,GAAG,OAAOE,EAAEQ,KAAKw8C,mBAAmBzpC,KAAKvT,GAAGQ,KAAK+tB,YAAY3qB,KAAK,0DAA0D9D,IAAG,GAAIE,EAAEM,UAAU4hD,SAAS,WAAW,OAAO1hD,KAAK8tB,eAAexoB,OAAON,EAAE,EAAEhF,KAAKmsC,SAAQ,GAAI3sC,EAAEM,UAAUoiD,sBAAsB,WAAW,OAAOliD,KAAK+tB,YAAYmB,MAAM,6CAA6ClvB,KAAK+d,aAAa6L,gBAAgBm7B,mBAAkB,EAAG/kD,KAAKo8C,wBAAwBrpC,QAAO,GAAIvT,EAAEM,UAAUqiD,kBAAkB,WAAW,OAAOniD,KAAK+tB,YAAYmB,MAAM,oCAAoClvB,KAAK+d,aAAa6L,gBAAgBm7B,mBAAkB,EAAG/kD,KAAKo8C,wBAAwBrpC,QAAO,GAAIvT,EAAEM,UAAUwiD,qBAAqB,WAAW,OAAOtiD,KAAKs4C,gBAAgB+J,UAAU,GAAGriD,KAAKs4C,gBAAgBuM,YAAY,EAAEpjD,EAAEqjD,kBAAiB,GAAItlD,EAAEM,UAAUyiD,cAAc,SAASjjD,GAAG,OAAO,IAAIA,EAAEsF,QAAQ5E,KAAKsiD,wBAAuB,IAAK,MAAMhjD,EAAE,IAAIU,KAAKs4C,gBAAgBuM,YAAY7uB,EAAE12B,EAAE,IAAImC,EAAE+gD,SAASljD,EAAE,KAAKmC,EAAEqjD,kBAAiB,IAAKtlD,EAAEM,UAAUqsC,MAAM,WAAWnsC,KAAKgkD,kBAAkB,IAAI1kD,EAAEU,KAAK8tB,eAAexoB,OAAO,OAAOtF,KAAK8tB,eAAexoB,OAAOL,IAAI3F,EAAE2F,IAAI3F,EAAEq5C,aAAa,GAAGr5C,EAAE2F,IAAIjF,KAAK8tB,eAAewrB,OAAOt5C,KAAKwjD,mBAAmBlkD,EAAE2F,GAAGjF,KAAK8tB,eAAextB,OAAOhB,EAAE2F,EAAEjF,KAAK8tB,eAAextB,KAAK,GAAGN,KAAKgkD,mBAAkB,GAAIxkD,EAAEM,UAAU8hD,OAAO,WAAW,OAAO5hD,KAAK8tB,eAAexoB,OAAO++C,KAAKrkD,KAAK8tB,eAAexoB,OAAON,IAAG,GAAG,GAAIxF,EAAEM,UAAUmiD,aAAa,WAAWjiD,KAAKgkD,kBAAkB,IAAI1kD,EAAEU,KAAK8tB,eAAexoB,OAAO,GAAGhG,EAAE2F,IAAI3F,EAAEgkC,UAAU,CAAC,IAAI9jC,EAAEF,EAAEq5C,aAAar5C,EAAEgkC,UAAUhkC,EAAEsU,MAAMwjC,cAAc93C,EAAEw6B,MAAMx6B,EAAE2F,EAAEzF,EAAE,GAAGF,EAAEsU,MAAMjH,IAAIrN,EAAEw6B,MAAMx6B,EAAE2F,EAAE3F,EAAEsiC,aAAa5hC,KAAKwjD,mBAAmBxjD,KAAKk4C,iBAAiBQ,eAAep5C,EAAEgkC,UAAUhkC,EAAEq5C,mBAAmBr5C,EAAE2F,IAAIjF,KAAKgkD,kBAAkB,OAAM,GAAIxkD,EAAEM,UAAUsiD,UAAU,WAAW,OAAOpiD,KAAKgmC,QAAQzzB,QAAQvS,KAAKm8C,gBAAgBppC,QAAO,GAAIvT,EAAEM,UAAUyS,MAAM,WAAWvS,KAAK+7C,aAAav3C,EAAEq9B,kBAAkBhf,QAAQ7iB,KAAKg8C,uBAAuBx3C,EAAEq9B,kBAAkBhf,SAASrjB,EAAEM,UAAU0jD,eAAe,WAAW,OAAOxjD,KAAKg8C,uBAAuB3wC,KAAK,SAASrL,KAAKg8C,uBAAuB3wC,IAAI,SAASrL,KAAK+7C,aAAa1wC,GAAGrL,KAAKg8C,wBAAwBx8C,EAAEM,UAAUuiD,UAAU,SAAS/iD,GAAG,OAAOU,KAAKs4C,gBAAgB+J,UAAU/iD,IAAG,GAAIE,EAAEM,UAAU2iD,uBAAuB,WAAW,IAAInjD,EAAE,IAAIqD,EAAE4N,SAASjR,EAAE8e,QAAQ,GAAG,GAAG,IAAIsG,WAAW,GAAGplB,EAAE8L,GAAGpL,KAAK+7C,aAAa3wC,GAAG9L,EAAE+L,GAAGrL,KAAK+7C,aAAa1wC,GAAG,IAAI7L,EAAEQ,KAAK8tB,eAAexoB,OAAOtF,KAAKmkD,WAAW,EAAE,GAAG,IAAI,IAAItkD,EAAE,EAAEA,EAAEG,KAAK8tB,eAAextB,OAAOT,EAAE,CAAC,IAAIuB,EAAE5B,EAAEs6B,MAAMt6B,EAAEyF,EAAEpF,EAAE0B,EAAE/B,EAAEoU,MAAMzR,IAAIf,GAAGG,IAAIA,EAAE0I,KAAK3K,GAAGiC,EAAEkE,WAAU,GAAI,OAAOzF,KAAKk4C,iBAAiB4N,eAAe9lD,KAAKmkD,WAAW,EAAE,IAAG,GAAI3kD,EAAxyuC,CAA2yuCqC,EAAEqS,YAAY1U,EAAEi5C,aAAaxiB,GAAG8vB,IAAI,CAACzmD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEwiB,0BAA0BxiB,EAAEyiB,aAAaziB,EAAE0U,gBAAW,EAAO,IAAIrU,EAAE,WAAW,SAASP,IAAIU,KAAKkiB,aAAa,GAAGliB,KAAKmiB,aAAY,EAAG,OAAO7iB,EAAEQ,UAAUI,QAAQ,WAAWF,KAAKmiB,aAAY,EAAG,IAAI,IAAI7iB,EAAE,EAAEE,EAAEQ,KAAKkiB,aAAa5iB,EAAEE,EAAEoF,OAAOtF,IAAIE,EAAEF,GAAGY,UAAUF,KAAKkiB,aAAatd,OAAO,GAAGtF,EAAEQ,UAAUsiB,SAAS,SAAS9iB,GAAG,OAAOU,KAAKkiB,aAAa/c,KAAK7F,GAAGA,GAAGA,EAAEQ,UAAUuiB,WAAW,SAAS/iB,GAAG,IAAIE,EAAEQ,KAAKkiB,aAAaxd,QAAQpF,IAAI,IAAIE,GAAGQ,KAAKkiB,aAAavM,OAAOnW,EAAE,IAAIF,EAAvY,GAA4Y,SAAS8B,EAAE9B,GAAG,IAAI,IAAIE,EAAE,EAAEK,EAAEP,EAAEE,EAAEK,EAAE+E,OAAOpF,IAAIK,EAAEL,GAAGU,UAAUZ,EAAEsF,OAAO,EAAEpF,EAAE0U,WAAWrU,EAAEL,EAAEyiB,aAAa7gB,EAAE5B,EAAEwiB,0BAA0B,SAAS1iB,GAAG,MAAM,CAACY,QAAQ,WAAW,OAAOkB,EAAE9B,OAAO0mD,KAAK,CAAC1mD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE66B,QAAQ76B,EAAE6hC,UAAU7hC,EAAEymD,SAASzmD,EAAE0mD,OAAO1mD,EAAE4pB,MAAM5pB,EAAEktC,SAASltC,EAAE06B,eAAU,EAAO,IAAIr6B,EAAE,oBAAoBsmD,UAAU/kD,EAAEvB,EAAE,OAAOsmD,UAAUC,UAAU7kD,EAAE1B,EAAE,OAAOsmD,UAAUE,SAAS7mD,EAAE06B,UAAU94B,EAAEklD,SAAS,WAAW9mD,EAAEktC,SAAS,iCAAiC6Z,KAAKnlD,GAAG5B,EAAE4pB,MAAM,CAAC,YAAY,WAAW,SAAS,UAAUk9B,SAAS/kD,GAAG/B,EAAE0mD,OAAO,SAAS3kD,EAAE/B,EAAEymD,SAAS,WAAW1kD,EAAE/B,EAAE6hC,UAAU,CAAC,UAAU,QAAQ,QAAQ,SAASilB,SAAS/kD,GAAG/B,EAAE66B,QAAQ94B,EAAEmD,QAAQ,UAAU,GAAG8hD,KAAK,CAAClnD,EAAEE,KAAK,SAASK,EAAEP,EAAEE,EAAEK,EAAEuB,GAAG,QAAG,IAASvB,IAAIA,EAAE,QAAG,IAASuB,IAAIA,EAAE9B,EAAEsF,QAAQ/E,GAAGP,EAAEsF,OAAO,OAAOtF,EAAEO,GAAGP,EAAEsF,OAAO/E,GAAGP,EAAEsF,OAAOxD,EAAEA,GAAG9B,EAAEsF,OAAOtF,EAAEsF,QAAQtF,EAAEsF,OAAOxD,GAAG9B,EAAEsF,OAAO,IAAI,IAAIrD,EAAE1B,EAAE0B,EAAEH,IAAIG,EAAEjC,EAAEiC,GAAG/B,EAAE,OAAOF,EAAEG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+iB,OAAO/iB,EAAEgjB,aAAahjB,EAAEyK,UAAK,EAAOzK,EAAEyK,KAAK,SAAS3K,EAAEE,EAAE4B,EAAEG,GAAG,OAAOjC,EAAE2K,KAAK3K,EAAE2K,KAAKzK,EAAE4B,EAAEG,GAAG1B,EAAEP,EAAEE,EAAE4B,EAAEG,IAAI/B,EAAEgjB,aAAa3iB,EAAEL,EAAE+iB,OAAO,SAASjjB,EAAEE,GAAG,IAAIK,EAAE,IAAIP,EAAE2P,YAAY3P,EAAEsF,OAAOpF,EAAEoF,QAAQ,OAAO/E,EAAE8M,IAAIrN,GAAGO,EAAE8M,IAAInN,EAAEF,EAAEsF,QAAQ/E,IAAI4mD,KAAK,CAACnnD,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEi6C,mCAA8B,EAAO,IAAIr4C,EAAEvB,EAAE,KAAKL,EAAEi6C,8BAA8B,SAASn6C,GAAG,IAAIE,EAAEF,EAAEgG,OAAOsO,MAAMzR,IAAI7C,EAAEgG,OAAOw0B,MAAMx6B,EAAEgG,OAAOL,EAAE,GAAGpF,EAAE,MAAML,OAAE,EAAOA,EAAE2C,IAAI7C,EAAEiB,KAAK,GAAGgB,EAAEjC,EAAEgG,OAAOsO,MAAMzR,IAAI7C,EAAEgG,OAAOw0B,MAAMx6B,EAAEgG,OAAOL,GAAG1D,GAAG1B,IAAI0B,EAAEkE,UAAU5F,EAAEuB,EAAEgkB,wBAAwBhkB,EAAEiI,gBAAgBxJ,EAAEuB,EAAEgkB,wBAAwBhkB,EAAEkI,wBAAwBo9C,KAAK,CAACpnD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEkjB,cAAcljB,EAAE2L,mBAAc,EAAO,IAAItL,EAAE,WAAW,SAASP,IAAIU,KAAKoL,GAAG,EAAEpL,KAAKqL,GAAG,EAAErL,KAAK2iB,SAAS,IAAIvhB,EAAE,OAAO9B,EAAEqM,WAAW,SAASrM,GAAG,MAAM,CAACA,IAAI,GAAG,IAAIA,IAAI,EAAE,IAAI,IAAIA,IAAIA,EAAEsjB,aAAa,SAAStjB,GAAG,OAAO,IAAIA,EAAE,KAAK,IAAI,IAAIA,EAAE,KAAK,EAAE,IAAIA,EAAE,IAAIA,EAAEQ,UAAU+iB,MAAM,WAAW,IAAIrjB,EAAE,IAAIF,EAAE,OAAOE,EAAE4L,GAAGpL,KAAKoL,GAAG5L,EAAE6L,GAAGrL,KAAKqL,GAAG7L,EAAEmjB,SAAS3iB,KAAK2iB,SAASE,QAAQrjB,GAAGF,EAAEQ,UAAUoZ,UAAU,WAAW,OAAO,SAASlZ,KAAKoL,IAAI9L,EAAEQ,UAAUmZ,OAAO,WAAW,OAAO,UAAUjZ,KAAKoL,IAAI9L,EAAEQ,UAAUgjB,YAAY,WAAW,OAAO,UAAU9iB,KAAKoL,IAAI9L,EAAEQ,UAAUijB,QAAQ,WAAW,OAAO,UAAU/iB,KAAKoL,IAAI9L,EAAEQ,UAAUkZ,YAAY,WAAW,OAAO,WAAWhZ,KAAKoL,IAAI9L,EAAEQ,UAAUsZ,SAAS,WAAW,OAAO,SAASpZ,KAAKqL,IAAI/L,EAAEQ,UAAUqZ,MAAM,WAAW,OAAO,UAAUnZ,KAAKqL,IAAI/L,EAAEQ,UAAUwZ,eAAe,WAAW,OAAO,SAAStZ,KAAKoL,IAAI9L,EAAEQ,UAAUyL,eAAe,WAAW,OAAO,SAASvL,KAAKqL,IAAI/L,EAAEQ,UAAUkjB,QAAQ,WAAW,OAAO,WAAW,SAAShjB,KAAKoL,KAAK9L,EAAEQ,UAAUmjB,QAAQ,WAAW,OAAO,WAAW,SAASjjB,KAAKqL,KAAK/L,EAAEQ,UAAUojB,YAAY,WAAW,OAAO,WAAW,SAASljB,KAAKoL,KAAK,WAAW,SAASpL,KAAKoL,KAAK9L,EAAEQ,UAAUqjB,YAAY,WAAW,OAAO,WAAW,SAASnjB,KAAKqL,KAAK,WAAW,SAASrL,KAAKqL,KAAK/L,EAAEQ,UAAUsjB,YAAY,WAAW,OAAO,IAAI,SAASpjB,KAAKoL,KAAK9L,EAAEQ,UAAUujB,YAAY,WAAW,OAAO,IAAI,SAASrjB,KAAKqL,KAAK/L,EAAEQ,UAAUwjB,mBAAmB,WAAW,OAAO,IAAItjB,KAAKoL,IAAI,IAAIpL,KAAKqL,IAAI/L,EAAEQ,UAAUuZ,WAAW,WAAW,OAAO,SAASrZ,KAAKoL,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIpL,KAAKoL,GAAG,KAAK,SAAS,OAAO,SAASpL,KAAKoL,GAAG,QAAQ,OAAO,IAAI9L,EAAEQ,UAAU2L,WAAW,WAAW,OAAO,SAASzL,KAAKqL,IAAI,KAAK,SAAS,KAAK,SAAS,OAAO,IAAIrL,KAAKqL,GAAG,KAAK,SAAS,OAAO,SAASrL,KAAKqL,GAAG,QAAQ,OAAO,IAAI/L,EAAEQ,UAAUyjB,iBAAiB,WAAW,OAAO,UAAUvjB,KAAKqL,IAAI/L,EAAEQ,UAAU0jB,eAAe,WAAWxjB,KAAK2iB,SAASc,UAAUzjB,KAAKqL,KAAK,UAAUrL,KAAKqL,IAAI,WAAW/L,EAAEQ,UAAU4jB,kBAAkB,WAAW,GAAG,UAAU1jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,OAAO,SAAS3jB,KAAK2iB,SAASgB,gBAAgB,KAAK,SAAS,KAAK,SAAS,OAAO,IAAI3jB,KAAK2iB,SAASgB,eAAe,KAAK,SAAS,OAAO,SAAS3jB,KAAK2iB,SAASgB,eAAe,QAAQ,OAAO3jB,KAAKqZ,aAAa,OAAOrZ,KAAKqZ,cAAc/Z,EAAEQ,UAAU8jB,sBAAsB,WAAW,OAAO,UAAU5jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,SAAS3jB,KAAK2iB,SAASgB,eAAe3jB,KAAKsZ,kBAAkBha,EAAEQ,UAAU+jB,oBAAoB,WAAW,OAAO,UAAU7jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,WAAW,SAAS3jB,KAAK2iB,SAASgB,gBAAgB3jB,KAAKgjB,WAAW1jB,EAAEQ,UAAUgkB,wBAAwB,WAAW,OAAO,UAAU9jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,WAAW,SAAS3jB,KAAK2iB,SAASgB,iBAAiB,WAAW,SAAS3jB,KAAK2iB,SAASgB,gBAAgB3jB,KAAKkjB,eAAe5jB,EAAEQ,UAAUikB,wBAAwB,WAAW,OAAO,UAAU/jB,KAAKqL,KAAKrL,KAAK2iB,SAASgB,eAAe,IAAI,SAAS3jB,KAAK2iB,SAASgB,gBAAgB3jB,KAAKojB,eAAe9jB,EAAEQ,UAAUkkB,kBAAkB,WAAW,OAAO,UAAUhkB,KAAKoL,GAAG,UAAUpL,KAAKqL,GAAGrL,KAAK2iB,SAASsB,eAAe,EAAE,GAAG3kB,EAAr+F,GAA0+FE,EAAE2L,cAActL,EAAE,IAAIuB,EAAE,WAAW,SAAS9B,EAAEA,EAAEE,QAAG,IAASF,IAAIA,EAAE,QAAG,IAASE,IAAIA,GAAG,GAAGQ,KAAKikB,eAAe3kB,EAAEU,KAAK2jB,eAAenkB,EAAE,OAAOF,EAAEQ,UAAU+iB,MAAM,WAAW,OAAO,IAAIvjB,EAAEU,KAAKikB,eAAejkB,KAAK2jB,iBAAiBrkB,EAAEQ,UAAU2jB,QAAQ,WAAW,OAAO,IAAIzjB,KAAKikB,gBAAgB3kB,EAAtQ,GAA2QE,EAAEkjB,cAActhB,GAAGulD,KAAK,CAACrnD,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEonD,qBAAqBpnD,EAAEqnD,OAAOrnD,EAAEsnD,qBAAgB,EAAO,IAAI1lD,EAAEvB,EAAE,MAAM0B,EAAE1B,EAAE,MAAM2B,EAAE3B,EAAE,KAAK+C,EAAE/C,EAAE,KAAK4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,MAAML,EAAEsnD,gBAAgB,WAAW,IAAIxiD,EAAE,WAAW,SAAShF,EAAEA,EAAEE,EAAEK,GAAGG,KAAK+mD,eAAeznD,EAAEU,KAAKuzB,gBAAgB/zB,EAAEQ,KAAK8tB,eAAejuB,EAAEG,KAAK2T,MAAM,EAAE3T,KAAK85B,MAAM,EAAE95B,KAAKiF,EAAE,EAAEjF,KAAKgF,EAAE,EAAEhF,KAAKylD,OAAO,EAAEzlD,KAAKwlD,OAAO,EAAExlD,KAAK0lD,iBAAiBnkD,EAAEsgC,kBAAkBhf,QAAQ7iB,KAAK2lD,aAAa9jD,EAAEijD,gBAAgB9kD,KAAK8/B,QAAQ,GAAG9/B,KAAKgnD,UAAUxlD,EAAE+O,SAAS+T,aAAa,CAAC,EAAE1hB,EAAEuiB,eAAeviB,EAAEsiB,gBAAgBtiB,EAAEyG,iBAAiBrJ,KAAKinD,gBAAgBzlD,EAAE+O,SAAS+T,aAAa,CAAC,EAAE1hB,EAAEqiB,qBAAqBriB,EAAEoiB,sBAAsBpiB,EAAE0G,uBAAuBtJ,KAAKknD,MAAMlnD,KAAK8tB,eAAevtB,KAAKP,KAAKmnD,MAAMnnD,KAAK8tB,eAAextB,KAAKN,KAAK4T,MAAM,IAAIxS,EAAEq1C,aAAaz2C,KAAKonD,wBAAwBpnD,KAAKmnD,QAAQnnD,KAAKsjC,UAAU,EAAEtjC,KAAK24C,aAAa34C,KAAKmnD,MAAM,EAAEnnD,KAAK+4B,gBAAgB,OAAOz5B,EAAEQ,UAAU8mC,YAAY,SAAStnC,GAAG,OAAOA,GAAGU,KAAKgnD,UAAU57C,GAAG9L,EAAE8L,GAAGpL,KAAKgnD,UAAU37C,GAAG/L,EAAE+L,GAAGrL,KAAKgnD,UAAUrkC,SAASrjB,EAAEqjB,WAAW3iB,KAAKgnD,UAAU57C,GAAG,EAAEpL,KAAKgnD,UAAU37C,GAAG,EAAErL,KAAKgnD,UAAUrkC,SAAS,IAAI9d,EAAE6d,eAAe1iB,KAAKgnD,WAAW1nD,EAAEQ,UAAUunD,kBAAkB,SAAS/nD,GAAG,OAAOA,GAAGU,KAAKinD,gBAAgB77C,GAAG9L,EAAE8L,GAAGpL,KAAKinD,gBAAgB57C,GAAG/L,EAAE+L,GAAGrL,KAAKinD,gBAAgBtkC,SAASrjB,EAAEqjB,WAAW3iB,KAAKinD,gBAAgB77C,GAAG,EAAEpL,KAAKinD,gBAAgB57C,GAAG,EAAErL,KAAKinD,gBAAgBtkC,SAAS,IAAI9d,EAAE6d,eAAe1iB,KAAKinD,iBAAiB3nD,EAAEQ,UAAU8hC,aAAa,SAAStiC,EAAEE,GAAG,OAAO,IAAI+B,EAAE+lD,WAAWtnD,KAAK8tB,eAAevtB,KAAKP,KAAK4mC,YAAYtnC,GAAGE,IAAIC,OAAOC,eAAeJ,EAAEQ,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAK+mD,gBAAgB/mD,KAAK4T,MAAM2zC,UAAUvnD,KAAKmnD,OAAOjlD,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,qBAAqB,CAACqC,IAAI,WAAW,IAAI7C,EAAEU,KAAK85B,MAAM95B,KAAKiF,EAAEjF,KAAK2T,MAAM,OAAOrU,GAAG,GAAGA,EAAEU,KAAKmnD,OAAOjlD,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUsnD,wBAAwB,SAAS9nD,GAAG,IAAIU,KAAK+mD,eAAe,OAAOznD,EAAE,IAAIO,EAAEP,EAAEU,KAAKuzB,gBAAgBkB,QAAQ+yB,WAAW,OAAO3nD,EAAEL,EAAEsnD,gBAAgBtnD,EAAEsnD,gBAAgBjnD,GAAGP,EAAEQ,UAAU2nD,iBAAiB,SAASnoD,GAAG,GAAG,IAAIU,KAAK4T,MAAMhP,OAAO,MAAC,IAAStF,IAAIA,EAAEiC,EAAEsgC,mBAAmB,IAAI,IAAIriC,EAAEQ,KAAKmnD,MAAM3nD,KAAKQ,KAAK4T,MAAMzO,KAAKnF,KAAK4hC,aAAatiC,MAAMA,EAAEQ,UAAUW,MAAM,WAAWT,KAAK2T,MAAM,EAAE3T,KAAK85B,MAAM,EAAE95B,KAAKiF,EAAE,EAAEjF,KAAKgF,EAAE,EAAEhF,KAAK4T,MAAM,IAAIxS,EAAEq1C,aAAaz2C,KAAKonD,wBAAwBpnD,KAAKmnD,QAAQnnD,KAAKsjC,UAAU,EAAEtjC,KAAK24C,aAAa34C,KAAKmnD,MAAM,EAAEnnD,KAAK+4B,iBAAiBz5B,EAAEQ,UAAUY,OAAO,SAASpB,EAAEE,GAAG,IAAIK,EAAEG,KAAK4mC,YAAYrlC,EAAEsgC,mBAAmBzgC,EAAEpB,KAAKonD,wBAAwB5nD,GAAG,GAAG4B,EAAEpB,KAAK4T,MAAM2zC,YAAYvnD,KAAK4T,MAAM2zC,UAAUnmD,GAAGpB,KAAK4T,MAAMhP,OAAO,EAAE,CAAC,GAAG5E,KAAKknD,MAAM5nD,EAAE,IAAI,IAAIkC,EAAE,EAAEA,EAAExB,KAAK4T,MAAMhP,OAAOpD,IAAIxB,KAAK4T,MAAMzR,IAAIX,GAAGd,OAAOpB,EAAEO,GAAG,IAAI+C,EAAE,EAAE,GAAG5C,KAAKmnD,MAAM3nD,EAAE,IAAI,IAAIiC,EAAEzB,KAAKmnD,MAAM1lD,EAAEjC,EAAEiC,IAAIzB,KAAK4T,MAAMhP,OAAOpF,EAAEQ,KAAK85B,QAAQ95B,KAAKuzB,gBAAgBkB,QAAQ8kB,YAAYv5C,KAAK4T,MAAMzO,KAAK,IAAI5D,EAAE+lD,WAAWhoD,EAAEO,IAAIG,KAAK85B,MAAM,GAAG95B,KAAK4T,MAAMhP,QAAQ5E,KAAK85B,MAAM95B,KAAKiF,EAAErC,EAAE,GAAG5C,KAAK85B,QAAQl3B,IAAI5C,KAAK2T,MAAM,GAAG3T,KAAK2T,SAAS3T,KAAK4T,MAAMzO,KAAK,IAAI5D,EAAE+lD,WAAWhoD,EAAEO,UAAU,IAAI4B,EAAEzB,KAAKmnD,MAAM1lD,EAAEjC,EAAEiC,IAAIzB,KAAK4T,MAAMhP,OAAOpF,EAAEQ,KAAK85B,QAAQ95B,KAAK4T,MAAMhP,OAAO5E,KAAK85B,MAAM95B,KAAKiF,EAAE,EAAEjF,KAAK4T,MAAM2U,OAAOvoB,KAAK85B,QAAQ95B,KAAK2T,UAAU,GAAGvS,EAAEpB,KAAK4T,MAAM2zC,UAAU,CAAC,IAAIvlD,EAAEhC,KAAK4T,MAAMhP,OAAOxD,EAAEY,EAAE,IAAIhC,KAAK4T,MAAMujC,UAAUn1C,GAAGhC,KAAK85B,MAAMz4B,KAAKC,IAAItB,KAAK85B,MAAM93B,EAAE,GAAGhC,KAAK2T,MAAMtS,KAAKC,IAAItB,KAAK2T,MAAM3R,EAAE,GAAGhC,KAAKylD,OAAOpkD,KAAKC,IAAItB,KAAKylD,OAAOzjD,EAAE,IAAIhC,KAAK4T,MAAM2zC,UAAUnmD,EAAEpB,KAAKgF,EAAE3D,KAAK2N,IAAIhP,KAAKgF,EAAE1F,EAAE,GAAGU,KAAKiF,EAAE5D,KAAK2N,IAAIhP,KAAKiF,EAAEzF,EAAE,GAAGoD,IAAI5C,KAAKiF,GAAGrC,GAAG5C,KAAKwlD,OAAOnkD,KAAK2N,IAAIhP,KAAKwlD,OAAOlmD,EAAE,GAAGU,KAAKsjC,UAAU,EAAE,GAAGtjC,KAAK24C,aAAan5C,EAAE,EAAEQ,KAAK0nD,mBAAmB1nD,KAAK2nD,QAAQroD,EAAEE,GAAGQ,KAAKknD,MAAM5nD,GAAG,IAAIkC,EAAE,EAAEA,EAAExB,KAAK4T,MAAMhP,OAAOpD,IAAIxB,KAAK4T,MAAMzR,IAAIX,GAAGd,OAAOpB,EAAEO,GAAGG,KAAKknD,MAAM5nD,EAAEU,KAAKmnD,MAAM3nD,GAAGC,OAAOC,eAAeJ,EAAEQ,UAAU,mBAAmB,CAACqC,IAAI,WAAW,OAAOnC,KAAK+mD,iBAAiB/mD,KAAKuzB,gBAAgBkB,QAAQ8kB,aAAar3C,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU6nD,QAAQ,SAASroD,EAAEE,GAAGQ,KAAKknD,QAAQ5nD,IAAIA,EAAEU,KAAKknD,MAAMlnD,KAAK4nD,cAActoD,EAAEE,GAAGQ,KAAK6nD,eAAevoD,EAAEE,KAAKF,EAAEQ,UAAU8nD,cAAc,SAAStoD,EAAEE,GAAG,IAAIK,EAAE4B,EAAEqmD,6BAA6B9nD,KAAK4T,MAAM5T,KAAKknD,MAAM5nD,EAAEU,KAAK85B,MAAM95B,KAAKiF,EAAEjF,KAAK4mC,YAAYrlC,EAAEsgC,oBAAoB,GAAGhiC,EAAE+E,OAAO,EAAE,CAAC,IAAIxD,EAAEK,EAAEsmD,4BAA4B/nD,KAAK4T,MAAM/T,GAAG4B,EAAEumD,2BAA2BhoD,KAAK4T,MAAMxS,EAAE6mD,QAAQjoD,KAAKkoD,4BAA4B5oD,EAAEE,EAAE4B,EAAE+mD,gBAAgB7oD,EAAEQ,UAAUooD,4BAA4B,SAAS5oD,EAAEE,EAAEK,GAAG,IAAI,IAAIuB,EAAEpB,KAAK4mC,YAAYrlC,EAAEsgC,mBAAmBrgC,EAAE3B,EAAE2B,KAAK,GAAG,IAAIxB,KAAK85B,OAAO95B,KAAKiF,EAAE,GAAGjF,KAAKiF,IAAIjF,KAAK4T,MAAMhP,OAAOpF,GAAGQ,KAAK4T,MAAMzO,KAAK,IAAI5D,EAAE+lD,WAAWhoD,EAAE8B,MAAMpB,KAAK2T,QAAQ3T,KAAK85B,OAAO95B,KAAK2T,QAAQ3T,KAAK85B,SAAS95B,KAAKylD,OAAOpkD,KAAKC,IAAItB,KAAKylD,OAAO5lD,EAAE,IAAIP,EAAEQ,UAAU+nD,eAAe,SAASvoD,EAAEE,GAAG,IAAI,IAAIK,EAAEG,KAAK4mC,YAAYrlC,EAAEsgC,mBAAmBzgC,EAAE,GAAGI,EAAE,EAAEoB,EAAE5C,KAAK4T,MAAMhP,OAAO,EAAEhC,GAAG,EAAEA,IAAI,CAAC,IAAIZ,EAAEhC,KAAK4T,MAAMzR,IAAIS,GAAG,MAAMZ,IAAIA,EAAEyD,WAAWzD,EAAEuuC,oBAAoBjxC,GAAG,CAAC,IAAI,IAAIuC,EAAE,CAACG,GAAGA,EAAEyD,WAAW7C,EAAE,GAAGZ,EAAEhC,KAAK4T,MAAMzR,MAAMS,GAAGf,EAAE6mB,QAAQ1mB,GAAG,IAAI6C,EAAE7E,KAAK85B,MAAM95B,KAAKiF,EAAE,KAAKJ,GAAGjC,GAAGiC,EAAEjC,EAAEf,EAAE+C,QAAQ,CAAC,IAAIN,EAAEE,EAAE3C,EAAEA,EAAE+C,OAAO,GAAG2rC,mBAAmBvqC,EAAEvE,EAAE2mD,+BAA+BvmD,EAAE7B,KAAKknD,MAAM5nD,GAAG2C,EAAE+D,EAAEpB,OAAO/C,EAAE+C,OAAON,EAAE,IAAItE,KAAK85B,OAAO95B,KAAKiF,IAAIjF,KAAK4T,MAAMhP,OAAO,EAAEvD,KAAKC,IAAI,EAAEtB,KAAKiF,EAAEjF,KAAK4T,MAAM2zC,UAAUtlD,GAAGZ,KAAKC,IAAI,EAAEtB,KAAK4T,MAAMhP,OAAO5E,KAAK4T,MAAM2zC,UAAUtlD,GAAG,IAAI,IAAIU,EAAE,GAAGmC,EAAE,EAAEA,EAAE7C,EAAE6C,IAAI,CAAC,IAAI4G,EAAE1L,KAAK4hC,aAAargC,EAAEsgC,mBAAkB,GAAIl/B,EAAEwC,KAAKuG,GAAG/I,EAAEiC,OAAO,IAAIxD,EAAE+D,KAAK,CAACJ,MAAMnC,EAAEf,EAAE+C,OAAOpD,EAAE6mD,SAAS1lD,IAAInB,GAAGmB,EAAEiC,QAAQ/C,EAAEsD,KAAKgf,MAAMtiB,EAAEc,GAAG,IAAIsC,EAAEe,EAAEpB,OAAO,EAAEuV,EAAEnU,EAAEf,GAAG,IAAIkV,IAAIA,EAAEnU,IAAIf,IAAI,IAAI,IAAI+wB,EAAEn0B,EAAE+C,OAAO3C,EAAE,EAAEF,EAAEyC,EAAEwxB,GAAG,GAAG,CAAC,IAAIlqB,EAAEzK,KAAK2N,IAAIjN,EAAEoY,GAAG,GAAGtY,EAAEoD,GAAGqjD,cAAczmD,EAAEm0B,GAAGj0B,EAAE+J,EAAEqO,EAAErO,EAAEA,GAAE,GAAI,IAAIqO,GAAGrO,KAAKqO,EAAEnU,IAAIf,IAAI,IAAIlD,GAAG+J,GAAG,CAACkqB,IAAI,IAAI3b,EAAEhZ,KAAKC,IAAI00B,EAAE,GAAGj0B,EAAEN,EAAE8mD,4BAA4B1mD,EAAEwY,EAAEra,KAAKknD,QAAQ,IAAIpiD,EAAE,EAAEA,EAAEjD,EAAE+C,OAAOE,IAAIkB,EAAElB,GAAGxF,GAAGuC,EAAEiD,GAAG0jD,QAAQxiD,EAAElB,GAAGjF,GAAG,IAAI,IAAIo2B,EAAEh0B,EAAEqC,EAAE2xB,KAAK,GAAG,IAAIj2B,KAAK85B,MAAM95B,KAAKiF,EAAEzF,EAAE,GAAGQ,KAAKiF,IAAIjF,KAAK4T,MAAM2U,QAAQvoB,KAAK85B,QAAQ95B,KAAK2T,SAAS3T,KAAK85B,MAAMz4B,KAAK2N,IAAIhP,KAAK4T,MAAM2zC,UAAUvnD,KAAK4T,MAAMhP,OAAOpD,GAAGhC,IAAIQ,KAAK85B,QAAQ95B,KAAK2T,OAAO3T,KAAK2T,QAAQ3T,KAAK85B,SAAS95B,KAAKylD,OAAOpkD,KAAK2N,IAAIhP,KAAKylD,OAAOxjD,EAAEjC,KAAK85B,MAAMt6B,EAAE,KAAK,GAAG4B,EAAEwD,OAAO,EAAE,CAAC,IAAIsxB,EAAE,GAAGC,EAAE,GAAG,IAAIrxB,EAAE,EAAEA,EAAE9E,KAAK4T,MAAMhP,OAAOE,IAAIqxB,EAAEhxB,KAAKnF,KAAK4T,MAAMzR,IAAI2C,IAAI,IAAIsxB,EAAEp2B,KAAK4T,MAAMhP,OAAOoV,EAAEoc,EAAE,EAAEpxB,EAAE,EAAEqxB,EAAEj1B,EAAE4D,GAAGhF,KAAK4T,MAAMhP,OAAOvD,KAAK2N,IAAIhP,KAAK4T,MAAM2zC,UAAUvnD,KAAK4T,MAAMhP,OAAOpD,GAAG,IAAI80B,EAAE,EAAE,IAAIxxB,EAAEzD,KAAK2N,IAAIhP,KAAK4T,MAAM2zC,UAAU,EAAEnxB,EAAE50B,EAAE,GAAGsD,GAAG,EAAEA,IAAI,GAAGuxB,GAAGA,EAAEtxB,MAAMiV,EAAEsc,EAAE,CAAC,IAAI,IAAIC,EAAEF,EAAEgyB,SAASzjD,OAAO,EAAE2xB,GAAG,EAAEA,IAAIv2B,KAAK4T,MAAMjH,IAAI7H,IAAIuxB,EAAEgyB,SAAS9xB,IAAIzxB,IAAIoxB,EAAE/wB,KAAK,CAACgnC,MAAMnyB,EAAE,EAAE4iB,OAAOvG,EAAEgyB,SAASzjD,SAAS0xB,GAAGD,EAAEgyB,SAASzjD,OAAOyxB,EAAEj1B,IAAI4D,QAAQhF,KAAK4T,MAAMjH,IAAI7H,EAAEqxB,EAAEnc,MAAM,IAAIwc,EAAE,EAAE,IAAI1xB,EAAEoxB,EAAEtxB,OAAO,EAAEE,GAAG,EAAEA,IAAIoxB,EAAEpxB,GAAGqnC,OAAO3V,EAAEx2B,KAAK4T,MAAMgjC,gBAAgB7jC,KAAKmjB,EAAEpxB,IAAI0xB,GAAGN,EAAEpxB,GAAG83B,OAAO,IAAInG,EAAEp1B,KAAKC,IAAI,EAAE80B,EAAE50B,EAAExB,KAAK4T,MAAM2zC,WAAW9wB,EAAE,GAAGz2B,KAAK4T,MAAMijC,cAAc9jC,KAAK0jB,KAAKn3B,EAAEQ,UAAUgwB,yBAAyB,SAASxwB,EAAEE,EAAEK,GAAG,SAAI,IAASA,IAAIA,GAAE,GAAIL,GAAG,CAAC,IAAI4B,EAAEpB,KAAK4T,MAAMzR,IAAI7C,GAAG,IAAI8B,EAAE,MAAM,EAAE,GAAG,GAAG,IAAI,IAAIG,EAAE1B,EAAEuB,EAAEmvC,mBAAmBnvC,EAAEwD,OAAOpD,EAAE,EAAEA,EAAED,IAAIC,EAAE,GAAGJ,EAAEe,IAAIX,GAAGoB,EAAEiiB,yBAAyBrlB,GAAG4B,EAAEe,IAAIX,GAAGoB,EAAEgiB,sBAAsBhgB,QAAQ,GAAGpF,EAAE,EAAE,MAAM,CAACF,EAAEkC,GAAGlC,IAAI,MAAM,CAACA,EAAE,IAAIA,EAAEQ,UAAUypB,4BAA4B,SAASjqB,EAAEE,EAAEK,EAAEuB,QAAG,IAASvB,IAAIA,EAAE,GAAG,IAAI0B,EAAEvB,KAAK4T,MAAMzR,IAAI7C,GAAG,OAAOiC,EAAEA,EAAEmE,kBAAkBlG,EAAEK,EAAEuB,GAAG,IAAI9B,EAAEQ,UAAUy1C,uBAAuB,SAASj2C,GAAG,IAAI,IAAIE,EAAEF,EAAEO,EAAEP,EAAEE,EAAE,GAAGQ,KAAK4T,MAAMzR,IAAI3C,GAAGiG,WAAWjG,IAAI,KAAKK,EAAE,EAAEG,KAAK4T,MAAMhP,QAAQ5E,KAAK4T,MAAMzR,IAAItC,EAAE,GAAG4F,WAAW5F,IAAI,MAAM,CAACovB,MAAMzvB,EAAEg2C,KAAK31C,IAAIP,EAAEQ,UAAUi5B,cAAc,SAASz5B,GAAG,IAAI,MAAMA,EAAEU,KAAKqkD,KAAK/kD,KAAKA,EAAEU,KAAKskD,SAAShlD,KAAKU,KAAKqkD,KAAK,GAAG/kD,EAAE,GAAGA,EAAEU,KAAKknD,MAAM5nD,GAAGU,KAAKuzB,gBAAgBkB,QAAQg0B,aAAazoD,KAAKqkD,KAAK/kD,IAAG,GAAIA,EAAEQ,UAAUwkD,SAAS,SAAShlD,GAAG,IAAI,MAAMA,IAAIA,EAAEU,KAAKgF,IAAIhF,KAAKqkD,OAAO/kD,IAAIA,EAAE,IAAI,OAAOA,GAAGU,KAAKknD,MAAMlnD,KAAKknD,MAAM,EAAE5nD,EAAE,EAAE,EAAEA,GAAGA,EAAEQ,UAAUmkD,SAAS,SAAS3kD,GAAG,IAAI,MAAMA,IAAIA,EAAEU,KAAKgF,IAAIhF,KAAKqkD,OAAO/kD,IAAIA,EAAEU,KAAKknD,QAAQ,OAAO5nD,GAAGU,KAAKknD,MAAMlnD,KAAKknD,MAAM,EAAE5nD,EAAE,EAAE,EAAEA,GAAGA,EAAEQ,UAAUigC,UAAU,SAASzgC,GAAG,IAAIE,EAAEQ,KAAKH,EAAE,IAAImC,EAAE0mD,OAAOppD,GAAG,OAAOU,KAAK8/B,QAAQ36B,KAAKtF,GAAGA,EAAEuiB,SAASpiB,KAAK4T,MAAMg8B,QAAO,SAAUtwC,GAAGO,EAAE8oD,MAAMrpD,EAAEO,EAAE8oD,KAAK,GAAG9oD,EAAEK,cAAcL,EAAEuiB,SAASpiB,KAAK4T,MAAMg1C,UAAS,SAAUtpD,GAAGO,EAAE8oD,MAAMrpD,EAAE6sC,QAAQtsC,EAAE8oD,MAAMrpD,EAAEs9B,YAAY/8B,EAAEuiB,SAASpiB,KAAK4T,MAAMi1C,UAAS,SAAUvpD,GAAGO,EAAE8oD,MAAMrpD,EAAE6sC,OAAOtsC,EAAE8oD,KAAKrpD,EAAE6sC,MAAM7sC,EAAEs9B,QAAQ/8B,EAAEK,UAAUL,EAAE8oD,KAAKrpD,EAAE6sC,QAAQtsC,EAAE8oD,MAAMrpD,EAAEs9B,YAAY/8B,EAAEuiB,SAASviB,EAAEipD,WAAU,WAAY,OAAOtpD,EAAEupD,cAAclpD,OAAOA,GAAGP,EAAEQ,UAAUipD,cAAc,SAASzpD,GAAGU,KAAK8/B,QAAQnqB,OAAO3V,KAAK8/B,QAAQp7B,QAAQpF,GAAG,IAAIA,EAAEQ,UAAU+uB,SAAS,SAASvvB,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,OAAO,IAAIiD,EAAExE,KAAKV,EAAEE,EAAEK,EAAEuB,EAAEG,IAAIjC,EAAzzP,GAA8zPE,EAAEqnD,OAAOviD,EAAE,IAAIE,EAAE,WAAW,SAASlF,EAAEA,EAAEE,EAAEK,EAAEuB,EAAEG,EAAEC,QAAG,IAAS3B,IAAIA,EAAE,QAAG,IAASuB,IAAIA,EAAE9B,EAAEsU,MAAMhP,aAAQ,IAASrD,IAAIA,EAAE,QAAG,IAASC,IAAIA,EAAE,GAAGxB,KAAKimC,QAAQ3mC,EAAEU,KAAKgpD,WAAWxpD,EAAEQ,KAAK+2C,YAAYl3C,EAAEG,KAAKipD,UAAU7nD,EAAEpB,KAAKkpD,eAAe3nD,EAAEvB,KAAKmpD,aAAa3nD,EAAExB,KAAK+2C,YAAY,IAAI/2C,KAAK+2C,YAAY,GAAG/2C,KAAKipD,UAAUjpD,KAAKimC,QAAQryB,MAAMhP,SAAS5E,KAAKipD,UAAUjpD,KAAKimC,QAAQryB,MAAMhP,QAAQ5E,KAAKopD,SAASppD,KAAK+2C,YAAY,OAAOz3C,EAAEQ,UAAUgvB,QAAQ,WAAW,OAAO9uB,KAAKopD,SAASppD,KAAKipD,WAAW3pD,EAAEQ,UAAUivB,KAAK,WAAW,IAAIzvB,EAAEU,KAAKimC,QAAQsP,uBAAuBv1C,KAAKopD,UAAU9pD,EAAE2vB,MAAMjvB,KAAK+2C,YAAY/2C,KAAKkpD,iBAAiB5pD,EAAE2vB,MAAMjvB,KAAK+2C,YAAY/2C,KAAKkpD,gBAAgB5pD,EAAEk2C,KAAKx1C,KAAKipD,UAAUjpD,KAAKmpD,eAAe7pD,EAAEk2C,KAAKx1C,KAAKipD,UAAUjpD,KAAKmpD,cAAc7pD,EAAE2vB,MAAM5tB,KAAKC,IAAIhC,EAAE2vB,MAAM,GAAG3vB,EAAEk2C,KAAKn0C,KAAK2N,IAAI1P,EAAEk2C,KAAKx1C,KAAKimC,QAAQryB,MAAMhP,QAAQ,IAAI,IAAIpF,EAAE,GAAGK,EAAEP,EAAE2vB,MAAMpvB,GAAGP,EAAEk2C,OAAO31C,EAAEL,GAAGQ,KAAKimC,QAAQ1c,4BAA4B1pB,EAAEG,KAAKgpD,YAAY,OAAOhpD,KAAKopD,SAAS9pD,EAAEk2C,KAAK,EAAE,CAACpwC,MAAM9F,EAAE8e,QAAQ5e,IAAIF,EAAz7B,GAA87BE,EAAEonD,qBAAqBpiD,GAAG6kD,KAAK,CAAC/pD,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE8nD,WAAW9nD,EAAEqiC,uBAAkB,EAAO,IAAIzgC,EAAEvB,EAAE,KAAK0B,EAAE1B,EAAE,KAAK2B,EAAE3B,EAAE,KAAK+C,EAAE/C,EAAE,MAAML,EAAEqiC,kBAAkBpiC,OAAOisB,OAAO,IAAI9oB,EAAEuI,eAAe,IAAI1J,EAAE,WAAW,SAASnC,EAAEA,EAAEE,EAAEK,QAAG,IAASA,IAAIA,GAAE,GAAIG,KAAKyF,UAAU5F,EAAEG,KAAKspD,UAAU,GAAGtpD,KAAKupD,eAAe,GAAGvpD,KAAKm7C,MAAM,IAAItsC,YAAY,EAAEvP,GAAG,IAAI,IAAI8B,EAAE5B,GAAGgC,EAAE+O,SAAS+T,aAAa,CAAC,EAAE/iB,EAAE4jB,eAAe5jB,EAAE2jB,gBAAgB3jB,EAAE8H,iBAAiBzG,EAAE,EAAEA,EAAEtD,IAAIsD,EAAE5C,KAAKwoD,QAAQ5lD,EAAExB,GAAGpB,KAAK4E,OAAOtF,EAAE,OAAOA,EAAEQ,UAAUqC,IAAI,SAAS7C,GAAG,IAAIE,EAAEQ,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGO,EAAE,QAAQL,EAAE,MAAM,CAACQ,KAAKm7C,MAAM,EAAE77C,EAAE,GAAG,QAAQE,EAAEQ,KAAKspD,UAAUhqD,GAAGO,EAAEuB,EAAEqjB,oBAAoB5kB,GAAG,GAAGL,GAAG,GAAG,QAAQA,EAAEQ,KAAKspD,UAAUhqD,GAAGolB,WAAW1kB,KAAKspD,UAAUhqD,GAAGsF,OAAO,GAAG/E,IAAIP,EAAEQ,UAAU6M,IAAI,SAASrN,EAAEE,GAAGQ,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGE,EAAE+B,EAAEojB,sBAAsBnlB,EAAE+B,EAAEqjB,sBAAsBhgB,OAAO,GAAG5E,KAAKspD,UAAUhqD,GAAGE,EAAE,GAAGQ,KAAKm7C,MAAM,EAAE77C,EAAE,GAAG,QAAQA,EAAEE,EAAE+B,EAAEsjB,wBAAwB,IAAI7kB,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGE,EAAE+B,EAAEqjB,sBAAsBF,WAAW,GAAGllB,EAAE+B,EAAEsjB,wBAAwB,IAAIvlB,EAAEQ,UAAUwe,SAAS,SAAShf,GAAG,OAAOU,KAAKm7C,MAAM,EAAE77C,EAAE,IAAI,IAAIA,EAAEQ,UAAU60C,SAAS,SAASr1C,GAAG,OAAO,SAASU,KAAKm7C,MAAM,EAAE77C,EAAE,IAAIA,EAAEQ,UAAUiwB,MAAM,SAASzwB,GAAG,OAAOU,KAAKm7C,MAAM,EAAE77C,EAAE,IAAIA,EAAEQ,UAAUwwC,MAAM,SAAShxC,GAAG,OAAOU,KAAKm7C,MAAM,EAAE77C,EAAE,IAAIA,EAAEQ,UAAU8jD,WAAW,SAAStkD,GAAG,OAAO,QAAQU,KAAKm7C,MAAM,EAAE77C,EAAE,IAAIA,EAAEQ,UAAU2qC,aAAa,SAASnrC,GAAG,IAAIE,EAAEQ,KAAKm7C,MAAM,EAAE77C,EAAE,GAAG,OAAO,QAAQE,EAAEQ,KAAKspD,UAAUhqD,GAAGolB,WAAW1kB,KAAKspD,UAAUhqD,GAAGsF,OAAO,GAAG,QAAQpF,GAAGF,EAAEQ,UAAU0kB,WAAW,SAASllB,GAAG,OAAO,QAAQU,KAAKm7C,MAAM,EAAE77C,EAAE,IAAIA,EAAEQ,UAAU6wC,UAAU,SAASrxC,GAAG,IAAIE,EAAEQ,KAAKm7C,MAAM,EAAE77C,EAAE,GAAG,OAAO,QAAQE,EAAEQ,KAAKspD,UAAUhqD,GAAG,QAAQE,EAAE4B,EAAEqjB,oBAAoB,QAAQjlB,GAAG,IAAIF,EAAEQ,UAAU+T,SAAS,SAASvU,EAAEE,GAAG,IAAIK,EAAE,EAAEP,EAAE,OAAOE,EAAE4e,QAAQpe,KAAKm7C,MAAMt7C,EAAE,GAAGL,EAAE4L,GAAGpL,KAAKm7C,MAAMt7C,EAAE,GAAGL,EAAE6L,GAAGrL,KAAKm7C,MAAMt7C,EAAE,GAAG,QAAQL,EAAE4e,UAAU5e,EAAE6kB,aAAarkB,KAAKspD,UAAUhqD,IAAI,UAAUE,EAAE6L,KAAK7L,EAAEmjB,SAAS3iB,KAAKupD,eAAejqD,IAAIE,GAAGF,EAAEQ,UAAU0oD,QAAQ,SAASlpD,EAAEE,GAAG,QAAQA,EAAE4e,UAAUpe,KAAKspD,UAAUhqD,GAAGE,EAAE6kB,cAAc,UAAU7kB,EAAE6L,KAAKrL,KAAKupD,eAAejqD,GAAGE,EAAEmjB,UAAU3iB,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGE,EAAE4e,QAAQpe,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGE,EAAE4L,GAAGpL,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGE,EAAE6L,IAAI/L,EAAEQ,UAAUwjD,qBAAqB,SAAShkD,EAAEE,EAAEK,EAAEuB,EAAEG,EAAEC,GAAG,UAAUD,IAAIvB,KAAKupD,eAAejqD,GAAGkC,GAAGxB,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGE,EAAEK,GAAG,GAAGG,KAAKm7C,MAAM,EAAE77C,EAAE,GAAG8B,EAAEpB,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGiC,GAAGjC,EAAEQ,UAAU4jD,mBAAmB,SAASpkD,EAAEE,GAAG,IAAIK,EAAEG,KAAKm7C,MAAM,EAAE77C,EAAE,GAAG,QAAQO,EAAEG,KAAKspD,UAAUhqD,IAAI8B,EAAEqjB,oBAAoBjlB,IAAI,QAAQK,GAAGG,KAAKspD,UAAUhqD,GAAG8B,EAAEqjB,oBAAoB,QAAQ5kB,GAAGuB,EAAEqjB,oBAAoBjlB,GAAGK,IAAI,QAAQA,GAAG,SAASA,EAAEL,EAAE,GAAG,GAAGQ,KAAKm7C,MAAM,EAAE77C,EAAE,GAAGO,IAAIP,EAAEQ,UAAU2jD,YAAY,SAASnkD,EAAEE,EAAEK,EAAEuB,GAAG,IAAI9B,GAAGU,KAAK4E,SAAS,IAAI5E,KAAKse,SAAShf,EAAE,IAAIU,KAAKsjD,qBAAqBhkD,EAAE,EAAE,EAAE,GAAG,MAAM8B,OAAE,EAAOA,EAAEgK,KAAK,GAAG,MAAMhK,OAAE,EAAOA,EAAEiK,KAAK,GAAG,MAAMjK,OAAE,EAAOA,EAAEuhB,WAAW,IAAI/f,EAAE8f,eAAeljB,EAAEQ,KAAK4E,OAAOtF,EAAE,CAAC,IAAI,IAAIiC,EAAE,IAAIC,EAAE+O,SAAS9O,EAAEzB,KAAK4E,OAAOtF,EAAEE,EAAE,EAAEiC,GAAG,IAAIA,EAAEzB,KAAKwoD,QAAQlpD,EAAEE,EAAEiC,EAAEzB,KAAK6T,SAASvU,EAAEmC,EAAEF,IAAI,IAAIE,EAAE,EAAEA,EAAEjC,IAAIiC,EAAEzB,KAAKwoD,QAAQlpD,EAAEmC,EAAE5B,QAAQ,IAAI4B,EAAEnC,EAAEmC,EAAEzB,KAAK4E,SAASnD,EAAEzB,KAAKwoD,QAAQ/mD,EAAE5B,GAAG,IAAIG,KAAKse,SAASte,KAAK4E,OAAO,IAAI5E,KAAKsjD,qBAAqBtjD,KAAK4E,OAAO,EAAE,EAAE,GAAG,MAAMxD,OAAE,EAAOA,EAAEgK,KAAK,GAAG,MAAMhK,OAAE,EAAOA,EAAEiK,KAAK,GAAG,MAAMjK,OAAE,EAAOA,EAAEuhB,WAAW,IAAI/f,EAAE8f,gBAAgBpjB,EAAEQ,UAAU4kD,YAAY,SAASplD,EAAEE,EAAEK,EAAEuB,GAAG,GAAG9B,GAAGU,KAAK4E,OAAOpF,EAAEQ,KAAK4E,OAAOtF,EAAE,CAAC,IAAI,IAAIiC,EAAE,IAAIC,EAAE+O,SAAS9O,EAAE,EAAEA,EAAEzB,KAAK4E,OAAOtF,EAAEE,IAAIiC,EAAEzB,KAAKwoD,QAAQlpD,EAAEmC,EAAEzB,KAAK6T,SAASvU,EAAEE,EAAEiC,EAAEF,IAAI,IAAIE,EAAEzB,KAAK4E,OAAOpF,EAAEiC,EAAEzB,KAAK4E,SAASnD,EAAEzB,KAAKwoD,QAAQ/mD,EAAE5B,QAAQ,IAAI4B,EAAEnC,EAAEmC,EAAEzB,KAAK4E,SAASnD,EAAEzB,KAAKwoD,QAAQ/mD,EAAE5B,GAAGP,GAAG,IAAIU,KAAKse,SAAShf,EAAE,IAAIU,KAAKsjD,qBAAqBhkD,EAAE,EAAE,EAAE,GAAG,MAAM8B,OAAE,EAAOA,EAAEgK,KAAK,GAAG,MAAMhK,OAAE,EAAOA,EAAEiK,KAAK,GAAG,MAAMjK,OAAE,EAAOA,EAAEuhB,WAAW,IAAI/f,EAAE8f,eAAe,IAAI1iB,KAAKse,SAAShf,IAAIU,KAAK4jD,WAAWtkD,IAAIU,KAAKsjD,qBAAqBhkD,EAAE,EAAE,GAAG,MAAM8B,OAAE,EAAOA,EAAEgK,KAAK,GAAG,MAAMhK,OAAE,EAAOA,EAAEiK,KAAK,GAAG,MAAMjK,OAAE,EAAOA,EAAEuhB,WAAW,IAAI/f,EAAE8f,gBAAgBpjB,EAAEQ,UAAU0kD,aAAa,SAASllD,EAAEE,EAAEK,EAAEuB,GAAG,IAAI9B,GAAG,IAAIU,KAAKse,SAAShf,EAAE,IAAIU,KAAKsjD,qBAAqBhkD,EAAE,EAAE,EAAE,GAAG,MAAM8B,OAAE,EAAOA,EAAEgK,KAAK,GAAG,MAAMhK,OAAE,EAAOA,EAAEiK,KAAK,GAAG,MAAMjK,OAAE,EAAOA,EAAEuhB,WAAW,IAAI/f,EAAE8f,eAAeljB,EAAEQ,KAAK4E,QAAQ,IAAI5E,KAAKse,SAAS9e,EAAE,IAAIQ,KAAKsjD,qBAAqB9jD,EAAE,EAAE,GAAG,MAAM4B,OAAE,EAAOA,EAAEgK,KAAK,GAAG,MAAMhK,OAAE,EAAOA,EAAEiK,KAAK,GAAG,MAAMjK,OAAE,EAAOA,EAAEuhB,WAAW,IAAI/f,EAAE8f,eAAepjB,EAAEE,GAAGF,EAAEU,KAAK4E,QAAQ5E,KAAKwoD,QAAQlpD,IAAIO,IAAIP,EAAEQ,UAAUY,OAAO,SAASpB,EAAEE,GAAG,GAAGF,IAAIU,KAAK4E,OAAO,CAAC,GAAGtF,EAAEU,KAAK4E,OAAO,CAAC,IAAI/E,EAAE,IAAIgP,YAAY,EAAEvP,GAAGU,KAAK4E,SAAS,EAAEtF,EAAEU,KAAKm7C,MAAMv2C,OAAO/E,EAAE8M,IAAI3M,KAAKm7C,MAAMzuC,SAAS,EAAE,EAAEpN,IAAIO,EAAE8M,IAAI3M,KAAKm7C,QAAQn7C,KAAKm7C,MAAMt7C,EAAE,IAAI,IAAIuB,EAAEpB,KAAK4E,OAAOxD,EAAE9B,IAAI8B,EAAEpB,KAAKwoD,QAAQpnD,EAAE5B,QAAQ,GAAGF,EAAE,EAAEO,EAAE,IAAIgP,YAAY,EAAEvP,IAAIqN,IAAI3M,KAAKm7C,MAAMzuC,SAAS,EAAE,EAAEpN,IAAIU,KAAKm7C,MAAMt7C,EAAE,IAAI0B,EAAE9B,OAAO+pD,KAAKxpD,KAAKspD,WAAW,IAAIloD,EAAE,EAAEA,EAAEG,EAAEqD,OAAOxD,IAAI,CAAC,IAAII,EAAEN,SAASK,EAAEH,GAAG,IAAII,GAAGlC,UAAUU,KAAKspD,UAAU9nD,SAASxB,KAAKm7C,MAAM,IAAItsC,YAAY,GAAG7O,KAAKspD,UAAU,GAAGtpD,KAAK4E,OAAOtF,IAAIA,EAAEQ,UAAUmK,KAAK,SAAS3K,GAAGU,KAAKspD,UAAU,GAAGtpD,KAAKupD,eAAe,GAAG,IAAI,IAAI/pD,EAAE,EAAEA,EAAEQ,KAAK4E,SAASpF,EAAEQ,KAAKwoD,QAAQhpD,EAAEF,IAAIA,EAAEQ,UAAU2pD,SAAS,SAASnqD,GAAG,IAAI,IAAIE,KAAKQ,KAAK4E,SAAStF,EAAEsF,OAAO5E,KAAKm7C,MAAM,IAAItsC,YAAYvP,EAAE67C,OAAOn7C,KAAKm7C,MAAMxuC,IAAIrN,EAAE67C,OAAOn7C,KAAK4E,OAAOtF,EAAEsF,OAAO5E,KAAKspD,UAAU,GAAGhqD,EAAEgqD,UAAUtpD,KAAKspD,UAAU9pD,GAAGF,EAAEgqD,UAAU9pD,GAAG,IAAI,IAAIA,KAAKQ,KAAKupD,eAAe,GAAGjqD,EAAEiqD,eAAevpD,KAAKupD,eAAe/pD,GAAGF,EAAEiqD,eAAe/pD,GAAGQ,KAAKyF,UAAUnG,EAAEmG,WAAWnG,EAAEQ,UAAU+iB,MAAM,WAAW,IAAIrjB,EAAE,IAAIF,EAAE,GAAG,IAAI,IAAIO,KAAKL,EAAE27C,MAAM,IAAItsC,YAAY7O,KAAKm7C,OAAO37C,EAAEoF,OAAO5E,KAAK4E,OAAO5E,KAAKspD,UAAU9pD,EAAE8pD,UAAUzpD,GAAGG,KAAKspD,UAAUzpD,GAAG,IAAI,IAAIA,KAAKG,KAAKupD,eAAe/pD,EAAE+pD,eAAe1pD,GAAGG,KAAKupD,eAAe1pD,GAAG,OAAOL,EAAEiG,UAAUzF,KAAKyF,UAAUjG,GAAGF,EAAEQ,UAAUywC,iBAAiB,WAAW,IAAI,IAAIjxC,EAAEU,KAAK4E,OAAO,EAAEtF,GAAG,IAAIA,EAAE,GAAG,QAAQU,KAAKm7C,MAAM,EAAE77C,EAAE,GAAG,OAAOA,GAAGU,KAAKm7C,MAAM,EAAE77C,EAAE,IAAI,IAAI,OAAO,GAAGA,EAAEQ,UAAUwoD,cAAc,SAAShpD,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,IAAIC,EAAElC,EAAE67C,MAAM,GAAG55C,EAAE,IAAI,IAAIqB,EAAExB,EAAE,EAAEwB,GAAG,EAAEA,IAAI,IAAI,IAAInB,EAAE,EAAEA,EAAE,EAAEA,IAAIzB,KAAKm7C,MAAM,GAAGt7C,EAAE+C,GAAGnB,GAAGD,EAAE,GAAGhC,EAAEoD,GAAGnB,QAAQ,IAAImB,EAAE,EAAEA,EAAExB,EAAEwB,IAAI,IAAInB,EAAE,EAAEA,EAAE,EAAEA,IAAIzB,KAAKm7C,MAAM,GAAGt7C,EAAE+C,GAAGnB,GAAGD,EAAE,GAAGhC,EAAEoD,GAAGnB,GAAG,IAAIO,EAAEvC,OAAO+pD,KAAKlqD,EAAEgqD,WAAW,IAAI7nD,EAAE,EAAEA,EAAEO,EAAE4C,OAAOnD,IAAI,CAAC,IAAII,EAAEX,SAASc,EAAEP,GAAG,IAAII,GAAGrC,IAAIQ,KAAKspD,UAAUznD,EAAErC,EAAEK,GAAGP,EAAEgqD,UAAUznD,MAAMvC,EAAEQ,UAAU4F,kBAAkB,SAASpG,EAAEE,EAAEK,QAAG,IAASP,IAAIA,GAAE,QAAI,IAASE,IAAIA,EAAE,QAAG,IAASK,IAAIA,EAAEG,KAAK4E,QAAQtF,IAAIO,EAAEwB,KAAK2N,IAAInP,EAAEG,KAAKuwC,qBAAqB,IAAI,IAAI/uC,EAAE,GAAGhC,EAAEK,GAAG,CAAC,IAAI+C,EAAE5C,KAAKm7C,MAAM,EAAE37C,EAAE,GAAGiC,EAAE,QAAQmB,EAAEpB,GAAG,QAAQoB,EAAE5C,KAAKspD,UAAU9pD,GAAGiC,EAAEL,EAAEqjB,oBAAoBhjB,GAAGF,EAAE0jB,qBAAqBzlB,GAAGoD,GAAG,IAAI,EAAE,OAAOpB,GAAGlC,EAA92L,GAAm3LE,EAAE8nD,WAAW7lD,GAAGioD,KAAK,CAACpqD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEs0C,oBAAe,EAAOt0C,EAAEs0C,eAAe,SAASx0C,EAAEE,GAAG,GAAGF,EAAEyF,MAAME,IAAI3F,EAAE4F,IAAID,EAAE,OAAO3F,EAAE4F,IAAIF,EAAE1F,EAAEyF,MAAMC,EAAE,EAAE,GAAG1F,EAAEyF,MAAME,EAAE3F,EAAE4F,IAAID,EAAE,MAAM,IAAIiH,MAAM,qBAAqB5M,EAAE4F,IAAIF,EAAE,KAAK1F,EAAE4F,IAAID,EAAE,6BAA6B3F,EAAEyF,MAAMC,EAAE,KAAK1F,EAAEyF,MAAME,EAAE,KAAK,OAAOzF,GAAGF,EAAE4F,IAAID,EAAE3F,EAAEyF,MAAME,EAAE,GAAGzF,EAAEF,EAAEyF,MAAMC,EAAE1F,EAAE4F,IAAIF,IAAI2kD,KAAK,CAACrqD,EAAEE,KAAK,SAASK,EAAEP,EAAEE,EAAEK,GAAG,GAAGL,IAAIF,EAAEsF,OAAO,EAAE,OAAOtF,EAAEE,GAAG+wC,mBAAmB,IAAInvC,GAAG9B,EAAEE,GAAGokD,WAAW/jD,EAAE,IAAI,IAAIP,EAAEE,GAAG8e,SAASze,EAAE,GAAG0B,EAAE,IAAIjC,EAAEE,EAAE,GAAG8e,SAAS,GAAG,OAAOld,GAAGG,EAAE1B,EAAE,EAAEA,EAAEJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+oD,4BAA4B/oD,EAAE4oD,+BAA+B5oD,EAAEwoD,2BAA2BxoD,EAAEuoD,4BAA4BvoD,EAAEsoD,kCAA6B,EAAOtoD,EAAEsoD,6BAA6B,SAASxoD,EAAEE,EAAE4B,EAAEG,EAAEC,GAAG,IAAI,IAAIoB,EAAE,GAAGnB,EAAE,EAAEA,EAAEnC,EAAEsF,OAAO,EAAEnD,IAAI,CAAC,IAAIO,EAAEP,EAAEI,EAAEvC,EAAE6C,MAAMH,GAAG,GAAGH,EAAE4D,UAAU,CAAC,IAAI,IAAIZ,EAAE,CAACvF,EAAE6C,IAAIV,IAAIO,EAAE1C,EAAEsF,QAAQ/C,EAAE4D,WAAWZ,EAAEM,KAAKtD,GAAGA,EAAEvC,EAAE6C,MAAMH,GAAG,GAAGT,GAAGE,GAAGF,EAAES,EAAEP,GAAGoD,EAAED,OAAO,MAAM,CAAC,IAAI,IAAIN,EAAE,EAAEE,EAAE3E,EAAEgF,EAAEP,EAAE9E,GAAGwG,EAAE,EAAE/D,EAAE,EAAE+D,EAAEnB,EAAED,QAAQ,CAAC,IAAIjC,EAAE9C,EAAEgF,EAAEmB,EAAExG,GAAGsF,EAAEnC,EAAEV,EAAEyJ,EAAEtK,EAAEoD,EAAES,EAAE5D,KAAK2N,IAAIlK,EAAE4G,GAAG7G,EAAEP,GAAGgkD,cAAczjD,EAAEmB,GAAG/D,EAAEuC,EAAES,GAAE,IAAKT,GAAGS,KAAK7D,IAAIkD,IAAIE,EAAE,IAAIvC,GAAGgD,KAAKtC,IAAIqD,IAAI/D,EAAE,GAAG,IAAIuC,GAAG,IAAIF,GAAG,IAAIO,EAAEP,EAAE,GAAGga,SAASld,EAAE,KAAKyD,EAAEP,GAAGgkD,cAAczjD,EAAEP,EAAE,GAAGlD,EAAE,EAAEoD,IAAI,GAAE,GAAIK,EAAEP,EAAE,GAAGkkD,QAAQpnD,EAAE,EAAEI,IAAIqD,EAAEP,GAAGkgD,aAAahgD,EAAEpD,EAAEI,GAAG,IAAI,IAAI2Y,EAAE,EAAE6b,EAAEnxB,EAAED,OAAO,EAAEoxB,EAAE,IAAIA,EAAE1xB,GAAG,IAAIO,EAAEmxB,GAAGua,oBAAoBva,IAAI7b,IAAIA,EAAE,IAAIvX,EAAEuC,KAAK1D,EAAEoD,EAAED,OAAOuV,GAAGvX,EAAEuC,KAAKgV,IAAI1Y,GAAGoD,EAAED,OAAO,IAAI,OAAOhC,GAAGpD,EAAEuoD,4BAA4B,SAASzoD,EAAEE,GAAG,IAAI,IAAIK,EAAE,GAAGuB,EAAE,EAAEG,EAAE/B,EAAE4B,GAAGI,EAAE,EAAEoB,EAAE,EAAEA,EAAEtD,EAAEsF,OAAOhC,IAAI,GAAGrB,IAAIqB,EAAE,CAAC,IAAInB,EAAEjC,IAAI4B,GAAG9B,EAAEq3C,gBAAgB5jC,KAAK,CAACo5B,MAAMvpC,EAAEpB,EAAEo7B,OAAOn7B,IAAImB,GAAGnB,EAAE,EAAED,GAAGC,EAAEF,EAAE/B,IAAI4B,QAAQvB,EAAEsF,KAAKvC,GAAG,MAAM,CAACqlD,OAAOpoD,EAAEsoD,aAAa3mD,IAAIhC,EAAEwoD,2BAA2B,SAAS1oD,EAAEE,GAAG,IAAI,IAAIK,EAAE,GAAGuB,EAAE,EAAEA,EAAE5B,EAAEoF,OAAOxD,IAAIvB,EAAEsF,KAAK7F,EAAE6C,IAAI3C,EAAE4B,KAAK,IAAIA,EAAE,EAAEA,EAAEvB,EAAE+E,OAAOxD,IAAI9B,EAAEqN,IAAIvL,EAAEvB,EAAEuB,IAAI9B,EAAEsF,OAAOpF,EAAEoF,QAAQpF,EAAE4oD,+BAA+B,SAAS9oD,EAAEE,EAAE4B,GAAG,IAAI,IAAIG,EAAE,GAAGC,EAAElC,EAAE4tB,KAAI,SAAU9rB,EAAEG,GAAG,OAAO1B,EAAEP,EAAEiC,EAAE/B,MAAMoqD,QAAO,SAAUtqD,EAAEE,GAAG,OAAOF,EAAEE,KAAKoD,EAAE,EAAEnB,EAAE,EAAEO,EAAE,EAAEA,EAAER,GAAG,CAAC,GAAGA,EAAEQ,EAAEZ,EAAE,CAACG,EAAE4D,KAAK3D,EAAEQ,GAAG,MAAMY,GAAGxB,EAAE,IAAIS,EAAEhC,EAAEP,EAAEmC,EAAEjC,GAAGoD,EAAEf,IAAIe,GAAGf,EAAEJ,KAAK,IAAIoD,EAAE,IAAIvF,EAAEmC,GAAG6c,SAAS1b,EAAE,GAAGiC,GAAGjC,IAAI,IAAI0B,EAAEO,EAAEzD,EAAE,EAAEA,EAAEG,EAAE4D,KAAKb,GAAGtC,GAAGsC,EAAE,OAAO/C,GAAG/B,EAAE+oD,4BAA4B1oD,GAAGgqD,KAAK,SAASvqD,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEsqD,eAAU,EAAO,IAAItoD,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE,SAASnC,GAAG,SAASE,EAAEA,EAAEK,GAAG,IAAIuB,EAAE9B,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOoB,EAAEmyB,gBAAgB/zB,EAAE4B,EAAE0sB,eAAejuB,EAAEuB,EAAEgyC,kBAAkBhyC,EAAEghB,SAAS,IAAIxf,EAAE6N,cAAcrP,EAAEmR,QAAQnR,EAAE,OAAOG,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,mBAAmB,CAACqC,IAAI,WAAW,OAAOnC,KAAKozC,kBAAkBjhC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUyS,MAAM,WAAWvS,KAAK8mC,QAAQ,IAAItlC,EAAEqlD,QAAO,EAAG7mD,KAAKuzB,gBAAgBvzB,KAAK8tB,gBAAgB9tB,KAAK8mC,QAAQ2gB,mBAAmBznD,KAAK+pD,KAAK,IAAIvoD,EAAEqlD,QAAO,EAAG7mD,KAAKuzB,gBAAgBvzB,KAAK8tB,gBAAgB9tB,KAAKoG,cAAcpG,KAAK8mC,QAAQ9mC,KAAK+4B,iBAAiBt5B,OAAOC,eAAeF,EAAEM,UAAU,MAAM,CAACqC,IAAI,WAAW,OAAOnC,KAAK+pD,MAAM7nD,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKoG,eAAelE,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAK8mC,SAAS5kC,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUolD,qBAAqB,WAAWllD,KAAKoG,gBAAgBpG,KAAK8mC,UAAU9mC,KAAK8mC,QAAQ9hC,EAAEhF,KAAK+pD,KAAK/kD,EAAEhF,KAAK8mC,QAAQ7hC,EAAEjF,KAAK+pD,KAAK9kD,EAAEjF,KAAK+pD,KAAKtpD,QAAQT,KAAKoG,cAAcpG,KAAK8mC,QAAQ9mC,KAAKozC,kBAAkBrgC,KAAK,CAACiiC,aAAah1C,KAAK8mC,QAAQkjB,eAAehqD,KAAK+pD,SAASvqD,EAAEM,UAAUmlD,kBAAkB,SAAS3lD,GAAGU,KAAKoG,gBAAgBpG,KAAK+pD,OAAO/pD,KAAK+pD,KAAKtC,iBAAiBnoD,GAAGU,KAAK+pD,KAAK/kD,EAAEhF,KAAK8mC,QAAQ9hC,EAAEhF,KAAK+pD,KAAK9kD,EAAEjF,KAAK8mC,QAAQ7hC,EAAEjF,KAAKoG,cAAcpG,KAAK+pD,KAAK/pD,KAAKozC,kBAAkBrgC,KAAK,CAACiiC,aAAah1C,KAAK+pD,KAAKC,eAAehqD,KAAK8mC,YAAYtnC,EAAEM,UAAUY,OAAO,SAASpB,EAAEE,GAAGQ,KAAK8mC,QAAQpmC,OAAOpB,EAAEE,GAAGQ,KAAK+pD,KAAKrpD,OAAOpB,EAAEE,IAAIA,EAAEM,UAAUi5B,cAAc,SAASz5B,GAAGU,KAAK8mC,QAAQ/N,cAAcz5B,GAAGU,KAAK+pD,KAAKhxB,cAAcz5B,IAAIE,EAArlD,CAAwlDK,EAAE,KAAKqU,YAAY1U,EAAEsqD,UAAUroD,GAAGwoD,IAAI,SAAS3qD,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+Q,cAAS,EAAO,IAAI/O,EAAE3B,EAAE,KAAK+C,EAAE/C,EAAE,KAAK4B,EAAE5B,EAAE,MAAMmC,EAAE,SAAS1C,GAAG,SAASE,IAAI,IAAIA,EAAE,OAAOF,GAAGA,EAAE6kB,MAAMnkB,KAAKokB,YAAYpkB,KAAK,OAAOR,EAAE4e,QAAQ,EAAE5e,EAAE4L,GAAG,EAAE5L,EAAE6L,GAAG,EAAE7L,EAAEmjB,SAAS,IAAIlhB,EAAEihB,cAAcljB,EAAE6kB,aAAa,GAAG7kB,EAAE,OAAO+B,EAAE/B,EAAEF,GAAGE,EAAE8kB,aAAa,SAAShlB,GAAG,IAAIO,EAAE,IAAIL,EAAE,OAAOK,EAAE0kB,gBAAgBjlB,GAAGO,GAAGL,EAAEM,UAAU0kB,WAAW,WAAW,OAAO,QAAQxkB,KAAKoe,SAAS5e,EAAEM,UAAUwe,SAAS,WAAW,OAAOte,KAAKoe,SAAS,IAAI5e,EAAEM,UAAUkM,SAAS,WAAW,OAAO,QAAQhM,KAAKoe,QAAQpe,KAAKqkB,aAAa,QAAQrkB,KAAKoe,QAAQ5c,EAAEijB,oBAAoB,QAAQzkB,KAAKoe,SAAS,IAAI5e,EAAEM,UAAUgU,QAAQ,WAAW,OAAO9T,KAAKwkB,aAAaxkB,KAAKqkB,aAAaK,WAAW1kB,KAAKqkB,aAAazf,OAAO,GAAG,QAAQ5E,KAAKoe,SAAS5e,EAAEM,UAAUykB,gBAAgB,SAASjlB,GAAGU,KAAKoL,GAAG9L,EAAEsD,EAAE+hB,sBAAsB3kB,KAAKqL,GAAG,EAAE,IAAI7L,GAAE,EAAG,GAAGF,EAAEsD,EAAEgiB,sBAAsBhgB,OAAO,EAAEpF,GAAE,OAAQ,GAAG,IAAIF,EAAEsD,EAAEgiB,sBAAsBhgB,OAAO,CAAC,IAAI/E,EAAEP,EAAEsD,EAAEgiB,sBAAsBF,WAAW,GAAG,GAAG,OAAO7kB,GAAGA,GAAG,MAAM,CAAC,IAAIuB,EAAE9B,EAAEsD,EAAEgiB,sBAAsBF,WAAW,GAAG,OAAOtjB,GAAGA,GAAG,MAAMpB,KAAKoe,QAAQ,MAAMve,EAAE,OAAOuB,EAAE,MAAM,MAAM9B,EAAEsD,EAAEiiB,wBAAwB,GAAGrlB,GAAE,OAAQA,GAAE,OAAQQ,KAAKoe,QAAQ9e,EAAEsD,EAAEgiB,sBAAsBF,WAAW,GAAGplB,EAAEsD,EAAEiiB,wBAAwB,GAAGrlB,IAAIQ,KAAKqkB,aAAa/kB,EAAEsD,EAAEgiB,sBAAsB5kB,KAAKoe,QAAQ,QAAQ9e,EAAEsD,EAAEiiB,wBAAwB,KAAKrlB,EAAEM,UAAUglB,cAAc,WAAW,MAAM,CAAC9kB,KAAKoL,GAAGpL,KAAKgM,WAAWhM,KAAKse,WAAWte,KAAK8T,YAAYtU,EAAzzC,CAA4zCiC,EAAE0J,eAAe3L,EAAE+Q,SAASvO,GAAGkoD,IAAI,CAAC5qD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE8J,qBAAqB9J,EAAEwlB,sBAAsBxlB,EAAEylB,qBAAqBzlB,EAAE6J,eAAe7J,EAAE0lB,gBAAgB1lB,EAAE2lB,eAAe3lB,EAAE4lB,qBAAqB5lB,EAAEqlB,sBAAsBrlB,EAAEolB,qBAAqBplB,EAAEmlB,qBAAqBnlB,EAAE6lB,aAAa7lB,EAAEwY,mBAAc,EAAOxY,EAAEwY,cAAc,IAAIxY,EAAE6lB,aAAa,IAAI7lB,EAAEwY,eAAe,EAAExY,EAAEmlB,qBAAqB,EAAEnlB,EAAEolB,qBAAqB,EAAEplB,EAAEqlB,sBAAsB,EAAErlB,EAAE4lB,qBAAqB,EAAE5lB,EAAE2lB,eAAe,GAAG3lB,EAAE0lB,gBAAgB,EAAE1lB,EAAE6J,eAAe,EAAE7J,EAAEylB,qBAAqB,IAAIzlB,EAAEwlB,sBAAsB,EAAExlB,EAAE8J,qBAAqB,IAAI6gD,KAAK,SAAS7qD,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEkpD,YAAO,EAAO,IAAIlnD,EAAE3B,EAAE,MAAM+C,EAAE,SAAStD,GAAG,SAASE,EAAEK,GAAG,IAAIuB,EAAE9B,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOoB,EAAEunD,KAAK9oD,EAAEuB,EAAEkoC,IAAI9pC,EAAE4qD,UAAUhpD,EAAEmkC,YAAW,EAAGnkC,EAAEipD,WAAW,IAAI7oD,EAAEiP,aAAarP,EAAE,OAAOG,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,KAAK,CAACqC,IAAI,WAAW,OAAOnC,KAAKspC,KAAKpnC,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,YAAY,CAACqC,IAAI,WAAW,OAAOnC,KAAKqqD,WAAWl4C,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUI,QAAQ,WAAWF,KAAKulC,aAAavlC,KAAKulC,YAAW,EAAGvlC,KAAK2oD,MAAM,EAAE3oD,KAAKqqD,WAAWt3C,OAAOzT,EAAEQ,UAAUI,QAAQ4B,KAAK9B,QAAQR,EAAE4qD,QAAQ,EAAE5qD,EAA9gB,CAAihBK,EAAE,KAAKqU,YAAY1U,EAAEkpD,OAAO9lD,GAAG0nD,KAAK,CAAChrD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEslD,gBAAgBtlD,EAAEgjD,cAAS,EAAOhjD,EAAEgjD,SAAS,GAAGhjD,EAAEslD,gBAAgBtlD,EAAEgjD,SAAS+H,EAAE/qD,EAAEgjD,SAAS,GAAG,CAAC,IAAI,IAAI/gD,EAAE,IAAI0Y,EAAE,IAAInY,EAAE,IAAIC,EAAE,IAAI3C,EAAE,IAAIkF,EAAE,IAAIkH,EAAE,IAAI7G,EAAE,IAAIzD,EAAE,IAAIopD,EAAE,IAAIr0B,EAAE,IAAIt0B,EAAE,IAAIE,EAAE,IAAIR,EAAE,IAAIC,EAAE,IAAImB,EAAE,IAAI8nD,EAAE,IAAI5qD,EAAE,IAAI+C,EAAE,IAAIpD,EAAE,IAAI8E,EAAE,IAAIQ,EAAE,IAAIuV,EAAE,IAAIrV,EAAE,IAAIC,EAAE,IAAIylD,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKlrD,EAAEgjD,SAASpsB,EAAE,CAAC,IAAI,KAAK52B,EAAEgjD,SAAS+H,OAAE,EAAO/qD,EAAEgjD,SAAS,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKhjD,EAAEgjD,SAAS12C,EAAEtM,EAAEgjD,SAAS,GAAG,CAAC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKhjD,EAAEgjD,SAASxoC,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKxa,EAAEgjD,SAASmI,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKnrD,EAAEgjD,SAASoI,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKprD,EAAEgjD,SAASqI,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKrrD,EAAEgjD,SAASvsB,EAAEz2B,EAAEgjD,SAAS,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKhjD,EAAEgjD,SAASsI,EAAE,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKtrD,EAAEgjD,SAASuI,EAAEvrD,EAAEgjD,SAAS,GAAG,CAAC,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAKhjD,EAAEgjD,SAAS,KAAK,CAAC,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,IAAI,IAAIx8C,EAAE,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,IAAI,MAAMglD,KAAK,CAAC1rD,EAAEE,KAAK,IAAIK,EAAEuB,EAAE3B,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+hD,GAAG/hD,EAAE45B,QAAG,GAAQh4B,EAAE5B,EAAE45B,KAAK55B,EAAE45B,GAAG,KAAK6xB,IAAI,KAAK7pD,EAAE8pD,IAAI,IAAI9pD,EAAE+pD,IAAI,IAAI/pD,EAAE6/B,IAAI,IAAI7/B,EAAEgqD,IAAI,IAAIhqD,EAAEiqD,IAAI,IAAIjqD,EAAEkqD,IAAI,IAAIlqD,EAAEq/C,IAAI,IAAIr/C,EAAE2/C,GAAG,KAAK3/C,EAAE6/C,GAAG,KAAK7/C,EAAEs/C,GAAG,KAAKt/C,EAAEw/C,GAAG,KAAKx/C,EAAEy/C,GAAG,KAAKz/C,EAAE8/B,GAAG,KAAK9/B,EAAE+/C,GAAG,IAAI//C,EAAEigD,GAAG,IAAIjgD,EAAEmqD,IAAI,IAAInqD,EAAEoqD,IAAI,IAAIpqD,EAAEqqD,IAAI,IAAIrqD,EAAEsqD,IAAI,IAAItqD,EAAEuqD,IAAI,IAAIvqD,EAAEwqD,IAAI,IAAIxqD,EAAEyqD,IAAI,IAAIzqD,EAAE0qD,IAAI,IAAI1qD,EAAE2qD,IAAI,IAAI3qD,EAAE4qD,GAAG,IAAI5qD,EAAE6qD,IAAI,IAAI7qD,EAAEi4B,IAAI,IAAIj4B,EAAE8qD,GAAG,IAAI9qD,EAAE+qD,GAAG,IAAI/qD,EAAEgrD,GAAG,IAAIhrD,EAAEirD,GAAG,IAAIjrD,EAAEkrD,GAAG,IAAIlrD,EAAEmrD,IAAI,KAAK1sD,EAAEL,EAAE+hD,KAAK/hD,EAAE+hD,GAAG,KAAKiL,IAAI,IAAI3sD,EAAE4sD,IAAI,IAAI5sD,EAAE6sD,IAAI,IAAI7sD,EAAE8sD,IAAI,IAAI9sD,EAAE2hD,IAAI,IAAI3hD,EAAE4hD,IAAI,IAAI5hD,EAAE+sD,IAAI,IAAI/sD,EAAEgtD,IAAI,IAAIhtD,EAAE8hD,IAAI,IAAI9hD,EAAEitD,IAAI,IAAIjtD,EAAEktD,IAAI,IAAIltD,EAAEmtD,IAAI,IAAIntD,EAAEotD,IAAI,IAAIptD,EAAEqtD,GAAG,IAAIrtD,EAAEstD,IAAI,IAAIttD,EAAEutD,IAAI,IAAIvtD,EAAEwtD,IAAI,IAAIxtD,EAAEytD,IAAI,IAAIztD,EAAE0tD,IAAI,IAAI1tD,EAAE2tD,IAAI,IAAI3tD,EAAE4tD,IAAI,IAAI5tD,EAAE6tD,GAAG,IAAI7tD,EAAE8tD,IAAI,IAAI9tD,EAAE+tD,IAAI,IAAI/tD,EAAEguD,IAAI,IAAIhuD,EAAEiuD,KAAK,IAAIjuD,EAAEkuD,IAAI,IAAIluD,EAAEmuD,IAAI,IAAInuD,EAAEouD,GAAG,IAAIpuD,EAAEquD,IAAI,IAAIruD,EAAEsuD,GAAG,IAAItuD,EAAEuuD,IAAI,KAAKC,KAAK,CAAC/uD,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEshC,2BAAsB,EAAO,IAAI1/B,EAAEvB,EAAE,MAAM0B,EAAE,CAAC+sD,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,GAAG,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,KAAK,KAAKC,IAAI,CAAC,IAAI,KAAKC,IAAI,CAAC,IAAI,MAAMlwD,EAAEshC,sBAAsB,SAASxhC,EAAEE,EAAEK,EAAE2B,GAAG,IAAIoB,EAAE,CAACg7B,KAAK,EAAEgB,QAAO,EAAGhX,SAAI,GAAQnmB,GAAGnC,EAAEi/B,SAAS,EAAE,IAAIj/B,EAAEg/B,OAAO,EAAE,IAAIh/B,EAAE8+B,QAAQ,EAAE,IAAI9+B,EAAE8hC,QAAQ,EAAE,GAAG,OAAO9hC,EAAEgiC,SAAS,KAAK,EAAE,sBAAsBhiC,EAAEsoB,IAAIhlB,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,wBAAwB/5B,EAAEsoB,IAAIhlB,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,yBAAyB/5B,EAAEsoB,IAAIhlB,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,wBAAwB/5B,EAAEsoB,MAAMhlB,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,MAAM,MAAM,KAAK,EAAE,GAAG/5B,EAAEi/B,SAAS,CAAC37B,EAAEglB,IAAIxmB,EAAEg4B,GAAG2nB,GAAG,MAAM,GAAGzhD,EAAEg/B,OAAO,CAAC17B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAIj4B,EAAEg4B,GAAGmzB,IAAI,MAAM3pD,EAAEglB,IAAIxmB,EAAEg4B,GAAGmzB,IAAI,MAAM,KAAK,EAAE,GAAGjtD,EAAEi/B,SAAS,CAAC37B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,KAAK,MAAMz2B,EAAEglB,IAAIxmB,EAAEg4B,GAAG6nB,GAAGr+C,EAAEg8B,QAAO,EAAG,MAAM,KAAK,GAAGh8B,EAAEglB,IAAItoB,EAAEg/B,OAAOl9B,EAAEg4B,GAAGC,IAAIj4B,EAAEg4B,GAAG8H,GAAG9/B,EAAEg4B,GAAG8H,GAAGt+B,EAAEg8B,QAAO,EAAG,MAAM,KAAK,GAAGh8B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI/5B,EAAEg/B,SAAS17B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAIj4B,EAAEg4B,GAAGC,KAAKz2B,EAAEg8B,QAAO,EAAG,MAAM,KAAK,GAAG,GAAGt/B,EAAE8hC,QAAQ,MAAM3/B,GAAGmB,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAImB,EAAEglB,MAAMxmB,EAAEg4B,GAAGC,IAAI,UAAUz2B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,KAAKx5B,EAAE,IAAI,WAAW+C,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,GAAG,GAAG/5B,EAAE8hC,QAAQ,MAAM3/B,GAAGmB,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAImB,EAAEglB,MAAMxmB,EAAEg4B,GAAGC,IAAI,UAAUz2B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,KAAKx5B,EAAE,IAAI,WAAW+C,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,GAAG,GAAG/5B,EAAE8hC,QAAQ,MAAM3/B,GAAGmB,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAI5B,GAAG+C,EAAEglB,MAAMxmB,EAAEg4B,GAAGC,IAAI,UAAUz2B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,UAAUz2B,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,GAAG,GAAG/5B,EAAE8hC,QAAQ,MAAM3/B,GAAGmB,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAI5B,GAAG+C,EAAEglB,MAAMxmB,EAAEg4B,GAAGC,IAAI,UAAUz2B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,UAAUz2B,EAAEglB,IAAIpoB,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,GAAG/5B,EAAEi/B,UAAUj/B,EAAE8+B,UAAUx7B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,GAAGz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,MAAM,MAAM,KAAK,GAAGz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAIjC,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,GAAGz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAIjC,EAAE4B,EAAEg4B,GAAGC,IAAI,KAAKj4B,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,GAAG/5B,EAAEi/B,SAAS37B,EAAEg7B,KAAK,EAAEh7B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,MAAM,MAAM,KAAK,GAAG/5B,EAAEi/B,SAAS37B,EAAEg7B,KAAK,EAAEh7B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,MAAM,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,OAAO53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,KAAK,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,KAAK,IAAIz2B,EAAEglB,IAAInmB,EAAEL,EAAEg4B,GAAGC,IAAI,QAAQ53B,EAAE,GAAG,IAAIL,EAAEg4B,GAAGC,IAAI,OAAO,MAAM,QAAQ,IAAI/5B,EAAE8+B,SAAS9+B,EAAEi/B,UAAUj/B,EAAEg/B,QAAQh/B,EAAE8hC,QAAQ,GAAGvhC,IAAI2B,IAAIlC,EAAEg/B,QAAQh/B,EAAE8hC,SAASvhC,GAAGP,EAAEg/B,QAAQh/B,EAAE8+B,SAAS9+B,EAAEi/B,WAAWj/B,EAAE8hC,QAAQ9hC,EAAEsoB,MAAMtoB,EAAE8+B,UAAU9+B,EAAEg/B,SAASh/B,EAAE8hC,SAAS9hC,EAAEgiC,SAAS,IAAI,IAAIhiC,EAAEsoB,IAAIhjB,OAAOhC,EAAEglB,IAAItoB,EAAEsoB,IAAItoB,EAAEsoB,KAAKtoB,EAAE8+B,SAAS,MAAM9+B,EAAEsoB,MAAMhlB,EAAEglB,IAAIxmB,EAAEg4B,GAAGizB,IAAI,KAAK/sD,EAAEgiC,UAAU1+B,EAAEg7B,KAAK,OAAO,CAAC,IAAI57B,EAAET,EAAEjC,EAAEgiC,SAASz/B,EAAEG,GAAGA,EAAE1C,EAAEi/B,SAAS,EAAE,GAAG,GAAG18B,EAAEe,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAIx3B,OAAO,GAAGvC,EAAEgiC,SAAS,IAAIhiC,EAAEgiC,SAAS,GAAG,CAAC,IAAIz8B,EAAEvF,EAAE8+B,QAAQ9+B,EAAEgiC,QAAQ,GAAGhiC,EAAEgiC,QAAQ,GAAG1+B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAIxgB,OAAOC,aAAajU,SAASvF,EAAEgiC,SAAS,IAAIhiC,EAAEgiC,SAAS,GAAG1+B,EAAEglB,IAAI/O,OAAOC,aAAaxZ,EAAEgiC,QAAQ,IAAI,KAAKhiC,EAAEgiC,QAAQ1+B,EAAEglB,IAAIxmB,EAAEg4B,GAAG6xB,IAAI3rD,EAAEgiC,SAAS,IAAIhiC,EAAEgiC,SAAS,GAAG1+B,EAAEglB,IAAI/O,OAAOC,aAAaxZ,EAAEgiC,QAAQ,GAAG,IAAI,KAAKhiC,EAAEgiC,QAAQ1+B,EAAEglB,IAAIxmB,EAAEg4B,GAAGmzB,IAAI,MAAMjtD,EAAEgiC,QAAQ1+B,EAAEglB,IAAIxmB,EAAEg4B,GAAGC,IAAI,MAAM/5B,EAAEgiC,QAAQ1+B,EAAEglB,IAAIxmB,EAAEg4B,GAAG8yB,GAAG,MAAM5sD,EAAEgiC,UAAU1+B,EAAEglB,IAAIxmB,EAAEg4B,GAAG+yB,IAAI,OAAOvpD,IAAI+sD,IAAI,CAACrwD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+lB,YAAY/lB,EAAEgmB,cAAchmB,EAAEimB,cAAcjmB,EAAEilB,yBAAoB,EAAOjlB,EAAEilB,oBAAoB,SAASnlB,GAAG,OAAOA,EAAE,OAAOA,GAAG,MAAMuZ,OAAOC,aAAa,OAAOxZ,GAAG,KAAKuZ,OAAOC,aAAaxZ,EAAE,KAAK,QAAQuZ,OAAOC,aAAaxZ,IAAIE,EAAEimB,cAAc,SAASnmB,EAAEE,EAAEK,QAAG,IAASL,IAAIA,EAAE,QAAG,IAASK,IAAIA,EAAEP,EAAEsF,QAAQ,IAAI,IAAIxD,EAAE,GAAGG,EAAE/B,EAAE+B,EAAE1B,IAAI0B,EAAE,CAAC,IAAIC,EAAElC,EAAEiC,GAAGC,EAAE,OAAOA,GAAG,MAAMJ,GAAGyX,OAAOC,aAAa,OAAOtX,GAAG,KAAKqX,OAAOC,aAAatX,EAAE,KAAK,QAAQJ,GAAGyX,OAAOC,aAAatX,GAAG,OAAOJ,GAAG,IAAIvB,EAAE,WAAW,SAASP,IAAIU,KAAK0lB,SAAS,EAAE,OAAOpmB,EAAEQ,UAAUW,MAAM,WAAWT,KAAK0lB,SAAS,GAAGpmB,EAAEQ,UAAU6lB,OAAO,SAASrmB,EAAEE,GAAG,IAAIK,EAAEP,EAAEsF,OAAO,IAAI/E,EAAE,OAAO,EAAE,IAAIuB,EAAE,EAAEG,EAAE,EAAEvB,KAAK0lB,WAAW,QAAQjkB,EAAEnC,EAAEolB,WAAWnjB,OAAOE,GAAG,MAAMjC,EAAE4B,KAAK,MAAMpB,KAAK0lB,SAAS,OAAOjkB,EAAE,MAAM,OAAOjC,EAAE4B,KAAKpB,KAAK0lB,SAASlmB,EAAE4B,KAAKK,GAAGzB,KAAK0lB,SAAS,GAAG,IAAI,IAAIlkB,EAAED,EAAEC,EAAE3B,IAAI2B,EAAE,CAAC,IAAIoB,EAAEtD,EAAEolB,WAAWljB,GAAG,GAAG,OAAOoB,GAAGA,GAAG,MAAM,CAAC,KAAKpB,GAAG3B,EAAE,OAAOG,KAAK0lB,SAAS9iB,EAAExB,EAAE,IAAIK,EAAE,QAAQA,EAAEnC,EAAEolB,WAAWljB,KAAKC,GAAG,MAAMjC,EAAE4B,KAAK,MAAMwB,EAAE,OAAOnB,EAAE,MAAM,OAAOjC,EAAE4B,KAAKwB,EAAEpD,EAAE4B,KAAKK,QAAQ,QAAQmB,IAAIpD,EAAE4B,KAAKwB,GAAG,OAAOxB,GAAG9B,EAA7iB,GAAkjBE,EAAEgmB,cAAc3lB,EAAE,IAAIuB,EAAE,WAAW,SAAS9B,IAAIU,KAAK4lB,QAAQ,IAAIhe,WAAW,GAAG,OAAOtI,EAAEQ,UAAUW,MAAM,WAAWT,KAAK4lB,QAAQ3b,KAAK,IAAI3K,EAAEQ,UAAU6lB,OAAO,SAASrmB,EAAEE,GAAG,IAAIK,EAAEP,EAAEsF,OAAO,IAAI/E,EAAE,OAAO,EAAE,IAAIuB,EAAEG,EAAEC,EAAEoB,EAAEnB,EAAE,EAAEO,EAAE,EAAEH,EAAE,EAAE,GAAG7B,KAAK4lB,QAAQ,GAAG,CAAC,IAAI/gB,GAAE,EAAGP,EAAEtE,KAAK4lB,QAAQ,GAAGthB,GAAG,MAAM,IAAIA,GAAG,GAAG,MAAM,IAAIA,GAAG,GAAG,EAAE,IAAI,IAAIE,EAAE,EAAEwB,OAAE,GAAQA,EAAE,GAAGhG,KAAK4lB,UAAUphB,KAAKA,EAAE,GAAGF,IAAI,EAAEA,GAAG0B,EAAE,IAAI,IAAI/D,EAAE,MAAM,IAAIjC,KAAK4lB,QAAQ,IAAI,EAAE,MAAM,IAAI5lB,KAAK4lB,QAAQ,IAAI,EAAE,EAAEjjB,EAAEV,EAAEuC,EAAE3C,EAAEc,GAAG,CAAC,GAAGd,GAAGhC,EAAE,OAAO,EAAE,GAAG,MAAM,KAAKmG,EAAE1G,EAAEuC,OAAO,CAACA,IAAIgD,GAAE,EAAG,MAAM7E,KAAK4lB,QAAQphB,KAAKwB,EAAE1B,IAAI,EAAEA,GAAG,GAAG0B,EAAEnB,IAAI,IAAI5C,EAAEqC,EAAE,IAAIzC,IAAIrC,EAAEiC,KAAK6C,EAAE,IAAIrC,EAAEqC,EAAE,MAAMA,GAAG,OAAOA,GAAG,OAAO,QAAQA,IAAI9E,EAAEiC,KAAK6C,GAAGA,EAAE,OAAOA,EAAE,UAAU9E,EAAEiC,KAAK6C,IAAItE,KAAK4lB,QAAQ3b,KAAK,GAAG,IAAI,IAAInF,EAAEjF,EAAE,EAAE6L,EAAE7J,EAAE6J,EAAE7L,GAAG,CAAC,SAAS6L,EAAE5G,IAAI,KAAK1D,EAAE9B,EAAEoM,KAAK,KAAKnK,EAAEjC,EAAEoM,EAAE,KAAK,KAAKlK,EAAElC,EAAEoM,EAAE,KAAK,KAAK9I,EAAEtD,EAAEoM,EAAE,MAAMlM,EAAEiC,KAAKL,EAAE5B,EAAEiC,KAAKF,EAAE/B,EAAEiC,KAAKD,EAAEhC,EAAEiC,KAAKmB,EAAE8I,GAAG,EAAE,IAAItK,EAAE9B,EAAEoM,MAAM,IAAIlM,EAAEiC,KAAKL,OAAO,GAAG,MAAM,IAAIA,GAAG,CAAC,GAAGsK,GAAG7L,EAAE,OAAOG,KAAK4lB,QAAQ,GAAGxkB,EAAEK,EAAE,GAAG,MAAM,KAAKF,EAAEjC,EAAEoM,OAAO,CAACA,IAAI,SAAS,IAAI1J,GAAG,GAAGZ,IAAI,EAAE,GAAGG,GAAG,IAAI,CAACmK,IAAI,SAASlM,EAAEiC,KAAKO,OAAO,GAAG,MAAM,IAAIZ,GAAG,CAAC,GAAGsK,GAAG7L,EAAE,OAAOG,KAAK4lB,QAAQ,GAAGxkB,EAAEK,EAAE,GAAG,MAAM,KAAKF,EAAEjC,EAAEoM,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAG7L,EAAE,OAAOG,KAAK4lB,QAAQ,GAAGxkB,EAAEpB,KAAK4lB,QAAQ,GAAGrkB,EAAEE,EAAE,GAAG,MAAM,KAAKD,EAAElC,EAAEoM,OAAO,CAACA,IAAI,SAAS,IAAI1J,GAAG,GAAGZ,IAAI,IAAI,GAAGG,IAAI,EAAE,GAAGC,GAAG,MAAMQ,GAAG,OAAOA,GAAG,OAAO,QAAQA,EAAE,SAASxC,EAAEiC,KAAKO,OAAO,GAAG,MAAM,IAAIZ,GAAG,CAAC,GAAGsK,GAAG7L,EAAE,OAAOG,KAAK4lB,QAAQ,GAAGxkB,EAAEK,EAAE,GAAG,MAAM,KAAKF,EAAEjC,EAAEoM,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAG7L,EAAE,OAAOG,KAAK4lB,QAAQ,GAAGxkB,EAAEpB,KAAK4lB,QAAQ,GAAGrkB,EAAEE,EAAE,GAAG,MAAM,KAAKD,EAAElC,EAAEoM,OAAO,CAACA,IAAI,SAAS,GAAGA,GAAG7L,EAAE,OAAOG,KAAK4lB,QAAQ,GAAGxkB,EAAEpB,KAAK4lB,QAAQ,GAAGrkB,EAAEvB,KAAK4lB,QAAQ,GAAGpkB,EAAEC,EAAE,GAAG,MAAM,KAAKmB,EAAEtD,EAAEoM,OAAO,CAACA,IAAI,SAAS,IAAI1J,GAAG,EAAEZ,IAAI,IAAI,GAAGG,IAAI,IAAI,GAAGC,IAAI,EAAE,GAAGoB,GAAG,OAAOZ,EAAE,QAAQ,SAASxC,EAAEiC,KAAKO,GAAG,OAAOP,GAAGnC,EAApmD,GAAymDE,EAAE+lB,YAAYnkB,GAAGwuD,IAAI,CAACtwD,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqwD,eAAU,EAAO,IAAIzuD,EAAEG,EAAE1B,EAAE,MAAM2B,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,QAAQoB,EAAE,CAAC,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,MAAM,OAAO,CAAC,OAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,OAAO,QAAQ,CAAC,OAAO,SAASnB,EAAE,WAAW,SAASnC,IAAI,GAAGU,KAAK8vD,QAAQ,KAAK1uD,EAAE,CAACA,EAAE,IAAIwG,WAAW,OAAOrG,EAAE0I,KAAK7I,EAAE,GAAGA,EAAE,GAAG,EAAEG,EAAE0I,KAAK7I,EAAE,EAAE,EAAE,IAAIG,EAAE0I,KAAK7I,EAAE,EAAE,IAAI,KAAKG,EAAE0I,KAAK7I,EAAE,EAAE,KAAK,MAAMA,EAAE,MAAM,EAAEA,EAAE,MAAM,EAAEG,EAAE0I,KAAK7I,EAAE,EAAE,MAAM,OAAOA,EAAE,OAAO,EAAEG,EAAE0I,KAAK7I,EAAE,EAAE,MAAM,OAAOG,EAAE0I,KAAK7I,EAAE,EAAE,MAAM,OAAOG,EAAE0I,KAAK7I,EAAE,EAAE,MAAM,OAAOG,EAAE0I,KAAK7I,EAAE,EAAE,MAAM,OAAOG,EAAE0I,KAAK7I,EAAE,EAAE,MAAM,OAAOG,EAAE0I,KAAK7I,EAAE,EAAE,MAAM,OAAO,IAAI,IAAI9B,EAAE,EAAEA,EAAEkC,EAAEoD,SAAStF,EAAEiC,EAAE0I,KAAK7I,EAAE,EAAEI,EAAElC,GAAG,GAAGkC,EAAElC,GAAG,GAAG,IAAI,OAAOA,EAAEQ,UAAUyjD,QAAQ,SAASjkD,GAAG,OAAOA,EAAE,GAAG,EAAEA,EAAE,IAAI,EAAEA,EAAE,MAAM8B,EAAE9B,GAAG,SAASA,EAAEE,GAAG,IAAIK,EAAEuB,EAAE,EAAEG,EAAE/B,EAAEoF,OAAO,EAAE,GAAGtF,EAAEE,EAAE,GAAG,IAAIF,EAAEE,EAAE+B,GAAG,GAAG,OAAM,EAAG,KAAKA,GAAGH,GAAG,GAAG9B,EAAEE,EAAEK,EAAEuB,EAAEG,GAAG,GAAG,GAAGH,EAAEvB,EAAE,MAAM,CAAC,KAAKP,EAAEE,EAAEK,GAAG,IAAI,OAAM,EAAG0B,EAAE1B,EAAE,EAAE,OAAM,EAArJ,CAAyJP,EAAEsD,GAAG,EAAEtD,GAAG,QAAQA,GAAG,QAAQA,GAAG,QAAQA,GAAG,OAAO,EAAE,GAAGA,EAAjrB,GAAsrBE,EAAEqwD,UAAUpuD,GAAGsuD,KAAK,CAACzwD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEq5C,iBAAY,EAAO,IAAIh5C,EAAE,oBAAoBmwD,eAAe,SAAS1wD,GAAGujD,QAAQoN,UAAUpjB,KAAKvtC,IAAI0wD,eAAe5uD,EAAE,WAAW,SAAS9B,EAAEA,GAAGU,KAAKkwD,QAAQ5wD,EAAEU,KAAK44C,aAAa,GAAG54C,KAAKmwD,WAAW,GAAGnwD,KAAKowD,aAAa,EAAEpwD,KAAKqwD,cAAc,EAAErwD,KAAKswD,gBAAe,EAAGtwD,KAAKuwD,WAAW,EAAE,OAAOjxD,EAAEQ,UAAUm5C,UAAU,SAAS35C,EAAEE,GAAG,QAAG,IAASA,GAAGQ,KAAKuwD,WAAW/wD,EAAEQ,KAAKuwD,WAAW,OAAO,GAAGvwD,KAAKowD,cAAc9wD,EAAEsF,OAAO5E,KAAK44C,aAAazzC,KAAK7F,GAAGU,KAAKmwD,WAAWhrD,UAAK,GAAQnF,KAAKuwD,cAAcvwD,KAAKswD,eAAe,CAAC,IAAIzwD,EAAE,IAAIG,KAAKswD,gBAAe,EAAGzwD,EAAEG,KAAK44C,aAAapwB,SAAS,CAACxoB,KAAKkwD,QAAQrwD,GAAG,IAAIuB,EAAEpB,KAAKmwD,WAAW3nC,QAAQpnB,GAAGA,IAAIpB,KAAKowD,aAAa,EAAEpwD,KAAKqwD,cAAc,WAAWrwD,KAAKswD,gBAAe,EAAGtwD,KAAKuwD,WAAW,IAAIjxD,EAAEQ,UAAUy4B,MAAM,SAASj5B,EAAEE,GAAG,IAAIK,EAAEG,KAAK,GAAGA,KAAKowD,aAAa,IAAI,MAAM,IAAIlkD,MAAM,+DAA+DlM,KAAK44C,aAAah0C,SAAS5E,KAAKqwD,cAAc,EAAEhxC,YAAW,WAAY,OAAOxf,EAAE2wD,kBAAkBxwD,KAAKowD,cAAc9wD,EAAEsF,OAAO5E,KAAK44C,aAAazzC,KAAK7F,GAAGU,KAAKmwD,WAAWhrD,KAAK3F,IAAIF,EAAEQ,UAAU0wD,YAAY,SAASlxD,EAAEE,GAAG,IAAI4B,EAAEpB,UAAK,IAASV,IAAIA,EAAE,QAAG,IAASE,IAAIA,GAAE,GAAI,IAAI,IAAI+B,EAAEjC,GAAG4f,KAAKC,MAAMnf,KAAK44C,aAAah0C,OAAO5E,KAAKqwD,eAAe,CAAC,IAAI7uD,EAAExB,KAAK44C,aAAa54C,KAAKqwD,eAAeztD,EAAE5C,KAAKkwD,QAAQ1uD,EAAEhC,GAAG,GAAGoD,EAAE,YAAYA,EAAEmgD,OAAM,SAAUzjD,GAAG,OAAOO,GAAE,WAAY,MAAMP,KAAKujD,QAAQoN,SAAQ,MAAOpjB,MAAK,SAAUvtC,GAAG,OAAO4f,KAAKC,MAAM5d,GAAG,GAAG8d,YAAW,WAAY,OAAOje,EAAEovD,YAAY,EAAElxD,MAAM8B,EAAEovD,YAAYjvD,EAAEjC,MAAM,IAAImC,EAAEzB,KAAKmwD,WAAWnwD,KAAKqwD,eAAe,GAAG5uD,GAAGA,IAAIzB,KAAKqwD,gBAAgBrwD,KAAKowD,cAAc5uD,EAAEoD,OAAOsa,KAAKC,MAAM5d,GAAG,GAAG,MAAMvB,KAAK44C,aAAah0C,OAAO5E,KAAKqwD,eAAerwD,KAAKqwD,cAAc,KAAKrwD,KAAK44C,aAAa54C,KAAK44C,aAAazuC,MAAMnK,KAAKqwD,eAAerwD,KAAKmwD,WAAWnwD,KAAKmwD,WAAWhmD,MAAMnK,KAAKqwD,eAAerwD,KAAKqwD,cAAc,GAAGhxC,YAAW,WAAY,OAAOje,EAAEovD,mBAAmBxwD,KAAK44C,aAAah0C,OAAO,EAAE5E,KAAKmwD,WAAWvrD,OAAO,EAAE5E,KAAKowD,aAAa,EAAEpwD,KAAKqwD,cAAc,IAAI/wD,EAAtyD,GAA2yDE,EAAEq5C,YAAYz3C,GAAGqvD,KAAK,CAACnxD,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEkxD,mBAAc,EAAOlxD,EAAEkxD,cAAc,KAAKC,KAAK,CAACrxD,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqkD,WAAWrkD,EAAEoxD,eAAU,EAAO,IAAIxvD,EAAEvB,EAAE,KAAK0B,EAAE1B,EAAE,MAAM2B,EAAE3B,EAAE,MAAM+C,EAAE,GAAGnB,EAAE,WAAW,SAASnC,IAAIU,KAAK6wD,UAAUpxD,OAAO8C,OAAO,MAAMvC,KAAK8wD,QAAQluD,EAAE5C,KAAK+wD,OAAO,EAAE/wD,KAAKgxD,WAAW,aAAahxD,KAAKixD,OAAO,CAACvU,QAAO,EAAGwU,aAAa,EAAEC,aAAY,GAAI,OAAO7xD,EAAEQ,UAAUI,QAAQ,WAAWF,KAAK6wD,UAAUpxD,OAAO8C,OAAO,MAAMvC,KAAKgxD,WAAW,aAAahxD,KAAK8wD,QAAQluD,GAAGtD,EAAEQ,UAAUsxD,gBAAgB,SAAS9xD,EAAEE,QAAG,IAASQ,KAAK6wD,UAAUvxD,KAAKU,KAAK6wD,UAAUvxD,GAAG,IAAI,IAAIO,EAAEG,KAAK6wD,UAAUvxD,GAAG,OAAOO,EAAEsF,KAAK3F,GAAG,CAACU,QAAQ,WAAW,IAAIZ,EAAEO,EAAE6E,QAAQlF,IAAI,IAAIF,GAAGO,EAAE8V,OAAOrW,EAAE,MAAMA,EAAEQ,UAAUuxD,aAAa,SAAS/xD,GAAGU,KAAK6wD,UAAUvxD,WAAWU,KAAK6wD,UAAUvxD,IAAIA,EAAEQ,UAAUwxD,mBAAmB,SAAShyD,GAAGU,KAAKgxD,WAAW1xD,GAAGA,EAAEQ,UAAUyS,MAAM,WAAW,GAAGvS,KAAK8wD,QAAQlsD,OAAO,IAAI,IAAItF,EAAEU,KAAKixD,OAAOvU,OAAO18C,KAAKixD,OAAOC,aAAa,EAAElxD,KAAK8wD,QAAQlsD,OAAO,EAAEtF,GAAG,IAAIA,EAAEU,KAAK8wD,QAAQxxD,GAAGg8C,QAAO,GAAIt7C,KAAKixD,OAAOvU,QAAO,EAAG18C,KAAK8wD,QAAQluD,EAAE5C,KAAK+wD,OAAO,GAAGzxD,EAAEQ,UAAUs7C,KAAK,SAAS97C,EAAEE,GAAG,GAAGQ,KAAKuS,QAAQvS,KAAK+wD,OAAOzxD,EAAEU,KAAK8wD,QAAQ9wD,KAAK6wD,UAAUvxD,IAAIsD,EAAE5C,KAAK8wD,QAAQlsD,OAAO,IAAI,IAAI/E,EAAEG,KAAK8wD,QAAQlsD,OAAO,EAAE/E,GAAG,EAAEA,IAAIG,KAAK8wD,QAAQjxD,GAAGu7C,KAAK57C,QAAQQ,KAAKgxD,WAAWhxD,KAAK+wD,OAAO,OAAOvxD,IAAIF,EAAEQ,UAAUu7C,IAAI,SAAS/7C,EAAEE,EAAEK,GAAG,GAAGG,KAAK8wD,QAAQlsD,OAAO,IAAI,IAAIrD,EAAEvB,KAAK8wD,QAAQlsD,OAAO,EAAErD,GAAG,EAAEA,IAAIvB,KAAK8wD,QAAQvvD,GAAG85C,IAAI/7C,EAAEE,EAAEK,QAAQG,KAAKgxD,WAAWhxD,KAAK+wD,OAAO,MAAM3vD,EAAEqkB,cAAcnmB,EAAEE,EAAEK,KAAKP,EAAEQ,UAAUw7C,OAAO,SAASh8C,EAAEE,GAAG,QAAG,IAASA,IAAIA,GAAE,GAAIQ,KAAK8wD,QAAQlsD,OAAO,CAAC,IAAI/E,GAAE,EAAGuB,EAAEpB,KAAK8wD,QAAQlsD,OAAO,EAAErD,GAAE,EAAG,GAAGvB,KAAKixD,OAAOvU,SAASt7C,EAAEpB,KAAKixD,OAAOC,aAAa,EAAErxD,EAAEL,EAAE+B,EAAEvB,KAAKixD,OAAOE,YAAYnxD,KAAKixD,OAAOvU,QAAO,IAAKn7C,IAAG,IAAK1B,EAAE,CAAC,KAAKuB,GAAG,IAAG,KAAMvB,EAAEG,KAAK8wD,QAAQ1vD,GAAGk6C,OAAOh8C,IAAI8B,IAAI,GAAGvB,aAAagjD,QAAQ,OAAO7iD,KAAKixD,OAAOvU,QAAO,EAAG18C,KAAKixD,OAAOC,aAAa9vD,EAAEpB,KAAKixD,OAAOE,aAAY,EAAGtxD,EAAEuB,IAAI,KAAKA,GAAG,EAAEA,IAAI,IAAIvB,EAAEG,KAAK8wD,QAAQ1vD,GAAGk6C,QAAO,cAAeuH,QAAQ,OAAO7iD,KAAKixD,OAAOvU,QAAO,EAAG18C,KAAKixD,OAAOC,aAAa9vD,EAAEpB,KAAKixD,OAAOE,aAAY,EAAGtxD,OAAOG,KAAKgxD,WAAWhxD,KAAK+wD,OAAO,SAASzxD,GAAGU,KAAK8wD,QAAQluD,EAAE5C,KAAK+wD,OAAO,GAAGzxD,EAAz1D,GAA81DE,EAAEoxD,UAAUnvD,EAAE,IAAIO,EAAE,IAAIT,EAAEgwD,OAAOvvD,EAAEwvD,SAAS,GAAG,IAAI3vD,EAAE,WAAW,SAASvC,EAAEA,GAAGU,KAAKqD,SAAS/D,EAAEU,KAAKm7C,MAAM,GAAGn7C,KAAKyxD,QAAQzvD,EAAEhC,KAAK0xD,WAAU,EAAG,OAAOpyD,EAAEQ,UAAUs7C,KAAK,SAAS97C,GAAGU,KAAKyxD,QAAQnyD,EAAEsF,OAAO,GAAGtF,EAAE29C,OAAO,GAAG39C,EAAEujB,QAAQ7gB,EAAEhC,KAAKm7C,MAAM,GAAGn7C,KAAK0xD,WAAU,GAAIpyD,EAAEQ,UAAUu7C,IAAI,SAAS/7C,EAAEE,EAAEK,GAAGG,KAAK0xD,YAAY1xD,KAAKm7C,OAAO/5C,EAAEqkB,cAAcnmB,EAAEE,EAAEK,GAAGG,KAAKm7C,MAAMv2C,OAAOpD,EAAEkvD,gBAAgB1wD,KAAKm7C,MAAM,GAAGn7C,KAAK0xD,WAAU,KAAMpyD,EAAEQ,UAAUw7C,OAAO,SAASh8C,GAAG,IAAIE,EAAEQ,KAAKH,GAAE,EAAG,GAAGG,KAAK0xD,UAAU7xD,GAAE,OAAQ,GAAGP,IAAIO,EAAEG,KAAKqD,SAASrD,KAAKm7C,MAAMn7C,KAAKyxD,oBAAoB5O,QAAQ,OAAOhjD,EAAEgtC,MAAK,SAAUvtC,GAAG,OAAOE,EAAEiyD,QAAQzvD,EAAExC,EAAE27C,MAAM,GAAG37C,EAAEkyD,WAAU,EAAGpyD,KAAK,OAAOU,KAAKyxD,QAAQzvD,EAAEhC,KAAKm7C,MAAM,GAAGn7C,KAAK0xD,WAAU,EAAG7xD,GAAGP,EAA7nB,GAAkoBE,EAAEqkD,WAAWhiD,GAAG8vD,KAAK,SAASryD,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+7C,qBAAqB/7C,EAAEoyD,uBAAuBpyD,EAAEqyD,qBAAgB,EAAO,IAAIrwD,EAAE3B,EAAE,KAAK+C,EAAE/C,EAAE,MAAM4B,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAE,WAAW,SAASvF,EAAEA,GAAGU,KAAK8xD,MAAM,IAAIlqD,WAAWtI,GAAG,OAAOA,EAAEQ,UAAUiyD,WAAW,SAASzyD,EAAEE,GAAGoD,EAAEqH,KAAKjK,KAAK8xD,MAAMxyD,GAAG,EAAEE,IAAIF,EAAEQ,UAAUwb,IAAI,SAAShc,EAAEE,EAAEK,EAAEuB,GAAGpB,KAAK8xD,MAAMtyD,GAAG,EAAEF,GAAGO,GAAG,EAAEuB,GAAG9B,EAAEQ,UAAUkyD,QAAQ,SAAS1yD,EAAEE,EAAEK,EAAEuB,GAAG,IAAI,IAAIG,EAAE,EAAEA,EAAEjC,EAAEsF,OAAOrD,IAAIvB,KAAK8xD,MAAMtyD,GAAG,EAAEF,EAAEiC,IAAI1B,GAAG,EAAEuB,GAAG9B,EAAzR,GAA8RE,EAAEqyD,gBAAgBhtD,EAAE,IAAIP,EAAE,IAAI9E,EAAEoyD,uBAAuB,WAAW,IAAItyD,EAAE,IAAIuF,EAAE,MAAMrF,EAAE4Q,MAAM+T,MAAM,KAAK/T,MAAM,MAAM8c,KAAI,SAAU5tB,EAAEE,GAAG,OAAOA,KAAKK,EAAE,SAASP,EAAEO,GAAG,OAAOL,EAAE2K,MAAM7K,EAAEO,IAAIuB,EAAEvB,EAAE,GAAG,KAAK0B,EAAE1B,EAAE,EAAE,IAAI0B,EAAE4D,KAAK,IAAI5D,EAAE4D,KAAKgf,MAAM5iB,EAAE1B,EAAE,GAAG,KAAK,IAAI2B,EAAEoB,EAAE/C,EAAE,EAAE,IAAI,IAAI2B,KAAKlC,EAAEyyD,WAAW,EAAE,GAAGzyD,EAAE0yD,QAAQ5wD,EAAE,EAAE,EAAE,GAAGwB,EAAEtD,EAAE0yD,QAAQ,CAAC,GAAG,GAAG,IAAI,KAAKxwD,EAAE,EAAE,GAAGlC,EAAE0yD,QAAQnyD,EAAE,IAAI,KAAK2B,EAAE,EAAE,GAAGlC,EAAE0yD,QAAQnyD,EAAE,IAAI,KAAK2B,EAAE,EAAE,GAAGlC,EAAEgc,IAAI,IAAI9Z,EAAE,EAAE,GAAGlC,EAAEgc,IAAI,GAAG9Z,EAAE,GAAG,GAAGlC,EAAEgc,IAAI,IAAI9Z,EAAE,EAAE,GAAGlC,EAAE0yD,QAAQ,CAAC,IAAI,IAAI,KAAKxwD,EAAE,EAAE,GAAGlC,EAAEgc,IAAI,IAAI9Z,EAAE,GAAG,GAAGlC,EAAEgc,IAAI,IAAI9Z,EAAE,GAAG,GAAG,OAAOlC,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAEgc,IAAI,GAAG,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQ5wD,EAAE,EAAE,EAAE,GAAG9B,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQ,CAAC,IAAI,GAAG,GAAG,GAAG,GAAG,EAAE,EAAE,GAAG1yD,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQ,CAAC,GAAG,GAAG,IAAI,EAAE,EAAE,GAAG1yD,EAAE0yD,QAAQ5wD,EAAE,EAAE,EAAE,GAAG9B,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAEgc,IAAI,GAAG,EAAE,GAAG,GAAGhc,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQ,CAAC,GAAG,GAAG,GAAG,IAAI,EAAE,EAAE,GAAG1yD,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,EAAE,EAAE,GAAGP,EAAE0yD,QAAQ,CAAC,GAAG,GAAG,GAAG,IAAI,EAAE,EAAE,GAAG1yD,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,EAAE,GAAG,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,GAAG,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,GAAG,GAAGP,EAAE0yD,QAAQ,CAAC,GAAG,GAAG,IAAI,EAAE,GAAG,GAAG1yD,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,EAAE,GAAG,GAAGP,EAAEgc,IAAI,GAAG,EAAE,GAAG,GAAGhc,EAAE0yD,QAAQzwD,EAAE,EAAE,EAAE,GAAGjC,EAAEgc,IAAI,IAAI,EAAE,EAAE,GAAGhc,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,GAAGP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,EAAE,EAAE,IAAIP,EAAE0yD,QAAQ,CAAC,GAAG,GAAG,GAAG,IAAI,EAAE,EAAE,IAAI1yD,EAAE0yD,QAAQzwD,EAAE,GAAG,EAAE,IAAIjC,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,GAAG,EAAE,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,GAAG,EAAE,IAAIP,EAAE0yD,QAAQzwD,EAAE,GAAG,EAAE,IAAIjC,EAAEgc,IAAI,IAAI,GAAG,EAAE,IAAIhc,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,GAAG,EAAE,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,GAAG,EAAE,IAAIP,EAAE0yD,QAAQ,CAAC,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE,IAAI1yD,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,GAAG,EAAE,IAAIP,EAAE0yD,QAAQzwD,EAAE,GAAG,EAAE,IAAIjC,EAAEgc,IAAI,IAAI,GAAG,EAAE,IAAIhc,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,GAAG,EAAE,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,GAAG,EAAE,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,IAAI,GAAG,EAAE,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,GAAG,GAAG,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,GAAG,GAAG,IAAIP,EAAE0yD,QAAQnyD,EAAE,GAAG,KAAK,EAAE,GAAG,IAAIP,EAAE0yD,QAAQzwD,EAAE,GAAG,GAAG,IAAIjC,EAAE0yD,QAAQ5wD,EAAE,GAAG,GAAG,IAAI9B,EAAEgc,IAAI,IAAI,GAAG,EAAE,IAAIhc,EAAE0yD,QAAQ,CAAC,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,GAAG1yD,EAAEgc,IAAIhX,EAAE,EAAE,EAAE,GAAGhF,EAAEgc,IAAIhX,EAAE,EAAE,EAAE,GAAGhF,EAAEgc,IAAIhX,EAAE,EAAE,EAAE,GAAGhF,EAAEgc,IAAIhX,EAAE,GAAG,EAAE,IAAIhF,EAAEgc,IAAIhX,EAAE,GAAG,GAAG,IAAIhF,EAAxuE,GAA6uE,IAAIkF,EAAE,SAASlF,GAAG,SAASO,EAAEA,QAAG,IAASA,IAAIA,EAAEL,EAAEoyD,wBAAwB,IAAIxwD,EAAE9B,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOoB,EAAE6wD,aAAapyD,EAAEuB,EAAEq7C,YAAY,CAACrqB,MAAM,EAAE8/B,SAAS,GAAGC,WAAW,EAAEC,WAAW,EAAEC,SAAS,GAAGjxD,EAAEkxD,aAAa,EAAElxD,EAAEmxD,aAAanxD,EAAEkxD,aAAalxD,EAAEqwD,QAAQ,IAAIhwD,EAAE8vD,OAAOnwD,EAAEqwD,QAAQD,SAAS,GAAGpwD,EAAEoxD,SAAS,EAAEpxD,EAAEuiD,mBAAmB,EAAEviD,EAAEqxD,gBAAgB,SAASnzD,EAAEE,EAAEK,KAAKuB,EAAEsxD,kBAAkB,SAASpzD,KAAK8B,EAAEuxD,cAAc,SAASrzD,EAAEE,KAAK4B,EAAEwxD,cAAc,SAAStzD,KAAK8B,EAAEyxD,gBAAgB,SAASvzD,GAAG,OAAOA,GAAG8B,EAAE0xD,cAAc1xD,EAAEqxD,gBAAgBrxD,EAAE2xD,iBAAiBtzD,OAAO8C,OAAO,MAAMnB,EAAE4xD,aAAavzD,OAAO8C,OAAO,MAAMnB,EAAE6xD,aAAaxzD,OAAO8C,OAAO,MAAMnB,EAAE8xD,WAAW,IAAIlxD,EAAEmxD,UAAU/xD,EAAEgyD,WAAW,IAAIvxD,EAAE+uD,UAAUxvD,EAAEiyD,cAAcjyD,EAAEyxD,gBAAgBzxD,EAAEomC,mBAAmB,CAACkS,MAAM,OAAM,WAAY,OAAM,KAAMt4C,EAAE,OAAOG,EAAE1B,EAAEP,GAAGO,EAAEC,UAAUwzD,YAAY,SAASh0D,EAAEE,QAAG,IAASA,IAAIA,EAAE,CAAC,GAAG,MAAM,IAAIK,EAAE,EAAE,GAAGP,EAAEi/C,OAAO,CAAC,GAAGj/C,EAAEi/C,OAAO35C,OAAO,EAAE,MAAM,IAAIsH,MAAM,qCAAqC,IAAIrM,EAAEP,EAAEi/C,OAAO75B,WAAW,KAAK,GAAG7kB,GAAGA,EAAE,GAAG,MAAM,IAAIqM,MAAM,wCAAwC,GAAG5M,EAAEo+C,cAAc,CAAC,GAAGp+C,EAAEo+C,cAAc94C,OAAO,EAAE,MAAM,IAAIsH,MAAM,iDAAiD,IAAI,IAAI9K,EAAE,EAAEA,EAAE9B,EAAEo+C,cAAc94C,SAASxD,EAAE,CAAC,IAAIG,EAAEjC,EAAEo+C,cAAch5B,WAAWtjB,GAAG,GAAG,GAAGG,GAAGA,EAAE,GAAG,MAAM,IAAI2K,MAAM,8CAA8CrM,IAAI,EAAEA,GAAG0B,GAAG,GAAG,IAAIjC,EAAEo6C,MAAM90C,OAAO,MAAM,IAAIsH,MAAM,+BAA+B,IAAI1K,EAAElC,EAAEo6C,MAAMh1B,WAAW,GAAG,GAAGllB,EAAE,GAAGgC,GAAGA,EAAEhC,EAAE,GAAG,MAAM,IAAI0M,MAAM,0BAA0B1M,EAAE,GAAG,OAAOA,EAAE,IAAI,OAAOK,IAAI,GAAG2B,GAAG3B,EAAEC,UAAUk9C,cAAc,SAAS19C,GAAG,IAAI,IAAIE,EAAE,GAAGF,GAAGE,EAAE2F,KAAK0T,OAAOC,aAAa,IAAIxZ,IAAIA,IAAI,EAAE,OAAOE,EAAE+zD,UAAU5qB,KAAK,KAAK9oC,EAAEC,UAAUI,QAAQ,WAAWF,KAAKgzD,aAAavzD,OAAO8C,OAAO,MAAMvC,KAAK+yD,iBAAiBtzD,OAAO8C,OAAO,MAAMvC,KAAKizD,aAAaxzD,OAAO8C,OAAO,MAAMvC,KAAKkzD,WAAWhzD,UAAUF,KAAKozD,WAAWlzD,WAAWL,EAAEC,UAAUy9C,gBAAgB,SAASj+C,GAAGU,KAAK8yD,cAAcxzD,GAAGO,EAAEC,UAAU0zD,kBAAkB,WAAWxzD,KAAK8yD,cAAc9yD,KAAKyyD,iBAAiB5yD,EAAEC,UAAU0nC,mBAAmB,SAASloC,EAAEE,GAAG,IAAIK,EAAEG,KAAKszD,YAAYh0D,EAAE,CAAC,GAAG,WAAM,IAASU,KAAKizD,aAAapzD,KAAKG,KAAKizD,aAAapzD,GAAG,IAAI,IAAIuB,EAAEpB,KAAKizD,aAAapzD,GAAG,OAAOuB,EAAE+D,KAAK3F,GAAG,CAACU,QAAQ,WAAW,IAAIZ,EAAE8B,EAAEsD,QAAQlF,IAAI,IAAIF,GAAG8B,EAAEuU,OAAOrW,EAAE,MAAMO,EAAEC,UAAU2zD,gBAAgB,SAASn0D,GAAGU,KAAKizD,aAAajzD,KAAKszD,YAAYh0D,EAAE,CAAC,GAAG,eAAeU,KAAKizD,aAAajzD,KAAKszD,YAAYh0D,EAAE,CAAC,GAAG,QAAQO,EAAEC,UAAUo9C,sBAAsB,SAAS59C,GAAGU,KAAK4yD,cAActzD,GAAGO,EAAEC,UAAU0gD,kBAAkB,SAASlhD,EAAEE,GAAGQ,KAAK+yD,iBAAiBzzD,EAAEolB,WAAW,IAAIllB,GAAGK,EAAEC,UAAU4zD,oBAAoB,SAASp0D,GAAGU,KAAK+yD,iBAAiBzzD,EAAEolB,WAAW,YAAY1kB,KAAK+yD,iBAAiBzzD,EAAEolB,WAAW,KAAK7kB,EAAEC,UAAUq9C,0BAA0B,SAAS79C,GAAGU,KAAK0yD,kBAAkBpzD,GAAGO,EAAEC,UAAUqnC,mBAAmB,SAAS7nC,EAAEE,GAAG,IAAIK,EAAEG,KAAKszD,YAAYh0D,QAAG,IAASU,KAAKgzD,aAAanzD,KAAKG,KAAKgzD,aAAanzD,GAAG,IAAI,IAAIuB,EAAEpB,KAAKgzD,aAAanzD,GAAG,OAAOuB,EAAE+D,KAAK3F,GAAG,CAACU,QAAQ,WAAW,IAAIZ,EAAE8B,EAAEsD,QAAQlF,IAAI,IAAIF,GAAG8B,EAAEuU,OAAOrW,EAAE,MAAMO,EAAEC,UAAU6zD,gBAAgB,SAASr0D,GAAGU,KAAKgzD,aAAahzD,KAAKszD,YAAYh0D,YAAYU,KAAKgzD,aAAahzD,KAAKszD,YAAYh0D,KAAKO,EAAEC,UAAUg9C,sBAAsB,SAASx9C,GAAGU,KAAK2yD,cAAcrzD,GAAGO,EAAEC,UAAUwnC,mBAAmB,SAAShoC,EAAEE,GAAG,OAAOQ,KAAKozD,WAAWhC,gBAAgBpxD,KAAKszD,YAAYh0D,GAAGE,IAAIK,EAAEC,UAAU8zD,gBAAgB,SAASt0D,GAAGU,KAAKozD,WAAW/B,aAAarxD,KAAKszD,YAAYh0D,KAAKO,EAAEC,UAAUu9C,sBAAsB,SAAS/9C,GAAGU,KAAKozD,WAAW9B,mBAAmBhyD,IAAIO,EAAEC,UAAU4nC,mBAAmB,SAASpoC,EAAEE,GAAG,OAAOQ,KAAKkzD,WAAW9B,gBAAgB9xD,EAAEE,IAAIK,EAAEC,UAAU+zD,gBAAgB,SAASv0D,GAAGU,KAAKkzD,WAAW7B,aAAa/xD,IAAIO,EAAEC,UAAUs9C,sBAAsB,SAAS99C,GAAGU,KAAKkzD,WAAW5B,mBAAmBhyD,IAAIO,EAAEC,UAAU4iD,gBAAgB,SAASpjD,GAAGU,KAAKqzD,cAAc/zD,GAAGO,EAAEC,UAAUg0D,kBAAkB,WAAW9zD,KAAKqzD,cAAcrzD,KAAK6yD,iBAAiBhzD,EAAEC,UAAUyS,MAAM,WAAWvS,KAAKuyD,aAAavyD,KAAKsyD,aAAatyD,KAAKkzD,WAAW3gD,QAAQvS,KAAKozD,WAAW7gD,QAAQvS,KAAKyxD,QAAQl/C,QAAQvS,KAAKyxD,QAAQD,SAAS,GAAGxxD,KAAKwyD,SAAS,EAAExyD,KAAK2jD,mBAAmB,EAAE,IAAI3jD,KAAKy8C,YAAYrqB,QAAQpyB,KAAKy8C,YAAYrqB,MAAM,EAAEpyB,KAAKy8C,YAAYyV,SAAS,KAAKryD,EAAEC,UAAU6iD,eAAe,SAASrjD,EAAEE,EAAEK,EAAEuB,EAAEG,GAAGvB,KAAKy8C,YAAYrqB,MAAM9yB,EAAEU,KAAKy8C,YAAYyV,SAAS1yD,EAAEQ,KAAKy8C,YAAY0V,WAAWtyD,EAAEG,KAAKy8C,YAAY2V,WAAWhxD,EAAEpB,KAAKy8C,YAAY4V,SAAS9wD,GAAG1B,EAAEC,UAAUg5C,MAAM,SAASx5C,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAE,EAAEC,EAAE,EAAEoB,EAAE,EAAE,GAAG5C,KAAKy8C,YAAYrqB,MAAM,GAAG,IAAIpyB,KAAKy8C,YAAYrqB,MAAMpyB,KAAKy8C,YAAYrqB,MAAM,EAAExvB,EAAE5C,KAAKy8C,YAAY4V,SAAS,MAAM,CAAC,QAAG,IAASxyD,GAAG,IAAIG,KAAKy8C,YAAYrqB,MAAM,MAAMpyB,KAAKy8C,YAAYrqB,MAAM,EAAE,IAAIlmB,MAAM,0EAA0E,IAAIzK,EAAEzB,KAAKy8C,YAAYyV,SAASlwD,EAAEhC,KAAKy8C,YAAY0V,WAAW,EAAE,OAAOnyD,KAAKy8C,YAAYrqB,OAAO,KAAK,EAAE,IAAG,IAAKvyB,GAAGmC,GAAG,EAAE,KAAKA,GAAG,IAAG,KAAMZ,EAAEK,EAAEO,GAAGhC,KAAKyxD,UAAUzvD,IAAI,GAAGZ,aAAayhD,QAAQ,OAAO7iD,KAAKy8C,YAAY0V,WAAWnwD,EAAEZ,EAAEpB,KAAKy8C,YAAYyV,SAAS,GAAG,MAAM,KAAK,EAAE,IAAG,IAAKryD,GAAGmC,GAAG,EAAE,KAAKA,GAAG,IAAG,KAAMZ,EAAEK,EAAEO,MAAMA,IAAI,GAAGZ,aAAayhD,QAAQ,OAAO7iD,KAAKy8C,YAAY0V,WAAWnwD,EAAEZ,EAAEpB,KAAKy8C,YAAYyV,SAAS,GAAG,MAAM,KAAK,EAAE,GAAG3wD,EAAEjC,EAAEU,KAAKy8C,YAAY4V,UAAUjxD,EAAEpB,KAAKozD,WAAW9X,OAAO,KAAK/5C,GAAG,KAAKA,EAAE1B,GAAG,OAAOuB,EAAE,KAAKG,IAAIvB,KAAKy8C,YAAY2V,YAAY,GAAGpyD,KAAKyxD,QAAQl/C,QAAQvS,KAAKyxD,QAAQD,SAAS,GAAGxxD,KAAKwyD,SAAS,EAAE,MAAM,KAAK,EAAE,GAAGjxD,EAAEjC,EAAEU,KAAKy8C,YAAY4V,UAAUjxD,EAAEpB,KAAKkzD,WAAWhuD,IAAI,KAAK3D,GAAG,KAAKA,EAAE1B,GAAG,OAAOuB,EAAE,KAAKG,IAAIvB,KAAKy8C,YAAY2V,YAAY,GAAGpyD,KAAKyxD,QAAQl/C,QAAQvS,KAAKyxD,QAAQD,SAAS,GAAGxxD,KAAKwyD,SAAS,EAAExyD,KAAKy8C,YAAYrqB,MAAM,EAAExvB,EAAE5C,KAAKy8C,YAAY4V,SAAS,EAAEryD,KAAK2jD,mBAAmB,EAAE3jD,KAAKuyD,aAAa,GAAGvyD,KAAKy8C,YAAY2V,WAAW,IAAI,IAAIvwD,EAAEe,EAAEf,EAAErC,IAAIqC,EAAE,CAAC,OAAON,EAAEjC,EAAEuC,IAAIL,EAAExB,KAAKiyD,aAAaH,MAAM9xD,KAAKuyD,cAAc,GAAGhxD,EAAE,IAAIA,EAAE+C,MAAM,GAAG,KAAK,EAAE,IAAI,IAAIO,EAAEhD,EAAE,KAAKgD,EAAE,CAAC,GAAGA,GAAGrF,IAAI+B,EAAEjC,EAAEuF,IAAI,IAAItD,EAAE,KAAKA,EAAE+C,EAAE,CAACtE,KAAK8yD,cAAcxzD,EAAEuC,EAAEgD,GAAGhD,EAAEgD,EAAE,EAAE,MAAM,KAAKA,GAAGrF,IAAI+B,EAAEjC,EAAEuF,IAAI,IAAItD,EAAE,KAAKA,EAAE+C,EAAE,CAACtE,KAAK8yD,cAAcxzD,EAAEuC,EAAEgD,GAAGhD,EAAEgD,EAAE,EAAE,MAAM,KAAKA,GAAGrF,IAAI+B,EAAEjC,EAAEuF,IAAI,IAAItD,EAAE,KAAKA,EAAE+C,EAAE,CAACtE,KAAK8yD,cAAcxzD,EAAEuC,EAAEgD,GAAGhD,EAAEgD,EAAE,EAAE,MAAM,KAAKA,GAAGrF,IAAI+B,EAAEjC,EAAEuF,IAAI,IAAItD,EAAE,KAAKA,EAAE+C,EAAE,CAACtE,KAAK8yD,cAAcxzD,EAAEuC,EAAEgD,GAAGhD,EAAEgD,EAAE,EAAE,OAAO,MAAM,KAAK,EAAE7E,KAAK+yD,iBAAiBxxD,GAAGvB,KAAK+yD,iBAAiBxxD,KAAKvB,KAAK0yD,kBAAkBnxD,GAAGvB,KAAK2jD,mBAAmB,EAAE,MAAM,KAAK,EAAE,MAAM,KAAK,EAAE,GAAG3jD,KAAKqzD,cAAc,CAACvxB,SAASjgC,EAAEsmC,KAAK5mC,EAAEgxD,aAAavyD,KAAKuyD,aAAawB,QAAQ/zD,KAAKwyD,SAASvV,OAAOj9C,KAAKyxD,QAAQuC,OAAM,IAAKA,MAAM,OAAO,MAAM,KAAK,EAAE,IAAI,IAAIxvD,GAAG/C,EAAEzB,KAAKgzD,aAAahzD,KAAKwyD,UAAU,EAAEjxD,IAAIE,EAAEmD,OAAO,GAAG,EAAEJ,GAAG,IAAG,KAAMpD,EAAEK,EAAE+C,GAAGxE,KAAKyxD,UAAUjtD,IAAI,GAAGpD,aAAayhD,QAAQ,OAAO7iD,KAAK2iD,eAAe,EAAElhD,EAAE+C,EAAEhD,EAAEK,GAAGT,EAAEoD,EAAE,GAAGxE,KAAK2yD,cAAc3yD,KAAKwyD,UAAU,EAAEjxD,EAAEvB,KAAKyxD,SAASzxD,KAAK2jD,mBAAmB,EAAE,MAAM,KAAK,EAAE,GAAG,OAAOpiD,GAAG,KAAK,GAAGvB,KAAKyxD,QAAQD,SAAS,GAAG,MAAM,KAAK,GAAGxxD,KAAKyxD,QAAQwC,aAAa,GAAG,MAAM,QAAQj0D,KAAKyxD,QAAQyC,SAAS3yD,EAAE,aAAaM,EAAErC,IAAI+B,EAAEjC,EAAEuC,IAAI,IAAIN,EAAE,IAAIM,IAAI,MAAM,KAAK,EAAE7B,KAAKwyD,WAAW,EAAExyD,KAAKwyD,UAAUjxD,EAAE,MAAM,KAAK,GAAG,IAAI,IAAIyE,EAAEhG,KAAKizD,aAAajzD,KAAKwyD,UAAU,EAAEjxD,GAAGU,EAAE+D,EAAEA,EAAEpB,OAAO,GAAG,EAAE3C,GAAG,IAAG,KAAMb,EAAE4E,EAAE/D,MAAMA,IAAI,GAAGb,aAAayhD,QAAQ,OAAO7iD,KAAK2iD,eAAe,EAAE38C,EAAE/D,EAAET,EAAEK,GAAGT,EAAEa,EAAE,GAAGjC,KAAK4yD,cAAc5yD,KAAKwyD,UAAU,EAAEjxD,GAAGvB,KAAK2jD,mBAAmB,EAAE,MAAM,KAAK,GAAG3jD,KAAKyxD,QAAQl/C,QAAQvS,KAAKyxD,QAAQD,SAAS,GAAGxxD,KAAKwyD,SAAS,EAAE,MAAM,KAAK,GAAGxyD,KAAKozD,WAAWhY,KAAKp7C,KAAKwyD,UAAU,EAAEjxD,EAAEvB,KAAKyxD,SAAS,MAAM,KAAK,GAAG,IAAI,IAAI9uD,EAAEd,EAAE,KAAKc,EAAE,GAAGA,GAAGnD,GAAG,MAAM+B,EAAEjC,EAAEqD,KAAK,KAAKpB,GAAG,KAAKA,GAAGA,EAAE,KAAKA,EAAE+C,EAAE,CAACtE,KAAKozD,WAAW/X,IAAI/7C,EAAEuC,EAAEc,GAAGd,EAAEc,EAAE,EAAE,MAAM,MAAM,KAAK,GAAG,GAAGvB,EAAEpB,KAAKozD,WAAW9X,OAAO,KAAK/5C,GAAG,KAAKA,GAAG,OAAOvB,KAAK2iD,eAAe,EAAE,GAAG,EAAEnhD,EAAEK,GAAGT,EAAE,KAAKG,IAAIC,GAAG,GAAGxB,KAAKyxD,QAAQl/C,QAAQvS,KAAKyxD,QAAQD,SAAS,GAAGxxD,KAAKwyD,SAAS,EAAExyD,KAAK2jD,mBAAmB,EAAE,MAAM,KAAK,EAAE3jD,KAAKkzD,WAAWnuD,QAAQ,MAAM,KAAK,EAAE,IAAI,IAAID,EAAEjD,EAAE,GAAGiD,IAAI,GAAGA,GAAGtF,IAAI+B,EAAEjC,EAAEwF,IAAI,IAAIvD,EAAE,KAAKA,EAAE+C,EAAE,CAACtE,KAAKkzD,WAAW7X,IAAI/7C,EAAEuC,EAAEiD,GAAGjD,EAAEiD,EAAE,EAAE,MAAM,MAAM,KAAK,EAAE,GAAG1D,EAAEpB,KAAKkzD,WAAWhuD,IAAI,KAAK3D,GAAG,KAAKA,GAAG,OAAOvB,KAAK2iD,eAAe,EAAE,GAAG,EAAEnhD,EAAEK,GAAGT,EAAE,KAAKG,IAAIC,GAAG,GAAGxB,KAAKyxD,QAAQl/C,QAAQvS,KAAKyxD,QAAQD,SAAS,GAAGxxD,KAAKwyD,SAAS,EAAExyD,KAAK2jD,mBAAmB,EAAE3jD,KAAKuyD,aAAa,GAAG/wD,IAAI3B,EAArrP,CAAwrP2B,EAAE0S,YAAY1U,EAAE+7C,qBAAqB/2C,GAAG2vD,KAAK,CAAC70D,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEqiD,WAAWriD,EAAE2zD,eAAU,EAAO,IAAI/xD,EAAEvB,EAAE,MAAM0B,EAAE1B,EAAE,KAAK2B,EAAE,GAAGoB,EAAE,WAAW,SAAStD,IAAIU,KAAK8c,OAAO,EAAE9c,KAAK8wD,QAAQtvD,EAAExB,KAAKspC,KAAK,EAAEtpC,KAAK6wD,UAAUpxD,OAAO8C,OAAO,MAAMvC,KAAKgxD,WAAW,aAAahxD,KAAKixD,OAAO,CAACvU,QAAO,EAAGwU,aAAa,EAAEC,aAAY,GAAI,OAAO7xD,EAAEQ,UAAUsxD,gBAAgB,SAAS9xD,EAAEE,QAAG,IAASQ,KAAK6wD,UAAUvxD,KAAKU,KAAK6wD,UAAUvxD,GAAG,IAAI,IAAIO,EAAEG,KAAK6wD,UAAUvxD,GAAG,OAAOO,EAAEsF,KAAK3F,GAAG,CAACU,QAAQ,WAAW,IAAIZ,EAAEO,EAAE6E,QAAQlF,IAAI,IAAIF,GAAGO,EAAE8V,OAAOrW,EAAE,MAAMA,EAAEQ,UAAUuxD,aAAa,SAAS/xD,GAAGU,KAAK6wD,UAAUvxD,WAAWU,KAAK6wD,UAAUvxD,IAAIA,EAAEQ,UAAUwxD,mBAAmB,SAAShyD,GAAGU,KAAKgxD,WAAW1xD,GAAGA,EAAEQ,UAAUI,QAAQ,WAAWF,KAAK6wD,UAAUpxD,OAAO8C,OAAO,MAAMvC,KAAKgxD,WAAW,aAAahxD,KAAK8wD,QAAQtvD,GAAGlC,EAAEQ,UAAUyS,MAAM,WAAW,GAAG,IAAIvS,KAAK8c,OAAO,IAAI,IAAIxd,EAAEU,KAAKixD,OAAOvU,OAAO18C,KAAKixD,OAAOC,aAAa,EAAElxD,KAAK8wD,QAAQlsD,OAAO,EAAEtF,GAAG,IAAIA,EAAEU,KAAK8wD,QAAQxxD,GAAG4F,KAAI,GAAIlF,KAAKixD,OAAOvU,QAAO,EAAG18C,KAAK8wD,QAAQtvD,EAAExB,KAAKspC,KAAK,EAAEtpC,KAAK8c,OAAO,GAAGxd,EAAEQ,UAAUs0D,OAAO,WAAW,GAAGp0D,KAAK8wD,QAAQ9wD,KAAK6wD,UAAU7wD,KAAKspC,MAAM9nC,EAAExB,KAAK8wD,QAAQlsD,OAAO,IAAI,IAAItF,EAAEU,KAAK8wD,QAAQlsD,OAAO,EAAEtF,GAAG,EAAEA,IAAIU,KAAK8wD,QAAQxxD,GAAGyF,aAAa/E,KAAKgxD,WAAWhxD,KAAKspC,IAAI,UAAUhqC,EAAEQ,UAAUu0D,KAAK,SAAS/0D,EAAEE,EAAEK,GAAG,GAAGG,KAAK8wD,QAAQlsD,OAAO,IAAI,IAAIxD,EAAEpB,KAAK8wD,QAAQlsD,OAAO,EAAExD,GAAG,EAAEA,IAAIpB,KAAK8wD,QAAQ1vD,GAAGi6C,IAAI/7C,EAAEE,EAAEK,QAAQG,KAAKgxD,WAAWhxD,KAAKspC,IAAI,MAAM/nC,EAAEkkB,cAAcnmB,EAAEE,EAAEK,KAAKP,EAAEQ,UAAUiF,MAAM,WAAW/E,KAAKuS,QAAQvS,KAAK8c,OAAO,GAAGxd,EAAEQ,UAAUu7C,IAAI,SAAS/7C,EAAEE,EAAEK,GAAG,GAAG,IAAIG,KAAK8c,OAAO,CAAC,GAAG,IAAI9c,KAAK8c,OAAO,KAAKtd,EAAEK,GAAG,CAAC,IAAIuB,EAAE9B,EAAEE,KAAK,GAAG,KAAK4B,EAAE,CAACpB,KAAK8c,OAAO,EAAE9c,KAAKo0D,SAAS,MAAM,GAAGhzD,EAAE,IAAI,GAAGA,EAAE,YAAYpB,KAAK8c,OAAO,IAAI,IAAI9c,KAAKspC,MAAMtpC,KAAKspC,IAAI,GAAGtpC,KAAKspC,IAAI,GAAGtpC,KAAKspC,IAAIloC,EAAE,GAAG,IAAIpB,KAAK8c,QAAQjd,EAAEL,EAAE,GAAGQ,KAAKq0D,KAAK/0D,EAAEE,EAAEK,KAAKP,EAAEQ,UAAUoF,IAAI,SAAS5F,EAAEE,GAAG,QAAG,IAASA,IAAIA,GAAE,GAAI,IAAIQ,KAAK8c,OAAO,CAAC,GAAG,IAAI9c,KAAK8c,OAAO,GAAG,IAAI9c,KAAK8c,QAAQ9c,KAAKo0D,SAASp0D,KAAK8wD,QAAQlsD,OAAO,CAAC,IAAI/E,GAAE,EAAGuB,EAAEpB,KAAK8wD,QAAQlsD,OAAO,EAAErD,GAAE,EAAG,GAAGvB,KAAKixD,OAAOvU,SAASt7C,EAAEpB,KAAKixD,OAAOC,aAAa,EAAErxD,EAAEL,EAAE+B,EAAEvB,KAAKixD,OAAOE,YAAYnxD,KAAKixD,OAAOvU,QAAO,IAAKn7C,IAAG,IAAK1B,EAAE,CAAC,KAAKuB,GAAG,IAAG,KAAMvB,EAAEG,KAAK8wD,QAAQ1vD,GAAG8D,IAAI5F,IAAI8B,IAAI,GAAGvB,aAAagjD,QAAQ,OAAO7iD,KAAKixD,OAAOvU,QAAO,EAAG18C,KAAKixD,OAAOC,aAAa9vD,EAAEpB,KAAKixD,OAAOE,aAAY,EAAGtxD,EAAEuB,IAAI,KAAKA,GAAG,EAAEA,IAAI,IAAIvB,EAAEG,KAAK8wD,QAAQ1vD,GAAG8D,KAAI,cAAe29C,QAAQ,OAAO7iD,KAAKixD,OAAOvU,QAAO,EAAG18C,KAAKixD,OAAOC,aAAa9vD,EAAEpB,KAAKixD,OAAOE,aAAY,EAAGtxD,OAAOG,KAAKgxD,WAAWhxD,KAAKspC,IAAI,MAAMhqC,GAAGU,KAAK8wD,QAAQtvD,EAAExB,KAAKspC,KAAK,EAAEtpC,KAAK8c,OAAO,IAAIxd,EAAluE,GAAuuEE,EAAE2zD,UAAUvwD,EAAE,IAAInB,EAAE,WAAW,SAASnC,EAAEA,GAAGU,KAAKqD,SAAS/D,EAAEU,KAAKm7C,MAAM,GAAGn7C,KAAK0xD,WAAU,EAAG,OAAOpyD,EAAEQ,UAAUiF,MAAM,WAAW/E,KAAKm7C,MAAM,GAAGn7C,KAAK0xD,WAAU,GAAIpyD,EAAEQ,UAAUu7C,IAAI,SAAS/7C,EAAEE,EAAEK,GAAGG,KAAK0xD,YAAY1xD,KAAKm7C,OAAO55C,EAAEkkB,cAAcnmB,EAAEE,EAAEK,GAAGG,KAAKm7C,MAAMv2C,OAAOxD,EAAEsvD,gBAAgB1wD,KAAKm7C,MAAM,GAAGn7C,KAAK0xD,WAAU,KAAMpyD,EAAEQ,UAAUoF,IAAI,SAAS5F,GAAG,IAAIE,EAAEQ,KAAKH,GAAE,EAAG,GAAGG,KAAK0xD,UAAU7xD,GAAE,OAAQ,GAAGP,IAAIO,EAAEG,KAAKqD,SAASrD,KAAKm7C,kBAAkB0H,QAAQ,OAAOhjD,EAAEgtC,MAAK,SAAUvtC,GAAG,OAAOE,EAAE27C,MAAM,GAAG37C,EAAEkyD,WAAU,EAAGpyD,KAAK,OAAOU,KAAKm7C,MAAM,GAAGn7C,KAAK0xD,WAAU,EAAG7xD,GAAGP,EAAlhB,GAAuhBE,EAAEqiD,WAAWpgD,GAAG6yD,KAAK,CAACh1D,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+xD,YAAO,EAAO,IAAI1xD,EAAE,WAAWuB,EAAE,WAAW,SAAS9B,EAAEA,EAAEE,GAAG,QAAG,IAASF,IAAIA,EAAE,SAAI,IAASE,IAAIA,EAAE,IAAIQ,KAAKunD,UAAUjoD,EAAEU,KAAKu0D,mBAAmB/0D,EAAEA,EAAE,IAAI,MAAM,IAAI0M,MAAM,mDAAmDlM,KAAKi9C,OAAO,IAAIuX,WAAWl1D,GAAGU,KAAK4E,OAAO,EAAE5E,KAAKy0D,WAAW,IAAID,WAAWh1D,GAAGQ,KAAK00D,iBAAiB,EAAE10D,KAAK20D,cAAc,IAAIC,YAAYt1D,GAAGU,KAAK60D,eAAc,EAAG70D,KAAK80D,kBAAiB,EAAG90D,KAAK+0D,aAAY,EAAG,OAAOz1D,EAAE01D,UAAU,SAASx1D,GAAG,IAAIK,EAAE,IAAIP,EAAE,IAAIE,EAAEoF,OAAO,OAAO/E,EAAE,IAAI,IAAIuB,EAAE5B,EAAE,aAAa4Q,MAAM,EAAE,EAAEhP,EAAE5B,EAAEoF,SAASxD,EAAE,CAAC,IAAIG,EAAE/B,EAAE4B,GAAG,GAAGG,aAAa6O,MAAM,IAAI,IAAI5O,EAAE,EAAEA,EAAED,EAAEqD,SAASpD,EAAE3B,EAAEo0D,YAAY1yD,EAAEC,SAAS3B,EAAE2xD,SAASjwD,GAAG,OAAO1B,GAAGP,EAAEQ,UAAU+iB,MAAM,WAAW,IAAIrjB,EAAE,IAAIF,EAAEU,KAAKunD,UAAUvnD,KAAKu0D,oBAAoB,OAAO/0D,EAAEy9C,OAAOtwC,IAAI3M,KAAKi9C,QAAQz9C,EAAEoF,OAAO5E,KAAK4E,OAAOpF,EAAEi1D,WAAW9nD,IAAI3M,KAAKy0D,YAAYj1D,EAAEk1D,iBAAiB10D,KAAK00D,iBAAiBl1D,EAAEm1D,cAAchoD,IAAI3M,KAAK20D,eAAen1D,EAAEq1D,cAAc70D,KAAK60D,cAAcr1D,EAAEs1D,iBAAiB90D,KAAK80D,iBAAiBt1D,EAAEu1D,YAAY/0D,KAAK+0D,YAAYv1D,GAAGF,EAAEQ,UAAUsnC,QAAQ,WAAW,IAAI,IAAI9nC,EAAE,GAAGE,EAAE,EAAEA,EAAEQ,KAAK4E,SAASpF,EAAE,CAACF,EAAE6F,KAAKnF,KAAKi9C,OAAOz9C,IAAI,IAAIK,EAAEG,KAAK20D,cAAcn1D,IAAI,EAAE4B,EAAE,IAAIpB,KAAK20D,cAAcn1D,GAAG4B,EAAEvB,EAAE,GAAGP,EAAE6F,KAAKiL,MAAMtQ,UAAUqK,MAAMrI,KAAK9B,KAAKy0D,WAAW50D,EAAEuB,IAAI,OAAO9B,GAAGA,EAAEQ,UAAUyS,MAAM,WAAWvS,KAAK4E,OAAO,EAAE5E,KAAK00D,iBAAiB,EAAE10D,KAAK60D,eAAc,EAAG70D,KAAK80D,kBAAiB,EAAG90D,KAAK+0D,aAAY,GAAIz1D,EAAEQ,UAAU0xD,SAAS,SAASlyD,GAAG,GAAGU,KAAK+0D,aAAY,EAAG/0D,KAAK4E,QAAQ5E,KAAKunD,UAAUvnD,KAAK60D,eAAc,MAAO,CAAC,GAAGv1D,GAAG,EAAE,MAAM,IAAI4M,MAAM,yCAAyClM,KAAK20D,cAAc30D,KAAK4E,QAAQ5E,KAAK00D,kBAAkB,EAAE10D,KAAK00D,iBAAiB10D,KAAKi9C,OAAOj9C,KAAK4E,UAAUtF,EAAEO,EAAEA,EAAEP,IAAIA,EAAEQ,UAAUm0D,YAAY,SAAS30D,GAAG,GAAGU,KAAK+0D,aAAY,EAAG/0D,KAAK4E,OAAO,GAAG5E,KAAK60D,eAAe70D,KAAK00D,kBAAkB10D,KAAKu0D,mBAAmBv0D,KAAK80D,kBAAiB,MAAO,CAAC,GAAGx1D,GAAG,EAAE,MAAM,IAAI4M,MAAM,yCAAyClM,KAAKy0D,WAAWz0D,KAAK00D,oBAAoBp1D,EAAEO,EAAEA,EAAEP,EAAEU,KAAK20D,cAAc30D,KAAK4E,OAAO,OAAOtF,EAAEQ,UAAUulD,aAAa,SAAS/lD,GAAG,OAAO,IAAIU,KAAK20D,cAAcr1D,KAAKU,KAAK20D,cAAcr1D,IAAI,GAAG,GAAGA,EAAEQ,UAAUwlD,aAAa,SAAShmD,GAAG,IAAIE,EAAEQ,KAAK20D,cAAcr1D,IAAI,EAAEO,EAAE,IAAIG,KAAK20D,cAAcr1D,GAAG,OAAOO,EAAEL,EAAE,EAAEQ,KAAKy0D,WAAW/nD,SAASlN,EAAEK,GAAG,MAAMP,EAAEQ,UAAUm1D,gBAAgB,WAAW,IAAI,IAAI31D,EAAE,GAAGE,EAAE,EAAEA,EAAEQ,KAAK4E,SAASpF,EAAE,CAAC,IAAIK,EAAEG,KAAK20D,cAAcn1D,IAAI,EAAE4B,EAAE,IAAIpB,KAAK20D,cAAcn1D,GAAG4B,EAAEvB,EAAE,IAAIP,EAAEE,GAAGQ,KAAKy0D,WAAWtqD,MAAMtK,EAAEuB,IAAI,OAAO9B,GAAGA,EAAEQ,UAAUo0D,SAAS,SAAS50D,GAAG,IAAIE,EAAE,KAAKQ,KAAK60D,iBAAiBr1D,EAAEQ,KAAK+0D,YAAY/0D,KAAK00D,iBAAiB10D,KAAK4E,SAAS5E,KAAK+0D,aAAa/0D,KAAK80D,kBAAkB,CAAC,IAAI1zD,EAAEpB,KAAK+0D,YAAY/0D,KAAKy0D,WAAWz0D,KAAKi9C,OAAO17C,EAAEH,EAAE5B,EAAE,GAAG4B,EAAE5B,EAAE,IAAI+B,EAAEF,KAAK2N,IAAI,GAAGzN,EAAEjC,EAAEO,GAAGP,IAAIA,EAA3kF,GAAglFE,EAAE+xD,OAAOnwD,GAAG8zD,IAAI,SAAS51D,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEq4C,cAAcr4C,EAAE65C,aAAa75C,EAAE45C,kBAAa,EAAO,IAAI33C,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,KAAKL,EAAE45C,aAAa,EAAE55C,EAAE65C,aAAa,EAAE,IAAI/0C,EAAE,SAAShF,GAAG,SAASO,EAAEA,GAAG,IAAIuB,EAAE9B,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOoB,EAAEmyB,gBAAgB1zB,EAAEuB,EAAE+zD,iBAAgB,EAAG/zD,EAAE8lB,UAAU,IAAIrlB,EAAE4O,aAAarP,EAAE67B,UAAU,IAAIp7B,EAAE4O,aAAarP,EAAEb,KAAKc,KAAKC,IAAIzB,EAAE40B,QAAQl0B,KAAKf,EAAE45C,cAAch4C,EAAEd,KAAKe,KAAKC,IAAIzB,EAAE40B,QAAQn0B,KAAKd,EAAE65C,cAAcj4C,EAAEo3B,QAAQ,IAAIx2B,EAAE8nD,UAAUjqD,EAAEuB,GAAGA,EAAE,OAAOG,EAAE1B,EAAEP,GAAGG,OAAOC,eAAeG,EAAEC,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKknB,UAAU/U,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeG,EAAEC,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKi9B,UAAU9qB,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeG,EAAEC,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKw4B,QAAQjzB,QAAQrD,YAAW,EAAG2N,cAAa,IAAKhQ,EAAEC,UAAUI,QAAQ,WAAWZ,EAAEQ,UAAUI,QAAQ4B,KAAK9B,MAAMA,KAAKw4B,QAAQt4B,WAAWL,EAAEC,UAAUY,OAAO,SAASpB,EAAEE,GAAGQ,KAAKO,KAAKjB,EAAEU,KAAKM,KAAKd,EAAEQ,KAAKw4B,QAAQ93B,OAAOpB,EAAEE,GAAGQ,KAAKw4B,QAAQO,cAAc/4B,KAAKO,MAAMP,KAAKknB,UAAUnU,KAAK,CAACxS,KAAKjB,EAAEgB,KAAKd,KAAKK,EAAEC,UAAUyS,MAAM,WAAWvS,KAAKw4B,QAAQjmB,QAAQvS,KAAKm1D,iBAAgB,GAAIt1D,EAAEC,UAAUw5C,OAAO,SAASh6C,EAAEE,QAAG,IAASA,IAAIA,GAAE,GAAI,IAAIK,EAAEuB,EAAEpB,KAAKsF,QAAQzF,EAAEG,KAAKo1D,mBAAmBv1D,EAAE+E,SAAS5E,KAAKO,MAAMV,EAAEkwB,MAAM,KAAKzwB,EAAE8L,IAAIvL,EAAEywC,MAAM,KAAKhxC,EAAE+L,KAAKxL,EAAEuB,EAAEwgC,aAAatiC,EAAEE,GAAGQ,KAAKo1D,iBAAiBv1D,GAAGA,EAAE4F,UAAUjG,EAAE,IAAI+B,EAAEH,EAAE04B,MAAM14B,EAAEkiC,UAAU9hC,EAAEJ,EAAE04B,MAAM14B,EAAEu3C,aAAa,GAAG,IAAIv3C,EAAEkiC,UAAU,CAAC,IAAI1gC,EAAExB,EAAEwS,MAAMyhD,OAAO7zD,IAAIJ,EAAEwS,MAAMhP,OAAO,EAAEhC,EAAExB,EAAEwS,MAAMsjC,UAAUuS,SAAS5pD,GAAGuB,EAAEwS,MAAMzO,KAAKtF,EAAEgjB,SAASzhB,EAAEwS,MAAM+B,OAAOnU,EAAE,EAAE,EAAE3B,EAAEgjB,SAASjgB,EAAE5C,KAAKm1D,kBAAkB/zD,EAAEuS,MAAMtS,KAAKC,IAAIF,EAAEuS,MAAM,EAAE,KAAKvS,EAAE04B,QAAQ95B,KAAKm1D,iBAAiB/zD,EAAEuS,aAAa,CAAC,IAAIlS,EAAED,EAAED,EAAE,EAAEH,EAAEwS,MAAMwjC,cAAc71C,EAAE,EAAEE,EAAE,GAAG,GAAGL,EAAEwS,MAAMjH,IAAInL,EAAE3B,EAAEgjB,SAAS7iB,KAAKm1D,kBAAkB/zD,EAAEuS,MAAMvS,EAAE04B,OAAO95B,KAAKi9B,UAAUlqB,KAAK3R,EAAEuS,QAAQ9T,EAAEC,UAAU6oB,YAAY,SAASrpB,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,KAAKsF,OAAO,GAAGhG,EAAE,EAAE,CAAC,GAAG,IAAI8B,EAAEuS,MAAM,OAAO3T,KAAKm1D,iBAAgB,OAAQ71D,EAAE8B,EAAEuS,OAAOvS,EAAE04B,QAAQ95B,KAAKm1D,iBAAgB,GAAI,IAAI5zD,EAAEH,EAAEuS,MAAMvS,EAAEuS,MAAMtS,KAAKC,IAAID,KAAK2N,IAAI5N,EAAEuS,MAAMrU,EAAE8B,EAAE04B,OAAO,GAAGv4B,IAAIH,EAAEuS,QAAQnU,GAAGQ,KAAKi9B,UAAUlqB,KAAK3R,EAAEuS,SAAS9T,EAAEC,UAAUsmC,YAAY,SAAS9mC,GAAGU,KAAK2oB,YAAYrpB,GAAGU,KAAKM,KAAK,KAAKT,EAAEC,UAAUumC,YAAY,WAAWrmC,KAAK2oB,aAAa3oB,KAAKsF,OAAOqO,QAAQ9T,EAAEC,UAAU+gC,eAAe,WAAW7gC,KAAK2oB,YAAY3oB,KAAKsF,OAAOw0B,MAAM95B,KAAKsF,OAAOqO,QAAQ9T,EAAEC,UAAUwmC,aAAa,SAAShnC,GAAG,IAAIE,EAAEF,EAAEU,KAAKsF,OAAOqO,MAAM,IAAInU,GAAGQ,KAAK2oB,YAAYnpB,IAAIgC,EAAE,CAACoB,EAAE,EAAEnB,EAAEqzB,kBAAkBj1B,GAAxuE,CAA4uEgF,EAAEqP,YAAY1U,EAAEq4C,cAAcvzC,GAAGgxD,KAAK,CAACh2D,EAAEE,KAAKC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE+4C,oBAAe,EAAO,IAAI14C,EAAE,WAAW,SAASP,IAAIU,KAAKu1D,OAAO,EAAEv1D,KAAKw1D,UAAU,GAAG,OAAOl2D,EAAEQ,UAAUyS,MAAM,WAAWvS,KAAKijD,aAAQ,EAAOjjD,KAAKw1D,UAAU,GAAGx1D,KAAKu1D,OAAO,GAAGj2D,EAAEQ,UAAUuiD,UAAU,SAAS/iD,GAAGU,KAAKu1D,OAAOj2D,EAAEU,KAAKijD,QAAQjjD,KAAKw1D,UAAUl2D,IAAIA,EAAEQ,UAAU+kD,YAAY,SAASvlD,EAAEE,GAAGQ,KAAKw1D,UAAUl2D,GAAGE,EAAEQ,KAAKu1D,SAASj2D,IAAIU,KAAKijD,QAAQzjD,IAAIF,EAA9T,GAAmUE,EAAE+4C,eAAe14C,GAAG41D,KAAK,SAASn2D,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEw4C,sBAAiB,EAAO,IAAIx2C,EAAE3B,EAAE,MAAM+C,EAAE/C,EAAE,MAAM4B,EAAE,CAACi0D,KAAK,CAACC,OAAO,EAAEC,SAAS,WAAW,OAAM,IAAKC,IAAI,CAACF,OAAO,EAAEC,SAAS,SAASt2D,GAAG,OAAO,IAAIA,EAAE66B,QAAQ,IAAI76B,EAAE4+B,SAAS5+B,EAAE6+B,MAAK,EAAG7+B,EAAE++B,KAAI,EAAG/+B,EAAEkpB,OAAM,GAAG,KAAMstC,MAAM,CAACH,OAAO,GAAGC,SAAS,SAASt2D,GAAG,OAAO,KAAKA,EAAE4+B,SAAS63B,KAAK,CAACJ,OAAO,GAAGC,SAAS,SAASt2D,GAAG,OAAO,KAAKA,EAAE4+B,QAAQ,IAAI5+B,EAAE66B,SAAS67B,IAAI,CAACL,OAAO,GAAGC,SAAS,SAASt2D,GAAG,OAAM,KAAM,SAAS0C,EAAE1C,EAAEE,GAAG,IAAIK,GAAGP,EAAE6+B,KAAK,GAAG,IAAI7+B,EAAEkpB,MAAM,EAAE,IAAIlpB,EAAE++B,IAAI,EAAE,GAAG,OAAO,IAAI/+B,EAAE66B,QAAQt6B,GAAG,GAAGA,GAAGP,EAAE4+B,SAASr+B,GAAG,EAAEP,EAAE66B,OAAO,EAAE76B,EAAE66B,SAASt6B,GAAG,IAAI,EAAEP,EAAE66B,SAASt6B,GAAG,KAAK,KAAKP,EAAE4+B,OAAOr+B,GAAG,GAAG,IAAIP,EAAE4+B,QAAQ1+B,IAAIK,GAAG,IAAIA,EAAE,IAAIgC,EAAEgX,OAAOC,aAAajU,EAAE,CAACoxD,QAAQ,SAAS32D,GAAG,IAAIE,EAAE,CAACwC,EAAE1C,GAAE,GAAI,GAAGA,EAAE0+B,IAAI,GAAG1+B,EAAE2+B,IAAI,IAAI,OAAOz+B,EAAE,GAAG,KAAKA,EAAE,GAAG,KAAKA,EAAE,GAAG,IAAI,GAAG,MAAMqC,EAAErC,EAAE,IAAIqC,EAAErC,EAAE,IAAIqC,EAAErC,EAAE,KAAK02D,IAAI,SAAS52D,GAAG,IAAIE,EAAE,IAAIF,EAAE4+B,QAAQ,IAAI5+B,EAAE66B,OAAO,IAAI,IAAI,MAAM,MAAMn4B,EAAE1C,GAAE,GAAI,IAAIA,EAAE0+B,IAAI,IAAI1+B,EAAE2+B,IAAIz+B,IAAI8E,EAAE,WAAW,SAAShF,EAAEA,EAAEE,GAAGQ,KAAK8tB,eAAexuB,EAAEU,KAAK+d,aAAave,EAAEQ,KAAKm2D,WAAW,GAAGn2D,KAAKo2D,WAAW,GAAGp2D,KAAKq2D,gBAAgB,GAAGr2D,KAAKs2D,gBAAgB,GAAGt2D,KAAKu2D,kBAAkB,IAAI3zD,EAAE6N,aAAazQ,KAAKw2D,WAAW,KAAK,IAAI,IAAI32D,EAAE,EAAEuB,EAAE3B,OAAO+pD,KAAK/nD,GAAG5B,EAAEuB,EAAEwD,OAAO/E,IAAI,CAAC,IAAI0B,EAAEH,EAAEvB,GAAGG,KAAKy2D,YAAYl1D,EAAEE,EAAEF,IAAI,IAAI,IAAIC,EAAE,EAAEQ,EAAEvC,OAAO+pD,KAAK3kD,GAAGrD,EAAEQ,EAAE4C,OAAOpD,IAAI,CAAC,IAAIK,EAAEG,EAAER,GAAGxB,KAAK02D,YAAY70D,EAAEgD,EAAEhD,IAAI7B,KAAKuS,QAAQ,OAAOjT,EAAEQ,UAAU22D,YAAY,SAASn3D,EAAEE,GAAGQ,KAAKm2D,WAAW72D,GAAGE,GAAGF,EAAEQ,UAAU42D,YAAY,SAASp3D,EAAEE,GAAGQ,KAAKo2D,WAAW92D,GAAGE,GAAGC,OAAOC,eAAeJ,EAAEQ,UAAU,iBAAiB,CAACqC,IAAI,WAAW,OAAOnC,KAAKq2D,iBAAiB1pD,IAAI,SAASrN,GAAG,IAAIU,KAAKm2D,WAAW72D,GAAG,MAAM,IAAI4M,MAAM,qBAAqB5M,EAAE,KAAKU,KAAKq2D,gBAAgB/2D,EAAEU,KAAKu2D,kBAAkBxjD,KAAK/S,KAAKm2D,WAAW72D,GAAGq2D,SAASzzD,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,uBAAuB,CAACqC,IAAI,WAAW,OAAO,IAAInC,KAAKm2D,WAAWn2D,KAAKq2D,iBAAiBV,QAAQzzD,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,iBAAiB,CAACqC,IAAI,WAAW,OAAOnC,KAAKs2D,iBAAiB3pD,IAAI,SAASrN,GAAG,IAAIU,KAAKo2D,WAAW92D,GAAG,MAAM,IAAI4M,MAAM,qBAAqB5M,EAAE,KAAKU,KAAKs2D,gBAAgBh3D,GAAG4C,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUyS,MAAM,WAAWvS,KAAKi/B,eAAe,OAAOj/B,KAAKglD,eAAe,UAAUhlD,KAAKw2D,WAAW,MAAM/2D,OAAOC,eAAeJ,EAAEQ,UAAU,mBAAmB,CAACqC,IAAI,WAAW,OAAOnC,KAAKu2D,kBAAkBpkD,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUi+B,kBAAkB,SAASz+B,GAAG,GAAGA,EAAE0+B,IAAI,GAAG1+B,EAAE0+B,KAAKh+B,KAAK8tB,eAAevtB,MAAMjB,EAAE2+B,IAAI,GAAG3+B,EAAE2+B,KAAKj+B,KAAK8tB,eAAextB,KAAK,OAAM,EAAG,GAAG,IAAIhB,EAAE66B,QAAQ,KAAK76B,EAAE4+B,OAAO,OAAM,EAAG,GAAG,IAAI5+B,EAAE66B,QAAQ,KAAK76B,EAAE4+B,OAAO,OAAM,EAAG,GAAG,IAAI5+B,EAAE66B,SAAS,IAAI76B,EAAE4+B,QAAQ,IAAI5+B,EAAE4+B,QAAQ,OAAM,EAAG,GAAG5+B,EAAE0+B,MAAM1+B,EAAE2+B,MAAM,KAAK3+B,EAAE4+B,QAAQl+B,KAAKw2D,YAAYx2D,KAAK22D,eAAe32D,KAAKw2D,WAAWl3D,GAAG,OAAM,EAAG,IAAIU,KAAKm2D,WAAWn2D,KAAKq2D,iBAAiBT,SAASt2D,GAAG,OAAM,EAAG,IAAIE,EAAEQ,KAAKo2D,WAAWp2D,KAAKs2D,iBAAiBh3D,GAAG,OAAOE,IAAI,YAAYQ,KAAKs2D,gBAAgBt2D,KAAK+d,aAAa64C,mBAAmBp3D,GAAGQ,KAAK+d,aAAa+L,iBAAiBtqB,GAAE,IAAKQ,KAAKw2D,WAAWl3D,GAAE,GAAIA,EAAEQ,UAAUi/B,cAAc,SAASz/B,GAAG,MAAM,CAACu3D,QAAQ,EAAEv3D,GAAGw3D,MAAM,EAAEx3D,GAAGy3D,QAAQ,EAAEz3D,GAAG03D,QAAQ,EAAE13D,GAAGm/B,SAAS,GAAGn/B,KAAKA,EAAEQ,UAAU62D,eAAe,SAASr3D,EAAEE,GAAG,OAAOF,EAAE0+B,MAAMx+B,EAAEw+B,KAAK1+B,EAAE2+B,MAAMz+B,EAAEy+B,KAAK3+B,EAAE66B,SAAS36B,EAAE26B,QAAQ76B,EAAE4+B,SAAS1+B,EAAE0+B,QAAQ5+B,EAAE6+B,OAAO3+B,EAAE2+B,MAAM7+B,EAAE++B,MAAM7+B,EAAE6+B,KAAK/+B,EAAEkpB,QAAQhpB,EAAEgpB,OAAOpnB,EAAE,CAACG,EAAE,EAAEC,EAAE4uB,gBAAgB7uB,EAAE,EAAEC,EAAEqjC,eAAevlC,GAA32E,GAAi3EE,EAAEw4C,iBAAiB1zC,GAAG2yD,KAAK,SAAS33D,EAAEE,EAAEK,GAAG,IAAIuB,EAAEG,EAAEvB,MAAMA,KAAKiQ,YAAY7O,EAAE,SAAS9B,EAAEE,GAAG,OAAO4B,EAAE3B,OAAOyQ,gBAAgB,CAACC,UAAU,cAAcC,OAAO,SAAS9Q,EAAEE,GAAGF,EAAE6Q,UAAU3Q,IAAI,SAASF,EAAEE,GAAG,IAAI,IAAIK,KAAKL,EAAEC,OAAOK,UAAU4C,eAAeZ,KAAKtC,EAAEK,KAAKP,EAAEO,GAAGL,EAAEK,MAAMP,EAAEE,IAAI,SAASF,EAAEE,GAAG,SAASK,IAAIG,KAAKiP,YAAY3P,EAAE8B,EAAE9B,EAAEE,GAAGF,EAAEQ,UAAU,OAAON,EAAEC,OAAO8C,OAAO/C,IAAIK,EAAEC,UAAUN,EAAEM,UAAU,IAAID,KAAK2B,EAAExB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGA,EAAE5C,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEu4C,iBAAY,EAAO,IAAIt2C,EAAE5B,EAAE,MAAMmC,EAAEnC,EAAE,MAAMgC,EAAEhC,EAAE,MAAMgF,EAAEhF,EAAE,KAAKyE,EAAE7E,OAAOisB,OAAO,CAAC03B,YAAW,IAAK5+C,EAAE/E,OAAOisB,OAAO,CAAC2T,uBAAsB,EAAG0lB,mBAAkB,EAAGl7B,oBAAmB,EAAGq6B,QAAO,EAAGH,mBAAkB,EAAG5qB,WAAU,EAAG+pB,YAAW,IAAKl9C,EAAE,SAAS1G,GAAG,SAASE,EAAEA,EAAEK,EAAEuB,EAAEG,GAAG,IAAIC,EAAElC,EAAEwC,KAAK9B,OAAOA,KAAK,OAAOwB,EAAEssB,eAAejuB,EAAE2B,EAAEusB,YAAY3sB,EAAEI,EAAE+xB,gBAAgBhyB,EAAEC,EAAEwc,qBAAoB,EAAGxc,EAAEyc,gBAAe,EAAGzc,EAAEi2C,QAAQj2C,EAAE4gB,SAAS,IAAIpgB,EAAEyO,cAAcjP,EAAE01D,aAAa11D,EAAE4gB,SAAS,IAAIpgB,EAAEyO,cAAcjP,EAAEg2C,UAAUh2C,EAAE4gB,SAAS,IAAIpgB,EAAEyO,cAAcjP,EAAE21D,gBAAgB33D,EAAEgC,EAAE4gB,SAAS,CAACliB,QAAQ,WAAW,OAAOsB,EAAE21D,qBAAgB,KAAU31D,EAAE2hD,MAAMthD,EAAEghB,MAAMve,GAAG9C,EAAEooB,gBAAgB/nB,EAAEghB,MAAMre,GAAGhD,EAAE,OAAOD,EAAE/B,EAAEF,GAAGG,OAAOC,eAAeF,EAAEM,UAAU,SAAS,CAACqC,IAAI,WAAW,OAAOnC,KAAKy3C,QAAQtlC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,cAAc,CAACqC,IAAI,WAAW,OAAOnC,KAAKk3D,aAAa/kD,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeF,EAAEM,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKw3C,UAAUrlC,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKrQ,EAAEM,UAAUyS,MAAM,WAAWvS,KAAKmjD,MAAMthD,EAAEghB,MAAMve,GAAGtE,KAAK4pB,gBAAgB/nB,EAAEghB,MAAMre,IAAIhF,EAAEM,UAAUgqB,iBAAiB,SAASxqB,EAAEE,GAAG,QAAG,IAASA,IAAIA,GAAE,IAAKQ,KAAKuzB,gBAAgBkB,QAAQ2iC,aAAa,CAAC,IAAIv3D,EAAEG,KAAK8tB,eAAexoB,OAAOzF,EAAEi6B,QAAQj6B,EAAE8T,OAAO3T,KAAKm3D,kBAAkB33D,GAAGQ,KAAKk3D,aAAankD,OAAO/S,KAAK+tB,YAAYmB,MAAM,iBAAiB5vB,EAAE,KAAI,WAAY,OAAOA,EAAE2tB,MAAM,IAAIC,KAAI,SAAU5tB,GAAG,OAAOA,EAAEolB,WAAW,SAAS1kB,KAAKy3C,QAAQ1kC,KAAKzT,KAAKE,EAAEM,UAAU82D,mBAAmB,SAASt3D,GAAGU,KAAKuzB,gBAAgBkB,QAAQ2iC,eAAep3D,KAAK+tB,YAAYmB,MAAM,mBAAmB5vB,EAAE,KAAI,WAAY,OAAOA,EAAE2tB,MAAM,IAAIC,KAAI,SAAU5tB,GAAG,OAAOA,EAAEolB,WAAW,SAAS1kB,KAAKw3C,UAAUzkC,KAAKzT,KAAKkC,EAAE,CAACoB,EAAE,EAAEnB,EAAE2uB,gBAAgBxtB,EAAE,EAAEnB,EAAE4uB,aAAaztB,EAAE,EAAEnB,EAAEqzB,kBAAkBt1B,GAAvhD,CAA2hDqF,EAAEqP,YAAY1U,EAAEu4C,YAAY/xC,GAAGqxD,KAAK,SAAS/3D,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKG,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE24C,qBAAgB,EAAO,IAAI32C,EAAE3B,EAAE,MAAM+C,EAAE,WAAW,SAAStD,EAAEA,GAAGU,KAAK8tB,eAAexuB,EAAEU,KAAKgjD,aAAa,OAAOvjD,OAAOC,eAAeJ,EAAEQ,UAAU,QAAQ,CAACqC,IAAI,WAAW,OAAOnC,KAAKo0D,QAAQlyD,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,MAAM,CAACqC,IAAI,WAAW,OAAOnC,KAAKs3D,MAAMp1D,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUkjD,WAAW,WAAWhjD,KAAKo0D,OAAOp0D,KAAK8tB,eAAexoB,OAAOL,EAAEjF,KAAKs3D,KAAKt3D,KAAK8tB,eAAexoB,OAAOL,GAAG3F,EAAEQ,UAAUujD,UAAU,SAAS/jD,GAAGA,EAAEU,KAAKo0D,OAAOp0D,KAAKo0D,OAAO90D,EAAEA,EAAEU,KAAKs3D,OAAOt3D,KAAKs3D,KAAKh4D,IAAIA,EAAEQ,UAAU44C,eAAe,SAASp5C,EAAEE,GAAG,GAAGF,EAAEE,EAAE,CAAC,IAAIK,EAAEP,EAAEA,EAAEE,EAAEA,EAAEK,EAAEP,EAAEU,KAAKo0D,SAASp0D,KAAKo0D,OAAO90D,GAAGE,EAAEQ,KAAKs3D,OAAOt3D,KAAKs3D,KAAK93D,IAAIF,EAAEQ,UAAUgmD,aAAa,WAAW9lD,KAAK04C,eAAe,EAAE14C,KAAK8tB,eAAextB,KAAK,IAAIc,EAAE,CAACG,EAAE,EAAEC,EAAE4uB,iBAAiB9wB,GAA1tB,GAAguBE,EAAE24C,gBAAgBv1C,GAAG20D,KAAK,SAASj4D,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKw3D,gBAAgB,WAAW,IAAI,IAAIl4D,EAAE,EAAEE,EAAE,EAAEK,EAAEukB,UAAUxf,OAAOpF,EAAEK,EAAEL,IAAIF,GAAG8kB,UAAU5kB,GAAGoF,OAAO,IAAIxD,EAAEgP,MAAM9Q,GAAGiC,EAAE,EAAE,IAAI/B,EAAE,EAAEA,EAAEK,EAAEL,IAAI,IAAI,IAAIgC,EAAE4iB,UAAU5kB,GAAGoD,EAAE,EAAEnB,EAAED,EAAEoD,OAAOhC,EAAEnB,EAAEmB,IAAIrB,IAAIH,EAAEG,GAAGC,EAAEoB,GAAG,OAAOxB,GAAG3B,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEm4C,qBAAqBn4C,EAAEi4D,uBAAkB,EAAO,IAAIl2D,EAAE1B,EAAE,MAAM2B,EAAE3B,EAAE,MAAM+C,EAAE,WAAW,SAAStD,IAAI,IAAI,IAAIA,EAAE,GAAGE,EAAE,EAAEA,EAAE4kB,UAAUxf,OAAOpF,IAAIF,EAAEE,GAAG4kB,UAAU5kB,GAAGQ,KAAK03D,SAAS,IAAI9lC,IAAI,IAAI,IAAI/xB,EAAE,EAAEuB,EAAE9B,EAAEO,EAAEuB,EAAEwD,OAAO/E,IAAI,CAAC,IAAI0B,EAAEH,EAAEvB,GAAG2B,EAAED,EAAE,GAAGqB,EAAErB,EAAE,GAAGvB,KAAK2M,IAAInL,EAAEoB,IAAI,OAAOtD,EAAEQ,UAAU6M,IAAI,SAASrN,EAAEE,GAAG,IAAIK,EAAEG,KAAK03D,SAASv1D,IAAI7C,GAAG,OAAOU,KAAK03D,SAAS/qD,IAAIrN,EAAEE,GAAGK,GAAGP,EAAEQ,UAAUsS,QAAQ,SAAS9S,GAAGU,KAAK03D,SAAStlD,SAAQ,SAAU5S,EAAEK,GAAG,OAAOP,EAAEO,EAAEL,OAAOF,EAAEQ,UAAUkyB,IAAI,SAAS1yB,GAAG,OAAOU,KAAK03D,SAAS1lC,IAAI1yB,IAAIA,EAAEQ,UAAUqC,IAAI,SAAS7C,GAAG,OAAOU,KAAK03D,SAASv1D,IAAI7C,IAAIA,EAA1d,GAA+dE,EAAEi4D,kBAAkB70D,EAAE,IAAInB,EAAE,WAAW,SAASnC,IAAIU,KAAK23D,UAAU,IAAI/0D,EAAE5C,KAAK23D,UAAUhrD,IAAIpL,EAAEooC,sBAAsB3pC,MAAM,OAAOV,EAAEQ,UAAUy7B,WAAW,SAASj8B,EAAEE,GAAGQ,KAAK23D,UAAUhrD,IAAIrN,EAAEE,IAAIF,EAAEQ,UAAU83D,WAAW,SAASt4D,GAAG,OAAOU,KAAK23D,UAAUx1D,IAAI7C,IAAIA,EAAEQ,UAAUy3B,eAAe,SAASj4B,GAAG,IAAI,IAAIE,EAAE,GAAGK,EAAE,EAAEA,EAAEukB,UAAUxf,OAAO/E,IAAIL,EAAEK,EAAE,GAAGukB,UAAUvkB,GAAG,IAAI,IAAI0B,EAAEC,EAAEq2D,uBAAuBv4D,GAAGw4D,MAAK,SAAUx4D,EAAEE,GAAG,OAAOF,EAAE6sC,MAAM3sC,EAAE2sC,SAASvpC,EAAE,GAAGnB,EAAE,EAAEO,EAAET,EAAEE,EAAEO,EAAE4C,OAAOnD,IAAI,CAAC,IAAII,EAAEG,EAAEP,GAAGoD,EAAE7E,KAAK23D,UAAUx1D,IAAIN,EAAEstB,IAAI,IAAItqB,EAAE,MAAM,IAAIqH,MAAM,oBAAoB5M,EAAEy4D,KAAK,+BAA+Bl2D,EAAEstB,GAAG,KAAKvsB,EAAEuC,KAAKN,GAAG,IAAIP,EAAE/C,EAAEqD,OAAO,EAAErD,EAAE,GAAG4qC,MAAM3sC,EAAEoF,OAAO,GAAGpF,EAAEoF,SAASN,EAAE,MAAM,IAAI4H,MAAM,gDAAgD5M,EAAEy4D,KAAK,iBAAiBzzD,EAAE,GAAG,mBAAmB9E,EAAEoF,OAAO,qBAAqB,OAAO,IAAItF,EAAEkD,KAAK2hB,MAAM7kB,EAAE8B,EAAE,MAAC,GAAQA,EAAE5B,EAAEoD,OAAOtD,EAArzB,GAA0zBE,EAAEm4C,qBAAqBl2C,GAAGu2D,KAAK,SAAS14D,EAAEE,EAAEK,GAAG,IAAIuB,EAAEpB,MAAMA,KAAKutB,YAAY,SAASjuB,EAAEE,EAAEK,EAAEuB,GAAG,IAAIG,EAAEC,EAAE4iB,UAAUxf,OAAOhC,EAAEpB,EAAE,EAAEhC,EAAE,OAAO4B,EAAEA,EAAE3B,OAAO+tB,yBAAyBhuB,EAAEK,GAAGuB,EAAE,GAAG,iBAAiBqsB,SAAS,mBAAmBA,QAAQC,SAAS9qB,EAAE6qB,QAAQC,SAASpuB,EAAEE,EAAEK,EAAEuB,QAAQ,IAAI,IAAIK,EAAEnC,EAAEsF,OAAO,EAAEnD,GAAG,EAAEA,KAAKF,EAAEjC,EAAEmC,MAAMmB,GAAGpB,EAAE,EAAED,EAAEqB,GAAGpB,EAAE,EAAED,EAAE/B,EAAEK,EAAE+C,GAAGrB,EAAE/B,EAAEK,KAAK+C,GAAG,OAAOpB,EAAE,GAAGoB,GAAGnD,OAAOC,eAAeF,EAAEK,EAAE+C,GAAGA,GAAGrB,EAAEvB,MAAMA,KAAK2tB,SAAS,SAASruB,EAAEE,GAAG,OAAO,SAASK,EAAEuB,GAAG5B,EAAEK,EAAEuB,EAAE9B,KAAKkC,EAAExB,MAAMA,KAAKw3D,gBAAgB,WAAW,IAAI,IAAIl4D,EAAE,EAAEE,EAAE,EAAEK,EAAEukB,UAAUxf,OAAOpF,EAAEK,EAAEL,IAAIF,GAAG8kB,UAAU5kB,GAAGoF,OAAO,IAAIxD,EAAEgP,MAAM9Q,GAAGiC,EAAE,EAAE,IAAI/B,EAAE,EAAEA,EAAEK,EAAEL,IAAI,IAAI,IAAIgC,EAAE4iB,UAAU5kB,GAAGoD,EAAE,EAAEnB,EAAED,EAAEoD,OAAOhC,EAAEnB,EAAEmB,IAAIrB,IAAIH,EAAEG,GAAGC,EAAEoB,GAAG,OAAOxB,GAAG3B,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEs4C,gBAAW,EAAO,IAAIl1C,EAAE/C,EAAE,MAAM4B,EAAE,CAACytB,MAAMtsB,EAAEs2C,aAAa+e,MAAMC,KAAKt1D,EAAEs2C,aAAaif,KAAK/0D,KAAKR,EAAEs2C,aAAaC,KAAK1kC,MAAM7R,EAAEs2C,aAAakf,MAAMC,IAAIz1D,EAAEs2C,aAAaof,KAAKt2D,EAAE,WAAW,SAAS1C,EAAEA,GAAG,IAAIE,EAAEQ,KAAKA,KAAKuzB,gBAAgBj0B,EAAEU,KAAK8+B,SAASl8B,EAAEs2C,aAAaof,IAAIt4D,KAAKu4D,kBAAkBv4D,KAAKuzB,gBAAgBqI,gBAAe,SAAUt8B,GAAG,aAAaA,GAAGE,EAAE+4D,qBAAqB,OAAOj5D,EAAEQ,UAAUy4D,gBAAgB,WAAWv4D,KAAK8+B,SAASr9B,EAAEzB,KAAKuzB,gBAAgBkB,QAAQqK,WAAWx/B,EAAEQ,UAAU04D,wBAAwB,SAASl5D,GAAG,IAAI,IAAIE,EAAE,EAAEA,EAAEF,EAAEsF,OAAOpF,IAAI,mBAAmBF,EAAEE,KAAKF,EAAEE,GAAGF,EAAEE,OAAOF,EAAEQ,UAAU24D,KAAK,SAASn5D,EAAEE,EAAEK,GAAGG,KAAKw4D,wBAAwB34D,GAAGP,EAAEwC,KAAKqiB,MAAM7kB,EAAEkC,EAAE,CAAC2B,QAAQ,aAAa3D,GAAGK,KAAKP,EAAEQ,UAAUovB,MAAM,SAAS5vB,GAAG,IAAI,IAAIE,EAAE,GAAGK,EAAE,EAAEA,EAAEukB,UAAUxf,OAAO/E,IAAIL,EAAEK,EAAE,GAAGukB,UAAUvkB,GAAGG,KAAK8+B,UAAUl8B,EAAEs2C,aAAa+e,OAAOj4D,KAAKy4D,KAAKt1D,QAAQsB,IAAInF,EAAEE,IAAIF,EAAEQ,UAAUo4D,KAAK,SAAS54D,GAAG,IAAI,IAAIE,EAAE,GAAGK,EAAE,EAAEA,EAAEukB,UAAUxf,OAAO/E,IAAIL,EAAEK,EAAE,GAAGukB,UAAUvkB,GAAGG,KAAK8+B,UAAUl8B,EAAEs2C,aAAaif,MAAMn4D,KAAKy4D,KAAKt1D,QAAQ+0D,KAAK54D,EAAEE,IAAIF,EAAEQ,UAAUsD,KAAK,SAAS9D,GAAG,IAAI,IAAIE,EAAE,GAAGK,EAAE,EAAEA,EAAEukB,UAAUxf,OAAO/E,IAAIL,EAAEK,EAAE,GAAGukB,UAAUvkB,GAAGG,KAAK8+B,UAAUl8B,EAAEs2C,aAAaC,MAAMn5C,KAAKy4D,KAAKt1D,QAAQC,KAAK9D,EAAEE,IAAIF,EAAEQ,UAAU2U,MAAM,SAASnV,GAAG,IAAI,IAAIE,EAAE,GAAGK,EAAE,EAAEA,EAAEukB,UAAUxf,OAAO/E,IAAIL,EAAEK,EAAE,GAAGukB,UAAUvkB,GAAGG,KAAK8+B,UAAUl8B,EAAEs2C,aAAakf,OAAOp4D,KAAKy4D,KAAKt1D,QAAQsR,MAAMnV,EAAEE,IAAI4B,EAAE,CAACG,EAAE,EAAEqB,EAAEkyB,kBAAkBx1B,GAA3pC,GAAiqCE,EAAEs4C,WAAW91C,GAAG02D,KAAK,CAACp5D,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEo4C,eAAep4C,EAAEm5D,gBAAgBn5D,EAAEo5D,wBAAmB,EAAO,IAAIx3D,EAAEvB,EAAE,MAAM0B,EAAE1B,EAAE,MAAM2B,EAAE3B,EAAE,MAAML,EAAEo5D,mBAAmB,ioBAAioBp5D,EAAEm5D,gBAAgBl5D,OAAOisB,OAAO,CAACnrB,KAAK,GAAGD,KAAK,GAAGwoC,aAAY,EAAGC,YAAY,QAAQC,YAAY,EAAEoN,UAAU52C,EAAEo5D,mBAAmBv2B,UAAU,OAAO5rB,4BAA2B,EAAGwtB,mBAAmB,MAAMC,sBAAsB,EAAE9tB,WAAW,kCAAkCC,SAAS,GAAGC,WAAW,SAASC,eAAe,OAAOwjB,WAAW,EAAErF,yBAAyB,IAAIgV,cAAc,EAAE5K,SAAS,OAAO0oB,WAAW,IAAIrjB,kBAAkB,EAAEtL,kBAAiB,EAAGkI,iBAAgB,EAAGkT,+BAA8B,EAAGv9B,qBAAqB,EAAE0gD,cAAa,EAAGxxB,kBAAiB,EAAGpvB,mBAAkB,EAAGiyC,aAAa,EAAExvB,MAAM,GAAGmB,sBAAsB74B,EAAE6nB,MAAMmU,aAAa,SAAS6iB,cAAc,GAAG7G,aAAY,EAAGjE,cAAc,eAAeujB,qBAAoB,EAAG/U,YAAW,EAAGc,SAAS,QAAQziB,cAAa,IAAK,IAAIv/B,EAAE,CAAC,SAAS,OAAO,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAAOnB,EAAE,CAAC,OAAO,QAAQO,EAAE,WAAW,SAAS1C,EAAEA,GAAGU,KAAK84D,gBAAgB,IAAI13D,EAAEqP,aAAazQ,KAAKy0B,QAAQjzB,EAAEqhB,MAAMrjB,EAAEm5D,iBAAiB,IAAI,IAAI94D,EAAE,EAAE0B,EAAE9B,OAAO+pD,KAAKlqD,GAAGO,EAAE0B,EAAEqD,OAAO/E,IAAI,CAAC,IAAI+C,EAAErB,EAAE1B,GAAG,GAAG+C,KAAK5C,KAAKy0B,QAAQ,IAAI,IAAIhzB,EAAEnC,EAAEsD,GAAG5C,KAAKy0B,QAAQ7xB,GAAG5C,KAAK+4D,2BAA2Bn2D,EAAEnB,GAAG,MAAMnC,GAAG6D,QAAQsR,MAAMnV,KAAK,OAAOG,OAAOC,eAAeJ,EAAEQ,UAAU,iBAAiB,CAACqC,IAAI,WAAW,OAAOnC,KAAK84D,gBAAgB3mD,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAU2mC,UAAU,SAASnnC,EAAEO,GAAG,KAAKP,KAAKE,EAAEm5D,iBAAiB,MAAM,IAAIzsD,MAAM,uBAAuB5M,EAAE,KAAK,GAAGmC,EAAE6kD,SAAShnD,GAAG,MAAM,IAAI4M,MAAM,WAAW5M,EAAE,wCAAwCU,KAAKy0B,QAAQn1B,KAAKO,IAAIA,EAAEG,KAAK+4D,2BAA2Bz5D,EAAEO,GAAGG,KAAKy0B,QAAQn1B,KAAKO,IAAIG,KAAKy0B,QAAQn1B,GAAGO,EAAEG,KAAK84D,gBAAgB/lD,KAAKzT,MAAMA,EAAEQ,UAAUi5D,2BAA2B,SAASz5D,EAAEO,GAAG,OAAOP,GAAG,IAAI,YAAY,IAAI,cAAc,IAAI,eAAe,IAAI,gBAAgBO,IAAIA,EAAEL,EAAEm5D,gBAAgBr5D,IAAI,MAAM,IAAI,aAAa,IAAI,iBAAiB,GAAG,iBAAiBO,GAAG,GAAGA,GAAGA,GAAG,IAAI,MAAMA,EAAE+C,EAAE0jD,SAASzmD,GAAGA,EAAEL,EAAEm5D,gBAAgBr5D,GAAG,MAAM,IAAI,cAAcO,EAAEwB,KAAKO,MAAM/B,GAAG,IAAI,aAAa,IAAI,eAAe,GAAGA,EAAE,EAAE,MAAM,IAAIqM,MAAM5M,EAAE,kCAAkCO,GAAG,MAAM,IAAI,uBAAuBA,EAAEwB,KAAKC,IAAI,EAAED,KAAK2N,IAAI,GAAG3N,KAAK4S,MAAM,GAAGpU,GAAG,KAAK,MAAM,IAAI,aAAa,IAAIA,EAAEwB,KAAK2N,IAAInP,EAAE,aAAa,EAAE,MAAM,IAAIqM,MAAM5M,EAAE,kCAAkCO,GAAG,MAAM,IAAI,wBAAwB,IAAI,oBAAoB,GAAGA,GAAG,EAAE,MAAM,IAAIqM,MAAM5M,EAAE,8CAA8CO,GAAG,OAAOA,GAAGP,EAAEQ,UAAUkU,UAAU,SAAS1U,GAAG,KAAKA,KAAKE,EAAEm5D,iBAAiB,MAAM,IAAIzsD,MAAM,uBAAuB5M,EAAE,KAAK,OAAOU,KAAKy0B,QAAQn1B,IAAIA,EAA1mD,GAA+mDE,EAAEo4C,eAAe51C,GAAGg3D,KAAK,CAAC15D,EAAEE,KAAK,SAASK,EAAEP,EAAEE,EAAEK,GAAGL,EAAEy5D,YAAYz5D,EAAEA,EAAE05D,gBAAgB/zD,KAAK,CAACgqB,GAAG7vB,EAAE6sC,MAAMtsC,KAAKL,EAAE05D,gBAAgB,CAAC,CAAC/pC,GAAG7vB,EAAE6sC,MAAMtsC,IAAIL,EAAEy5D,UAAUz5D,GAAGC,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAEk2C,gBAAgBl2C,EAAEq4D,uBAAuBr4D,EAAE25D,qBAAgB,EAAO35D,EAAE25D,gBAAgB,IAAIvnC,IAAIpyB,EAAEq4D,uBAAuB,SAASv4D,GAAG,OAAOA,EAAE45D,iBAAiB,IAAI15D,EAAEk2C,gBAAgB,SAASp2C,GAAG,GAAGE,EAAE25D,gBAAgBnnC,IAAI1yB,GAAG,OAAOE,EAAE25D,gBAAgBh3D,IAAI7C,GAAG,IAAI8B,EAAE,SAAS9B,EAAEE,EAAE+B,GAAG,GAAG,IAAI6iB,UAAUxf,OAAO,MAAM,IAAIsH,MAAM,oEAAoErM,EAAEuB,EAAE9B,EAAEiC,IAAI,OAAOH,EAAEsZ,SAAS,WAAW,OAAOpb,GAAGE,EAAE25D,gBAAgBxsD,IAAIrN,EAAE8B,GAAGA,IAAIg4D,KAAK,CAAC95D,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE8wB,gBAAgB9wB,EAAE05C,aAAa15C,EAAEs1B,gBAAgBt1B,EAAE6wB,YAAY7wB,EAAEmqC,sBAAsBnqC,EAAE44C,iBAAiB54C,EAAEg5C,gBAAgBh5C,EAAEqlC,aAAarlC,EAAEy4C,kBAAkBz4C,EAAE4wB,oBAAe,EAAO,IAAIhvB,EAAEG,EAAE1B,EAAE,MAAML,EAAE4wB,eAAe7uB,EAAEm0C,gBAAgB,iBAAiBl2C,EAAEy4C,kBAAkB12C,EAAEm0C,gBAAgB,oBAAoBl2C,EAAEqlC,aAAatjC,EAAEm0C,gBAAgB,eAAel2C,EAAEg5C,gBAAgBj3C,EAAEm0C,gBAAgB,kBAAkBl2C,EAAE44C,iBAAiB72C,EAAEm0C,gBAAgB,mBAAmBl2C,EAAEmqC,sBAAsBpoC,EAAEm0C,gBAAgB,wBAAwBl2C,EAAE6wB,YAAY9uB,EAAEm0C,gBAAgB,cAAcl2C,EAAEs1B,gBAAgBvzB,EAAEm0C,gBAAgB,mBAAmBt0C,EAAE5B,EAAE05C,eAAe15C,EAAE05C,aAAa,KAAK93C,EAAE62D,MAAM,GAAG,QAAQ72D,EAAEA,EAAE+2D,KAAK,GAAG,OAAO/2D,EAAEA,EAAE+3C,KAAK,GAAG,OAAO/3C,EAAEA,EAAEg3D,MAAM,GAAG,QAAQh3D,EAAEA,EAAEk3D,IAAI,GAAG,MAAM94D,EAAE8wB,gBAAgB/uB,EAAEm0C,gBAAgB,mBAAmB2jB,KAAK,CAAC/5D,EAAEE,EAAEK,KAAKJ,OAAOC,eAAeF,EAAE,aAAa,CAACG,OAAM,IAAKH,EAAE64C,oBAAe,EAAO,IAAIj3C,EAAEvB,EAAE,MAAM0B,EAAE1B,EAAE,KAAK2B,EAAE,WAAW,SAASlC,IAAIU,KAAKs5D,WAAW75D,OAAO8C,OAAO,MAAMvC,KAAK8wD,QAAQ,GAAG9wD,KAAKu5D,UAAU,IAAIn4D,EAAEqP,aAAa,IAAInR,EAAE,IAAIiC,EAAEsuD,UAAU7vD,KAAKoiB,SAAS9iB,GAAGU,KAAK8wD,QAAQxxD,EAAEwwD,QAAQ9vD,KAAKw5D,gBAAgBl6D,EAAE,OAAOG,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAOnC,KAAKu5D,UAAUpnD,OAAOjQ,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,WAAW,CAACqC,IAAI,WAAW,OAAO1C,OAAO+pD,KAAKxpD,KAAKs5D,aAAap3D,YAAW,EAAG2N,cAAa,IAAKpQ,OAAOC,eAAeJ,EAAEQ,UAAU,gBAAgB,CAACqC,IAAI,WAAW,OAAOnC,KAAK8wD,SAASnkD,IAAI,SAASrN,GAAG,IAAIU,KAAKs5D,WAAWh6D,GAAG,MAAM,IAAI4M,MAAM,4BAA4B5M,EAAE,KAAKU,KAAK8wD,QAAQxxD,EAAEU,KAAKw5D,gBAAgBx5D,KAAKs5D,WAAWh6D,GAAGU,KAAKu5D,UAAUxmD,KAAKzT,IAAI4C,YAAW,EAAG2N,cAAa,IAAKvQ,EAAEQ,UAAUsiB,SAAS,SAAS9iB,GAAGU,KAAKs5D,WAAWh6D,EAAEwwD,SAASxwD,GAAGA,EAAEQ,UAAUyjD,QAAQ,SAASjkD,GAAG,OAAOU,KAAKw5D,gBAAgBjW,QAAQjkD,IAAIA,EAAEQ,UAAUmwB,mBAAmB,SAAS3wB,GAAG,IAAI,IAAIE,EAAE,EAAEK,EAAEP,EAAEsF,OAAOxD,EAAE,EAAEA,EAAEvB,IAAIuB,EAAE,CAAC,IAAIG,EAAEjC,EAAEolB,WAAWtjB,GAAG,GAAG,OAAOG,GAAGA,GAAG,MAAM,CAAC,KAAKH,GAAGvB,EAAE,OAAOL,EAAEQ,KAAKujD,QAAQhiD,GAAG,IAAIC,EAAElC,EAAEolB,WAAWtjB,GAAG,OAAOI,GAAGA,GAAG,MAAMD,EAAE,MAAMA,EAAE,OAAOC,EAAE,MAAM,MAAMhC,GAAGQ,KAAKujD,QAAQ/hD,GAAGhC,GAAGQ,KAAKujD,QAAQhiD,GAAG,OAAO/B,GAAGF,EAApoC,GAAyoCE,EAAE64C,eAAe72C,IAAIhC,EAAE,GAAG,OAAO,SAASK,EAAEuB,GAAG,GAAG5B,EAAE4B,GAAG,OAAO5B,EAAE4B,GAAG/B,QAAQ,IAAIkC,EAAE/B,EAAE4B,GAAG,CAAC/B,QAAQ,IAAI,OAAOC,EAAE8B,GAAGU,KAAKP,EAAElC,QAAQkC,EAAEA,EAAElC,QAAQQ,GAAG0B,EAAElC,QAA9G,CAAuH,OAAzl9S,I,iHC3BtP,iBAII,WAAYo6D,EAAaC,GACrB15D,KAAKy5D,IAAMA,EACXz5D,KAAK05D,UAAYA,EAMzB,OAHI,YAAAn3D,OAAA,WACI,OAAO,IAAIo3D,EAAW35D,KAAKy5D,IAAKz5D,KAAK05D,YAE7C,EAZA,GAAa,EAAAE,oBAcb,iBAII,WAAYH,EAAaC,GACrB15D,KAAK65D,KAAO,IAAIC,UAAUL,EAAKC,GAwCvC,OArCI,YAAA32D,KAAA,aAIA,YAAAg3D,MAAA,WACI/5D,KAAK65D,KAAKE,SAGd,YAAAC,KAAA,SAAK9/C,GACDla,KAAK65D,KAAKG,KAAK9/C,IAGnB,YAAA+/C,OAAA,WACI,OAAIj6D,KAAK65D,KAAKK,YAAcJ,UAAUK,YAClCn6D,KAAK65D,KAAKK,YAAcJ,UAAUM,MAM1C,YAAAC,OAAA,SAAOC,GACHt6D,KAAK65D,KAAKU,OAAS,SAACpoD,GAChBmoD,MAIR,YAAAE,UAAA,SAAUF,GACNt6D,KAAK65D,KAAKY,UAAY,SAACtoD,GACnBmoD,EAASnoD,EAAM+H,QAIvB,YAAAwgD,QAAA,SAAQJ,GACJt6D,KAAK65D,KAAKc,QAAU,SAACxoD,GACjBmoD,MAGZ,EA7CA,GAAa,EAAAX,c,uRCdA,EAAAD,UAAY,CAAC,UAEb,EAAAkB,gBAAkB,IAClB,EAAAC,SAAW,IACX,EAAAC,QAAU,IACV,EAAAC,kBAAoB,IAEpB,EAAAC,iBAAmB,IACnB,EAAAC,UAAY,IACZ,EAAAC,QAAU,IACV,EAAAC,kBAAoB,IACpB,EAAAC,kBAAoB,IACpB,EAAAC,gBAAkB,IAClB,EAAAC,iBAAmB,IAgChC,iBAQI,WAAYC,EAAgBC,EAAsCC,EAAcC,GAC5E17D,KAAKu7D,KAAOA,EACZv7D,KAAKw7D,kBAAoBA,EACzBx7D,KAAKy7D,KAAOA,EACZz7D,KAAK07D,UAAYA,EACjB17D,KAAK27D,WAAa,EAClB37D,KAAK47D,QAAU,KAsGvB,OAnGI,YAAA74D,KAAA,eAEQ84D,EACAC,EAHR,OACQC,EAAa/7D,KAAKw7D,kBAAkBj5D,SAIlCy5D,EAAQ,WACVD,EAAW1B,QAAO,WACd,IAAM4B,EAAW,EAAKV,KAAKrD,OAE3B6D,EAAW/B,KAAKkC,KAAKC,UACjB,CACIC,UAAW,EAAKX,KAChBY,UAAW,EAAKX,aAKxB,IAAMY,EAAgB,SAACC,EAAiBj8D,GACpCy7D,EAAW/B,KACP,EAAAe,kBAAoBmB,KAAKC,UACrB,CACIK,QAASD,EACTj8D,KAAMA,MAMtB,EAAKi7D,KAAKvyD,SAASszD,GACnBA,EAAcL,EAASO,QAASP,EAAS37D,MAEzC,EAAKi7D,KAAKkB,SACN,SAACC,GAKG,IAHA,IAAIC,EAAsB,EAAKf,QAAU,EAGhCx6D,EAAI,EAAGA,EAAIC,KAAK0S,KAAK2oD,EAAM93D,OAAO+3D,GAAsBv7D,IAAK,CAClE,IAAIw7D,EAAaF,EAAM/2D,UAAUvE,EAAEu7D,EAAqBt7D,KAAK2N,KAAK5N,EAAE,GAAGu7D,EAAqBD,EAAM93D,SAClGm3D,EAAW/B,KAAK,EAAAa,SAAW+B,OAKvCf,EAAYv8C,aAAY,WACpBy8C,EAAW/B,KAAK,EAAAc,WACjB,QAIPiB,EAAWvB,WAAU,SAACtgD,GAClB,IAAMojC,EAAUpjC,EAAK/P,MAAM,GAC3B,OAAQ+P,EAAK,IACT,KAAK,EAAA+gD,UACD,EAAKM,KAAKsB,OAAOtmB,KAAK+G,IACtB,MACJ,KAAK,EAAA4d,QACD,MACJ,KAAK,EAAAC,kBACD,EAAKI,KAAKuB,eAAexf,GACzB,MACJ,KAAK,EAAA8d,kBACD,IAAM2B,EAAcb,KAAKpjB,MAAMwE,GAC/B,EAAKie,KAAKyB,eAAeD,GACzB,MACJ,KAAK,EAAA1B,gBACD,IAAM4B,EAAgBf,KAAKpjB,MAAMwE,GACjCn6C,QAAQsB,IAAI,uBAAyBw4D,EAAgB,YACrD,EAAKtB,UAAYsB,EACjB,MACJ,KAAK,EAAA3B,iBACD,IAAMM,EAAUM,KAAKpjB,MAAMwE,GAC3B,EAAKse,QAAUA,MAK3BG,EAAWrB,SAAQ,WACf77C,cAAcg9C,GACd,EAAKN,KAAK2B,aACV,EAAK3B,KAAK4B,YAAY,oBAAqB,GACvC,EAAKxB,UAAY,IACjBG,EAAmBz8C,YAAW,WAC1B08C,EAAa,EAAKP,kBAAkBj5D,SACpC,EAAKg5D,KAAKhpD,QACVypD,MACgB,IAAjB,EAAKL,eAIhBI,EAAWh5D,QAIf,OADAi5D,IACO,WACHl9C,aAAag9C,GACbC,EAAWhC,UAGvB,EApHA,GAAa,EAAAqD,U,2FC7Cb,aACA,SACA,SACA,SAEA,aAYI,WAAYC,GAAZ,WACIr9D,KAAKq9D,KAAOA,EACZr9D,KAAKu7D,KAAO,IAAI,EAAAxlC,SAChB/1B,KAAKs9D,SAAW,IAAI,EAAA19D,SACpBI,KAAKu7D,KAAKj2B,UAAU,IAAI,EAAAziC,eACxB7C,KAAKu7D,KAAKj2B,UAAUtlC,KAAKs9D,UAEzBt9D,KAAKu9D,QAAUF,EAAKriC,cAAczpB,cAAc,OAChDvR,KAAKu9D,QAAQC,UAAY,gBACzBx9D,KAAKy9D,eAAiB,IAEtBz9D,KAAK09D,eAAiB,WAClB,EAAKJ,SAASn9D,MACd,EAAKo7D,KAAK16B,iBACV,EAAKs8B,YAAYtkD,OAAO,EAAK0iD,KAAKh7D,MAAQ,IAAMsY,OAAO,EAAK0iD,KAAKj7D,MAAO,EAAKm9D,iBAGjFz9D,KAAKu7D,KAAKx4D,KAAKs6D,GACfr9D,KAAKu7D,KAAK3yC,QACV5oB,KAAK09D,iBACL18D,OAAO0lB,iBAAiB,UAAU,WAAQ,EAAKg3C,oBA2EvD,OAxEI,YAAAxF,KAAA,WACI,MAAO,CAAEsE,QAASx8D,KAAKu7D,KAAKh7D,KAAMD,KAAMN,KAAKu7D,KAAKj7D,OAGtD,YAAAu8D,OAAA,SAAO3iD,GACHla,KAAKu7D,KAAKhjC,MAAM3wB,WAAW+1D,KAAKzjD,GAAM,SAAAlY,GAAK,OAAAA,EAAE0iB,WAAW,QAG5D,YAAAy4C,YAAA,SAAYI,EAAiBK,GAA7B,WACI59D,KAAKu9D,QAAQr0C,YAAcq0C,EAC3Bv9D,KAAKq9D,KAAKzrD,YAAY5R,KAAKu9D,SAEvBv9D,KAAK69D,cACL/+C,aAAa9e,KAAK69D,cAElBD,EAAU,IACV59D,KAAK69D,aAAex+C,YAAW,WAC3B,EAAKg+C,KAAKhrD,YAAY,EAAKkrD,WAC5BK,KAIX,YAAAE,cAAA,WACQ99D,KAAKu9D,QAAQl0C,YAAcrpB,KAAKq9D,MAChCr9D,KAAKq9D,KAAKhrD,YAAYrS,KAAKu9D,UAInC,YAAAT,eAAA,SAAeiB,GACXzsD,SAASysD,MAAQA,GAGrB,YAAAf,eAAA,SAAer9D,GAAf,WACIF,OAAO+pD,KAAK7pD,GAAOyS,SAAQ,SAACwV,GACb,eAAPA,GAAwBA,EACxB,EAAK2zC,KAAKj2B,UAAU,IAAI,EAAAl2B,YACV,aAAPwY,EACP,EAAK2zC,KAAK90B,UAAU,WAAY9mC,EAAMioB,IACxB,eAAPA,GACP,EAAK2zC,KAAK90B,UAAU,aAAc9mC,EAAMioB,QAKpD,YAAA60C,QAAA,SAAQnC,GACJt6D,KAAKg+D,cAAgBh+D,KAAKu7D,KAAK11B,QAAO,SAAC3rB,GACnCogD,EAASpgD,OAKjB,YAAAlR,SAAA,SAASsxD,GAAT,WACIt6D,KAAKi+D,gBAAkBj+D,KAAKu7D,KAAKvyD,UAAS,WACtCsxD,EAAS,EAAKiB,KAAKh7D,KAAM,EAAKg7D,KAAKj7D,UAI3C,YAAA48D,WAAA,WACIl9D,KAAKg+D,cAAc99D,UACnBF,KAAKi+D,gBAAgB/9D,UACrBF,KAAKu7D,KAAK/hC,QAGd,YAAAjnB,MAAA,WACIvS,KAAK89D,gBACL99D,KAAKu7D,KAAK96D,SAGd,YAAAs5D,MAAA,WACI/4D,OAAOynB,oBAAoB,SAAUzoB,KAAK09D,gBAC1C19D,KAAKu7D,KAAKr7D,WAElB,EA3GA,GAAa,EAAAg+D,UCJTC,EAA2B,GAG/B,SAASC,EAAoBC,GAE5B,IAAIC,EAAeH,EAAyBE,GAC5C,QAAqBE,IAAjBD,EACH,OAAOA,EAAaj/D,QAGrB,IAAID,EAAS++D,EAAyBE,GAAY,CAGjDh/D,QAAS,IAOV,OAHAm/D,EAAoBH,GAAUj/D,EAAQA,EAAOC,QAAS++D,GAG/Ch/D,EAAOC,Q,mBCrBf,aACA,SACA,QAMMg+D,EAAO/rD,SAASmtD,eAAe,YAErC,GAAa,OAATpB,EAAe,CACf,IAAI9B,EACJA,EAAO,IAAI,EAAA2C,MAAMb,GAEjB,IACM5D,GAD2C,UAA5Bz4D,OAAOiC,SAASy7D,SACT,SAAW,SAAW19D,OAAOiC,SAAS07D,KAAO39D,OAAOiC,SAAS27D,SAAW,KAC9FnD,EAAOz6D,OAAOiC,SAAS47D,OACvBC,EAAU,IAAI,EAAAlF,kBAAkBH,EAAK,EAAAC,WAErC,EADK,IAAI,EAAA0D,OAAO7B,EAAMuD,EAASrD,EAAMsD,kBACzBh8D,OAElB/B,OAAO0lB,iBAAiB,UAAU,WAC9B,IACA60C,EAAKxB,a","file":"gotty.js","sourcesContent":["/*!\n * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit)\n * @license MIT\n * @version 0.5.0\n * ==xterm-addon-fit/LICENSE==\n * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.FitAddon=t():e.FitAddon=t()}(self,(function(){return(()=>{\"use strict\";var e={775:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue(\"height\")),i=Math.max(0,parseInt(t.getPropertyValue(\"width\"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue(\"padding-top\"))+parseInt(n.getPropertyValue(\"padding-bottom\"))),a=i-(parseInt(n.getPropertyValue(\"padding-right\"))+parseInt(n.getPropertyValue(\"padding-left\")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(a/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()}));\n//# sourceMappingURL=xterm-addon-fit.js.map","/*!\n * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links)\n * @license MIT\n * @version 0.4.0\n * ==xterm-addon-web-links/LICENSE==\n * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.WebLinksAddon=t():e.WebLinksAddon=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.WebLinksAddon=void 0;var r=n(1),i=new RegExp(\"(?:^|[^\\\\da-z\\\\.-]+)((https?:\\\\/\\\\/)((([\\\\da-z\\\\.-]+)\\\\.([a-z\\\\.]{2,6}))|((\\\\d{1,3}\\\\.){3}\\\\d{1,3})|(localhost))(:\\\\d{1,5})?((\\\\/[\\\\/\\\\w\\\\.\\\\-%~:+@]*)*([^:\\\"'\\\\s]))?(\\\\?[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?(#[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?)($|[^\\\\/\\\\w\\\\.\\\\-%]+)\");function o(e,t){var n=window.open();n?(n.opener=null,n.location.href=t):console.warn(\"Opening link blocked as opener could not be cleared\")}var a=function(){function e(e,t,n){void 0===e&&(e=o),void 0===t&&(t={}),void 0===n&&(n=!1),this._handler=e,this._options=t,this._useLinkProvider=n,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&\"registerLinkProvider\"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new r.WebLinkProvider(this._terminal,i,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(i,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var r=function(){function e(e,t,n){this._terminal=e,this._regex=t,this._handler=n}return e.prototype.provideLinks=function(e,t){t(i.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=r;var i=function(){function e(){}return e.computeLink=function(t,n,r,i){for(var o,a=new RegExp(n.source,(n.flags||\"\")+\"g\"),s=e._translateBufferLineToStringWithWrap(t-1,!1,r),u=s[0],d=s[1],l=-1,c=[];null!==(o=a.exec(u));){var f=o[1];if(!f){console.log(\"match found without corresponding matchIndex\");break}if(l=u.indexOf(f,l+1),a.lastIndex=l+f.length,l<0)break;for(var p=l+f.length,h=d+1;p>r.cols;)p-=r.cols,h++;var v={start:{x:l+1,y:d+1},end:{x:p,y:h}};c.push({range:v,text:f,activate:i})}return c},e._translateBufferLineToStringWithWrap=function(e,t,n){var r,i,o=\"\";do{if(!(s=n.buffer.active.getLine(e)))break;s.isWrapped&&e--,i=s.isWrapped}while(i);var a=e;do{var s,u=n.buffer.active.getLine(e+1);if(r=!!u&&u.isWrapped,!(s=n.buffer.active.getLine(e)))break;o+=s.translateToString(!r&&t).substring(0,n.cols),e++}while(r);return[o,a]},e}();t.LinkComputer=i}])}));\n//# sourceMappingURL=xterm-addon-web-links.js.map","/*!\n * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl)\n * @license MIT\n * @version 0.10.0\n * ==xterm-addon-webgl/LICENSE==\n * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.WebglAddon=e():t.WebglAddon=e()}(self,(function(){return(()=>{\"use strict\";var t={965:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.GlyphRenderer=void 0;var r=i(381),o=i(310),n=i(455),s=i(259),a=i(855),l=i(147),h=10,c=h*Float32Array.BYTES_PER_ELEMENT,_=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_unitquad;\\nlayout (location = 1) in vec2 a_cellpos;\\nlayout (location = 2) in vec2 a_offset;\\nlayout (location = 3) in vec2 a_size;\\nlayout (location = 4) in vec2 a_texcoord;\\nlayout (location = 5) in vec2 a_texsize;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec2 v_texcoord;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec2 v_texcoord;\\n\\nuniform sampler2D u_texture;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = texture(u_texture, v_texcoord);\\n}\"));this._program=s,this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._textureLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_texture\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),_=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,_),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,c,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,c,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,c,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,c,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,c,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=r.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return t.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},t.prototype.updateCell=function(t,e,i,r,o,n){this._updateCell(this._vertices.attributes,t,e,i,r,o,n)},t.prototype._updateCell=function(t,e,i,r,o,s,l){var c,_=(i*this._terminal.cols+e)*h;r!==a.NULL_CELL_CODE&&r!==a.WHITESPACE_CELL_CODE&&void 0!==r?this._atlas&&((c=l&&l.length>1?this._atlas.getRasterizedGlyphCombinedChar(l,o,s):this._atlas.getRasterizedGlyph(r,o,s))?(t[_]=-c.offset.x+this._dimensions.scaledCharLeft,t[_+1]=-c.offset.y+this._dimensions.scaledCharTop,t[_+2]=c.size.x/this._dimensions.scaledCanvasWidth,t[_+3]=c.size.y/this._dimensions.scaledCanvasHeight,t[_+4]=c.texturePositionClipSpace.x,t[_+5]=c.texturePositionClipSpace.y,t[_+6]=c.sizeClipSpace.x,t[_+7]=c.sizeClipSpace.y):n.fill(t,0,_,_+h-1-2)):n.fill(t,0,_,_+h-1-2)},t.prototype.updateSelection=function(t){var e=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var i=this._colors.selectionOpaque.rgba>>>8|50331648;if(t.selection.columnSelectMode)for(var r=t.selection.startCol,o=t.selection.endCol-r,n=t.selection.viewportCappedEndRow-t.selection.viewportCappedStartRow+1,a=t.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var g=l.AttributeData.toColorRGB(f.getBgColor());u|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;u|=v>>8&16711680|v>>8&65280|v>>8&255}u|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(h));var C=s.getCell(c).getChars();this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u,C)}else this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u)}},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._colors.ansi[t]},t.prototype.onResize=function(){var t=this._terminal,e=this._gl;e.viewport(0,0,e.canvas.width,e.canvas.height);var i=t.cols*t.rows*h;if(this._vertices.count!==i){this._vertices.count=i,this._vertices.attributes=new Float32Array(i);for(var r=0;r{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RectangleRenderer=void 0;var r=i(381),o=i(455),n=i(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_position;\\nlayout (location = 1) in vec2 a_size;\\nlayout (location = 2) in vec4 a_color;\\nlayout (location = 3) in vec2 a_unitquad;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec4 v_color;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_color = a_color;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec4 v_color;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = v_color;\\n}\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),c=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,c),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return t.prototype.render=function(){var t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,r.PROJECTION_MATRIX),t.uniform2f(this._resolutionLocation,t.canvas.width,t.canvas.height),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,this._vertices.count),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.selection,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,3)},t.prototype.onResize=function(){this._updateViewportRectangle()},t.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},t.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},t.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},t.prototype.updateSelection=function(t){var e=this._terminal;if(t.hasSelection)if(t.columnSelectMode){var i=t.startCol,r=t.endCol-i,n=t.viewportCappedEndRow-t.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,r*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{i=t.viewportStartRow===t.viewportCappedStartRow?t.startCol:0;var s=t.viewportCappedStartRow===t.viewportEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-i)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(t.viewportCappedEndRow-t.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(t.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,e.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),t.viewportCappedStartRow!==t.viewportCappedEndRow){var l=t.viewportEndRow===t.viewportCappedEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,16,0,t.viewportCappedEndRow*this._dimensions.scaledCellHeight,l*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},t.prototype.updateBackgrounds=function(t){for(var e=this._terminal,i=this._vertices,r=1,o=0;o>24&255)/255,d=(l>>16&255)/255,u=(l>>8&255)/255;this._addRectangle(t.attributes,e,h,c,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,_,d,u,1)},t.prototype._addRectangle=function(t,e,i,r,o,n,s,a,l,h){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s,t[e+5]=a,t[e+6]=l,t[e+7]=h},t.prototype._addRectangleFloat=function(t,e,i,r,o,n,s){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s[0],t[e+5]=s[1],t[e+6]=s[2],t[e+7]=s[3]},t.prototype._colorToFloat32Array=function(t){return new Float32Array([(t.rgba>>24&255)/255,(t.rgba>>16&255)/255,(t.rgba>>8&255)/255,(255&t.rgba)/255])},t}();e.RectangleRenderer=a},310:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RenderModel=e.COMBINED_CHAR_BIT_MASK=e.RENDER_MODEL_FG_OFFSET=e.RENDER_MODEL_BG_OFFSET=e.RENDER_MODEL_INDICIES_PER_CELL=void 0;var r=i(455);e.RENDER_MODEL_INDICIES_PER_CELL=3,e.RENDER_MODEL_BG_OFFSET=1,e.RENDER_MODEL_FG_OFFSET=2,e.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function t(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return t.prototype.resize=function(t,i){var r=t*i*e.RENDER_MODEL_INDICIES_PER_CELL;r!==this.cells.length&&(this.cells=new Uint32Array(r),this.lineLengths=new Uint32Array(i))},t.prototype.clear=function(){r.fill(this.cells,0,0),r.fill(this.lineLengths,0,0)},t.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},t}();e.RenderModel=o},259:(t,e)=>{function i(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length),e<0&&(e=(t.length+e)%t.length),i=i>=t.length?t.length:(t.length+i)%t.length,e=Math.min(e,i);for(var r=new t.constructor(i-e),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglAddon=void 0;var r=i(666),o=function(){function t(t){this._preserveDrawingBuffer=t}return t.prototype.activate=function(t){if(!t.element)throw new Error(\"Cannot activate WebglAddon before Terminal.open\");this._terminal=t;var e=t._core._renderService,i=t._core._colorManager.colors;this._renderer=new r.WebglRenderer(t,i,this._preserveDrawingBuffer),e.setRenderer(this._renderer)},t.prototype.dispose=function(){if(!this._terminal)throw new Error(\"Cannot dispose WebglAddon because it is activated\");var t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(t.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._renderer)||void 0===t?void 0:t.textureAtlas},enumerable:!1,configurable:!0}),t.prototype.clearTextureAtlas=function(){var t;null===(t=this._renderer)||void 0===t||t.clearCharAtlas()},t}();e.WebglAddon=o},666:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglRenderer=void 0;var n=i(965),s=i(733),a=i(461),l=i(713),h=i(344),c=i(310),_=i(859),d=i(855),u=i(345),f=i(782),p=function(t){function e(e,i,r){var o=t.call(this)||this;o._terminal=e,o._colors=i,o._model=new c.RenderModel,o._workCell=new f.CellData,o._onRequestRedraw=new u.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement(\"canvas\");var l={antialias:!1,depth:!1,preserveDrawingBuffer:r};if(o._gl=o._canvas.getContext(\"webgl2\",l),!o._gl)throw new Error(\"WebGL2 not supported \"+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new h.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(e,t),Object.defineProperty(e.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._renderLayers.forEach((function(t){return t.dispose()})),this._core.screenElement.removeChild(this._canvas),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._charAtlas)||void 0===t?void 0:t.cacheCanvas},enumerable:!1,configurable:!0}),e.prototype.setColors=function(t){var e=this;this._colors=t,this._renderLayers.forEach((function(t){t.setColors(e._terminal,e._colors),t.reset(e._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},e.prototype.onResize=function(t,e){var i=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(t){return t.resize(i._terminal,i.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+\"px\",this._canvas.style.height=this.dimensions.canvasHeight+\"px\",this._core.screenElement.style.width=this.dimensions.canvasWidth+\"px\",this._core.screenElement.style.height=this.dimensions.canvasHeight+\"px\",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},e.prototype.onBlur=function(){var t=this;this._renderLayers.forEach((function(e){return e.onBlur(t._terminal)}))},e.prototype.onFocus=function(){var t=this;this._renderLayers.forEach((function(e){return e.onFocus(t._terminal)}))},e.prototype.onSelectionChanged=function(t,e,i){var r=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(r._terminal,t,e,i)})),this._updateSelectionModel(t,e,i),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.onCursorMove=function(){var t=this;this._renderLayers.forEach((function(e){return e.onCursorMove(t._terminal)}))},e.prototype.onOptionsChanged=function(){var t=this;this._renderLayers.forEach((function(e){return e.onOptionsChanged(t._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},e.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var t=l.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!(\"getRasterizedGlyph\"in t))throw new Error(\"The webgl renderer only works with the webgl char atlas\");this._charAtlas=t,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},e.prototype.clearCharAtlas=function(){var t;null===(t=this._charAtlas)||void 0===t||t.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.clear=function(){var t=this;this._renderLayers.forEach((function(e){return e.reset(t._terminal)}))},e.prototype.registerCharacterJoiner=function(t){return-1},e.prototype.deregisterCharacterJoiner=function(t){return!1},e.prototype.renderRows=function(t,e){var i=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(r){return r.onGridChanged(i._terminal,t,e)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(t,e),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},e.prototype._updateModel=function(t,e){for(var i=this._core,r=t;r<=e;r++){var o=r+i.buffer.ydisp,n=i.buffer.lines.get(o);this._model.lineLengths[r]=0;for(var s=0;s1&&(l|=c.COMBINED_CHAR_BIT_MASK),this._model.cells[h]=l,this._model.cells[h+c.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[h+c.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,r,l,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},e.prototype._updateSelectionModel=function(t,e,i){void 0===i&&(i=!1);var r=this._terminal;if(!t||!e||t[0]===e[0]&&t[1]===e[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=t[1]-r.buffer.active.viewportY,n=e[1]-r.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,r.rows-1);if(s>=r.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=i,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=t[0],this._model.selection.endCol=e[0],this._rectangleRenderer.updateSelection(this._model.selection)},e.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption(\"lineHeight\")),this.dimensions.scaledCharTop=1===this._terminal.getOption(\"lineHeight\")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption(\"letterSpacing\")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption(\"letterSpacing\")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},e}(_.Disposable);e.WebglRenderer=p},381:(t,e)=>{function i(t,e,i){var o=r(t.createShader(e));if(t.shaderSource(o,i),t.compileShader(o),t.getShaderParameter(o,t.COMPILE_STATUS))return o;console.error(t.getShaderInfoLog(o)),t.deleteShader(o)}function r(t){if(!t)throw new Error(\"value must not be falsy\");return t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.throwIfFalsy=e.expandFloat32Array=e.createShader=e.createProgram=e.PROJECTION_MATRIX=void 0,e.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),e.createProgram=function(t,e,o){var n=r(t.createProgram());if(t.attachShader(n,r(i(t,t.VERTEX_SHADER,e))),t.attachShader(n,r(i(t,t.FRAGMENT_SHADER,o))),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS))return n;console.error(t.getProgramInfoLog(n)),t.deleteProgram(n)},e.createShader=i,e.expandFloat32Array=function(t,e){for(var i=Math.min(2*t.length,e),r=new Float32Array(i),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.removeTerminalFromCache=e.acquireCharAtlas=void 0;var r=i(433),o=i(167),n=[];e.acquireCharAtlas=function(t,e,i,s){for(var a=r.generateConfig(i,s,t,e),l=0;l=0){if(r.configEquals(c.config,a))return c.atlas;1===c.ownedBy.length?(c.atlas.dispose(),n.splice(l,1)):c.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(e,\"__esModule\",{value:!0}),e.is256Color=e.configEquals=e.generateConfig=void 0;var i={css:\"\",rgba:0};e.generateConfig=function(t,e,r,o){var n={foreground:o.foreground,background:o.background,cursor:i,cursorAccent:i,selectionTransparent:i,selectionOpaque:i,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:t,scaledCharHeight:e,fontFamily:r.getOption(\"fontFamily\"),fontSize:r.getOption(\"fontSize\"),fontWeight:r.getOption(\"fontWeight\"),fontWeightBold:r.getOption(\"fontWeightBold\"),allowTransparency:r.getOption(\"allowTransparency\"),drawBoldTextInBrightColors:r.getOption(\"drawBoldTextInBrightColors\"),minimumContrastRatio:r.getOption(\"minimumContrastRatio\"),colors:n}},e.configEquals=function(t,e){for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglCharAtlas=void 0;var r=i(499),o=i(855),n=i(381),s=i(147),a=i(742),l=1024,h=1024,c=Math.floor(819.2),_={css:\"rgba(0, 0, 0, 0)\",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},u=function(){function t(t,e){this._config=e,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=t.createElement(\"canvas\"),this.cacheCanvas.width=l,this.cacheCanvas.height=h,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext(\"2d\",{alpha:!0})),this._tmpCanvas=t.createElement(\"canvas\"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext(\"2d\",{alpha:this._config.allowTransparency}))}return t.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},t.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},t.prototype._doWarmUp=function(){for(var t,e,i=33;i<126;i++){var r=this._drawToCache(i,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[i]=((t={})[o.DEFAULT_COLOR]=((e={})[o.DEFAULT_COLOR]=r,e),t)}},t.prototype.beginFrame=function(){return this._currentRowY>c&&(this.clearTexture(),this.warmUp(),!0)},t.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,l,h),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},t.prototype.getRasterizedGlyphCombinedChar=function(t,e,i){var r,o=this._cacheMapCombined[t];o||(o={},this._cacheMapCombined[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype.getRasterizedGlyph=function(t,e,i){var r,o=this._cacheMap[t];o||(o={},this._cacheMap[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._config.colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._config.colors.ansi[t]},t.prototype._getBackgroundColor=function(t,e,i){if(this._config.allowTransparency)return _;switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e);case 50331648:var r=s.AttributeData.toColorRGB(e);return{rgba:e<<8,css:\"#\"+f(r[0])+f(r[1])+f(r[2])};case 0:default:return i?this._config.colors.foreground:this._config.colors.background}},t.prototype._getForegroundCss=function(t,e,i,r,o,n,l,h){var c=this._getMinimumContrastCss(t,e,i,r,o,n,l,h);if(c)return c;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&h&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var _=s.AttributeData.toColorRGB(n);return a.channels.toCss(_[0],_[1],_[2]);case 0:default:if(l){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},t.prototype._resolveBackgroundRgba=function(t,e,i){switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},t.prototype._resolveForegroundRgba=function(t,e,i,r){switch(t){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&r&&e<8&&(e+=8),this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},t.prototype._getMinimumContrastCss=function(t,e,i,r,o,n,s,l){if(1!==this._config.minimumContrastRatio){var h=this._config.colors.contrastCache.getCss(t,r);if(void 0!==h)return h||void 0;var c=this._resolveBackgroundRgba(e,i,s),_=this._resolveForegroundRgba(o,n,s,l),d=a.rgba.ensureContrastRatio(c,_,this._config.minimumContrastRatio);if(d){var u=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(t,r,u),u}this._config.colors.contrastCache.setCss(t,r,null)}},t.prototype._drawToCache=function(t,e,i){var o=\"number\"==typeof t?String.fromCharCode(t):t;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=e,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),c=!!this._workAttributeData.isItalic(),_=this._workAttributeData.getFgColor(),u=this._workAttributeData.getFgColorMode(),f=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var g=_;_=f,f=g;var v=u;u=p,p=v}var C=this._getBackgroundColor(p,f,s);this._tmpCtx.globalCompositeOperation=\"copy\",this._tmpCtx.fillStyle=C.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation=\"source-over\";var m=n?this._config.fontWeightBold:this._config.fontWeight,y=c?\"italic\":\"\";this._tmpCtx.font=y+\" \"+m+\" \"+this._config.fontSize*this._config.devicePixelRatio+\"px \"+this._config.fontFamily,this._tmpCtx.textBaseline=\"middle\",this._tmpCtx.fillStyle=this._getForegroundCss(e,p,f,i,u,_,s,n),a&&(this._tmpCtx.globalAlpha=r.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var R=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(t,e){for(var i=!0,r=e.rgba>>>24,o=e.rgba>>>16&255,n=e.rgba>>>8&255,s=0;sl&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),b.texturePosition.x=this._currentRowX,b.texturePosition.y=this._currentRowY,b.texturePositionClipSpace.x=this._currentRowX/l,b.texturePositionClipSpace.y=this._currentRowY/h,this._currentRowHeight=Math.max(this._currentRowHeight,b.size.y),this._currentRowX+=b.size.x,this._cacheCtx.putImageData(w,b.texturePosition.x,b.texturePosition.y),b},t.prototype._findGlyphBoundingBox=function(t,e){e.top=0;for(var i=!1,r=0;r=0;o--){for(r=0;r=0;r--){for(o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.BaseRenderLayer=void 0;var r=i(713),o=i(381),n=function(){function t(t,e,i,r,o){this._container=t,this._alpha=r,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+e+\"-layer\"),this._canvas.style.zIndex=i.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return t.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},t.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},t.prototype.onOptionsChanged=function(t){},t.prototype.onBlur=function(t){},t.prototype.onFocus=function(t){},t.prototype.onCursorMove=function(t){},t.prototype.onGridChanged=function(t,e,i){},t.prototype.onSelectionChanged=function(t,e,i,r){void 0===r&&(r=!1)},t.prototype.setColors=function(t,e){this._refreshCharAtlas(t,e)},t.prototype._setTransparency=function(t,e){if(e!==this._alpha){var i=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(t,this._colors),this.onGridChanged(t,0,t.rows-1)}},t.prototype._refreshCharAtlas=function(t,e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=r.acquireCharAtlas(t,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},t.prototype.resize=function(t,e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(t,this._colors)},t.prototype._fillCells=function(t,e,i,r){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight)},t.prototype._fillBottomLineAtCells=function(t,e,i){void 0===i&&(i=1),this._ctx.fillRect(t*this._scaledCellWidth,(e+1)*this._scaledCellHeight-window.devicePixelRatio-1,i*this._scaledCellWidth,window.devicePixelRatio)},t.prototype._fillLeftLineAtCell=function(t,e,i){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,window.devicePixelRatio*i,this._scaledCellHeight)},t.prototype._strokeRectAtCell=function(t,e,i,r){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(t*this._scaledCellWidth+window.devicePixelRatio/2,e*this._scaledCellHeight+window.devicePixelRatio/2,i*this._scaledCellWidth-window.devicePixelRatio,r*this._scaledCellHeight-window.devicePixelRatio)},t.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},t.prototype._clearCells=function(t,e,i,r){this._alpha?this._ctx.clearRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight))},t.prototype._fillCharTrueColor=function(t,e,i,r){this._ctx.font=this._getFont(t,!1,!1),this._ctx.textBaseline=\"middle\",this._clipRow(t,r),this._ctx.fillText(e.getChars(),i*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},t.prototype._clipRow=function(t,e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,t.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},t.prototype._getFont=function(t,e,i){return(i?\"italic\":\"\")+\" \"+(e?t.getOption(\"fontWeightBold\"):t.getOption(\"fontWeight\"))+\" \"+t.getOption(\"fontSize\")*window.devicePixelRatio+\"px \"+t.getOption(\"fontFamily\")},t}();e.BaseRenderLayer=n},461:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CursorRenderLayer=void 0;var n=i(592),s=i(782),a=600,l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"cursor\",i,!0,r)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:\"\",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},e.prototype.reset=function(t){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(t))},e.prototype.onBlur=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onFocus=function(t){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(t):this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onOptionsChanged=function(t){var e,i=this;t.getOption(\"cursorBlink\")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new h(t,(function(){i._render(t,!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onCursorMove=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype.onGridChanged=function(t,e,i){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(t,!1):this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype._render=function(t,e){if(t._core._coreService.isCursorInitialized&&!t._core._coreService.isCursorHidden){var i=t.buffer.active.baseY+t.buffer.active.cursorY,r=i-t.buffer.active.viewportY,o=Math.min(t.buffer.active.cursorX,t.cols-1);if(r<0||r>=t.rows)this._clearCursor();else if(t._core.buffer.lines.get(i).loadCell(o,this._cell),void 0!==this._cell.content){if(!c(t)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=t.getOption(\"cursorStyle\");return n&&\"block\"!==n?this._cursorRenderers[n](t,o,r,this._cell):this._renderBlurCursor(t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===r&&this._state.isFocused===c(t)&&this._state.style===t.getOption(\"cursorStyle\")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[t.getOption(\"cursorStyle\")||\"block\"](t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=t.getOption(\"cursorStyle\"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},e.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},e.prototype._renderBarCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,i,t.getOption(\"cursorWidth\")),this._ctx.restore()},e.prototype._renderBlockCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,i,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(t,r,e,i),this._ctx.restore()},e.prototype._renderUnderlineCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,i),this._ctx.restore()},e.prototype._renderBlurCursor=function(t,e,i,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,i,r.getWidth(),1),this._ctx.restore()},e}(n.BaseRenderLayer);e.CursorRenderLayer=l;var h=function(){function t(t,e){this._renderCallback=e,this.isCursorVisible=!0,c(t)&&this._restartInterval()}return Object.defineProperty(t.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.restartBlinkAnimation=function(t){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},t.prototype._restartInterval=function(t){var e=this;void 0===t&&(t=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);if(e._animationTimeRestarted=void 0,t>0)return void e._restartInterval(t)}e.isCursorVisible=!1,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0})),e._blinkInterval=window.setInterval((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);return e._animationTimeRestarted=void 0,void e._restartInterval(t)}e.isCursorVisible=!e.isCursorVisible,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))}),a)}),t)},t.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.resume=function(t){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(t)},t}();function c(t){return document.activeElement===t.textarea&&document.hasFocus()}},733:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.LinkRenderLayer=void 0;var n=i(592),s=i(499),a=i(433),l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"link\",i,!0,r)||this;return o.linkifier.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),o.linkifier2.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier2.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state=void 0},e.prototype.reset=function(t){this._clearCurrentLink()},e.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var t=this._state.y2-this._state.y1-1;t>0&&this._clearCells(0,this._state.y1+1,this._state.cols,t),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},e.prototype._onShowLinkUnderline=function(t){if(t.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==t.fg&&a.is256Color(t.fg)?this._ctx.fillStyle=this._colors.ansi[t.fg].css:this._ctx.fillStyle=this._colors.foreground.css,t.y1===t.y2)this._fillBottomLineAtCells(t.x1,t.y1,t.x2-t.x1);else{this._fillBottomLineAtCells(t.x1,t.y1,t.cols-t.x1);for(var e=t.y1+1;e{var i,r,o,n;function s(t){var e=t.toString(16);return e.length<2?\"0\"+e:e}function a(t,e){return t>>0}}(i=e.channels||(e.channels={})),(r=e.color||(e.color={})).blend=function(t,e){var r=(255&e.rgba)/255;if(1===r)return{css:e.css,rgba:e.rgba};var o=e.rgba>>24&255,n=e.rgba>>16&255,s=e.rgba>>8&255,a=t.rgba>>24&255,l=t.rgba>>16&255,h=t.rgba>>8&255,c=a+Math.round((o-a)*r),_=l+Math.round((n-l)*r),d=h+Math.round((s-h)*r);return{css:i.toCss(c,_,d),rgba:i.toRgba(c,_,d)}},r.isOpaque=function(t){return 255==(255&t.rgba)},r.ensureContrastRatio=function(t,e,i){var r=n.ensureContrastRatio(t.rgba,e.rgba,i);if(r)return n.toColor(r>>24&255,r>>16&255,r>>8&255)},r.opaque=function(t){var e=(255|t.rgba)>>>0,r=n.toChannels(e),o=r[0],s=r[1],a=r[2];return{css:i.toCss(o,s,a),rgba:e}},r.opacity=function(t,e){var r=Math.round(255*e),o=n.toChannels(t.rgba),s=o[0],a=o[1],l=o[2];return{css:i.toCss(s,a,l,r),rgba:i.toRgba(s,a,l,r)}},(e.css||(e.css={})).toColor=function(t){switch(t.length){case 7:return{css:t,rgba:(parseInt(t.slice(1),16)<<8|255)>>>0};case 9:return{css:t,rgba:parseInt(t.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(t){function e(t,e,i){var r=t/255,o=e/255,n=i/255;return.2126*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}t.relativeLuminance=function(t){return e(t>>16&255,t>>8&255,255&t)},t.relativeLuminance2=e}(o=e.rgb||(e.rgb={})),function(t){function e(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_0||h>0||c>0);)l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),c-=Math.max(0,Math.ceil(.1*c)),_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));return(l<<24|h<<16|c<<8|255)>>>0}function r(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_>>0}t.ensureContrastRatio=function(t,i,n){var s=o.relativeLuminance(t>>8),l=o.relativeLuminance(i>>8);if(a(s,l)>24&255,t>>16&255,t>>8&255,255&t]},t.toColor=function(t,e,r){return{css:i.toCss(t,e,r),rgba:i.toRgba(t,e,r)}}}(n=e.rgba||(e.rgba={})),e.toPaddedHex=s,e.contrastRatio=a},499:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.CHAR_ATLAS_CELL_SPACING=e.DIM_OPACITY=e.INVERTED_DEFAULT_COLOR=void 0,e.INVERTED_DEFAULT_COLOR=257,e.DIM_OPACITY=.5,e.CHAR_ATLAS_CELL_SPACING=1},345:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.forwardEvent=e.EventEmitter=void 0;var i=function(){function t(){this._listeners=[],this._disposed=!1}return Object.defineProperty(t.prototype,\"event\",{get:function(){var t=this;return this._event||(this._event=function(e){return t._listeners.push(e),{dispose:function(){if(!t._disposed)for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.getDisposeArrayDisposable=e.disposeArray=e.Disposable=void 0;var i=function(){function t(){this._disposables=[],this._isDisposed=!1}return t.prototype.dispose=function(){this._isDisposed=!0;for(var t=0,e=this._disposables;t{function i(t,e,i,r){if(void 0===i&&(i=0),void 0===r&&(r=t.length),i>=t.length)return t;i=(t.length+i)%t.length,r=r>=t.length?t.length:(t.length+r)%t.length;for(var o=i;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.ExtendedAttrs=e.AttributeData=void 0;var i=function(){function t(){this.fg=0,this.bg=0,this.extended=new r}return t.toColorRGB=function(t){return[t>>>16&255,t>>>8&255,255&t]},t.fromColorRGB=function(t){return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},t.prototype.clone=function(){var e=new t;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e},t.prototype.isInverse=function(){return 67108864&this.fg},t.prototype.isBold=function(){return 134217728&this.fg},t.prototype.isUnderline=function(){return 268435456&this.fg},t.prototype.isBlink=function(){return 536870912&this.fg},t.prototype.isInvisible=function(){return 1073741824&this.fg},t.prototype.isItalic=function(){return 67108864&this.bg},t.prototype.isDim=function(){return 134217728&this.bg},t.prototype.getFgColorMode=function(){return 50331648&this.fg},t.prototype.getBgColorMode=function(){return 50331648&this.bg},t.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},t.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},t.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},t.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},t.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},t.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},t.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},t.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},t.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},t.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},t.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},t.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},t.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},t.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},t.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},t.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},t.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},t}();e.AttributeData=i;var r=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=-1),this.underlineStyle=t,this.underlineColor=e}return t.prototype.clone=function(){return new t(this.underlineStyle,this.underlineColor)},t.prototype.isEmpty=function(){return 0===this.underlineStyle},t}();e.ExtendedAttrs=r},782:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CellData=void 0;var n=i(133),s=i(855),a=i(147),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.content=0,e.fg=0,e.bg=0,e.extended=new a.ExtendedAttrs,e.combinedData=\"\",e}return o(e,t),e.fromCharData=function(t){var i=new e;return i.setFromCharData(t),i},e.prototype.isCombined=function(){return 2097152&this.content},e.prototype.getWidth=function(){return this.content>>22},e.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):\"\"},e.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},e.prototype.setFromCharData=function(t){this.fg=t[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var e=!1;if(t[s.CHAR_DATA_CHAR_INDEX].length>2)e=!0;else if(2===t[s.CHAR_DATA_CHAR_INDEX].length){var i=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){var r=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=r&&r<=57343?this.content=1024*(i-55296)+r-56320+65536|t[s.CHAR_DATA_WIDTH_INDEX]<<22:e=!0}else e=!0}else this.content=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[s.CHAR_DATA_WIDTH_INDEX]<<22;e&&(this.combinedData=t[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|t[s.CHAR_DATA_WIDTH_INDEX]<<22)},e.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},e}(a.AttributeData);e.CellData=l},855:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WHITESPACE_CELL_CODE=e.WHITESPACE_CELL_WIDTH=e.WHITESPACE_CELL_CHAR=e.NULL_CELL_CODE=e.NULL_CELL_WIDTH=e.NULL_CELL_CHAR=e.CHAR_DATA_CODE_INDEX=e.CHAR_DATA_WIDTH_INDEX=e.CHAR_DATA_CHAR_INDEX=e.CHAR_DATA_ATTR_INDEX=e.DEFAULT_ATTR=e.DEFAULT_COLOR=void 0,e.DEFAULT_COLOR=256,e.DEFAULT_ATTR=256|e.DEFAULT_COLOR<<9,e.CHAR_DATA_ATTR_INDEX=0,e.CHAR_DATA_CHAR_INDEX=1,e.CHAR_DATA_WIDTH_INDEX=2,e.CHAR_DATA_CODE_INDEX=3,e.NULL_CELL_CHAR=\"\",e.NULL_CELL_WIDTH=1,e.NULL_CELL_CODE=0,e.WHITESPACE_CELL_CHAR=\" \",e.WHITESPACE_CELL_WIDTH=1,e.WHITESPACE_CELL_CODE=32},133:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.Utf8ToUtf32=e.StringToUtf32=e.utf32ToString=e.stringFromCodePoint=void 0,e.stringFromCodePoint=function(t){return t>65535?(t-=65536,String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)},e.utf32ToString=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length);for(var r=\"\",o=e;o65535?(n-=65536,r+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):r+=String.fromCharCode(n)}return r};var i=function(){function t(){this._interim=0}return t.prototype.clear=function(){this._interim=0},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r=0,o=0;this._interim&&(56320<=(a=t.charCodeAt(o++))&&a<=57343?e[r++]=1024*(this._interim-55296)+a-56320+65536:(e[r++]=this._interim,e[r++]=a),this._interim=0);for(var n=o;n=i)return this._interim=s,r;var a;56320<=(a=t.charCodeAt(n))&&a<=57343?e[r++]=1024*(s-55296)+a-56320+65536:(e[r++]=s,e[r++]=a)}else 65279!==s&&(e[r++]=s)}return r},t}();e.StringToUtf32=i;var r=function(){function t(){this.interim=new Uint8Array(3)}return t.prototype.clear=function(){this.interim.fill(0)},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r,o,n,s,a=0,l=0,h=0;if(this.interim[0]){var c=!1,_=this.interim[0];_&=192==(224&_)?31:224==(240&_)?15:7;for(var d=0,u=void 0;(u=63&this.interim[++d])&&d<4;)_<<=6,_|=u;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=f-d;h=i)return 0;if(128!=(192&(u=t[h++]))){h--,c=!0;break}this.interim[d++]=u,_<<=6,_|=63&u}c||(2===f?_<128?h--:e[a++]=_:3===f?_<2048||_>=55296&&_<=57343||65279===_||(e[a++]=_):_<65536||_>1114111||(e[a++]=_)),this.interim.fill(0)}for(var g=i-4,v=h;v=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if((l=(31&r)<<6|63&o)<128){v--;continue}e[a++]=l}else if(224==(240&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if((l=(15&r)<<12|(63&o)<<6|63&n)<2048||l>=55296&&l<=57343||65279===l)continue;e[a++]=l}else if(240==(248&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=t[v++]))){v--;continue}if((l=(7&r)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||l>1114111)continue;e[a++]=l}}return a},t}();e.Utf8ToUtf32=r}},e={};return function i(r){if(e[r])return e[r].exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,i),o.exports}(795)})()}));\n//# sourceMappingURL=xterm-addon-webgl.js.map","/*!\n * xterm (https://npmjs.com/package/xterm)\n * @license MIT\n * @version 4.12.0\n * ==xterm/LICENSE==\n * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)\n * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var r=t();for(var i in r)(\"object\"==typeof exports?exports:e)[i]=r[i]}}(self,(function(){return(()=>{\"use strict\";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce=\"\",i._accessibilityTreeRoot=document.createElement(\"div\"),i._accessibilityTreeRoot.classList.add(\"xterm-accessibility\"),i._rowContainer=document.createElement(\"div\"),i._rowContainer.setAttribute(\"role\",\"list\"),i._rowContainer.classList.add(\"xterm-accessibility-tree\"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(\"focus\",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement(\"div\");return e.setAttribute(\"role\",\"listitem\"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,\"\\n\"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent=\"\",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=\" \":a.textContent=o,a.setAttribute(\"aria-posinset\",s),a.setAttribute(\"aria-setsize\",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\\r?\\n/g,\"\\r\")}function i(e,t){return t?\"\u001b[200~\"+e+\"\u001b[201~\":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=\"\"}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width=\"20px\",t.style.height=\"20px\",t.style.left=n+\"px\",t.style.top=o+\"px\",t.style.zIndex=\"1000\",t.focus()}Object.defineProperty(t,\"__esModule\",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData(\"text/plain\",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData(\"text/plain\"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?\"0\"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor(\"#ffffff\"),s=i.css.toColor(\"#000000\"),a=i.css.toColor(\"#ffffff\"),c=i.css.toColor(\"#000000\"),l={css:\"rgba(255, 255, 255, 0.3)\",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor(\"#2e3436\"),i.css.toColor(\"#cc0000\"),i.css.toColor(\"#4e9a06\"),i.css.toColor(\"#c4a000\"),i.css.toColor(\"#3465a4\"),i.css.toColor(\"#75507b\"),i.css.toColor(\"#06989a\"),i.css.toColor(\"#d3d7cf\"),i.css.toColor(\"#555753\"),i.css.toColor(\"#ef2929\"),i.css.toColor(\"#8ae234\"),i.css.toColor(\"#fce94f\"),i.css.toColor(\"#729fcf\"),i.css.toColor(\"#ad7fa8\"),i.css.toColor(\"#34e2e2\"),i.css.toColor(\"#eeeeec\")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement(\"canvas\");h.width=1,h.height=1;var u=h.getContext(\"2d\");if(!u)throw new Error(\"Could not get rendering context\");this._ctx=u,this._ctx.globalCompositeOperation=\"copy\",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){\"minimumContrastRatio\"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,\"string\"!=typeof this._ctx.fillStyle)return console.warn(\"Color: \"+e+\" is invalid using fallback \"+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn(\"Color: \"+e+\" is using transparency, but allowTransparency is false. Using fallback \"+t.css+\".\"),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(\",\").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLinkTooltip\",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&\"break\"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn(\"Opening link blocked as opener could not be cleared\")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add(\"xterm-cursor-pointer\")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove(\"xterm-cursor-pointer\"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,\"currentLink\",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,\"mouseleave\",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,\"mousemove\",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,\"click\",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle(\"xterm-cursor-pointer\",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(\"xterm-cursor-pointer\")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(\"xterm-cursor-pointer\")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel=\"Terminal input\",t.tooMuchOutput=\"Too much output to announce, navigate to rows manually to read\"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,\"mousedown\",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener(\"mousemove\",this._mouseMoveListener),this._element.addEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.addEventListener(\"click\",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener(\"mousemove\",this._mouseMoveListener),this._element.removeEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.removeEventListener(\"click\",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia(\"screen and (resolution: \"+window.devicePixelRatio+\"dppx)\"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),b=r(1296),S=r(7399),m=r(8460),C=r(8437),w=r(5680),E=r(3230),L=r(4725),k=r(428),A=r(8934),R=r(6465),x=r(5114),T=r(8969),O=r(4774),D=r(4269),P=\"undefined\"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new m.EventEmitter,r._onKey=new m.EventEmitter,r._onRender=new m.EventEmitter,r._onSelectionChange=new m.EventEmitter,r._onTitleChange=new m.EventEmitter,r._onBell=new m.EventEmitter,r._onFocus=new m.EventEmitter,r._onBlur=new m.EventEmitter,r._onA11yCharEmitter=new m.EventEmitter,r._onA11yTabEmitter=new m.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(R.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(m.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(m.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(m.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(m.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,\"options\",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onKey\",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRender\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBell\",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onFocus\",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBlur\",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.removeEventListener(\"mousemove\",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?(\"debug\"===e.optionsService.options.logLevel&&e._logService.debug(\"Binding to mouse events:\",e._coreMouseService.explainEvents(t)),e.element.classList.add(\"enable-mouse-events\"),e._selectionService.disable()):(e._logService.debug(\"Unbinding from mouse events.\"),e.element.classList.remove(\"enable-mouse-events\"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener(\"mousemove\",l),n.mousemove=l):(r.removeEventListener(\"mousemove\",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener(\"wheel\",s,{passive:!1}),n.wheel=s):(r.removeEventListener(\"wheel\",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener(\"mousemove\",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,\"mousedown\",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.addEventListener(\"mousemove\",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,\"wheel\",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?\"O\":\"[\")+(t.deltaY<0?\"A\":\"B\"),o=\"\",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,\"scroll\",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+\"px\")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return\"alt\"===r&&t.altKey||\"ctrl\"===r&&t.ctrlKey||\"shift\"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=\"\"}return Object.defineProperty(e.prototype,\"isComposing\",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent=\"\",this._dataAlreadySent=\"\",this._compositionView.classList.add(\"active\")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove(\"active\"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){if(t._isSendingComposition){t._isSendingComposition=!1;var e;r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0)}}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,\"\");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+\"px\",this._compositionView.style.top=n+\"px\",this._compositionView.style.height=i+\"px\",this._compositionView.style.lineHeight=i+\"px\",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+\"px\";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+\"px\",this._textarea.style.top=n+\"px\",this._textarea.style.width=Math.max(s.width,1)+\"px\",this._textarea.style.height=Math.max(s.height,1)+\"px\",this._textarea.style.lineHeight=s.height+\"px\"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?\"A\":\"B\"}function a(e,t,r,i,n,o){for(var s=e,a=t,c=\"\";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?\"O\":\"[\";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r=\"\",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?\"D\":\"C\",l(Math.abs(h-e),c(s,i));s=u>t?\"D\":\"C\";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error(\"You must set the allowProposedApi option to true to use proposed API\")},Object.defineProperty(e.prototype,\"onCursorMove\",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLineFeed\",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onSelectionChange\",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onData\",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBinary\",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTitleChange\",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBell\",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onScroll\",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onKey\",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onRender\",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onResize\",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"element\",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parser\",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"unicode\",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"textarea\",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rows\",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"cols\",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"buffer\",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"markers\",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write(\"\\r\\n\",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,\"strings\",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,\"versions\",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:\"\",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+t+\"-layer\"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline=\"ideographic\",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline=\"ideographic\",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getBgColor()).join(\",\")+\")\";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getFgColor()).join(\",\")+\")\";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?\"italic\":\"\")+\" \"+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+\" \"+this._optionsService.options.fontSize*window.devicePixelRatio+\"px \"+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,\"cursor\",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:\"\",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&\"block\"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||\"block\"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,\"link\",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error(\"value must not be falsy\");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,\"selection\",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,\"text\",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont=\"\",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,\"__esModule\",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:\"rgba(0, 0, 0, 0)\",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement(\"canvas\"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext(\"2d\",{alpha:!0}));var n=t.createElement(\"canvas\");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext(\"2d\",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,\"__esModule\",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p=\"xterm-dom-renderer-owner-\",v=\"xterm-fg-\",g=\"xterm-bg-\",y=\"xterm-focus\",b=1,S=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=b++,f._rowElements=[],f._rowContainer=document.createElement(\"div\"),f._rowContainer.classList.add(\"xterm-rows\"),f._rowContainer.style.lineHeight=\"normal\",f._rowContainer.setAttribute(\"aria-hidden\",\"true\"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement(\"div\"),f._selectionContainer.classList.add(\"xterm-selection\"),f._selectionContainer.setAttribute(\"aria-hidden\",\"true\"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement(\"div\");return n.style.height=i*this.dimensions.actualCellHeight+\"px\",n.style.top=e*this.dimensions.actualCellHeight+\"px\",n.style.left=t*this.dimensions.actualCellWidth+\"px\",n.style.width=this.dimensions.actualCellWidth*(r-t)+\"px\",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=S},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS=\"xterm-bold\",t.DIM_CLASS=\"xterm-dim\",t.ITALIC_CLASS=\"xterm-italic\",t.UNDERLINE_CLASS=\"xterm-underline\",t.CURSOR_CLASS=\"xterm-cursor\",t.CURSOR_BLINK_CLASS=\"xterm-cursor-blink\",t.CURSOR_STYLE_BLOCK_CLASS=\"xterm-cursor-block\",t.CURSOR_STYLE_BAR_CLASS=\"xterm-cursor-bar\",t.CURSOR_STYLE_UNDERLINE_CLASS=\"xterm-cursor-underline\";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){b=!0;var C=p.shift();m=new u.JoinedCellData(this._workCell,e.translateToString(!0,C[0],C[1]),C[1]-C[0]),S=C[1]-1,y=m.getWidth()}var w=this._document.createElement(\"span\");if(y>1&&(w.style.width=h*y+\"px\"),b&&(w.style.display=\"inline\",a>=g&&a<=S&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case\"bar\":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case\"underline\":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}m.isBold()&&w.classList.add(t.BOLD_CLASS),m.isItalic()&&w.classList.add(t.ITALIC_CLASS),m.isDim()&&w.classList.add(t.DIM_CLASS),m.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),m.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=m.getChars()||s.WHITESPACE_CELL_CHAR;var E=m.getFgColor(),L=m.getFgColorMode(),k=m.getBgColor(),A=m.getBgColorMode(),R=!!m.isInverse();if(R){var x=E;E=k,k=x;var T=L;L=A,A=T}switch(L){case 16777216:case 33554432:m.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add(\"xterm-fg-\"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,\"color:#\"+_(E.toString(16),\"0\",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||R&&w.classList.add(\"xterm-fg-\"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:w.classList.add(\"xterm-bg-\"+k);break;case 50331648:this._addStyle(w,\"background-color:#\"+_(k.toString(16),\"0\",6));break;case 0:default:R&&w.classList.add(\"xterm-bg-\"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=S}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,\"color:\"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute(\"style\",\"\"+(e.getAttribute(\"style\")||\"\")+t+\";\")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,\"finalSelectionStart\",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"finalSelectionEnd\",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,\"hasValidSize\",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onCharSizeChange\",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement(\"span\"),this._measureElement.classList.add(\"xterm-char-measure-element\"),this._measureElement.textContent=\"W\",this._measureElement.setAttribute(\"aria-hidden\",\"true\"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+\"px\";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData=\"\",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error(\"not implemented\")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,\"isFocused\",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,\"resize\",(function(){return l.onDevicePixelRatioChange()}))),\"IntersectionObserver\"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,\"onDimensionsChange\",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRenderedBufferChange\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRefreshRequest\",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dimensions\",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,\"g\"),b=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,\"onLinuxMouseSelection\",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestScrollLines\",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,\"selectionStart\",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionEnd\",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasSelection\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionText\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return\"\";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return\"\";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y,\" \")})).join(a.isWindows?\"\\r\\n\":\"\\n\")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(\"mouseup\",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(\"mouseup\",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption(\"altClickMovesCursor\")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(\" \"===s.charAt(a)){for(;a>0&&\" \"===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var b=a+l-h+f,S=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||\"\"!==s.slice(a,c).trim()){if(r&&0===b&&32!==o.getCodePoint(0)){var m=n.lines.get(e[1]-1);if(m&&o.isWrapped&&32!==m.getCodePoint(this._bufferService.cols-1)){var C=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(C){var w=this._bufferService.cols-C.start;b-=w,S+=w}}}if(i&&b+S===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(S+=L.length)}}return{start:b,length:S}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=b},4725:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator(\"CharSizeService\"),t.ICoreBrowserService=i.createDecorator(\"CoreBrowserService\"),t.IMouseService=i.createDecorator(\"MouseService\"),t.IRenderService=i.createDecorator(\"RenderService\"),t.ISelectionService=i.createDecorator(\"SelectionService\"),t.ISoundService=i.createDecorator(\"SoundService\"),t.ICharacterJoinerService=i.createDecorator(\"CharacterJoinerService\")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,\"audioContext\",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn(\"Web Audio API is not supported by this browser. Consider upgrading to the latest version\"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,\"onDelete\",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onInsert\",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTrim\",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxLength\",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error(\"start argument out of range\");if(e+r<0)throw new Error(\"Cannot shift elements in list beyond index 0\");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),\"object\"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),b=r(5981),S=!1,m=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new b.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"cols\",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rows\",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"buffers\",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!S&&(this._logService.warn(\"writeSync is unreliable and will be removed soon.\"),S=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case\"scrollback\":this.buffers.resize(this.cols,this.rows);break;case\"windowsMode\":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:\"H\"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,\"event\",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]=\"GET_WIN_SIZE_PIXELS\",e[e.GET_CELL_SIZE_PIXELS=1]=\"GET_CELL_SIZE_PIXELS\"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'\"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0\"q'+s.C0.ESC+\"\\\\\");break;case'\"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1\"p'+s.C0.ESC+\"\\\\\");break;case\"r\":var r=this._bufferService.buffer.scrollTop+1+\";\"+(this._bufferService.buffer.scrollBottom+1)+\"r\";this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+r+s.C0.ESC+\"\\\\\");break;case\"m\":this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r0m\"+s.C0.ESC+\"\\\\\");break;case\" q\":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+i+\" q\"+s.C0.ESC+\"\\\\\");break;default:this._logService.debug(\"Unknown DCS $q %s\",t),this._coreService.triggerDataEvent(s.C0.ESC+\"P0$r\"+s.C0.ESC+\"\\\\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle=\"\",g._iconName=\"\",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug(\"Unknown CSI code: \",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug(\"Unknown ESC code: \",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug(\"Unknown EXECUTE code: \",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug(\"Unknown OSC code: \",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){\"HOOK\"===t&&(r=r.toArray()),g._logService.debug(\"Unknown DCS code: \",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:\"@\"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"@\"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:\"A\"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"A\"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:\"B\"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:\"C\"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:\"D\"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:\"E\"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:\"F\"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:\"G\"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:\"H\"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:\"I\"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:\"L\"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:\"M\"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:\"P\"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:\"S\"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:\"T\"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:\"X\"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:\"Z\"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:\"`\"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:\"a\"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:\"b\"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:\"c\"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:\">\",final:\"c\"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:\"d\"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:\"e\"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:\"f\"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:\"g\"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:\"h\"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"h\"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:\"l\"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"l\"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:\"m\"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:\"n\"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"n\"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:\"!\",final:\"p\"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"q\"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:\"r\"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:\"s\"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:\"t\"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:\"u\"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"}\"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"~\"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:\"7\"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:\"8\"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:\"D\"},(function(){return g.index()})),g._parser.registerEscHandler({final:\"E\"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:\"H\"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:\"M\"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:\"=\"},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:\">\"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:\"c\"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:\"n\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"o\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"|\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"}\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"~\"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:\"%\",final:\"@\"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:\"%\",final:\"G\"},(function(){return g.selectDefaultCharset()}));var b=function(e){S._parser.registerEscHandler({intermediates:\"(\",final:e},(function(){return g.selectCharset(\"(\"+e)})),S._parser.registerEscHandler({intermediates:\")\",final:e},(function(){return g.selectCharset(\")\"+e)})),S._parser.registerEscHandler({intermediates:\"*\",final:e},(function(){return g.selectCharset(\"*\"+e)})),S._parser.registerEscHandler({intermediates:\"+\",final:e},(function(){return g.selectCharset(\"+\"+e)})),S._parser.registerEscHandler({intermediates:\"-\",final:e},(function(){return g.selectCharset(\"-\"+e)})),S._parser.registerEscHandler({intermediates:\".\",final:e},(function(){return g.selectCharset(\".\"+e)})),S._parser.registerEscHandler({intermediates:\"/\",final:e},(function(){return g.selectCharset(\"/\"+e)}))},S=this;for(var m in a.CHARSETS)b(m);return g._parser.registerEscHandler({intermediates:\"#\",final:\"8\"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error(\"Parsing error: \",e),e})),g._parser.registerDcsHandler({intermediates:\"$\",final:\"q\"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,\"onRequestBell\",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRefreshRows\",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestReset\",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestSyncScrollBar\",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestWindowsOptionsReport\",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onAnsiColorChange\",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t(\"#SLOW_TIMEOUT\")}),5e3)}))]).catch((function(e){if(\"#SLOW_TIMEOUT\"!==e)throw e;console.warn(\"async parser handler taking longer than 5000 ms\")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>m&&(s=this._parseStack.position+m)}if(this._logService.debug(\"parsing data\",e),this._parseBuffer.lengthm)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return\"t\"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!C(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new b.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is(\"xterm\")||this._is(\"rxvt-unicode\")||this._is(\"screen\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[?1;2c\"):this._is(\"linux\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[?6c\")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is(\"xterm\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>0;276;0c\"):this._is(\"rxvt-unicode\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>85;95;0c\"):this._is(\"linux\")?this._coreService.triggerDataEvent(e.params[0]+\"c\"):this._is(\"screen\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[>83;40003;0c\")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+\"\").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug(\"Unknown SGR attribute: %d.\",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+\"[0n\");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[\"+t+\";\"+r+\"R\")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[?\"+t+\";\"+r+\"R\")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle=\"block\";break;case 3:case 4:this._optionsService.options.cursorStyle=\"underline\";break;case 5:case 6:this._optionsService.options.cursorStyle=\"bar\"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!C(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+\"[8;\"+this._bufferService.rows+\";\"+this._bufferService.cols+\"t\");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\\d+);rgb:([\\da-f]{2})\\/([\\da-f]{2})\\/([\\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn(\"Expected format ;rgb:// but got data: \"+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug(\"Serial port requested application keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug(\"Switching back to normal keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):(\"/\"===e[0]||this._charsetService.setgCharset(S[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|\"E\".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r=\"undefined\"==typeof navigator,i=r?\"node\":navigator.userAgent,n=r?\"node\":navigator.platform;t.isFirefox=i.includes(\"Firefox\"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=[\"Macintosh\",\"MacIntel\",\"MacPPC\",\"Mac68K\"].includes(n),t.isIpad=\"iPad\"===n,t.isIphone=\"iPhone\"===n,t.isWindows=[\"Windows\",\"Win16\",\"Win32\",\"WinCE\"].includes(n),t.isLinux=n.indexOf(\"Linux\")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,\"hasScrollback\",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isCursorInViewport\",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,b=_[y];0===b&&(b=_[--y]);for(var S=l.length-d-1,m=f;S>=0;){var C=Math.min(m,b);if(l[y].copyCellsFrom(l[S],m-C,b-C,C,!0),0==(b-=C)&&(b=_[--y]),0==(m-=C)){S--;var w=Math.max(S,0);m=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var L=[],k=[];for(v=0;v=0;v--)if(T&&T.start>R+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,L.push({index:R+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++x]}else this.lines.set(v,k[R--]);var P=0;for(v=L.length-1;v>=0;v--)L[v].index+=P,this.lines.onInsertEmitter.fire(L[v]),P+=L[v].amount;var M=Math.max(0,A+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t=\"\",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):\"\"},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o=\"\";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error(\"Buffer range end (\"+e.end.x+\", \"+e.end.y+\") cannot be before start (\"+e.start.x+\", \"+e.start.y+\")\");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(S>u||0===h[S].getTrimmedLength());S--)b++;b>0&&(s.push(a+h.length-b),s.push(b)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,\"onBufferActivate\",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,\"alt\",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"active\",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"normal\",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData=\"\",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):\"\"},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR=\"\",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=\" \",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onDispose\",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={\"`\":\"◆\",a:\"▒\",b:\"␉\",c:\"␌\",d:\"␍\",e:\"␊\",f:\"°\",g:\"±\",h:\"␤\",i:\"␋\",j:\"┘\",k:\"┐\",l:\"┌\",m:\"└\",n:\"┼\",o:\"⎺\",p:\"⎻\",q:\"─\",r:\"⎼\",s:\"⎽\",t:\"├\",u:\"┤\",v:\"┴\",w:\"┬\",x:\"│\",y:\"≤\",z:\"≥\",\"{\":\"π\",\"|\":\"≠\",\"}\":\"£\",\"~\":\"·\"},t.CHARSETS.A={\"#\":\"£\"},t.CHARSETS.B=void 0,t.CHARSETS[4]={\"#\":\"£\",\"@\":\"¾\",\"[\":\"ij\",\"\\\\\":\"½\",\"]\":\"|\",\"{\":\"¨\",\"|\":\"f\",\"}\":\"¼\",\"~\":\"´\"},t.CHARSETS.C=t.CHARSETS[5]={\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.R={\"#\":\"£\",\"@\":\"à\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"§\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"¨\"},t.CHARSETS.Q={\"@\":\"à\",\"[\":\"â\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",\"`\":\"ô\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"û\"},t.CHARSETS.K={\"@\":\"§\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Ü\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"ß\"},t.CHARSETS.Y={\"#\":\"£\",\"@\":\"§\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"é\",\"`\":\"ù\",\"{\":\"à\",\"|\":\"ò\",\"}\":\"è\",\"~\":\"ì\"},t.CHARSETS.E=t.CHARSETS[6]={\"@\":\"Ä\",\"[\":\"Æ\",\"\\\\\":\"Ø\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"ä\",\"{\":\"æ\",\"|\":\"ø\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.Z={\"#\":\"£\",\"@\":\"§\",\"[\":\"¡\",\"\\\\\":\"Ñ\",\"]\":\"¿\",\"{\":\"°\",\"|\":\"ñ\",\"}\":\"ç\"},t.CHARSETS.H=t.CHARSETS[7]={\"@\":\"É\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS[\"=\"]={\"#\":\"ù\",\"@\":\"à\",\"[\":\"é\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",_:\"è\",\"`\":\"ô\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"û\"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,\"__esModule\",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL=\"\\0\",i.SOH=\"\u0001\",i.STX=\"\u0002\",i.ETX=\"\u0003\",i.EOT=\"\u0004\",i.ENQ=\"\u0005\",i.ACK=\"\u0006\",i.BEL=\"\u0007\",i.BS=\"\\b\",i.HT=\"\\t\",i.LF=\"\\n\",i.VT=\"\\v\",i.FF=\"\\f\",i.CR=\"\\r\",i.SO=\"\u000e\",i.SI=\"\u000f\",i.DLE=\"\u0010\",i.DC1=\"\u0011\",i.DC2=\"\u0012\",i.DC3=\"\u0013\",i.DC4=\"\u0014\",i.NAK=\"\u0015\",i.SYN=\"\u0016\",i.ETB=\"\u0017\",i.CAN=\"\u0018\",i.EM=\"\u0019\",i.SUB=\"\u001a\",i.ESC=\"\u001b\",i.FS=\"\u001c\",i.GS=\"\u001d\",i.RS=\"\u001e\",i.US=\"\u001f\",i.SP=\" \",i.DEL=\"\",(r=t.C1||(t.C1={})).PAD=\"€\",r.HOP=\"\",r.BPH=\"‚\",r.NBH=\"ƒ\",r.IND=\"„\",r.NEL=\"…\",r.SSA=\"†\",r.ESA=\"‡\",r.HTS=\"ˆ\",r.HTJ=\"‰\",r.VTS=\"Š\",r.PLD=\"‹\",r.PLU=\"Œ\",r.RI=\"\",r.SS2=\"Ž\",r.SS3=\"\",r.DCS=\"\",r.PU1=\"‘\",r.PU2=\"’\",r.STS=\"“\",r.CCH=\"”\",r.MW=\"•\",r.SPA=\"–\",r.EPA=\"—\",r.SOS=\"˜\",r.SGCI=\"™\",r.SCI=\"š\",r.CSI=\"›\",r.ST=\"œ\",r.OSC=\"\",r.PM=\"ž\",r.APC=\"Ÿ\"},7399:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:[\"0\",\")\"],49:[\"1\",\"!\"],50:[\"2\",\"@\"],51:[\"3\",\"#\"],52:[\"4\",\"$\"],53:[\"5\",\"%\"],54:[\"6\",\"^\"],55:[\"7\",\"&\"],56:[\"8\",\"*\"],57:[\"9\",\"(\"],186:[\";\",\":\"],187:[\"=\",\"+\"],188:[\",\",\"<\"],189:[\"-\",\"_\"],190:[\".\",\">\"],191:[\"/\",\"?\"],192:[\"`\",\"~\"],219:[\"[\",\"{\"],220:[\"\\\\\",\"|\"],221:[\"]\",\"}\"],222:[\"'\",'\"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:\"UIKeyInputUpArrow\"===e.key?s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\":\"UIKeyInputLeftArrow\"===e.key?s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\":\"UIKeyInputRightArrow\"===e.key?s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\":\"UIKeyInputDownArrow\"===e.key&&(s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+\"[Z\";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"D\",s.key===i.C0.ESC+\"[1;3D\"&&(s.key=i.C0.ESC+(r?\"b\":\"[1;5D\"))):s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"C\",s.key===i.C0.ESC+\"[1;3C\"&&(s.key=i.C0.ESC+(r?\"f\":\"[1;5C\"))):s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"A\",r||s.key!==i.C0.ESC+\"[1;3A\"||(s.key=i.C0.ESC+\"[1;5A\")):s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"B\",r||s.key!==i.C0.ESC+\"[1;3B\"||(s.key=i.C0.ESC+\"[1;5B\")):s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+\"[2~\");break;case 46:s.key=a?i.C0.ESC+\"[3;\"+(a+1)+\"~\":i.C0.ESC+\"[3~\";break;case 36:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"H\":t?i.C0.ESC+\"OH\":i.C0.ESC+\"[H\";break;case 35:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"F\":t?i.C0.ESC+\"OF\":i.C0.ESC+\"[F\";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+\"[5~\";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+\"[6~\";break;case 112:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"P\":i.C0.ESC+\"OP\";break;case 113:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"Q\":i.C0.ESC+\"OQ\";break;case 114:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"R\":i.C0.ESC+\"OR\";break;case 115:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"S\":i.C0.ESC+\"OS\";break;case 116:s.key=a?i.C0.ESC+\"[15;\"+(a+1)+\"~\":i.C0.ESC+\"[15~\";break;case 117:s.key=a?i.C0.ESC+\"[17;\"+(a+1)+\"~\":i.C0.ESC+\"[17~\";break;case 118:s.key=a?i.C0.ESC+\"[18;\"+(a+1)+\"~\":i.C0.ESC+\"[18~\";break;case 119:s.key=a?i.C0.ESC+\"[19;\"+(a+1)+\"~\":i.C0.ESC+\"[19~\";break;case 120:s.key=a?i.C0.ESC+\"[20;\"+(a+1)+\"~\":i.C0.ESC+\"[20~\";break;case 121:s.key=a?i.C0.ESC+\"[21;\"+(a+1)+\"~\":i.C0.ESC+\"[21~\";break;case 122:s.key=a?i.C0.ESC+\"[23;\"+(a+1)+\"~\":i.C0.ESC+\"[23~\";break;case 123:s.key=a?i.C0.ESC+\"[24;\"+(a+1)+\"~\":i.C0.ESC+\"[24~\";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&\"_\"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i=\"\",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version=\"6\",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WriteBuffer=void 0;var r=\"undefined\"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error(\"write data discarded, use flow control to avoid losing data\");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,\"HOOK\",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,\"PUT\",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,\"UNHOOK\",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data=\"\",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data=\"\",t._hitLimit=!1,e}));return this._params=c,this._data=\"\",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error(\"only one byte as prefix supported\");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error(\"prefix must be in range 0x3c .. 0x3f\")}if(e.intermediates){if(e.intermediates.length>2)throw new Error(\"only two bytes as intermediates are supported\");for(var i=0;in||n>47)throw new Error(\"intermediate must be in range 0x20 .. 0x2f\");r<<=8,r|=n}}if(1!==e.final.length)throw new Error(\"final must be a single byte\");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error(\"final must be in range \"+t[0]+\" .. \"+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join(\"\")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error(\"improper continuation due to previous async handler, giving up parsing\");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,\"START\")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,\"PUT\",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,\"END\",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data=\"\",this._hitLimit=!1}return e.prototype.start=function(){this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data=\"\",t._hitLimit=!1,e}));return this._data=\"\",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error(\"maxSubParamsLength must not be greater than 256\");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"buffer\",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?\"\":\"\u001b[M\"+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?\"m\":\"M\";return\"\u001b[<\"+c(e,!0)+\";\"+e.col+\";\"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol=\"\",this._activeEncoding=\"\",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&(\"DEFAULT\"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onUserInput\",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,\"start\",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"end\",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error(\"[createInstance] First service dependency of \"+e.name+\" at position \"+(u+1)+\" conflicts with \"+t.length+\" static arguments\");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND=\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:\"block\",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:\"none\",drawBoldTextInBrightColors:!0,fastScrollModifier:\"alt\",fastScrollSensitivity:5,fontFamily:\"courier-new, courier, monospace\",fontSize:15,fontWeight:\"normal\",fontWeightBold:\"bold\",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:\"info\",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:\"canvas\",windowOptions:{},windowsMode:!1,wordSeparator:\" ()[]{}',\\\"`\",altClickMovesCursor:!0,convertEol:!1,termName:\"xterm\",cancelEvents:!1});var s=[\"normal\",\"bold\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],a=[\"cols\",\"rows\"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error(\"@IServiceName-decorator can only be used to decorate a parameter\");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator(\"BufferService\"),t.ICoreMouseService=n.createDecorator(\"CoreMouseService\"),t.ICoreService=n.createDecorator(\"CoreService\"),t.ICharsetService=n.createDecorator(\"CharsetService\"),t.IDirtyRowService=n.createDecorator(\"DirtyRowService\"),t.IInstantiationService=n.createDecorator(\"InstantiationService\"),t.ILogService=n.createDecorator(\"LogService\"),t.IOptionsService=n.createDecorator(\"OptionsService\"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]=\"DEBUG\",i[i.INFO=1]=\"INFO\",i[i.WARN=2]=\"WARN\",i[i.ERROR=3]=\"ERROR\",i[i.OFF=4]=\"OFF\",t.IUnicodeService=n.createDecorator(\"UnicodeService\")},1480:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active=\"\",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,\"onChange\",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"versions\",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version \"'+e+'\"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()}));\n//# sourceMappingURL=xterm.js.map","export class ConnectionFactory {\n url: string;\n protocols: string[];\n\n constructor(url: string, protocols: string[]) {\n this.url = url;\n this.protocols = protocols;\n };\n\n create(): Connection {\n return new Connection(this.url, this.protocols);\n };\n}\n\nexport class Connection {\n bare: WebSocket;\n\n\n constructor(url: string, protocols: string[]) {\n this.bare = new WebSocket(url, protocols);\n }\n\n open() {\n // nothing todo for websocket\n };\n\n close() {\n this.bare.close();\n };\n\n send(data: string) {\n this.bare.send(data);\n };\n\n isOpen(): boolean {\n if (this.bare.readyState == WebSocket.CONNECTING ||\n this.bare.readyState == WebSocket.OPEN) {\n return true\n }\n return false\n }\n\n onOpen(callback: () => void) {\n this.bare.onopen = (event) => {\n callback();\n }\n };\n\n onReceive(callback: (data: string) => void) {\n this.bare.onmessage = (event) => {\n callback(event.data);\n }\n };\n\n onClose(callback: () => void) {\n this.bare.onclose = (event) => {\n callback();\n };\n };\n}\n","export const protocols = [\"webtty\"];\n\nexport const msgInputUnknown = '0';\nexport const msgInput = '1';\nexport const msgPing = '2';\nexport const msgResizeTerminal = '3';\n\nexport const msgUnknownOutput = '0';\nexport const msgOutput = '1';\nexport const msgPong = '2';\nexport const msgSetWindowTitle = '3';\nexport const msgSetPreferences = '4';\nexport const msgSetReconnect = '5';\nexport const msgSetBufferSize = '6';\n\n\nexport interface Terminal {\n info(): { columns: number, rows: number };\n output(data: string): void;\n showMessage(message: string, timeout: number): void;\n removeMessage(): void;\n setWindowTitle(title: string): void;\n setPreferences(value: object): void;\n onInput(callback: (input: string) => void): void;\n onResize(callback: (colmuns: number, rows: number) => void): void;\n reset(): void;\n deactivate(): void;\n close(): void;\n}\n\nexport interface Connection {\n open(): void;\n close(): void;\n send(data: string): void;\n isOpen(): boolean;\n onOpen(callback: () => void): void;\n onReceive(callback: (data: string) => void): void;\n onClose(callback: () => void): void;\n}\n\nexport interface ConnectionFactory {\n create(): Connection;\n}\n\n\nexport class WebTTY {\n term: Terminal;\n connectionFactory: ConnectionFactory;\n args: string;\n authToken: string;\n reconnect: number;\n bufSize: number;\n\n constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) {\n this.term = term;\n this.connectionFactory = connectionFactory;\n this.args = args;\n this.authToken = authToken;\n this.reconnect = -1;\n this.bufSize = 1024;\n };\n\n open() {\n let connection = this.connectionFactory.create();\n let pingTimer: NodeJS.Timeout;\n let reconnectTimeout: NodeJS.Timeout;\n\n const setup = () => {\n connection.onOpen(() => {\n const termInfo = this.term.info();\n\n connection.send(JSON.stringify(\n {\n Arguments: this.args,\n AuthToken: this.authToken,\n }\n ));\n\n\n const resizeHandler = (colmuns: number, rows: number) => {\n connection.send(\n msgResizeTerminal + JSON.stringify(\n {\n columns: colmuns,\n rows: rows\n }\n )\n );\n };\n\n this.term.onResize(resizeHandler);\n resizeHandler(termInfo.columns, termInfo.rows);\n\n this.term.onInput(\n (input: string) => {\n // Leave room for message type id\n let effectiveBufferSize = this.bufSize - 1;\n\n // Split input into buffer sized chunks\n for (let i = 0; i < Math.ceil(input.length/effectiveBufferSize); i++) {\n let inputChunk = input.substring(i*effectiveBufferSize, Math.min((i+1)*effectiveBufferSize, input.length))\n connection.send(msgInput + inputChunk);\n }\n }\n );\n\n pingTimer = setInterval(() => {\n connection.send(msgPing)\n }, 30 * 1000);\n\n });\n\n connection.onReceive((data) => {\n const payload = data.slice(1);\n switch (data[0]) {\n case msgOutput:\n this.term.output(atob(payload));\n break;\n case msgPong:\n break;\n case msgSetWindowTitle:\n this.term.setWindowTitle(payload);\n break;\n case msgSetPreferences:\n const preferences = JSON.parse(payload);\n this.term.setPreferences(preferences);\n break;\n case msgSetReconnect:\n const autoReconnect = JSON.parse(payload);\n console.log(\"Enabling reconnect: \" + autoReconnect + \" seconds\")\n this.reconnect = autoReconnect;\n break;\n case msgSetBufferSize:\n const bufSize = JSON.parse(payload);\n this.bufSize = bufSize;\n break;\n }\n });\n\n connection.onClose(() => {\n clearInterval(pingTimer);\n this.term.deactivate();\n this.term.showMessage(\"Connection Closed\", 0);\n if (this.reconnect > 0) {\n reconnectTimeout = setTimeout(() => {\n connection = this.connectionFactory.create();\n this.term.reset();\n setup();\n }, this.reconnect * 1000);\n }\n });\n\n connection.open();\n }\n\n setup();\n return () => {\n clearTimeout(reconnectTimeout);\n connection.close();\n }\n };\n};\n","import { Terminal, IDisposable } from \"xterm\";\nimport { FitAddon } from 'xterm-addon-fit';\nimport { WebLinksAddon } from 'xterm-addon-web-links';\nimport { WebglAddon } from 'xterm-addon-webgl';\n\nexport class Xterm {\n elem: HTMLElement;\n term: Terminal;\n resizeListener: () => void;\n\n message: HTMLElement;\n messageTimeout: number;\n messageTimer: NodeJS.Timeout;\n onResizeHandler: IDisposable;\n onDataHandler: IDisposable;\n fitAddOn: FitAddon;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n this.term = new Terminal();\n this.fitAddOn = new FitAddon();\n this.term.loadAddon(new WebLinksAddon());\n this.term.loadAddon(this.fitAddOn);\n\n this.message = elem.ownerDocument.createElement(\"div\");\n this.message.className = \"xterm-overlay\";\n this.messageTimeout = 2000;\n\n this.resizeListener = () => {\n this.fitAddOn.fit();\n this.term.scrollToBottom();\n this.showMessage(String(this.term.cols) + \"x\" + String(this.term.rows), this.messageTimeout);\n };\n\n this.term.open(elem);\n this.term.focus();\n this.resizeListener();\n window.addEventListener(\"resize\", () => { this.resizeListener(); });\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.term.cols, rows: this.term.rows };\n };\n\n output(data: string) {\n this.term.write(Uint8Array.from(data, c => c.charCodeAt(0)));\n };\n\n showMessage(message: string, timeout: number) {\n this.message.textContent = message;\n this.elem.appendChild(this.message);\n\n if (this.messageTimer) {\n clearTimeout(this.messageTimer);\n }\n if (timeout > 0) {\n this.messageTimer = setTimeout(() => {\n this.elem.removeChild(this.message);\n }, timeout);\n }\n };\n\n removeMessage(): void {\n if (this.message.parentNode == this.elem) {\n this.elem.removeChild(this.message);\n }\n }\n\n setWindowTitle(title: string) {\n document.title = title;\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key == \"EnableWebGL\" && key) {\n this.term.loadAddon(new WebglAddon());\n } else if (key == \"font-size\") {\n this.term.setOption(\"fontSize\", value[key])\n } else if (key == \"font-family\") {\n this.term.setOption(\"fontFamily\", value[key])\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.onDataHandler = this.term.onData((data) => {\n callback(data);\n });\n\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.onResizeHandler = this.term.onResize(() => {\n callback(this.term.cols, this.term.rows);\n });\n };\n\n deactivate(): void {\n this.onDataHandler.dispose();\n this.onResizeHandler.dispose();\n this.term.blur();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.clear();\n }\n\n close(): void {\n window.removeEventListener(\"resize\", this.resizeListener);\n this.term.dispose();\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { Xterm } from \"./xterm\";\nimport { Terminal, WebTTY, protocols } from \"./webtty\";\nimport { ConnectionFactory } from \"./websocket\";\n\n// @TODO remove these\ndeclare var gotty_auth_token: string;\ndeclare var gotty_term: string;\n\nconst elem = document.getElementById(\"terminal\")\n\nif (elem !== null) {\n var term: Terminal;\n term = new Xterm(elem);\n\n const httpsEnabled = window.location.protocol == \"https:\";\n const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws';\n const args = window.location.search;\n const factory = new ConnectionFactory(url, protocols);\n const wt = new WebTTY(term, factory, args, gotty_auth_token);\n const closer = wt.open();\n\n window.addEventListener(\"unload\", () => {\n closer();\n term.close();\n });\n};\n"],"sourceRoot":""} \ No newline at end of file diff --git a/js/package-lock.json b/js/package-lock.json index e21875a..906cf7a 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -9,7 +9,6 @@ "version": "2.0.0", "dependencies": { "css-loader": "^5.2.6", - "libapps": "github:yudai/libapps#release-hterm-1.70", "style-loader": "^2.0.0", "xterm": "^4.12.0", "xterm-addon-fit": "^0.5.0", @@ -869,12 +868,6 @@ "node": ">=0.10.0" } }, - "node_modules/libapps": { - "version": "1.70.0", - "resolved": "git+ssh://git@github.com/yudai/libapps.git#424e3e95e5346ef0c0c281aaf2ef73463a55b39e", - "integrity": "sha512-BpAlnvEvCmcXAPGBdUfrjo1al9V4vIktyKLBxOdYdY/XEAb6rx3Lz/XeZJrns5Tn3IFF0DfBQ9jEF4YZgDMsOg==", - "license": "BSD-3-Clause" - }, "node_modules/license-loader": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/license-loader/-/license-loader-0.5.0.tgz", @@ -2491,11 +2484,6 @@ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true }, - "libapps": { - "version": "git+ssh://git@github.com/yudai/libapps.git#424e3e95e5346ef0c0c281aaf2ef73463a55b39e", - "integrity": "sha512-BpAlnvEvCmcXAPGBdUfrjo1al9V4vIktyKLBxOdYdY/XEAb6rx3Lz/XeZJrns5Tn3IFF0DfBQ9jEF4YZgDMsOg==", - "from": "libapps@github:yudai/libapps#release-hterm-1.70" - }, "license-loader": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/license-loader/-/license-loader-0.5.0.tgz", diff --git a/js/package.json b/js/package.json index dfa4eb7..cbf9d5f 100644 --- a/js/package.json +++ b/js/package.json @@ -11,7 +11,6 @@ }, "dependencies": { "css-loader": "^5.2.6", - "libapps": "github:yudai/libapps#release-hterm-1.70", "style-loader": "^2.0.0", "xterm": "^4.12.0", "xterm-addon-fit": "^0.5.0", diff --git a/js/src/hterm.ts b/js/src/hterm.ts deleted file mode 100644 index 4eef7f7..0000000 --- a/js/src/hterm.ts +++ /dev/null @@ -1,94 +0,0 @@ -import * as bare from "libapps"; - -export class Hterm { - elem: HTMLElement; - - term: bare.hterm.Terminal; - io: bare.hterm.IO; - - columns: number; - rows: number; - - // to "show" the current message when removeMessage() is called - message: string; - - constructor(elem: HTMLElement) { - this.elem = elem; - bare.hterm.defaultStorage = new bare.lib.Storage.Memory(); - this.term = new bare.hterm.Terminal(); - this.term.getPrefs().set("send-encoding", "raw"); - this.term.decorate(this.elem); - - this.io = this.term.io.push(); - this.term.installKeyboard(); - }; - - info(): { columns: number, rows: number } { - return { columns: this.columns, rows: this.rows }; - }; - - output(data: string) { - if (this.term.io != null) { - this.term.io.writeUTF8(data); - } - }; - - showMessage(message: string, timeout: number) { - this.message = message; - if (timeout > 0) { - this.term.io.showOverlay(message, timeout); - } else { - this.term.io.showOverlay(message, null); - } - }; - - removeMessage(): void { - // there is no hideOverlay(), so show the same message with 0 sec - this.term.io.showOverlay(this.message, 0); - } - - setWindowTitle(title: string) { - this.term.setWindowTitle(title); - }; - - setPreferences(value: object) { - Object.keys(value).forEach((key) => { - if (key != "EnableWebGL") { - this.term.getPrefs().set(key, value[key]); - } - }); - }; - - onInput(callback: (input: string) => void) { - this.io.onVTKeystroke = (data) => { - callback(data); - }; - this.io.sendString = (data) => { - callback(data); - }; - }; - - onResize(callback: (colmuns: number, rows: number) => void) { - this.io.onTerminalResize = (columns: number, rows: number) => { - this.columns = columns; - this.rows = rows; - callback(columns, rows); - }; - }; - - deactivate(): void { - this.io.onVTKeystroke = function () { }; - this.io.sendString = function () { }; - this.io.onTerminalResize = function () { }; - this.term.uninstallKeyboard(); - } - - reset(): void { - this.removeMessage(); - this.term.installKeyboard(); - } - - close(): void { - this.term.uninstallKeyboard(); - } -} diff --git a/js/src/main.ts b/js/src/main.ts index 101190a..8c09fe0 100644 --- a/js/src/main.ts +++ b/js/src/main.ts @@ -1,4 +1,3 @@ -import { Hterm } from "./hterm"; import { Xterm } from "./xterm"; import { Terminal, WebTTY, protocols } from "./webtty"; import { ConnectionFactory } from "./websocket"; @@ -11,11 +10,8 @@ const elem = document.getElementById("terminal") if (elem !== null) { var term: Terminal; - if (gotty_term == "hterm") { - term = new Hterm(elem); - } else { - term = new Xterm(elem); - } + term = new Xterm(elem); + const httpsEnabled = window.location.protocol == "https:"; const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws'; const args = window.location.search; diff --git a/js/src/xterm.ts b/js/src/xterm.ts index ad7f26e..13ee987 100644 --- a/js/src/xterm.ts +++ b/js/src/xterm.ts @@ -2,13 +2,11 @@ import { Terminal, IDisposable } from "xterm"; import { FitAddon } from 'xterm-addon-fit'; import { WebLinksAddon } from 'xterm-addon-web-links'; import { WebglAddon } from 'xterm-addon-webgl'; -import { lib } from "libapps" export class Xterm { elem: HTMLElement; term: Terminal; resizeListener: () => void; - decoder: lib.UTF8Decoder; message: HTMLElement; messageTimeout: number; @@ -38,8 +36,6 @@ export class Xterm { this.term.focus(); this.resizeListener(); window.addEventListener("resize", () => { this.resizeListener(); }); - - this.decoder = new lib.UTF8Decoder() }; info(): { columns: number, rows: number } { @@ -47,7 +43,7 @@ export class Xterm { }; output(data: string) { - this.term.write(this.decoder.decode(data)); + this.term.write(Uint8Array.from(data, c => c.charCodeAt(0))); }; showMessage(message: string, timeout: number) { diff --git a/js/typings/libapps/index.d.ts b/js/typings/libapps/index.d.ts deleted file mode 100644 index 81eb66d..0000000 --- a/js/typings/libapps/index.d.ts +++ /dev/null @@ -1,51 +0,0 @@ -export declare namespace hterm { - export class Terminal { - io: IO; - onTerminalReady: () => void; - - constructor(); - getPrefs(): Prefs; - decorate(HTMLElement); - installKeyboard(): void; - uninstallKeyboard(): void; - setWindowTitle(title: string): void; - reset(): void; - softReset(): void; - } - - export class IO { - writeUTF8: ((data: string) => void); - writeUTF16: ((data: string) => void); - onVTKeystroke: ((data: string) => void) | null; - sendString: ((data: string) => void) | null; - onTerminalResize: ((columns: number, rows: number) => void) | null; - - push(): IO; - writeUTF(data: string); - showOverlay(message: string, timeout: number | null); - } - - export class Prefs { - set(key: string, value: string): void; - } - - export var defaultStorage: lib.Storage; -} - -export declare namespace lib { - export interface Storage { - } - - export interface Memory { - new (): Storage; - Memory(): Storage - } - - export var Storage: { - Memory: Memory - } - - export class UTF8Decoder { - decode(str: string) - } -} diff --git a/server/handlers.go b/server/handlers.go index 5347ab6..641cc7f 100644 --- a/server/handlers.go +++ b/server/handlers.go @@ -154,13 +154,6 @@ func (server *Server) processWSConn(ctx context.Context, conn *websocket.Conn) e if server.options.Height > 0 { opts = append(opts, webtty.WithFixedRows(server.options.Height)) } - if server.options.Preferences == nil { - server.options.Preferences = &HtermPrefernces{} - } - // Awkward hack until HtermPreferences can be phased out - server.options.Preferences.EnableWebGL = server.options.EnableWebGL - opts = append(opts, webtty.WithMasterPreferences(server.options.Preferences)) - tty, err := webtty.New(&wsWrapper{conn}, slave, opts...) if err != nil { return errors.Wrapf(err, "failed to create webtty") @@ -236,7 +229,7 @@ func (server *Server) handleAuthToken(w http.ResponseWriter, r *http.Request) { func (server *Server) handleConfig(w http.ResponseWriter, r *http.Request) { w.Header().Set("Content-Type", "application/javascript") - w.Write([]byte("var gotty_term = '" + server.options.Term + "';")) + w.Write([]byte("var gotty_term = 'xterm';")) } // titleVariables merges maps in a specified order. diff --git a/server/options.go b/server/options.go index 24fa515..b7dc3d3 100644 --- a/server/options.go +++ b/server/options.go @@ -5,34 +5,32 @@ import ( ) type Options struct { - Address string `hcl:"address" flagName:"address" flagSName:"a" flagDescribe:"IP address to listen" default:"0.0.0.0"` - Port string `hcl:"port" flagName:"port" flagSName:"p" flagDescribe:"Port number to liten" default:"8080"` - Path string `hcl:"path" flagName:"path" flagSName:"m" flagDescribe:"Base path" default:"/"` - PermitWrite bool `hcl:"permit_write" flagName:"permit-write" flagSName:"w" flagDescribe:"Permit clients to write to the TTY (BE CAREFUL)" default:"false"` - EnableBasicAuth bool `hcl:"enable_basic_auth" default:"false"` - Credential string `hcl:"credential" flagName:"credential" flagSName:"c" flagDescribe:"Credential for Basic Authentication (ex: user:pass, default disabled)" default:""` - EnableRandomUrl bool `hcl:"enable_random_url" flagName:"random-url" flagSName:"r" flagDescribe:"Add a random string to the URL" default:"false"` - RandomUrlLength int `hcl:"random_url_length" flagName:"random-url-length" flagDescribe:"Random URL length" default:"8"` - EnableTLS bool `hcl:"enable_tls" flagName:"tls" flagSName:"t" flagDescribe:"Enable TLS/SSL" default:"false"` - TLSCrtFile string `hcl:"tls_crt_file" flagName:"tls-crt" flagDescribe:"TLS/SSL certificate file path" default:"~/.gotty.crt"` - TLSKeyFile string `hcl:"tls_key_file" flagName:"tls-key" flagDescribe:"TLS/SSL key file path" default:"~/.gotty.key"` - EnableTLSClientAuth bool `hcl:"enable_tls_client_auth" default:"false"` - TLSCACrtFile string `hcl:"tls_ca_crt_file" flagName:"tls-ca-crt" flagDescribe:"TLS/SSL CA certificate file for client certifications" default:"~/.gotty.ca.crt"` - IndexFile string `hcl:"index_file" flagName:"index" flagDescribe:"Custom index.html file" default:""` - TitleFormat string `hcl:"title_format" flagName:"title-format" flagSName:"" flagDescribe:"Title format of browser window" default:"{{ .command }}@{{ .hostname }}"` - EnableReconnect bool `hcl:"enable_reconnect" flagName:"reconnect" flagDescribe:"Enable reconnection" default:"false"` - ReconnectTime int `hcl:"reconnect_time" flagName:"reconnect-time" flagDescribe:"Time to reconnect" default:"10"` - MaxConnection int `hcl:"max_connection" flagName:"max-connection" flagDescribe:"Maximum connection to gotty" default:"0"` - Once bool `hcl:"once" flagName:"once" flagDescribe:"Accept only one client and exit on disconnection" default:"false"` - Timeout int `hcl:"timeout" flagName:"timeout" flagDescribe:"Timeout seconds for waiting a client(0 to disable)" default:"0"` - PermitArguments bool `hcl:"permit_arguments" flagName:"permit-arguments" flagDescribe:"Permit clients to send command line arguments in URL (e.g. http://example.com:8080/?arg=AAA&arg=BBB)" default:"false"` - Preferences *HtermPrefernces `hcl:"preferences"` - Width int `hcl:"width" flagName:"width" flagDescribe:"Static width of the screen, 0(default) means dynamically resize" default:"0"` - Height int `hcl:"height" flagName:"height" flagDescribe:"Static height of the screen, 0(default) means dynamically resize" default:"0"` - WSOrigin string `hcl:"ws_origin" flagName:"ws-origin" flagDescribe:"A regular expression that matches origin URLs to be accepted by WebSocket. No cross origin requests are acceptable by default" default:""` - Term string `hcl:"term" flagName:"term" flagDescribe:"Terminal name to use on the browser, one of xterm or hterm." default:"xterm"` - EnableWebGL bool `hcl:"enable_webgl" flagName:"enable-webgl" flagDescribe:"Enable WebGL renderer" default:"true"` - Quiet bool `hcl:"quiet" flagName:"quiet" flagDescribe:"Don't log" default:"false"` + Address string `hcl:"address" flagName:"address" flagSName:"a" flagDescribe:"IP address to listen" default:"0.0.0.0"` + Port string `hcl:"port" flagName:"port" flagSName:"p" flagDescribe:"Port number to liten" default:"8080"` + Path string `hcl:"path" flagName:"path" flagSName:"m" flagDescribe:"Base path" default:"/"` + PermitWrite bool `hcl:"permit_write" flagName:"permit-write" flagSName:"w" flagDescribe:"Permit clients to write to the TTY (BE CAREFUL)" default:"false"` + EnableBasicAuth bool `hcl:"enable_basic_auth" default:"false"` + Credential string `hcl:"credential" flagName:"credential" flagSName:"c" flagDescribe:"Credential for Basic Authentication (ex: user:pass, default disabled)" default:""` + EnableRandomUrl bool `hcl:"enable_random_url" flagName:"random-url" flagSName:"r" flagDescribe:"Add a random string to the URL" default:"false"` + RandomUrlLength int `hcl:"random_url_length" flagName:"random-url-length" flagDescribe:"Random URL length" default:"8"` + EnableTLS bool `hcl:"enable_tls" flagName:"tls" flagSName:"t" flagDescribe:"Enable TLS/SSL" default:"false"` + TLSCrtFile string `hcl:"tls_crt_file" flagName:"tls-crt" flagDescribe:"TLS/SSL certificate file path" default:"~/.gotty.crt"` + TLSKeyFile string `hcl:"tls_key_file" flagName:"tls-key" flagDescribe:"TLS/SSL key file path" default:"~/.gotty.key"` + EnableTLSClientAuth bool `hcl:"enable_tls_client_auth" default:"false"` + TLSCACrtFile string `hcl:"tls_ca_crt_file" flagName:"tls-ca-crt" flagDescribe:"TLS/SSL CA certificate file for client certifications" default:"~/.gotty.ca.crt"` + IndexFile string `hcl:"index_file" flagName:"index" flagDescribe:"Custom index.html file" default:""` + TitleFormat string `hcl:"title_format" flagName:"title-format" flagSName:"" flagDescribe:"Title format of browser window" default:"{{ .command }}@{{ .hostname }}"` + EnableReconnect bool `hcl:"enable_reconnect" flagName:"reconnect" flagDescribe:"Enable reconnection" default:"false"` + ReconnectTime int `hcl:"reconnect_time" flagName:"reconnect-time" flagDescribe:"Time to reconnect" default:"10"` + MaxConnection int `hcl:"max_connection" flagName:"max-connection" flagDescribe:"Maximum connection to gotty" default:"0"` + Once bool `hcl:"once" flagName:"once" flagDescribe:"Accept only one client and exit on disconnection" default:"false"` + Timeout int `hcl:"timeout" flagName:"timeout" flagDescribe:"Timeout seconds for waiting a client(0 to disable)" default:"0"` + PermitArguments bool `hcl:"permit_arguments" flagName:"permit-arguments" flagDescribe:"Permit clients to send command line arguments in URL (e.g. http://example.com:8080/?arg=AAA&arg=BBB)" default:"false"` + Width int `hcl:"width" flagName:"width" flagDescribe:"Static width of the screen, 0(default) means dynamically resize" default:"0"` + Height int `hcl:"height" flagName:"height" flagDescribe:"Static height of the screen, 0(default) means dynamically resize" default:"0"` + WSOrigin string `hcl:"ws_origin" flagName:"ws-origin" flagDescribe:"A regular expression that matches origin URLs to be accepted by WebSocket. No cross origin requests are acceptable by default" default:""` + EnableWebGL bool `hcl:"enable_webgl" flagName:"enable-webgl" flagDescribe:"Enable WebGL renderer" default:"true"` + Quiet bool `hcl:"quiet" flagName:"quiet" flagDescribe:"Don't log" default:"false"` TitleVariables map[string]interface{} } @@ -43,61 +41,3 @@ func (options *Options) Validate() error { } return nil } - -type HtermPrefernces struct { - AltGrMode *string `hcl:"alt_gr_mode" json:"alt-gr-mode,omitempty"` - AltBackspaceIsMetaBackspace bool `hcl:"alt_backspace_is_meta_backspace" json:"alt-backspace-is-meta-backspace,omitempty"` - AltIsMeta bool `hcl:"alt_is_meta" json:"alt-is-meta,omitempty"` - AltSendsWhat string `hcl:"alt_sends_what" json:"alt-sends-what,omitempty"` - AudibleBellSound string `hcl:"audible_bell_sound" json:"audible-bell-sound,omitempty"` - DesktopNotificationBell bool `hcl:"desktop_notification_bell" json:"desktop-notification-bell,omitempty"` - BackgroundColor string `hcl:"background_color" json:"background-color,omitempty"` - BackgroundImage string `hcl:"background_image" json:"background-image,omitempty"` - BackgroundSize string `hcl:"background_size" json:"background-size,omitempty"` - BackgroundPosition string `hcl:"background_position" json:"background-position,omitempty"` - BackspaceSendsBackspace bool `hcl:"backspace_sends_backspace" json:"backspace-sends-backspace,omitempty"` - CharacterMapOverrides map[string]map[string]string `hcl:"character_map_overrides" json:"character-map-overrides,omitempty"` - CloseOnExit bool `hcl:"close_on_exit" json:"close-on-exit,omitempty"` - CursorBlink bool `hcl:"cursor_blink" json:"cursor-blink,omitempty"` - CursorBlinkCycle [2]int `hcl:"cursor_blink_cycle" json:"cursor-blink-cycle,omitempty"` - CursorColor string `hcl:"cursor_color" json:"cursor-color,omitempty"` - ColorPaletteOverrides []*string `hcl:"color_palette_overrides" json:"color-palette-overrides,omitempty"` - CopyOnSelect bool `hcl:"copy_on_select" json:"copy-on-select,omitempty"` - UseDefaultWindowCopy bool `hcl:"use_default_window_copy" json:"use-default-window-copy,omitempty"` - ClearSelectionAfterCopy bool `hcl:"clear_selection_after_copy" json:"clear-selection-after-copy,omitempty"` - CtrlPlusMinusZeroZoom bool `hcl:"ctrl_plus_minus_zero_zoom" json:"ctrl-plus-minus-zero-zoom,omitempty"` - CtrlCCopy bool `hcl:"ctrl_c_copy" json:"ctrl-c-copy,omitempty"` - CtrlVPaste bool `hcl:"ctrl_v_paste" json:"ctrl-v-paste,omitempty"` - EastAsianAmbiguousAsTwoColumn bool `hcl:"east_asian_ambiguous_as_two_column" json:"east-asian-ambiguous-as-two-column,omitempty"` - Enable8BitControl *bool `hcl:"enable_8_bit_control" json:"enable-8-bit-control,omitempty"` - EnableBold *bool `hcl:"enable_bold" json:"enable-bold,omitempty"` - EnableBoldAsBright bool `hcl:"enable_bold_as_bright" json:"enable-bold-as-bright,omitempty"` - EnableClipboardNotice bool `hcl:"enable_clipboard_notice" json:"enable-clipboard-notice,omitempty"` - EnableClipboardWrite bool `hcl:"enable_clipboard_write" json:"enable-clipboard-write,omitempty"` - EnableDec12 bool `hcl:"enable_dec12" json:"enable-dec12,omitempty"` - EnableWebGL bool `json:"EnableWebGL,omitempty"` - Environment map[string]string `hcl:"environment" json:"environment,omitempty"` - FontFamily string `hcl:"font_family" json:"font-family,omitempty"` - FontSize int `hcl:"font_size" json:"font-size,omitempty"` - FontSmoothing string `hcl:"font_smoothing" json:"font-smoothing,omitempty"` - ForegroundColor string `hcl:"foreground_color" json:"foreground-color,omitempty"` - HomeKeysScroll bool `hcl:"home_keys_scroll" json:"home-keys-scroll,omitempty"` - Keybindings map[string]string `hcl:"keybindings" json:"keybindings,omitempty"` - MaxStringSequence int `hcl:"max_string_sequence" json:"max-string-sequence,omitempty"` - MediaKeysAreFkeys bool `hcl:"media_keys_are_fkeys" json:"media-keys-are-fkeys,omitempty"` - MetaSendsEscape bool `hcl:"meta_sends_escape" json:"meta-sends-escape,omitempty"` - MousePasteButton *int `hcl:"mouse_paste_button" json:"mouse-paste-button,omitempty"` - PageKeysScroll bool `hcl:"page_keys_scroll" json:"page-keys-scroll,omitempty"` - PassAltNumber *bool `hcl:"pass_alt_number" json:"pass-alt-number,omitempty"` - PassCtrlNumber *bool `hcl:"pass_ctrl_number" json:"pass-ctrl-number,omitempty"` - PassMetaNumber *bool `hcl:"pass_meta_number" json:"pass-meta-number,omitempty"` - PassMetaV bool `hcl:"pass_meta_v" json:"pass-meta-v,omitempty"` - ReceiveEncoding string `hcl:"receive_encoding" json:"receive-encoding,omitempty"` - ScrollOnKeystroke bool `hcl:"scroll_on_keystroke" json:"scroll-on-keystroke,omitempty"` - ScrollOnOutput bool `hcl:"scroll_on_output" json:"scroll-on-output,omitempty"` - ScrollbarVisible bool `hcl:"scrollbar_visible" json:"scrollbar-visible,omitempty"` - ScrollWheelMoveMultiplier int `hcl:"scroll_wheel_move_multiplier" json:"scroll-wheel-move-multiplier,omitempty"` - SendEncoding string `hcl:"send_encoding" json:"send-encoding,omitempty"` - ShiftInsertPaste bool `hcl:"shift_insert_paste" json:"shift-insert-paste,omitempty"` - UserCss string `hcl:"user_css" json:"user-css,omitempty"` -} From 782991c35657688319d99710ebd848355f497387 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Tue, 29 Mar 2022 13:59:22 -0700 Subject: [PATCH 10/56] feat(zmodem): Allow file uploads/downloads Using zmodem (rz and sz commands from lrzsz) you can now send and receive files. --- Makefile | 5 +- bindata/static/css/index.css | 13 + bindata/static/js/gotty.js | 2 +- bindata/static/js/gotty.js.LICENSE.txt | 418 +++++++++++++++++++++++++ bindata/static/js/gotty.js.map | 2 +- js/package-lock.json | 72 ++++- js/package.json | 3 +- js/src/webtty.ts | 130 +++++++- js/src/xterm.ts | 12 +- resources/index.css | 13 + webtty/webtty.go | 8 +- webtty/webtty_test.go | 6 +- 12 files changed, 663 insertions(+), 21 deletions(-) diff --git a/Makefile b/Makefile index bcaa59f..817956e 100644 --- a/Makefile +++ b/Makefile @@ -2,6 +2,7 @@ OUTPUT_DIR = ./builds GIT_COMMIT = `git rev-parse HEAD | cut -c1-7` VERSION = $(shell git describe --tags) BUILD_OPTIONS = -ldflags "-X main.Version=$(VERSION)" +WEBPACK_MODE = production gotty: main.go assets server/*.go webtty/*.go backend/*.go Makefile go build ${BUILD_OPTIONS} @@ -10,7 +11,7 @@ docker: docker build . -t gotty-bash:$(VERSION) .PHONY: all docker assets -assets: bindata/static/js/gotty.js bindata/static/index.html bindata/static/icon.svg bindata/static/favicon.ico bindata/static/css/index.css bindata/static/css/xterm.css bindata/static/css/xterm_customize.css bindata/static/manifest.json bindata/static/icon_192.png +assets: bindata/static/js/gotty.js.map bindata/static/js/gotty.js bindata/static/index.html bindata/static/icon.svg bindata/static/favicon.ico bindata/static/css/index.css bindata/static/css/xterm.css bindata/static/css/xterm_customize.css bindata/static/manifest.json bindata/static/icon_192.png all: gotty @@ -32,7 +33,7 @@ js/node_modules/xterm/dist/xterm.css: bindata/static/js/gotty.js: js/src/* | js/node_modules/webpack cd js && \ - npx webpack + npx webpack --mode=$(WEBPACK_MODE) js/node_modules/webpack: cd js && \ diff --git a/bindata/static/css/index.css b/bindata/static/css/index.css index 26c6f33..0223c3a 100644 --- a/bindata/static/css/index.css +++ b/bindata/static/css/index.css @@ -4,4 +4,17 @@ html, body, #terminal { width: 100%; padding: 0%; margin: 0%; +} + +.fileDialog { + position: fixed; + top: 40%; + left: 40%; + background-color: lightgray; + padding: 20px; + border: 10px; + border-color: red; + border-width: medium; + display: none; + z-index: 5; } \ No newline at end of file diff --git a/bindata/static/js/gotty.js b/bindata/static/js/gotty.js index cd44819..7e291a7 100644 --- a/bindata/static/js/gotty.js +++ b/bindata/static/js/gotty.js @@ -1,3 +1,3 @@ /*! For license information please see gotty.js.LICENSE.txt */ -(()=>{var e={881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue("padding-top"))+parseInt(n.getPropertyValue("padding-bottom"))),s=i-(parseInt(n.getPropertyValue("padding-right"))+parseInt(n.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),n=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function o(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=o),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,n,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(n,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(n.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var n=function(){function e(){}return e.computeLink=function(t,r,i,n){for(var o,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(o=s.exec(c));){var f=o[1];if(!f){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(f,h+1),s.lastIndex=h+f.length,h<0)break;for(var _=h+f.length,d=l+1;_>i.cols;)_-=i.cols,d++;var p={start:{x:h+1,y:l+1},end:{x:_,y:d}};u.push({range:p,text:f,activate:n})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,n,o="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,n=a.isWrapped}while(n);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;o+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[o,s]},e}();t.LinkComputer=n}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),n=r(310),o=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var o=this._gl,s=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,u),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,2,o.FLOAT,!1,h,0),o.vertexAttribDivisor(2,1),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,o.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(3,1),o.enableVertexAttribArray(4),o.vertexAttribPointer(4,2,o.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(4,1),o.enableVertexAttribArray(5),o.vertexAttribPointer(5,2,o.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(5,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(o.createTexture()),o.bindTexture(o.TEXTURE_2D,this._atlasTexture),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,1,1,0,o.RGBA,o.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.enable(o.BLEND),o.blendFunc(o.SRC_ALPHA,o.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,n,o){this._updateCell(this._vertices.attributes,e,t,r,i,n,o)},e.prototype._updateCell=function(e,t,r,i,n,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,n,s):this._atlas.getRasterizedGlyph(i,n,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):o.fill(e,0,u,u+l-1-2)):o.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,n=e.selection.endCol-i,o=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var v=c.AttributeData.toColorRGB(d.getBgColor());_|=v[0]<<16|v[1]<<8|v[2]<<0;case 0:default:var g=this._colors.background.rgba;_|=g>>8&16711680|g>>8&65280|g>>8&255}_|=50331648}if(f&n.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var y=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,_,y)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,_)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),n=r(455),o=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var o=this._gl;this._program=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,h),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,o.FLOAT,!1,s,0),o.vertexAttribDivisor(0,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,4,o.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,o=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,o*this._dimensions.scaledCellHeight,this._selectionFloat),n.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else n.fill(this._vertices.selection,0,16)}else n.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,n=0;n>24&255)/255,f=(c>>16&255)/255,_=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-o)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,f,_,1)},e.prototype._addRectangle=function(e,t,r,i,n,o,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,n,o,s){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var n=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=n},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),n=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=n},666:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var o=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),f=r(855),_=r(345),d=r(782),p=function(e){function t(t,r,i){var n=e.call(this)||this;n._terminal=t,n._colors=r,n._model=new h.RenderModel,n._workCell=new d.CellData,n._onRequestRedraw=new _.EventEmitter,n._core=n._terminal._core,n._renderLayers=[new s.LinkRenderLayer(n._core.screenElement,2,n._colors,n._core),new a.CursorRenderLayer(n._core.screenElement,3,n._colors,n._onRequestRedraw)],n.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},n._devicePixelRatio=window.devicePixelRatio,n._updateDimensions(),n._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(n._gl=n._canvas.getContext("webgl2",c),!n._gl)throw new Error("WebGL2 not supported "+n._gl);return n._core.screenElement.appendChild(n._canvas),n._rectangleRenderer=new l.RectangleRenderer(n._terminal,n._colors,n._gl,n.dimensions),n._glyphRenderer=new o.GlyphRenderer(n._terminal,n._colors,n._gl,n.dimensions),n.onCharSizeChanged(),n._isAttached=document.body.contains(n._core.screenElement),n}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(n){return n.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var n=i+r.buffer.ydisp,o=r.buffer.lines.get(n);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var n=e[1]-i.buffer.active.viewportY,o=t[1]-i.buffer.active.viewportY,s=Math.max(n,0),a=Math.min(o,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=n,this._model.selection.viewportEndRow=o,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=p},381:(e,t)=>{function r(e,t,r){var n=i(e.createShader(t));if(e.shaderSource(n,r),e.compileShader(n),e.getShaderParameter(n,e.COMPILE_STATUS))return n;console.error(e.getShaderInfoLog(n)),e.deleteShader(n)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,n){var o=i(e.createProgram());if(e.attachShader(o,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(o,i(r(e,e.FRAGMENT_SHADER,n))),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS))return o;console.error(e.getProgramInfoLog(o)),e.deleteProgram(o)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),n=r(167),o=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),o.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,n){var o={foreground:n.foreground,background:n.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:n.ansi.slice(),contrastCache:n.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),n=r(855),o=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},f={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},_=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=o.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=o.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,n.DEFAULT_COLOR,n.DEFAULT_COLOR);this._cacheMap[r]=((e={})[n.DEFAULT_COLOR]=((t={})[n.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,n=this._cacheMapCombined[e];n||(n={},this._cacheMapCombined[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,n=this._cacheMap[e];n||(n={},this._cacheMap[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+d(i[0])+d(i[1])+d(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,n,o,c,l){var h=this._getMinimumContrastCss(e,t,r,i,n,o,c,l);if(h)return h;switch(n){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&o<8&&(o+=8),this._getColorFromAnsiIndex(o).css;case 50331648:var u=s.AttributeData.toColorRGB(o);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var f=this._config.colors.background.css;return 9===f.length?f.substr(0,7):f}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,n,o,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(n,o,s,c),f=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(f){var _=a.channels.toCss(f>>24&255,f>>16&255,f>>8&255);return this._config.colors.contrastCache.setCss(e,i,_),_}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var n="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return f;var o=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),_=this._workAttributeData.getFgColorMode(),d=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var v=u;u=d,d=v;var g=_;_=p,p=g}var y=this._getBackgroundColor(p,d,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var m=o?this._config.fontWeightBold:this._config.fontWeight,b=h?"italic":"";this._tmpCtx.font=b+" "+m+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,p,d,r,_,u,s,o),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(n,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;n--){for(i=0;i=0;i--){for(n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),n=r(381),o=function(){function e(e,t,r,i,n){this._container=e,this._alpha=i,this._colors=n,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=n.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=o},461:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var o=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,n){var o=e.call(this,t,"cursor",r,!0,i)||this;return o._onRequestRefreshRowsEvent=n,o._cell=new s.CellData,o._state={x:0,y:0,isFocused:!1,style:"",width:0},o._cursorRenderers={bar:o._renderBarCursor.bind(o),block:o._renderBlockCursor.bind(o),underline:o._renderUnderlineCursor.bind(o)},o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,n=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(n,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=e.getOption("cursorStyle");return o&&"block"!==o?this._cursorRenderers[o](e,n,i,this._cell):this._renderBlurCursor(e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===n&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(o.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var o=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,n){var o=e.call(this,t,"link",r,!0,i)||this;return n.linkifier.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),n.linkifier2.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier2.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=" ":a.textContent=o,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=""}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=n+"px",t.style.top=o+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData("text/plain"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add("xterm-cursor-pointer")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),m=r(1296),b=r(7399),C=r(8460),S=r(8437),w=r(5680),E=r(3230),A=r(4725),R=r(428),L=r(8934),x=r(6465),k=r(5114),T=r(8969),D=r(4774),O=r(4269),P="undefined"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(x.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.removeEventListener("mousemove",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener("mousemove",l),n.mousemove=l):(r.removeEventListener("mousemove",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener("wheel",s,{passive:!1}),n.wheel=s):(r.removeEventListener("wheel",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.addEventListener("mousemove",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,"wheel",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),o="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,n,o){for(var s=e,a=t,c="";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&"block"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,"link",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,"selection",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,"text",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:"rgba(0, 0, 0, 0)",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var n=t.createElement("canvas");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p="xterm-dom-renderer-owner-",v="xterm-fg-",g="xterm-bg-",y="xterm-focus",m=1,b=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=m++,f._rowElements=[],f._rowContainer=document.createElement("div"),f._rowContainer.classList.add("xterm-rows"),f._rowContainer.style.lineHeight="normal",f._rowContainer.setAttribute("aria-hidden","true"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement("div"),f._selectionContainer.classList.add("xterm-selection"),f._selectionContainer.setAttribute("aria-hidden","true"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement("div");return n.style.height=i*this.dimensions.actualCellHeight+"px",n.style.top=e*this.dimensions.actualCellHeight+"px",n.style.left=t*this.dimensions.actualCellWidth+"px",n.style.width=this.dimensions.actualCellWidth*(r-t)+"px",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=b},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){m=!0;var S=p.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),b=S[1]-1,y=C.getWidth()}var w=this._document.createElement("span");if(y>1&&(w.style.width=h*y+"px"),m&&(w.style.display="inline",a>=g&&a<=b&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var E=C.getFgColor(),A=C.getFgColorMode(),R=C.getBgColor(),L=C.getBgColorMode(),x=!!C.isInverse();if(x){var k=E;E=R,R=k;var T=A;A=L,L=T}switch(A){case 16777216:case 33554432:C.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add("xterm-fg-"+E);break;case 50331648:var D=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,D)||this._addStyle(w,"color:#"+_(E.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||x&&w.classList.add("xterm-fg-"+o.INVERTED_DEFAULT_COLOR)}switch(L){case 16777216:case 33554432:w.classList.add("xterm-bg-"+R);break;case 50331648:this._addStyle(w,"background-color:#"+_(R.toString(16),"0",6));break;case 0:default:x&&w.classList.add("xterm-bg-"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=b}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData="",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,"g"),m=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var m=a+l-h+f,b=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||""!==s.slice(a,c).trim()){if(r&&0===m&&32!==o.getCodePoint(0)){var C=n.lines.get(e[1]-1);if(C&&o.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;m-=w,b+=w}}}if(i&&m+b===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(b+=A.length)}}return{start:m,length:b}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=m},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),m=r(5981),b=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new m.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!b&&(this._logService.warn("writeSync is unreliable and will be removed soon."),b=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle="",g._iconName="",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug("Unknown CSI code: ",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug("Unknown ESC code: ",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug("Unknown EXECUTE code: ",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),g._logService.debug("Unknown DCS code: ",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:"@"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:"A"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:"B"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:"C"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:"D"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:"E"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:"F"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:"G"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:"H"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:"I"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:"L"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:"M"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:"P"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:"S"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:"T"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:"X"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:"Z"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:"`"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:"a"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:"b"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:"c"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:"d"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:"e"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:"f"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:"g"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:"h"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:"l"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:"m"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:"n"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:"r"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:"s"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:"t"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:"u"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:"7"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:"8"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:"D"},(function(){return g.index()})),g._parser.registerEscHandler({final:"E"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:"H"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:"M"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:"="},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:">"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:"c"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:"n"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"o"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"|"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"}"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"~"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return g.selectDefaultCharset()}));var m=function(e){b._parser.registerEscHandler({intermediates:"(",final:e},(function(){return g.selectCharset("("+e)})),b._parser.registerEscHandler({intermediates:")",final:e},(function(){return g.selectCharset(")"+e)})),b._parser.registerEscHandler({intermediates:"*",final:e},(function(){return g.selectCharset("*"+e)})),b._parser.registerEscHandler({intermediates:"+",final:e},(function(){return g.selectCharset("+"+e)})),b._parser.registerEscHandler({intermediates:"-",final:e},(function(){return g.selectCharset("-"+e)})),b._parser.registerEscHandler({intermediates:".",final:e},(function(){return g.selectCharset("."+e)})),b._parser.registerEscHandler({intermediates:"/",final:e},(function(){return g.selectCharset("/"+e)}))},b=this;for(var C in a.CHARSETS)m(C);return g._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error("Parsing error: ",e),e})),g._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new m.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(b[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,n=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(n),t.isIpad="iPad"===n,t.isIphone="iPhone"===n,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(n),t.isLinux=n.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,m=_[y];0===m&&(m=_[--y]);for(var b=l.length-d-1,C=f;b>=0;){var S=Math.min(C,m);if(l[y].copyCellsFrom(l[b],C-S,m-S,S,!0),0==(m-=S)&&(m=_[--y]),0==(C-=S)){b--;var w=Math.max(b,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var A=[],R=[];for(v=0;v=0;v--)if(T&&T.start>x+D){for(var O=T.newLines.length-1;O>=0;O--)this.lines.set(v--,T.newLines[O]);v++,A.push({index:x+1,amount:T.newLines.length}),D+=T.newLines.length,T=i[++k]}else this.lines.set(v,R[x--]);var P=0;for(v=A.length-1;v>=0;v--)A[v].index+=P,this.lines.onInsertEmitter.fire(A[v]),P+=A[v].amount;var M=Math.max(0,L+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o="";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(b>u||0===h[b].getTrimmedLength());b--)m++;m>0&&(s.push(a+h.length-m),s.push(m)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;in||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=n}}if(1!==e.final.length)throw new Error("final must be a single byte");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator("BufferService"),t.ICoreMouseService=n.createDecorator("CoreMouseService"),t.ICoreService=n.createDecorator("CoreService"),t.ICharsetService=n.createDecorator("CharsetService"),t.IDirtyRowService=n.createDecorator("DirtyRowService"),t.IInstantiationService=n.createDecorator("InstantiationService"),t.ILogService=n.createDecorator("LogService"),t.IOptionsService=n.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=n.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0,t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var r=function(){function e(e,t,r,i){this.term=e,this.connectionFactory=t,this.args=r,this.authToken=i,this.reconnect=-1,this.bufSize=1024}return e.prototype.open=function(){var e,r,i=this,n=this.connectionFactory.create(),o=function(){n.onOpen((function(){var r=i.term.info();n.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var o=function(e,r){n.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(o),o(r.columns,r.rows),i.term.onInput((function(e){for(var r=i.bufSize-1,o=0;o0&&(r=setTimeout((function(){n=i.connectionFactory.create(),i.term.reset(),o()}),1e3*i.reconnect))})),n.open()};return o(),function(){clearTimeout(r),n.close()}},e}();t.WebTTY=r},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),n=r(881),o=r(962),s=r(445),a=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new n.FitAddon,this.term.loadAddon(new o.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()}))}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(Uint8Array.from(e,(function(e){return e.charCodeAt(0)})))},e.prototype.showMessage=function(e,t){var r=this;this.message.textContent=e,this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),t>0&&(this.messageTimer=setTimeout((function(){r.elem.removeChild(r.message)}),t))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=a}},t={};function r(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(()=>{"use strict";var e=r(949),t=r(818),i=r(69),n=document.getElementById("terminal");if(null!==n){var o;o=new e.Xterm(n);var s=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",a=window.location.search,c=new i.ConnectionFactory(s,t.protocols),l=new t.WebTTY(o,c,a,gotty_auth_token).open();window.addEventListener("unload",(function(){l(),o.close()}))}})()})(); +(()=>{var e={619:(e,t)=>{var r;r=function(e){e.version="1.2.1";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!=typeof Int32Array?new Int32Array(t):t}(),r=function(e){var t=0,r=0,i=0,n="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(i=0;256!=i;++i)n[i]=e[i];for(i=0;256!=i;++i)for(r=e[i],t=256+i;t<4096;t+=256)r=n[t]=r>>>8^e[255&r];var o=[];for(i=1;16!=i;++i)o[i-1]="undefined"!=typeof Int32Array?n.subarray(256*i,256*i+256):n.slice(256*i,256*i+256);return o}(t),i=r[0],n=r[1],o=r[2],s=r[3],a=r[4],c=r[5],l=r[6],h=r[7],u=r[8],_=r[9],f=r[10],d=r[11],p=r[12],v=r[13],g=r[14];e.table=t,e.bstr=function(e,r){for(var i=-1^r,n=0,o=e.length;n>>8^t[255&(i^e.charCodeAt(n++))];return~i},e.buf=function(e,r){for(var y=-1^r,m=e.length-15,b=0;b>8&255]^p[e[b++]^y>>16&255]^d[e[b++]^y>>>24]^f[e[b++]]^_[e[b++]]^u[e[b++]]^h[e[b++]]^l[e[b++]]^c[e[b++]]^a[e[b++]]^s[e[b++]]^o[e[b++]]^n[e[b++]]^i[e[b++]]^t[e[b++]];for(m+=15;b>>8^t[255&(y^e[b++])];return~y},e.str=function(e,r){for(var i=-1^r,n=0,o=e.length,s=0,a=0;n>>8^t[255&(i^s)]:s<2048?i=(i=i>>>8^t[255&(i^(192|s>>6&31))])>>>8^t[255&(i^(128|63&s))]:s>=55296&&s<57344?(s=64+(1023&s),a=1023&e.charCodeAt(n++),i=(i=(i=(i=i>>>8^t[255&(i^(240|s>>8&7))])>>>8^t[255&(i^(128|s>>2&63))])>>>8^t[255&(i^(128|a>>6&15|(3&s)<<4))])>>>8^t[255&(i^(128|63&a))]):i=(i=(i=i>>>8^t[255&(i^(224|s>>12&15))])>>>8^t[255&(i^(128|s>>6&63))])>>>8^t[255&(i^(128|63&s))];return~i}},"undefined"==typeof DO_NOT_EXPORT_CRC?r(t):r({})},881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue("padding-top"))+parseInt(n.getPropertyValue("padding-bottom"))),s=i-(parseInt(n.getPropertyValue("padding-right"))+parseInt(n.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),n=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function o(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=o),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,n,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(n,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(n.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var n=function(){function e(){}return e.computeLink=function(t,r,i,n){for(var o,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(o=s.exec(c));){var _=o[1];if(!_){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(_,h+1),s.lastIndex=h+_.length,h<0)break;for(var f=h+_.length,d=l+1;f>i.cols;)f-=i.cols,d++;var p={start:{x:h+1,y:l+1},end:{x:f,y:d}};u.push({range:p,text:_,activate:n})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,n,o="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,n=a.isWrapped}while(n);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;o+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[o,s]},e}();t.LinkComputer=n}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),n=r(310),o=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var o=this._gl,s=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,u),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,2,o.FLOAT,!1,h,0),o.vertexAttribDivisor(2,1),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,o.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(3,1),o.enableVertexAttribArray(4),o.vertexAttribPointer(4,2,o.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(4,1),o.enableVertexAttribArray(5),o.vertexAttribPointer(5,2,o.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(5,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(o.createTexture()),o.bindTexture(o.TEXTURE_2D,this._atlasTexture),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,1,1,0,o.RGBA,o.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.enable(o.BLEND),o.blendFunc(o.SRC_ALPHA,o.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,n,o){this._updateCell(this._vertices.attributes,e,t,r,i,n,o)},e.prototype._updateCell=function(e,t,r,i,n,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,n,s):this._atlas.getRasterizedGlyph(i,n,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):o.fill(e,0,u,u+l-1-2)):o.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,n=e.selection.endCol-i,o=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var v=c.AttributeData.toColorRGB(d.getBgColor());f|=v[0]<<16|v[1]<<8|v[2]<<0;case 0:default:var g=this._colors.background.rgba;f|=g>>8&16711680|g>>8&65280|g>>8&255}f|=50331648}if(_&n.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var y=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f,y)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),n=r(455),o=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var o=this._gl;this._program=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,h),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,o.FLOAT,!1,s,0),o.vertexAttribDivisor(0,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,4,o.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,o=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,o*this._dimensions.scaledCellHeight,this._selectionFloat),n.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else n.fill(this._vertices.selection,0,16)}else n.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,n=0;n>24&255)/255,_=(c>>16&255)/255,f=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-o)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,_,f,1)},e.prototype._addRectangle=function(e,t,r,i,n,o,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,n,o,s){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var n=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=n},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),n=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=n},666:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var o=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),_=r(855),f=r(345),d=r(782),p=function(e){function t(t,r,i){var n=e.call(this)||this;n._terminal=t,n._colors=r,n._model=new h.RenderModel,n._workCell=new d.CellData,n._onRequestRedraw=new f.EventEmitter,n._core=n._terminal._core,n._renderLayers=[new s.LinkRenderLayer(n._core.screenElement,2,n._colors,n._core),new a.CursorRenderLayer(n._core.screenElement,3,n._colors,n._onRequestRedraw)],n.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},n._devicePixelRatio=window.devicePixelRatio,n._updateDimensions(),n._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(n._gl=n._canvas.getContext("webgl2",c),!n._gl)throw new Error("WebGL2 not supported "+n._gl);return n._core.screenElement.appendChild(n._canvas),n._rectangleRenderer=new l.RectangleRenderer(n._terminal,n._colors,n._gl,n.dimensions),n._glyphRenderer=new o.GlyphRenderer(n._terminal,n._colors,n._gl,n.dimensions),n.onCharSizeChanged(),n._isAttached=document.body.contains(n._core.screenElement),n}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(n){return n.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var n=i+r.buffer.ydisp,o=r.buffer.lines.get(n);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var n=e[1]-i.buffer.active.viewportY,o=t[1]-i.buffer.active.viewportY,s=Math.max(n,0),a=Math.min(o,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=n,this._model.selection.viewportEndRow=o,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=p},381:(e,t)=>{function r(e,t,r){var n=i(e.createShader(t));if(e.shaderSource(n,r),e.compileShader(n),e.getShaderParameter(n,e.COMPILE_STATUS))return n;console.error(e.getShaderInfoLog(n)),e.deleteShader(n)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,n){var o=i(e.createProgram());if(e.attachShader(o,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(o,i(r(e,e.FRAGMENT_SHADER,n))),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS))return o;console.error(e.getProgramInfoLog(o)),e.deleteProgram(o)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),n=r(167),o=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),o.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,n){var o={foreground:n.foreground,background:n.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:n.ansi.slice(),contrastCache:n.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),n=r(855),o=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},_={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},f=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=o.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=o.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,n.DEFAULT_COLOR,n.DEFAULT_COLOR);this._cacheMap[r]=((e={})[n.DEFAULT_COLOR]=((t={})[n.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,n=this._cacheMapCombined[e];n||(n={},this._cacheMapCombined[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,n=this._cacheMap[e];n||(n={},this._cacheMap[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+d(i[0])+d(i[1])+d(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,n,o,c,l){var h=this._getMinimumContrastCss(e,t,r,i,n,o,c,l);if(h)return h;switch(n){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&o<8&&(o+=8),this._getColorFromAnsiIndex(o).css;case 50331648:var u=s.AttributeData.toColorRGB(o);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var _=this._config.colors.background.css;return 9===_.length?_.substr(0,7):_}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,n,o,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(n,o,s,c),_=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(_){var f=a.channels.toCss(_>>24&255,_>>16&255,_>>8&255);return this._config.colors.contrastCache.setCss(e,i,f),f}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var n="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return _;var o=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),f=this._workAttributeData.getFgColorMode(),d=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var v=u;u=d,d=v;var g=f;f=p,p=g}var y=this._getBackgroundColor(p,d,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var m=o?this._config.fontWeightBold:this._config.fontWeight,b=h?"italic":"";this._tmpCtx.font=b+" "+m+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,p,d,r,f,u,s,o),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(n,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;n--){for(i=0;i=0;i--){for(n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),n=r(381),o=function(){function e(e,t,r,i,n){this._container=e,this._alpha=i,this._colors=n,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=n.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=o},461:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var o=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,n){var o=e.call(this,t,"cursor",r,!0,i)||this;return o._onRequestRefreshRowsEvent=n,o._cell=new s.CellData,o._state={x:0,y:0,isFocused:!1,style:"",width:0},o._cursorRenderers={bar:o._renderBarCursor.bind(o),block:o._renderBlockCursor.bind(o),underline:o._renderUnderlineCursor.bind(o)},o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,n=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(n,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=e.getOption("cursorStyle");return o&&"block"!==o?this._cursorRenderers[o](e,n,i,this._cell):this._renderBlurCursor(e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===n&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(o.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var o=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,n){var o=e.call(this,t,"link",r,!0,i)||this;return n.linkifier.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),n.linkifier2.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier2.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),_=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=" ":a.textContent=o,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=""}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=n+"px",t.style.top=o+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData("text/plain"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,_)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,_)},c=this;null!==(i=o.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add("xterm-cursor-pointer")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),_=r(9312),f=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),m=r(1296),b=r(7399),C=r(8460),S=r(8437),w=r(5680),E=r(3230),A=r(4725),R=r(428),L=r(8934),x=r(6465),k=r(5114),T=r(8969),O=r(4774),D=r(4269),P="undefined"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=f,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(x.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.removeEventListener("mousemove",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener("mousemove",l),n.mousemove=l):(r.removeEventListener("mousemove",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener("wheel",s,{passive:!1}),n.wheel=s):(r.removeEventListener("wheel",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.addEventListener("mousemove",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,"wheel",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),o="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,n,o){for(var s=e,a=t,c="";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-o(s,i):t;var _=i,f=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var _=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(_-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new _(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new f(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),_=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),f=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),_=this._resolveForegroundRgba(i,r,s,a),f=c.rgba.ensureContrastRatio(u,_,this._optionsService.options.minimumContrastRatio);if(f){var d={css:c.channels.toCss(f>>24&255,f>>16&255,f>>8&255),rgba:f};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,_=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new f(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&"block"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=_;var f=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,"link",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),_=r(4725),f=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,_){var f=e.call(this)||this;f._colors=t,f._screenElement=r,f._bufferService=s,f._charSizeService=u,f._optionsService=_,f._id=v++,f._onRequestRedraw=new p.EventEmitter;var d=f._optionsService.options.allowTransparency;return f._renderLayers=[o.createInstance(a.TextRenderLayer,f._screenElement,0,f._colors,d,f._id),o.createInstance(c.SelectionRenderLayer,f._screenElement,1,f._colors,f._id),o.createInstance(h.LinkRenderLayer,f._screenElement,2,f._colors,f._id,i,n),o.createInstance(l.CursorRenderLayer,f._screenElement,3,f._colors,f._id,f._onRequestRedraw)],f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._devicePixelRatio=window.devicePixelRatio,f._updateDimensions(),f.onOptionsChanged(),f}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,"selection",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var _=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,_,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),_=r(2585),f=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,"text",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var _=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,_[0],_[1]),_[1]-_[0]),u=_[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,_.IBufferService),s(6,_.IOptionsService),s(7,f.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),_={css:"rgba(0, 0, 0, 0)",rgba:0};function f(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=f;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var n=t.createElement("canvas");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=f(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),_=r(8460),f=r(4774),d=r(9631),p="xterm-dom-renderer-owner-",v="xterm-fg-",g="xterm-bg-",y="xterm-focus",m=1,b=function(e){function t(t,r,i,n,o,s,c,l,h,u){var _=e.call(this)||this;return _._colors=t,_._element=r,_._screenElement=i,_._viewportElement=n,_._linkifier=o,_._linkifier2=s,_._charSizeService=l,_._optionsService=h,_._bufferService=u,_._terminalClass=m++,_._rowElements=[],_._rowContainer=document.createElement("div"),_._rowContainer.classList.add("xterm-rows"),_._rowContainer.style.lineHeight="normal",_._rowContainer.setAttribute("aria-hidden","true"),_._refreshRowElements(_._bufferService.cols,_._bufferService.rows),_._selectionContainer=document.createElement("div"),_._selectionContainer.classList.add("xterm-selection"),_._selectionContainer.setAttribute("aria-hidden","true"),_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._updateDimensions(),_._injectCss(),_._rowFactory=c.createInstance(a.DomRendererRowFactory,document,_._colors),_._element.classList.add(p+_._terminalClass),_._screenElement.appendChild(_._rowContainer),_._screenElement.appendChild(_._selectionContainer),_._linkifier.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_._linkifier2.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier2.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new _.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement("div");return n.style.height=i*this.dimensions.actualCellHeight+"px",n.style.top=e*this.dimensions.actualCellHeight+"px",n.style.left=t*this.dimensions.actualCellWidth+"px",n.style.width=this.dimensions.actualCellWidth*(r-t)+"px",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=b},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var _=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,_){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,_)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){m=!0;var S=p.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),b=S[1]-1,y=C.getWidth()}var w=this._document.createElement("span");if(y>1&&(w.style.width=h*y+"px"),m&&(w.style.display="inline",a>=g&&a<=b&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var E=C.getFgColor(),A=C.getFgColorMode(),R=C.getBgColor(),L=C.getBgColorMode(),x=!!C.isInverse();if(x){var k=E;E=R,R=k;var T=A;A=L,L=T}switch(A){case 16777216:case 33554432:C.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add("xterm-fg-"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,"color:#"+f(E.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||x&&w.classList.add("xterm-fg-"+o.INVERTED_DEFAULT_COLOR)}switch(L){case 16777216:case 33554432:w.classList.add("xterm-bg-"+R);break;case 50331648:this._addStyle(w,"background-color:#"+f(R.toString(16),"0",6));break;case 0:default:x&&w.classList.add("xterm-bg-"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=b}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function f(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData="",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var _=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),_=0;_1)for(u=this._getJoinedRanges(i,s,o,t,n),_=0;_{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),_=r(2585),f=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var _=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});_.observe(i),l.register({dispose:function(){return _.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,_.IOptionsService),s(4,f.ICharSizeService),s(5,_.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),_=r(2585),f=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,"g"),m=function(e){function t(t,r,i,n,o,s,a,u){var _=e.call(this)||this;return _._element=t,_._screenElement=r,_._linkifier=i,_._bufferService=n,_._coreService=o,_._mouseService=s,_._optionsService=a,_._renderService=u,_._dragScrollAmount=0,_._enabled=!0,_._workCell=new l.CellData,_._mouseDownTimeStamp=0,_._oldHasSelection=!1,_._oldSelectionStart=void 0,_._oldSelectionEnd=void 0,_._onLinuxMouseSelection=_.register(new h.EventEmitter),_._onRedrawRequest=_.register(new h.EventEmitter),_._onSelectionChange=_.register(new h.EventEmitter),_._onRequestScrollLines=_.register(new h.EventEmitter),_._mouseMoveListener=function(e){return _._onMouseMove(e)},_._mouseUpListener=function(e){return _._onMouseUp(e)},_._coreService.onUserInput((function(){_.hasSelection&&_.clearSelection()})),_._trimListener=_._bufferService.buffer.lines.onTrim((function(e){return _._onTrim(e)})),_.register(_._bufferService.buffers.onBufferActivate((function(e){return _._onBufferActivate(e)}))),_.enable(),_._model=new c.SelectionModel(_._bufferService),_._activeSelectionMode=0,_}return n(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=f.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,_=0,f=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(f+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(_+=g-1,a-=g-1),a--,d--}for(;p1&&(f+=y-1,c+=y-1),c++,p++}}c++;var m=a+l-h+_,b=Math.min(this._bufferService.cols,c-a+h+u-_-f);if(t||""!==s.slice(a,c).trim()){if(r&&0===m&&32!==o.getCodePoint(0)){var C=n.lines.get(e[1]-1);if(C&&o.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;m-=w,b+=w}}}if(i&&m+b===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(b+=A.length)}}return{start:m,length:b}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,_.IBufferService),s(4,_.ICoreService),s(5,u.IMouseService),s(6,_.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=m},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),_=r(8460),f=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),m=r(5981),b=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new _.EventEmitter,r._onData=new _.EventEmitter,r._onLineFeed=new _.EventEmitter,r._onResize=new _.EventEmitter,r._onScroll=new _.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(f.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(_.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(_.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(_.forwardEvent(r._coreService.onData,r._onData)),r.register(_.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new m.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new _.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!b&&(this._logService.warn("writeSync is unreliable and will be removed soon."),b=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle="",g._iconName="",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=_.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new f.EventEmitter,g._onRequestRefreshRows=new f.EventEmitter,g._onRequestReset=new f.EventEmitter,g._onRequestSyncScrollBar=new f.EventEmitter,g._onRequestWindowsOptionsReport=new f.EventEmitter,g._onA11yChar=new f.EventEmitter,g._onA11yTab=new f.EventEmitter,g._onCursorMove=new f.EventEmitter,g._onLineFeed=new f.EventEmitter,g._onScroll=new f.EventEmitter,g._onTitleChange=new f.EventEmitter,g._onAnsiColorChange=new f.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug("Unknown CSI code: ",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug("Unknown ESC code: ",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug("Unknown EXECUTE code: ",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),g._logService.debug("Unknown DCS code: ",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:"@"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:"A"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:"B"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:"C"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:"D"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:"E"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:"F"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:"G"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:"H"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:"I"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:"L"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:"M"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:"P"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:"S"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:"T"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:"X"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:"Z"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:"`"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:"a"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:"b"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:"c"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:"d"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:"e"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:"f"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:"g"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:"h"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:"l"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:"m"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:"n"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:"r"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:"s"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:"t"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:"u"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:"7"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:"8"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:"D"},(function(){return g.index()})),g._parser.registerEscHandler({final:"E"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:"H"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:"M"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:"="},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:">"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:"c"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:"n"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"o"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"|"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"}"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"~"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return g.selectDefaultCharset()}));var m=function(e){b._parser.registerEscHandler({intermediates:"(",final:e},(function(){return g.selectCharset("("+e)})),b._parser.registerEscHandler({intermediates:")",final:e},(function(){return g.selectCharset(")"+e)})),b._parser.registerEscHandler({intermediates:"*",final:e},(function(){return g.selectCharset("*"+e)})),b._parser.registerEscHandler({intermediates:"+",final:e},(function(){return g.selectCharset("+"+e)})),b._parser.registerEscHandler({intermediates:"-",final:e},(function(){return g.selectCharset("-"+e)})),b._parser.registerEscHandler({intermediates:".",final:e},(function(){return g.selectCharset("."+e)})),b._parser.registerEscHandler({intermediates:"/",final:e},(function(){return g.selectCharset("/"+e)}))},b=this;for(var C in a.CHARSETS)m(C);return g._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error("Parsing error: ",e),e})),g._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===f.getWidth(o.x-1)&&f.setCellFromCodePoint(o.x-1,0,1,_.fg,_.bg,_.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),f=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(f.insertCells(o.x,n,o.getNullCell(_),_),2===f.getWidth(c-1)&&f.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,_.fg,_.bg,_.extended)),f.setCellFromCodePoint(o.x++,i,n,_.fg,_.bg,_.extended),n>0)for(;--n;)f.setCellFromCodePoint(o.x++,0,0,_.fg,_.bg,_.extended)}else f.getWidth(o.x-1)?f.addCodepointToCell(o.x-1,i):f.addCodepointToCell(o.x-2,i)}r-t>0&&(f.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===f.getWidth(o.x)&&!f.hasContent(o.x)&&f.setCellFromCodePoint(o.x,0,1,_.fg,_.bg,_.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new m.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=_.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=_.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=_.DEFAULT_ATTR_DATA.fg,i.bg=_.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(b[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,n=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(n),t.isIpad="iPad"===n,t.isIphone="iPhone"===n,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(n),t.isLinux=n.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=f.length-1,m=f[y];0===m&&(m=f[--y]);for(var b=l.length-d-1,C=_;b>=0;){var S=Math.min(C,m);if(l[y].copyCellsFrom(l[b],C-S,m-S,S,!0),0==(m-=S)&&(m=f[--y]),0==(C-=S)){b--;var w=Math.max(b,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var A=[],R=[];for(v=0;v=0;v--)if(T&&T.start>x+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,A.push({index:x+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++k]}else this.lines.set(v,R[x--]);var P=0;for(v=A.length-1;v>=0;v--)A[v].index+=P,this.lines.onInsertEmitter.fire(A[v]),P+=A[v].amount;var M=Math.max(0,L+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new _(this,e,t,r,i,n)},e}();t.Buffer=u;var _=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=_},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o="";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(b>u||0===h[b].getTrimmedLength());b--)m++;m>0&&(s.push(a+h.length-m),s.push(m)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;in||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=n}}if(1!==e.final.length)throw new Error("final must be a single byte");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[_](this._params));_--)if(i instanceof Promise)return this._preserveStack(3,a,_,o,l),i;_<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var f=this._escHandlers[this._collect<<8|n],d=f?f.length-1:-1;d>=0&&!0!==(i=f[d]());d--)if(i instanceof Promise)return this._preserveStack(4,f,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),_=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),f=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(_),o}return n(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(_)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=f},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator("BufferService"),t.ICoreMouseService=n.createDecorator("CoreMouseService"),t.ICoreService=n.createDecorator("CoreService"),t.ICharsetService=n.createDecorator("CharsetService"),t.IDirtyRowService=n.createDecorator("DirtyRowService"),t.IInstantiationService=n.createDecorator("InstantiationService"),t.ILogService=n.createDecorator("LogService"),t.IOptionsService=n.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=n.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()},444:e=>{"use strict";var t=e.exports;const r=[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102],i={};for(var n=0;n65535)throw"Number cannot exceed 16 bits: "+e;return[e>>8,255&e]},pack_u32_le:function(e){var t=e/65536;return[255&e,(65535&e)>>8,255&t,t>>8]},unpack_u16_be:function(e){return(e[0]<<8)+e[1]},unpack_u32_le:function(e){return e[0]+(e[1]<<8)+(e[2]<<16)+16777216*e[3]},octets_to_hex:function(e){for(var t=[],i=0;i>4],r[15&e[i]]);return t},parse_hex_octets:function(e){for(var t=new Array(e.length/2),r=0;r{e.exports.Text={Encoder:"undefined"!=typeof TextEncoder?TextEncoder:class{encode(e){e=unescape(encodeURIComponent(e));for(var t=new Array(e.length),r=0;r{"use strict";const i=r(619);var n,o=e.exports;function s(e,t){return n||function(){n=new Array(256);for(var e=0;e<256;e++){for(var t=e<<8&65535,r=0;r<8;r++)0!=(32768&t)?(t<<=1,t^=4129):t<<=1;n[e]=65535&t}}(),n[t>>8&255]^(255&t)<<8^e}function a(e,t){if(e.join()!==t.join())throw new o.Error("crc",t,e)}Object.assign(o,r(595),r(444)),o.CRC={crc16:function(e){for(var t=e[0],r=1;r>>0)},verify16:function(e,t){return a(this.crc16(e),t)},verify32:function(e,t){try{a(this.crc32(e),t)}catch(t){throw t.input=e.slice(0),t}}}},80:(e,t,r)=>{"use strict";var i,n,o=e.exports;Object.assign(o,r(560));const s=o.ZMLIB.ZDLE;o.ZDLE=class e{constructor(e){this._config={},e&&this.set_escape_ctrl_chars(!!e.escape_ctrl_chars)}set_escape_ctrl_chars(e){if("boolean"!=typeof e)throw"need boolean!";e!==this._config.escape_ctrl_chars&&(this._config.escape_ctrl_chars=e,this._setup_zdle_table())}escapes_ctrl_chars(){return!!this._config.escape_ctrl_chars}encode(e){if(!this._zdle_table)throw"No ZDLE encode table configured!";var t=this._zdle_table,r=this._lastcode,o=new ArrayBuffer(2*e.length),a=new Uint8Array(o),c=this._config.escape_ctrl_chars,l=0;for(i=0;i=0;t--)e[t]===s&&e.splice(t,2,e[t+1]-64);return e}static splice(t,r,i){var n=0;r||(r=0);for(var o=r;o{"use strict";var t=e.exports;const r={aborted:"Session aborted",peer_aborted:"Peer aborted session",already_aborted:"Session already aborted",crc:function(e,t){return this.got=e.slice(0),this.expected=t.slice(0),"CRC check failed! (got: "+e.join()+"; expected: "+t.join()+")"},validation:function(e){return e}};function i(e){const t=r[e];switch(typeof t){case"string":return t;case"function":var i=[].slice.call(arguments).slice(1);return t.apply(this,i)}return null}t.Error=class extends Error{constructor(e){super();var t=i.apply(this,arguments);t?(this.type=e,this.message=t):this.message=e}}},547:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(444),r(80),r(560),r(724),r(595));const n="*".charCodeAt(0),o="A".charCodeAt(0),s="B".charCodeAt(0),a="C".charCodeAt(0),c=[13,10],l=c.slice(0).concat([i.ZMLIB.XON]),h=[n,n,i.ZMLIB.ZDLE,s],u=[n,i.ZMLIB.ZDLE,o],_=[n,i.ZMLIB.ZDLE,a];i.Header=class{static trim_leading_garbage(e){var t,r,o=[];e:for(;e.length&&!r;){var s=e.indexOf(n);if(-1===s){t=!0;break e}if(o.push.apply(o,e.splice(0,s)),e.length<2)break e;if(e[1]===n)if(e.length>8,0,r]}get_buffer_size(){return i.ENCODELIB.unpack_u16_be(this._bytes4.slice(0,2))||void 0}can_full_duplex(){return!!(this._bytes4[3]&d.CANFDX)}can_overlap_io(){return!!(this._bytes4[3]&d.CANOVIO)}can_break(){return!!(this._bytes4[3]&d.CANBRK)}can_fcs_32(){return!!(this._bytes4[3]&d.CANFC32)}escape_ctrl_chars(){return!!(this._bytes4[3]&d.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&d.ESC8)}}const v={ESCCTL:64,ESC8:128};class g extends i.Header{constructor(e,t){super();var r=0;if(e.forEach((function(e){r|=function(e){if(!v[e])throw"Invalid ZSINIT flag: "+e;return v[e]}(e)})),this._bytes4=[0,0,0,r],t){if(t.length>31)throw"Attn sequence must be <= 31 bytes";if(t.some((function(e){return e>255})))throw"Attn sequence ("+t+") must be <256";this._data=t.concat([0])}}escape_ctrl_chars(){return!!(this._bytes4[3]&v.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&v.ESC8)}}class y extends i.Header{constructor(e){super(),e&&(this._bytes4=e.slice())}}y.prototype._hex_header_ending=c;const m={extended:{sparse:64},transport:[void 0,"compress","encrypt","rle"],management:[void 0,"newer_or_longer","crc","append","clobber","newer","mtime_or_length","protect","rename"],conversion:[void 0,"binary","text","resume"]},b=["extended","transport","management","conversion"];class C extends i.Header{get_options(){var e={sparse:!!(64&this._bytes4[0])},t=this._bytes4.slice(0);return b.forEach((function(r,i){if(m[r]instanceof Array)"management"===r&&(e.skip_if_absent=!!(128&t[i]),t[i]&=31),e[r]=m[r][t[i]];else for(var n in m[r])e[n]=!!(t[i]&m[r][n]),e[n]&&(t[i]^=m[r][n]);!e[r]&&t[i]&&(e[r]="unknown:"+t[i])})),e}}class S extends i.Header{}class w extends i.Header{}class E extends i.Header{}class A extends i.Header{}E.prototype._hex_header_ending=c;class R extends i.Header{constructor(e){super(),this._bytes4=i.ENCODELIB.pack_u32_le(e)}get_offset(){return i.ENCODELIB.unpack_u32_le(this._bytes4)}}class L extends R{}class x extends R{}class k extends R{}const T=[[f,"ZRQINIT"],[p,"ZRINIT"],[g,"ZSINIT"],[y,"ZACK"],[C,"ZFILE"],[S,"ZSKIP"],void 0,[w,"ZABORT"],[E,"ZFIN"],[L,"ZRPOS"],[x,"ZDATA"],[k,"ZEOF"],[A,"ZFERR"],void 0,void 0,void 0,void 0,void 0,void 0,void 0];for(var O={},D=0;D11&&(t="Invalid hex header - no LF detected within 12 bytes!")}i.Header.parse_hex=F},560:e=>{"use strict";e.exports.ZMLIB={ZDLE:24,XON:17,XOFF:19,ABORT_SEQUENCE:[24,24,24,24,24],strip_ignored_bytes:function(e){for(var t=e.length-1;t>=0;t--)switch(e[t]){case 17:case 145:case 19:case 147:e.splice(t,1);continue}return e},find_subarray:function(e,t){var r,i=0;Date.now();e:for(;-1!==i&&-1!==(i=e.indexOf(t[0],i));){for(r=1;r{Object.assign(e.exports,r(963))},597:(e,t,r)=>{"use strict";var i=e.exports;function n(e){if(e.aborted())throw new i.Error("aborted")}window.Zmodem=i,Object.assign(i,r(357)),i.Browser={send_files:function(e,t,r){r||(r={});for(var i=[],o=0,s=t.length-1;s>=0;s--){var a=t[s];o+=a.size,i[s]={obj:a,name:a.name,size:a.size,mtime:new Date(a.lastModified),files_remaining:t.length-s,bytes_remaining:o}}var c=0;return function t(){var o=i[c];return o?(c++,e.send_offer(o).then((function(i){return r.on_offer_response&&r.on_offer_response(o.obj,i),void 0===i?t():new Promise((function(s){var a,c=new FileReader;c.onerror=function(e){throw console.error("file read error",e),"File read error: "+e},c.onprogress=function(t){t.target.result&&(a=new Uint8Array(t.target.result,i.get_offset()),n(e),i.send(a),r.on_progress&&r.on_progress(o.obj,i,a))},c.onload=function(c){a=new Uint8Array(c.target.result,i,a),n(e),i.end(a).then((function(){r.on_progress&&a.length&&r.on_progress(o.obj,i,a),r.on_file_complete&&r.on_file_complete(o.obj,i),s(t())}))},c.readAsArrayBuffer(o.obj)}))}))):Promise.resolve()}()},save_to_disk:function(e,t){var r=new Blob(e),i=URL.createObjectURL(r),n=document.createElement("a");n.style.display="none",n.href=i,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}}},963:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(560),r(246));const n=[42,42,24,66,48],o=["to_terminal","on_detect","on_retract","sender"];class s{constructor(e,t,r,i){this._confirmer=t,this._denier=r,this._is_valid=i,this._session_type=e}confirm(){return this._confirmer.apply(this,arguments)}deny(){return this._denier.apply(this,arguments)}is_valid(){return this._is_valid.apply(this,arguments)}get_session_role(){return this._session_type}}i.Sentry=class{constructor(e){if(!e)throw"Need options!";var t=this;o.forEach((function(r){if(!e[r])throw"Need “"+r+"”!";t["_"+r]=e[r]})),this._cache=[]}_after_session_end(){this._zsession=null}consume(e){if(e instanceof Array||(e=Array.prototype.slice.call(new Uint8Array(e))),this._zsession){var t=this._zsession;if(t.consume(e),!t.has_ended())return;e="receive"===t.type?t.get_trailing_bytes():[]}var r=this._parse(e),i=e;if(r){!!this._parsed_session&&(this._parsed_session.type===r.type&&(i=[]),this._on_retract()),this._parsed_session=r;var n=this;this._on_detect(new s(r.type,(function(){if(!this.is_valid())throw"Stale ZMODEM session!";return r.on("garbage",n._to_terminal),r.on("session_end",n._after_session_end.bind(n)),r.set_sender(n._sender),delete n._parsed_session,n._zsession=r}),this._send_abort.bind(this),(function(){return n._parsed_session===r})))}else{var o=this._parsed_session;this._parsed_session=null,o&&(1===i.length&&67===i[0]&&this._send_abort(),this._on_retract())}this._to_terminal(i)}get_confirmed_session(){return this._zsession||null}_send_abort(){this._sender(i.ZMLIB.ABORT_SEQUENCE)}_parse(e){var t=this._cache;for(t.push.apply(t,e);;){let e,r=i.ZMLIB.find_subarray(t,n);if(-1===r)break;t.splice(0,r);try{e=i.Session.parse(t)}catch(e){}if(!e)break;return 1===t.length&&t[0]===i.ZMLIB.XON&&t.shift(),t.length?null:e}return t.splice(21),null}}},246:(e,t,r)=>{"use strict";var i=e.exports;i.DEBUG=!0,Object.assign(i,r(444),r(956),r(80),r(560),r(547),r(270),r(792),r(595));const n=["CANFDX","CANOVIO","CANFC32"],o="spool_uint8array",s=[79,79],a=i.ZMLIB.ABORT_SEQUENCE;class c{constructor(){this._on_evt={},this._evt_once_index={}}_Add_event(e){this._on_evt[e]=[],this._evt_once_index[e]=[]}_get_evt_queue(e){if(!this._on_evt[e])throw"Bad event: "+e;return this._on_evt[e]}on(e,t){return this._get_evt_queue(e).push(t),this}off(e,t){var r=this._get_evt_queue(e);if(t){var i=r.indexOf(t);if(-1===i)throw"“"+t+"” is not in the “"+e+"” queue.";r.splice(i,1)}else r.pop();return this}_Happen(e){var t=this._get_evt_queue(e),r=Array.apply(null,arguments);r.shift();var i=this;return t.forEach((function(e){e.apply(i,r)})),t.length}}i.Session=class extends c{static parse(e){var t;try{t=i.Header.parse_hex(e)}catch(e){return}if(t)switch(t.NAME){case"ZRQINIT":return new i.Session.Receive;case"ZRINIT":return new i.Session.Send(t)}}set_sender(e){return this._sender=e,this}has_ended(){return this._has_ended()}consume(e){if(this._before_consume(e),this._aborted)throw new i.Error("already_aborted");e.length&&(this._strip_and_enqueue_input(e),this._check_for_abort_sequence(e)||this._consume_first())}aborted(){return!!this._aborted}constructor(){super(),this._config={},this._input_buffer=[],this._Add_event("receive"),this._Add_event("garbage"),this._Add_event("session_end")}get_role(){return this.type}_trim_leading_garbage_until_header(){var e=i.Header.trim_leading_garbage(this._input_buffer);e.length&&0===this._Happen("garbage",e)&&console.debug("Garbage: ",String.fromCharCode.apply(String,e),e)}_parse_and_consume_header(){this._trim_leading_garbage_until_header();var e=i.Header.parse(this._input_buffer);if(e)return i.DEBUG&&this._log_header("RECEIVED HEADER",e[0]),this._consume_header(e[0]),this._last_header_name=e[0].NAME,this._last_header_crc=e[1],e[0]}_log_header(e,t){console.debug(this.type,e,t.NAME,t._bytes4.join())}_consume_header(e){this._on_receive(e);var t=this._next_header_handler&&this._next_header_handler[e.NAME];if(!t)throw console.error("Unhandled header!",e,this._next_header_handler),new i.Error("Unhandled header: "+e.NAME);this._next_header_handler=null,t.call(this,e)}_check_for_abort_sequence(){var e=i.ZMLIB.find_subarray(this._input_buffer,a);if(-1!==e)throw this._input_buffer.splice(0,e+a.length),this._aborted=!0,this._on_session_end(),new i.Error("peer_aborted")}_send_header(e){if(!this._sender)throw"Need sender!";var t=Array.apply(null,arguments),r=this._create_header_bytes(t);i.DEBUG&&this._log_header("SENDING HEADER",r[1]),this._sender(r[0]),this._last_sent_header=r[1]}_create_header_bytes(e){var t=i.Header.build.apply(i.Header,e);return[t[this._get_header_formatter(e[0])](this._zencoder),t]}_strip_and_enqueue_input(e){i.ZMLIB.strip_ignored_bytes(e),this._input_buffer.push.apply(this._input_buffer,e)}abort(){this._sender(a.concat([8,8,8,8,8])),this._aborted=!0,this._sender=function(){throw new i.Error("already_aborted")},this._on_session_end()}_on_session_end(){this._Happen("session_end")}_on_receive(e){this._Happen("receive",e)}_before_consume(){}},i.Session.Receive=class extends i.Session{constructor(){super(),this._Add_event("offer"),this._Add_event("data_in"),this._Add_event("file_end")}_before_consume(e){if(this._bytes_after_OO)throw"PROTOCOL: Session is completed!";this._bytes_being_consumed=e}get_trailing_bytes(){if(this._aborted)return[];if(!this._bytes_after_OO)throw"PROTOCOL: Session is not completed!";return this._bytes_after_OO.slice(0)}_has_ended(){return this.aborted()||!!this._bytes_after_OO}_get_header_formatter(){return"to_hex"}_parse_and_consume_subpacket(){var e;e=16===this._last_header_crc?"parse16":"parse32";var t=i.Subpacket[e](this._input_buffer);return t&&(i.DEBUG&&console.debug(this.type,"RECEIVED SUBPACKET",t),this._consume_data(t),t.frame_end()&&(this._next_subpacket_handler=null)),t}_consume_first(){if(this._got_ZFIN){if(this._input_buffer.length<2)return;if(0===i.ZMLIB.find_subarray(this._input_buffer,s))return this._bytes_after_OO=(e=this._bytes_being_consumed.slice(0),0===i.ZMLIB.find_subarray(e,s)?e.splice(0,s.length):e[0]===s[s.length-1]&&e.splice(0,1),e),void this._on_session_end();throw"PROTOCOL: Only thing after ZFIN should be “OO” (79,79), not: "+this._input_buffer.join()}var e,t;do{t=this._next_subpacket_handler?this._parse_and_consume_subpacket():this._parse_and_consume_header()}while(t&&this._input_buffer.length)}_consume_data(e){if(this._on_receive(e),!this._next_subpacket_handler)throw"PROTOCOL: Received unexpected data packet after "+this._last_header_name+" header: "+e.get_payload().join();this._next_subpacket_handler.call(this,e)}_octets_to_string(e){return this._textdecoder||(this._textdecoder=new i.Text.Decoder),this._textdecoder.decode(new Uint8Array(e))}_consume_ZFILE_data(e,t){if(this._file_info)throw"PROTOCOL: second ZFILE data subpacket received";var r=t.get_payload(),i=r.indexOf(0),n=this._octets_to_string(r.slice(0,i)),o=this._octets_to_string(r.slice(1+i)).split(" "),s=o[1]&&parseInt(o[1],8)||void 0;s&&(s=new Date(1e3*s)),this._file_info={name:n,size:o[0]?parseInt(o[0],10):null,mtime:s||null,mode:o[2]&&parseInt(o[2],8)||null,serial:o[3]&&parseInt(o[3],10)||null,files_remaining:o[4]?parseInt(o[4],10):null,bytes_remaining:o[5]?parseInt(o[5],10):null};var a=new u(e.get_options(),this._file_info,this._accept.bind(this),this._skip.bind(this));this._current_transfer=a}_consume_ZDATA_data(e){if(!this._accepted_offer)throw"PROTOCOL: Received data without accepting!";if(!this._offset_ok)return console.warn("offset not ok!"),void _send_ZRPOS();this._file_offset+=e.get_payload().length,this._on_data_in(e),e.ack_expected()&&!e.frame_end()&&this._send_header("ZACK",i.ENCODELIB.pack_u32_le(this._file_offset))}_make_promise_for_between_files(){var e=this;return new Promise((function(t){var r={ZFILE:function(e){this._next_subpacket_handler=function(r){this._next_subpacket_handler=null,this._consume_ZFILE_data(e,r),this._Happen("offer",this._current_transfer),t(this._current_transfer)}},ZSINIT:function(t){e._next_subpacket_handler=function(t){e._next_subpacket_handler=null,e._consume_ZSINIT_data(t),e._send_header("ZACK"),e._next_header_handler=r}},ZFIN:function(){this._consume_ZFIN(),t()}};e._next_header_handler=r}))}_consume_ZSINIT_data(e){this._attn=e.get_payload()}start(){if(this._started)throw"Already started!";this._started=!0;var e=this._make_promise_for_between_files();return this._send_ZRINIT(),e}_accept(e){this._accepted_offer=!0,this._file_offset=e||0;var t=this,r=new Promise((function(e){t._next_header_handler={ZDATA:function(t){this._consume_ZDATA(t),this._next_subpacket_handler=this._consume_ZDATA_data,this._next_header_handler={ZEOF:function(t){this._consume_ZEOF(t),this._next_subpacket_handler=null,this._make_promise_for_between_files(),e(),this._send_ZRINIT()}}}}}));return this._send_ZRPOS(),r}_skip(){var e=this._make_promise_for_between_files();if(this._accepted_offer){if(!this._current_transfer)return;var t=function(){this._accepted_offer=!1,this._next_subpacket_handler=null,this._make_promise_for_between_files()}.bind(this);Object.assign(this._next_header_handler,{ZEOF:t,ZDATA:function(){t(),this._next_header_handler.ZEOF=t}.bind(this)})}return this._file_info=null,this._send_header("ZSKIP"),e}_send_ZRINIT(){this._send_header("ZRINIT",n)}_consume_ZFIN(){this._got_ZFIN=!0,this._send_header("ZFIN")}_consume_ZEOF(e){if(this._file_offset!==e.get_offset())throw"ZEOF offset mismatch; unimplemented (local: "+this._file_offset+"; ZEOF: "+e.get_offset()+")";this._on_file_end(),this._file_info=null,this._current_transfer=null}_consume_ZDATA(e){if(this._file_offset!==e.get_offset())throw"Error correction is unimplemented.";this._offset_ok=!0}_send_ZRPOS(){this._send_header("ZRPOS",this._file_offset)}_on_file_end(){this._Happen("file_end"),this._current_transfer&&(this._current_transfer._Happen("complete"),this._current_transfer=null)}_on_data_in(e){this._Happen("data_in",e),this._current_transfer&&this._current_transfer._Happen("input",e.get_payload())}},Object.assign(i.Session.Receive.prototype,{type:"receive"});var l={get_details:function(){return Object.assign({},this._file_info)},get_options:function(){return Object.assign({},this._zfile_opts)},get_offset:function(){return this._file_offset}};class h{constructor(e,t,r,i){this._file_info=e,this._file_offset=t||0,this._send=r,this._end=i}send(e){this._send(e),this._file_offset+=e.length}end(e){var t=this._end(e||[]);return e&&(this._file_offset+=e.length),t}}Object.assign(h.prototype,l);class u extends c{constructor(e,t,r,i){super(),this._zfile_opts=e,this._file_info=t,this._accept_func=r,this._skip_func=i,this._Add_event("input"),this._Add_event("complete"),this.on("input",this._input_handler)}_verify_not_skipped(){if(this._skipped)throw new i.Error("Already skipped!")}skip(){return this._verify_not_skipped(),this._skipped=!0,this._skip_func.apply(this,arguments)}accept(e){if(this._verify_not_skipped(),this._accepted)throw new i.Error("Already accepted!");switch(this._accepted=!0,e||(e={}),this._file_offset=e.offset||0,e.on_input){case null:case void 0:case"spool_array":case o:this._spool=[];break;default:if("function"!=typeof e.on_input)throw"Invalid “on_input”: "+e.on_input}return this._input_handler_mode=e.on_input||o,this._accept_func(this._file_offset).then(this._get_spool.bind(this))}_input_handler(e){if(this._file_offset+=e.length,"function"==typeof this._input_handler_mode)this._input_handler_mode(e);else{if(this._input_handler_mode===o)e=new Uint8Array(e);else if("spool_array"!==this._input_handler_mode)throw new i.Error("WTF?? _input_handler_mode = "+this._input_handler_mode);this._spool.push(e)}}_get_spool(){return this._spool}}Object.assign(u.prototype,l);const _={ZFILE:!0,ZDATA:!0};i.Session.Send=class extends i.Session{constructor(e){if(super(),!e)throw"Need first header!";if("ZRINIT"!==e.NAME)throw"First header should be ZRINIT, not "+e.NAME;this._last_header_name="ZRINIT",this._subpacket_encode_func="encode16",this._zencoder=new i.ZDLE,this._consume_ZRINIT(e),this._file_offset=0,this._start_keepalive_on_set_sender=!0}set_sender(e){return super.set_sender(e),this._start_keepalive_on_set_sender&&(this._start_keepalive_on_set_sender=!1,this._start_keepalive()),this}_get_header_formatter(e){return _[e]?"to_binary16":"to_hex"}_start_keepalive(){if(!this._keepalive_promise){var e=this;this._keepalive_promise=new Promise((function(t){e._keepalive_timeout=setTimeout(t,5e3)})).then((function(){e._next_header_handler={ZACK:function(){e._got_ZSINIT_ZACK=!0}},e._send_ZSINIT(),e._keepalive_promise=null,e._start_keepalive()}))}}_stop_keepalive(){this._keepalive_promise&&(clearTimeout(this._keepalive_timeout),this._keep_alive_promise=null)}_send_ZSINIT(){var e=[];this._zencoder.escapes_ctrl_chars()&&e.push("ESCCTL"),this._send_header_and_data(["ZSINIT",e],[0],"end_ack")}_consume_ZRINIT(e){if(this._last_ZRINIT=e,e.get_buffer_size())throw"Buffer size ("+e.get_buffer_size()+") is unsupported!";if(!e.can_full_duplex())throw"Half-duplex I/O is unsupported!";if(!e.can_overlap_io())throw"Non-overlap I/O is unsupported!";if(e.escape_8th_bit())throw"8-bit escaping is unsupported!";this._zencoder.set_escape_ctrl_chars(!0),e.escape_ctrl_chars()||console.debug("Peer didn’t request escape of all control characters. Will send ZSINIT to force recognition of escaped control characters.")}_ensure_receiver_escapes_ctrl_chars(){var e;if(this._last_ZRINIT.escape_ctrl_chars()||this._got_ZSINIT_ZACK)e=Promise.resolve();else{var t=this;e=new Promise((function(e){t._next_header_handler={ZACK:t=>{e()}},t._send_ZSINIT()}))}return e}_convert_params_to_offer_payload_array(e){var t=(e=i.Validation.offer_parameters(e)).name+"\0",r=[(e.size||0).toString(10),e.mtime?e.mtime.toString(8):"0",e.mode?(32768|e.mode).toString(8):"0","0"];return e.files_remaining&&(r.push(e.files_remaining),e.bytes_remaining&&r.push(e.bytes_remaining)),t+=r.join(" "),this._string_to_octets(t)}send_offer(e){if(i.DEBUG&&console.debug("SENDING OFFER",e),!e)throw"need file params!";if(this._sending_file)throw"Already sending file!";var t=this._convert_params_to_offer_payload_array(e);this._stop_keepalive();var r=this;function n(){r._next_header_handler={ZRPOS:function(e){i.DEBUG&&console.warn("Mid-transfer ZRPOS … implementation error?"),n()}}}return this._ensure_receiver_escapes_ctrl_chars().then((function(){var i=new Promise((function(t){r._next_header_handler={ZSKIP:function(){r._start_keepalive(),t()},ZRPOS:function(i){r._sending_file=!0,n(),t(new h(e,i.get_offset(),r._send_interim_file_piece.bind(r),r._end_file.bind(r)))}}}));return r._send_header_and_data(["ZFILE"],t,"end_ack"),delete r._sent_ZDATA,i}))}_send_header_and_data(e,t,r){var n=this._create_header_bytes(e),o=this._build_subpacket_bytes(t,r);n[0].push.apply(n[0],o),i.DEBUG&&(this._log_header("SENDING HEADER",n[1]),console.debug(this.type,"-- HEADER PAYLOAD:",r,o.length)),this._sender(n[0]),this._last_sent_header=n[1]}_build_subpacket_bytes(e,t){return i.Subpacket.build(e,t)[this._subpacket_encode_func](this._zencoder)}_build_and_send_subpacket(e,t){this._sender(this._build_subpacket_bytes(e,t))}_string_to_octets(e){this._textencoder||(this._textencoder=new i.Text.Encoder);var t=this._textencoder.encode(e);return Array.prototype.slice.call(t)}_send_interim_file_piece(e){return this._send_file_part(e,"no_end_no_ack"),Promise.resolve()}_ensure_we_are_sending(){if(!this._sending_file)throw"Not sending a file currently!"}_end_file(e){this._ensure_we_are_sending(),this._send_file_part(e,"end_no_ack");var t=this,r=new Promise((function(e){t._sending_file=!1,t._prepare_to_receive_ZRINIT(e)}));return this._send_header("ZEOF",this._file_offset),this._file_offset=0,r}_prepare_to_receive_ZRINIT(e){this._next_header_handler={ZRINIT:function(t){this._consume_ZRINIT(t),e&&e()}}}close(){var e="ZRINIT"===this._last_header_name;if(e||(e="ZSKIP"===this._last_header_name),e||(e="ZSINIT"===this._last_sent_header.name&&"ZACK"===this._last_header_name),!e)throw"Can’t close; last received header was “"+this._last_header_name+"”";var t=this,r=new Promise((function(e,r){t._next_header_handler={ZFIN:function(){t._sender(s),t._sent_OO=!0,t._on_session_end(),e()}}}));return this._send_header("ZFIN"),r}_has_ended(){return this.aborted()||!!this._sent_OO}_send_file_part(e,t){this._sent_ZDATA||(this._send_header("ZDATA",this._file_offset),this._sent_ZDATA=!0);for(var r=0,i=e.length;;){var n=Math.min(r+8192,i)-r,o=n+r>=i,s=e.slice(r,r+n);if(s instanceof Array||(s=Array.prototype.slice.call(s)),this._build_and_send_subpacket(s,o?t:"no_end_no_ack"),this._file_offset+=n,(r+=n)>=i)break}}_consume_first(){if(!this._parse_and_consume_header()&&"67"===this._input_buffer.join())throw"Receiver has fallen back to YMODEM."}_on_session_end(){this._stop_keepalive(),super._on_session_end()}},Object.assign(i.Session.Send.prototype,{type:"send"})},270:(e,t,r)=>{"use strict";var i,n=e.exports;Object.assign(n,r(724),r(80),r(560),r(595)),n.Subpacket=class e{static build(e,t){var r=i[t];if(!r)throw"No subpacket type “"+t+"” is defined! Try one of: "+Object.keys(i).join(", ");return new r(e)}encode16(e){return this._encode(e,n.CRC.crc16)}encode32(e){return this._encode(e,n.CRC.crc32)}get_payload(){return this._payload}static parse16(t){return e._parse(t,2)}static parse32(t){return e._parse(t,4)}constructor(e){this._payload=e}_encode(e,t){return e.encode(this._payload.slice(0)).concat([n.ZMLIB.ZDLE,this._frameend_num],e.encode(t(this._payload.concat(this._frameend_num))))}static _parse(e,t){for(var r,i,o={104:a,105:l,106:h,107:c},s=0;s{"use strict";var i=e.exports;Object.assign(i,r(595));const n=/\*\x18[AC]|\*\*\x18B/;function o(e,t){if(t<0)throw new i.Error("validation","“"+e+"” ("+t+") must be nonnegative.");if(t!==Math.floor(t))throw new i.Error("validation","“"+e+"” ("+t+") must be an integer.")}i.Validation={offer_parameters:function(e){if(!e.name)throw new i.Error("validation","Need “name”!");if("string"!=typeof e.name)throw new i.Error("validation","“name” ("+e.name+") must be a string!");if(e=Object.assign({},e),n.test(e.name)&&console.warn("The filename "+JSON.stringify(name)+" contains characters that look like a ZMODEM header. This could corrupt the ZMODEM session; consider renaming it so that the filename doesn’t contain control characters."),null!==e.serial&&void 0!==e.serial)throw new i.Error("validation","“serial” is meaningless.");if(e.serial=null,["size","mode","files_remaining","bytes_remaining"].forEach((function(t){var r;switch(typeof e[t]){case"object":r=null===e[t];break;case"undefined":e[t]=null,r=!0;break;case"number":o(t,e[t]),r=!0}if(!r)throw new i.Error("validation","“"+t+"” ("+e[t]+") must be null, undefined, or a number.")})),"number"==typeof e.mode&&(e.mode|=32768),0===e.files_remaining)throw new i.Error("validation","“files_remaining”, if given, must be positive.");var t;switch(typeof e.mtime){case"object":if(t=!0,e.mtime instanceof Date){var r=e.mtime;if(e.mtime=Math.floor(r.getTime()/1e3),e.mtime<0)throw new i.Error("validation","“mtime” ("+r+") must not be earlier than 1970.")}else null!==e.mtime&&(t=!1);break;case"undefined":e.mtime=null,t=!0;break;case"number":o("mtime",e.mtime),t=!0}if(!t)throw new i.Error("validation","“mtime” ("+e.mtime+") must be null, undefined, a Date, or a number.");return e}}},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0;var i=r(597);t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var n=function(){function e(e,t,r,n){var o=this;this.term=e,this.connectionFactory=t,this.args=r,this.authToken=n,this.reconnect=-1,this.bufSize=1024,this.sentry=new i.Sentry({to_terminal:function(e){return o.term.output(e)},on_detect:function(e){return o.zmodemDetect(e)},sender:function(e){return o.sendInput(e)},on_retract:function(e){return alert("never mind!")}})}return e.prototype.zmodemDetect=function(e){var t=this,r=e.confirm();"send"===r.type?this.zmodemSend(r):(r.on("offer",(function(e){return t.zmodemOffer(e)})),r.start())},e.prototype.zmodemSend=function(e){var t=this.getFileSendDialog();t.style.display="block";var r=document.getElementById("sendFileSelector");null!=r&&(r.onchange=function(r){i.Browser.send_files(e,r.target.files).then((function(){return e.close()})).catch((function(e){return console.log(e)})),t.style.display="none"})},e.prototype.zmodemOffer=function(e){var t=this.getFileAcceptanceDialog();t.style.display="block";var r=document.getElementById("filename");null!=r&&(r.textContent=e.get_details().name);var n=document.getElementById("filesize");null!=n&&(n.textContent=e.get_details().size);var o=document.getElementById("skipTransfer");null!=o&&(o.onclick=function(r){e.skip(),t.style.display="none"});var s=document.getElementById("acceptTransfer");null!=s&&(s.onclick=function(r){t.style.display="none",e.accept().then((function(t){i.Browser.save_to_disk(t,e.get_details().name)}))})},e.prototype.sendInput=function(e){var r,i=this.bufSize-1;r=Array.isArray(e)?String.fromCharCode.apply(null,e):e;for(var n=3*Math.floor(i/4),o=0;oIncoming file transfer: ( bytes)

Accept Decline',document.body.appendChild(e)),e},e.prototype.getFileSendDialog=function(){var e=document.getElementById("sendFileDialog");return null==e&&((e=document.createElement("div")).id="sendFileDialog",e.className="fileDialog",e.innerHTML='

Remote ready to receive files.

',document.body.appendChild(e)),e},e.prototype.open=function(){var e,r,i=this,n=this.connectionFactory.create();this.connection=n;var o=function(){n.onOpen((function(){var r=i.term.info();n.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var o=function(e,r){n.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(o),o(r.columns,r.rows),i.term.onInput((function(e){i.sendInput(e)})),e=setInterval((function(){n.send(t.msgPing)}),3e4)})),n.onReceive((function(e){var r=e.slice(1);switch(e[0]){case t.msgOutput:i.sentry.consume(Uint8Array.from(atob(r),(function(e){return e.charCodeAt(0)})));break;case t.msgPong:break;case t.msgSetWindowTitle:i.term.setWindowTitle(r);break;case t.msgSetPreferences:var n=JSON.parse(r);i.term.setPreferences(n);break;case t.msgSetReconnect:var o=JSON.parse(r);console.log("Enabling reconnect: "+o+" seconds"),i.reconnect=o;break;case t.msgSetBufferSize:var s=JSON.parse(r);i.bufSize=s}})),n.onClose((function(){clearInterval(e),i.term.deactivate(),i.term.showMessage("Connection Closed",0),i.reconnect>0&&(r=setTimeout((function(){n=i.connectionFactory.create(),i.term.reset(),o()}),1e3*i.reconnect))})),n.open()};return o(),function(){clearTimeout(r),n.close()}},e}();t.WebTTY=n},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),n=r(881),o=r(962),s=r(445),a=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new n.FitAddon,this.term.loadAddon(new o.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()}))}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(e)},e.prototype.getMessage=function(){return this.message},e.prototype.showMessage=function(e,t){this.message.innerHTML=e,this.showMessageElem(t)},e.prototype.showMessageElem=function(e){var t=this;this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),e>0&&(this.messageTimer=setTimeout((function(){t.elem.removeChild(t.message)}),e))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=a}},t={};function r(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(()=>{"use strict";var e=r(949),t=r(818),i=r(69),n=document.getElementById("terminal");if(null!==n){var o;o=new e.Xterm(n);var s=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",a=window.location.search,c=new i.ConnectionFactory(s,t.protocols),l=new t.WebTTY(o,c,a,gotty_auth_token).open();window.addEventListener("unload",(function(){l(),o.close()}))}})()})(); //# sourceMappingURL=gotty.js.map \ No newline at end of file diff --git a/bindata/static/js/gotty.js.LICENSE.txt b/bindata/static/js/gotty.js.LICENSE.txt index 8bebf87..1084423 100644 --- a/bindata/static/js/gotty.js.LICENSE.txt +++ b/bindata/static/js/gotty.js.LICENSE.txt @@ -1,3 +1,211 @@ +/*! + * crc-32 (https://npmjs.com/package/crc-32) + * @license Apache-2.0 + * @version 1.2.1 + * ==crc-32/LICENSE== + * Apache License + * Version 2.0, January 2004 + * http://www.apache.org/licenses/ + * + * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + * + * 1. Definitions. + * + * "License" shall mean the terms and conditions for use, reproduction, + * and distribution as defined by Sections 1 through 9 of this document. + * + * "Licensor" shall mean the copyright owner or entity authorized by + * the copyright owner that is granting the License. + * + * "Legal Entity" shall mean the union of the acting entity and all + * other entities that control, are controlled by, or are under common + * control with that entity. For the purposes of this definition, + * "control" means (i) the power, direct or indirect, to cause the + * direction or management of such entity, whether by contract or + * otherwise, or (ii) ownership of fifty percent (50%) or more of the + * outstanding shares, or (iii) beneficial ownership of such entity. + * + * "You" (or "Your") shall mean an individual or Legal Entity + * exercising permissions granted by this License. + * + * "Source" form shall mean the preferred form for making modifications, + * including but not limited to software source code, documentation + * source, and configuration files. + * + * "Object" form shall mean any form resulting from mechanical + * transformation or translation of a Source form, including but + * not limited to compiled object code, generated documentation, + * and conversions to other media types. + * + * "Work" shall mean the work of authorship, whether in Source or + * Object form, made available under the License, as indicated by a + * copyright notice that is included in or attached to the work + * (an example is provided in the Appendix below). + * + * "Derivative Works" shall mean any work, whether in Source or Object + * form, that is based on (or derived from) the Work and for which the + * editorial revisions, annotations, elaborations, or other modifications + * represent, as a whole, an original work of authorship. For the purposes + * of this License, Derivative Works shall not include works that remain + * separable from, or merely link (or bind by name) to the interfaces of, + * the Work and Derivative Works thereof. + * + * "Contribution" shall mean any work of authorship, including + * the original version of the Work and any modifications or additions + * to that Work or Derivative Works thereof, that is intentionally + * submitted to Licensor for inclusion in the Work by the copyright owner + * or by an individual or Legal Entity authorized to submit on behalf of + * the copyright owner. For the purposes of this definition, "submitted" + * means any form of electronic, verbal, or written communication sent + * to the Licensor or its representatives, including but not limited to + * communication on electronic mailing lists, source code control systems, + * and issue tracking systems that are managed by, or on behalf of, the + * Licensor for the purpose of discussing and improving the Work, but + * excluding communication that is conspicuously marked or otherwise + * designated in writing by the copyright owner as "Not a Contribution." + * + * "Contributor" shall mean Licensor and any individual or Legal Entity + * on behalf of whom a Contribution has been received by Licensor and + * subsequently incorporated within the Work. + * + * 2. Grant of Copyright License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * copyright license to reproduce, prepare Derivative Works of, + * publicly display, publicly perform, sublicense, and distribute the + * Work and such Derivative Works in Source or Object form. + * + * 3. Grant of Patent License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * (except as stated in this section) patent license to make, have made, + * use, offer to sell, sell, import, and otherwise transfer the Work, + * where such license applies only to those patent claims licensable + * by such Contributor that are necessarily infringed by their + * Contribution(s) alone or by combination of their Contribution(s) + * with the Work to which such Contribution(s) was submitted. If You + * institute patent litigation against any entity (including a + * cross-claim or counterclaim in a lawsuit) alleging that the Work + * or a Contribution incorporated within the Work constitutes direct + * or contributory patent infringement, then any patent licenses + * granted to You under this License for that Work shall terminate + * as of the date such litigation is filed. + * + * 4. Redistribution. You may reproduce and distribute copies of the + * Work or Derivative Works thereof in any medium, with or without + * modifications, and in Source or Object form, provided that You + * meet the following conditions: + * + * (a) You must give any other recipients of the Work or + * Derivative Works a copy of this License; and + * + * (b) You must cause any modified files to carry prominent notices + * stating that You changed the files; and + * + * (c) You must retain, in the Source form of any Derivative Works + * that You distribute, all copyright, patent, trademark, and + * attribution notices from the Source form of the Work, + * excluding those notices that do not pertain to any part of + * the Derivative Works; and + * + * (d) If the Work includes a "NOTICE" text file as part of its + * distribution, then any Derivative Works that You distribute must + * include a readable copy of the attribution notices contained + * within such NOTICE file, excluding those notices that do not + * pertain to any part of the Derivative Works, in at least one + * of the following places: within a NOTICE text file distributed + * as part of the Derivative Works; within the Source form or + * documentation, if provided along with the Derivative Works; or, + * within a display generated by the Derivative Works, if and + * wherever such third-party notices normally appear. The contents + * of the NOTICE file are for informational purposes only and + * do not modify the License. You may add Your own attribution + * notices within Derivative Works that You distribute, alongside + * or as an addendum to the NOTICE text from the Work, provided + * that such additional attribution notices cannot be construed + * as modifying the License. + * + * You may add Your own copyright statement to Your modifications and + * may provide additional or different license terms and conditions + * for use, reproduction, or distribution of Your modifications, or + * for any such Derivative Works as a whole, provided Your use, + * reproduction, and distribution of the Work otherwise complies with + * the conditions stated in this License. + * + * 5. Submission of Contributions. Unless You explicitly state otherwise, + * any Contribution intentionally submitted for inclusion in the Work + * by You to the Licensor shall be under the terms and conditions of + * this License, without any additional terms or conditions. + * Notwithstanding the above, nothing herein shall supersede or modify + * the terms of any separate license agreement you may have executed + * with Licensor regarding such Contributions. + * + * 6. Trademarks. This License does not grant permission to use the trade + * names, trademarks, service marks, or product names of the Licensor, + * except as required for reasonable and customary use in describing the + * origin of the Work and reproducing the content of the NOTICE file. + * + * 7. Disclaimer of Warranty. Unless required by applicable law or + * agreed to in writing, Licensor provides the Work (and each + * Contributor provides its Contributions) on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied, including, without limitation, any warranties or conditions + * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + * PARTICULAR PURPOSE. You are solely responsible for determining the + * appropriateness of using or redistributing the Work and assume any + * risks associated with Your exercise of permissions under this License. + * + * 8. Limitation of Liability. In no event and under no legal theory, + * whether in tort (including negligence), contract, or otherwise, + * unless required by applicable law (such as deliberate and grossly + * negligent acts) or agreed to in writing, shall any Contributor be + * liable to You for damages, including any direct, indirect, special, + * incidental, or consequential damages of any character arising as a + * result of this License or out of the use or inability to use the + * Work (including but not limited to damages for loss of goodwill, + * work stoppage, computer failure or malfunction, or any and all + * other commercial damages or losses), even if such Contributor + * has been advised of the possibility of such damages. + * + * 9. Accepting Warranty or Additional Liability. While redistributing + * the Work or Derivative Works thereof, You may choose to offer, + * and charge a fee for, acceptance of support, warranty, indemnity, + * or other liability obligations and/or rights consistent with this + * License. However, in accepting such obligations, You may act only + * on Your own behalf and on Your sole responsibility, not on behalf + * of any other Contributor, and only if You agree to indemnify, + * defend, and hold each Contributor harmless for any liability + * incurred by, or claims asserted against, such Contributor by reason + * of your accepting any such warranty or additional liability. + * + * END OF TERMS AND CONDITIONS + * + * APPENDIX: How to apply the Apache License to your work. + * + * To apply the Apache License to your work, attach the following + * boilerplate notice, with the fields enclosed by brackets "{}" + * replaced with your own identifying information. (Don't include + * the brackets!) The text should be enclosed in the appropriate + * comment syntax for the file format. We also recommend that a + * file or class name and description of purpose be included on the + * same "printed page" as the copyright notice for easier + * identification within third-party archives. + * + * Copyright (C) 2014-present SheetJS LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + /*! * xterm (https://npmjs.com/package/xterm) * @license MIT @@ -103,3 +311,213 @@ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN * THE SOFTWARE. */ + +/*! + * zmodem.js (https://npmjs.com/package/zmodem.js) + * @license Apache-2.0 + * @version 0.1.10 + * ==zmodem.js/LICENSE== + * Apache License + * Version 2.0, January 2004 + * http://www.apache.org/licenses/ + * + * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + * + * 1. Definitions. + * + * "License" shall mean the terms and conditions for use, reproduction, + * and distribution as defined by Sections 1 through 9 of this document. + * + * "Licensor" shall mean the copyright owner or entity authorized by + * the copyright owner that is granting the License. + * + * "Legal Entity" shall mean the union of the acting entity and all + * other entities that control, are controlled by, or are under common + * control with that entity. For the purposes of this definition, + * "control" means (i) the power, direct or indirect, to cause the + * direction or management of such entity, whether by contract or + * otherwise, or (ii) ownership of fifty percent (50%) or more of the + * outstanding shares, or (iii) beneficial ownership of such entity. + * + * "You" (or "Your") shall mean an individual or Legal Entity + * exercising permissions granted by this License. + * + * "Source" form shall mean the preferred form for making modifications, + * including but not limited to software source code, documentation + * source, and configuration files. + * + * "Object" form shall mean any form resulting from mechanical + * transformation or translation of a Source form, including but + * not limited to compiled object code, generated documentation, + * and conversions to other media types. + * + * "Work" shall mean the work of authorship, whether in Source or + * Object form, made available under the License, as indicated by a + * copyright notice that is included in or attached to the work + * (an example is provided in the Appendix below). + * + * "Derivative Works" shall mean any work, whether in Source or Object + * form, that is based on (or derived from) the Work and for which the + * editorial revisions, annotations, elaborations, or other modifications + * represent, as a whole, an original work of authorship. For the purposes + * of this License, Derivative Works shall not include works that remain + * separable from, or merely link (or bind by name) to the interfaces of, + * the Work and Derivative Works thereof. + * + * "Contribution" shall mean any work of authorship, including + * the original version of the Work and any modifications or additions + * to that Work or Derivative Works thereof, that is intentionally + * submitted to Licensor for inclusion in the Work by the copyright owner + * or by an individual or Legal Entity authorized to submit on behalf of + * the copyright owner. For the purposes of this definition, "submitted" + * means any form of electronic, verbal, or written communication sent + * to the Licensor or its representatives, including but not limited to + * communication on electronic mailing lists, source code control systems, + * and issue tracking systems that are managed by, or on behalf of, the + * Licensor for the purpose of discussing and improving the Work, but + * excluding communication that is conspicuously marked or otherwise + * designated in writing by the copyright owner as "Not a Contribution." + * + * "Contributor" shall mean Licensor and any individual or Legal Entity + * on behalf of whom a Contribution has been received by Licensor and + * subsequently incorporated within the Work. + * + * 2. Grant of Copyright License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * copyright license to reproduce, prepare Derivative Works of, + * publicly display, publicly perform, sublicense, and distribute the + * Work and such Derivative Works in Source or Object form. + * + * 3. Grant of Patent License. Subject to the terms and conditions of + * this License, each Contributor hereby grants to You a perpetual, + * worldwide, non-exclusive, no-charge, royalty-free, irrevocable + * (except as stated in this section) patent license to make, have made, + * use, offer to sell, sell, import, and otherwise transfer the Work, + * where such license applies only to those patent claims licensable + * by such Contributor that are necessarily infringed by their + * Contribution(s) alone or by combination of their Contribution(s) + * with the Work to which such Contribution(s) was submitted. If You + * institute patent litigation against any entity (including a + * cross-claim or counterclaim in a lawsuit) alleging that the Work + * or a Contribution incorporated within the Work constitutes direct + * or contributory patent infringement, then any patent licenses + * granted to You under this License for that Work shall terminate + * as of the date such litigation is filed. + * + * 4. Redistribution. You may reproduce and distribute copies of the + * Work or Derivative Works thereof in any medium, with or without + * modifications, and in Source or Object form, provided that You + * meet the following conditions: + * + * (a) You must give any other recipients of the Work or + * Derivative Works a copy of this License; and + * + * (b) You must cause any modified files to carry prominent notices + * stating that You changed the files; and + * + * (c) You must retain, in the Source form of any Derivative Works + * that You distribute, all copyright, patent, trademark, and + * attribution notices from the Source form of the Work, + * excluding those notices that do not pertain to any part of + * the Derivative Works; and + * + * (d) If the Work includes a "NOTICE" text file as part of its + * distribution, then any Derivative Works that You distribute must + * include a readable copy of the attribution notices contained + * within such NOTICE file, excluding those notices that do not + * pertain to any part of the Derivative Works, in at least one + * of the following places: within a NOTICE text file distributed + * as part of the Derivative Works; within the Source form or + * documentation, if provided along with the Derivative Works; or, + * within a display generated by the Derivative Works, if and + * wherever such third-party notices normally appear. The contents + * of the NOTICE file are for informational purposes only and + * do not modify the License. You may add Your own attribution + * notices within Derivative Works that You distribute, alongside + * or as an addendum to the NOTICE text from the Work, provided + * that such additional attribution notices cannot be construed + * as modifying the License. + * + * You may add Your own copyright statement to Your modifications and + * may provide additional or different license terms and conditions + * for use, reproduction, or distribution of Your modifications, or + * for any such Derivative Works as a whole, provided Your use, + * reproduction, and distribution of the Work otherwise complies with + * the conditions stated in this License. + * + * 5. Submission of Contributions. Unless You explicitly state otherwise, + * any Contribution intentionally submitted for inclusion in the Work + * by You to the Licensor shall be under the terms and conditions of + * this License, without any additional terms or conditions. + * Notwithstanding the above, nothing herein shall supersede or modify + * the terms of any separate license agreement you may have executed + * with Licensor regarding such Contributions. + * + * 6. Trademarks. This License does not grant permission to use the trade + * names, trademarks, service marks, or product names of the Licensor, + * except as required for reasonable and customary use in describing the + * origin of the Work and reproducing the content of the NOTICE file. + * + * 7. Disclaimer of Warranty. Unless required by applicable law or + * agreed to in writing, Licensor provides the Work (and each + * Contributor provides its Contributions) on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + * implied, including, without limitation, any warranties or conditions + * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + * PARTICULAR PURPOSE. You are solely responsible for determining the + * appropriateness of using or redistributing the Work and assume any + * risks associated with Your exercise of permissions under this License. + * + * 8. Limitation of Liability. In no event and under no legal theory, + * whether in tort (including negligence), contract, or otherwise, + * unless required by applicable law (such as deliberate and grossly + * negligent acts) or agreed to in writing, shall any Contributor be + * liable to You for damages, including any direct, indirect, special, + * incidental, or consequential damages of any character arising as a + * result of this License or out of the use or inability to use the + * Work (including but not limited to damages for loss of goodwill, + * work stoppage, computer failure or malfunction, or any and all + * other commercial damages or losses), even if such Contributor + * has been advised of the possibility of such damages. + * + * 9. Accepting Warranty or Additional Liability. While redistributing + * the Work or Derivative Works thereof, You may choose to offer, + * and charge a fee for, acceptance of support, warranty, indemnity, + * or other liability obligations and/or rights consistent with this + * License. However, in accepting such obligations, You may act only + * on Your own behalf and on Your sole responsibility, not on behalf + * of any other Contributor, and only if You agree to indemnify, + * defend, and hold each Contributor harmless for any liability + * incurred by, or claims asserted against, such Contributor by reason + * of your accepting any such warranty or additional liability. + * + * END OF TERMS AND CONDITIONS + * + * APPENDIX: How to apply the Apache License to your work. + * + * To apply the Apache License to your work, attach the following + * boilerplate notice, with the fields enclosed by brackets "{}" + * replaced with your own identifying information. (Don't include + * the brackets!) The text should be enclosed in the appropriate + * comment syntax for the file format. We also recommend that a + * file or class name and description of purpose be included on the + * same "printed page" as the copyright notice for easier + * identification within third-party archives. + * + * Copyright {yyyy} {name of copyright owner} + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */ diff --git a/bindata/static/js/gotty.js.map b/bindata/static/js/gotty.js.map index e847afa..d6dac52 100644 --- a/bindata/static/js/gotty.js.map +++ b/bindata/static/js/gotty.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://gotty/./node_modules/xterm-addon-fit/lib/xterm-addon-fit.js","webpack://gotty/./node_modules/xterm-addon-web-links/lib/xterm-addon-web-links.js","webpack://gotty/./node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js","webpack://gotty/./node_modules/xterm/lib/xterm.js","webpack://gotty/./src/websocket.ts","webpack://gotty/./src/webtty.ts","webpack://gotty/./src/xterm.ts","webpack://gotty/webpack/bootstrap","webpack://gotty/./src/main.ts"],"names":["self","module","exports","e","775","t","Object","defineProperty","value","FitAddon","r","prototype","activate","this","_terminal","dispose","fit","proposeDimensions","_core","rows","cols","_renderService","clear","resize","element","parentElement","dimensions","actualCellWidth","actualCellHeight","window","getComputedStyle","parseInt","getPropertyValue","i","Math","max","n","o","a","viewport","scrollBarWidth","floor","l","call","m","c","d","enumerable","get","Symbol","toStringTag","__esModule","create","bind","default","hasOwnProperty","p","s","WebLinksAddon","RegExp","open","opener","location","href","console","warn","_handler","_options","_useLinkProvider","matchIndex","_linkProvider","registerLinkProvider","WebLinkProvider","_linkMatcherId","registerLinkMatcher","deregisterLinkMatcher","LinkComputer","_regex","provideLinks","computeLink","source","flags","_translateBufferLineToStringWithWrap","u","exec","f","log","indexOf","lastIndex","length","h","v","start","x","y","end","push","range","text","buffer","active","getLine","isWrapped","translateToString","substring","965","GlyphRenderer","Float32Array","BYTES_PER_ELEMENT","_","_colors","_gl","_dimensions","_activeBuffer","_vertices","count","attributes","attributesBuffers","selectionAttributes","throwIfFalsy","createProgram","_program","_projectionLocation","getUniformLocation","_resolutionLocation","_textureLocation","_vertexArrayObject","createVertexArray","bindVertexArray","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","enableVertexAttribArray","vertexAttribPointer","FLOAT","Uint8Array","ELEMENT_ARRAY_BUFFER","_attributesBuffer","vertexAttribDivisor","_atlasTexture","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","enable","BLEND","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","onResize","beginFrame","_atlas","updateCell","_updateCell","NULL_CELL_CODE","WHITESPACE_CELL_CODE","getRasterizedGlyphCombinedChar","getRasterizedGlyph","offset","scaledCharLeft","scaledCharTop","size","scaledCanvasWidth","scaledCanvasHeight","texturePositionClipSpace","sizeClipSpace","fill","updateSelection","slice","selectionOpaque","rgba","selection","columnSelectMode","startCol","endCol","viewportCappedEndRow","viewportCappedStartRow","_updateSelectionRange","viewportStartRow","viewportEndRow","viewportY","RENDER_MODEL_INDICIES_PER_CELL","cells","RENDER_MODEL_FG_OFFSET","AttributeData","fg","bg","RENDER_MODEL_BG_OFFSET","getBgColorMode","_getColorFromAnsiIndex","getBgColor","g","toColorRGB","background","COMBINED_CHAR_BIT_MASK","C","getCell","getChars","ansi","Error","canvas","width","height","setColors","render","useProgram","lineLengths","subarray","set","STREAM_DRAW","hasCanvasChanged","uniform1i","activeTexture","TEXTURE0","cacheCanvas","generateMipmap","uniformMatrix4fv","PROJECTION_MATRIX","uniform2f","drawElementsInstanced","TRIANGLES","setAtlas","setDimensions","344","RectangleRenderer","_updateCachedColors","DYNAMIC_DRAW","_updateViewportRectangle","_bgFloat","_colorToFloat32Array","_selectionFloat","_addRectangleFloat","scaledCellWidth","scaledCellHeight","hasSelection","updateBackgrounds","_updateRectangle","foreground","expandFloat32Array","_addRectangle","310","RenderModel","Uint32Array","clearSelection","259","min","constructor","sliceFallback","795","WebglAddon","_preserveDrawingBuffer","_colorManager","colors","_renderer","WebglRenderer","setRenderer","_createRenderer","textureAtlas","configurable","clearTextureAtlas","clearCharAtlas","666","__extends","setPrototypeOf","__proto__","Array","_model","_workCell","CellData","_onRequestRedraw","EventEmitter","_renderLayers","LinkRenderLayer","screenElement","CursorRenderLayer","scaledCharWidth","scaledCharHeight","canvasWidth","canvasHeight","_devicePixelRatio","devicePixelRatio","_updateDimensions","_canvas","document","createElement","antialias","depth","preserveDrawingBuffer","getContext","appendChild","_rectangleRenderer","_glyphRenderer","onCharSizeChanged","_isAttached","body","contains","event","forEach","removeChild","_charAtlas","reset","_refreshCharAtlas","onDevicePixelRatioChange","style","onBlur","onFocus","onSelectionChanged","_updateSelectionModel","fire","onCursorMove","onOptionsChanged","acquireCharAtlas","warmUp","clearTexture","_updateModel","registerCharacterJoiner","deregisterCharacterJoiner","renderRows","_charSizeService","onGridChanged","ydisp","lines","loadCell","getCode","ceil","getOption","round","Disposable","381","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","error","getShaderInfoLog","deleteShader","attachShader","VERTEX_SHADER","FRAGMENT_SHADER","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","713","removeTerminalFromCache","generateConfig","ownedBy","configEquals","config","atlas","splice","WebglCharAtlas","433","is256Color","css","cursor","cursorAccent","selectionTransparent","contrastCache","fontFamily","fontSize","fontWeight","fontWeightBold","allowTransparency","drawBoldTextInBrightColors","minimumContrastRatio","167","texturePosition","_config","_didWarmUp","_cacheMap","_cacheMapCombined","_currentRowY","_currentRowX","_currentRowHeight","_workBoundingBox","top","left","bottom","right","_workAttributeData","_cacheCtx","alpha","_tmpCanvas","_tmpCtx","_doWarmUp","_drawToCache","DEFAULT_COLOR","clearRect","_getBackgroundColor","_getForegroundCss","_getMinimumContrastCss","channels","toCss","substr","_resolveBackgroundRgba","_resolveForegroundRgba","getCss","ensureContrastRatio","setCss","String","fromCharCode","save","isInvisible","isBold","isInverse","isDim","isItalic","getFgColor","getFgColorMode","globalCompositeOperation","fillStyle","fillRect","font","textBaseline","globalAlpha","DIM_OPACITY","fillText","restore","R","getImageData","data","b","_findGlyphBoundingBox","w","_clipImageData","putImageData","Uint8ClampedArray","ImageData","toString","592","BaseRenderLayer","_container","_alpha","_scaledCharWidth","_scaledCharHeight","_scaledCellWidth","_scaledCellHeight","_scaledCharLeft","_scaledCharTop","classList","add","zIndex","_initCanvas","_ctx","_clearAll","_setTransparency","cloneNode","replaceChild","_fillCells","_fillBottomLineAtCells","_fillLeftLineAtCell","_strokeRectAtCell","lineWidth","strokeRect","_clearCells","_fillCharTrueColor","_getFont","_clipRow","beginPath","rect","clip","461","_onRequestRefreshRowsEvent","_cell","_state","isFocused","_cursorRenderers","bar","_renderBarCursor","block","_renderBlockCursor","underline","_renderUnderlineCursor","_clearCursor","_cursorBlinkStateManager","pause","cursorY","resume","_render","restartBlinkAnimation","isPaused","_coreService","isCursorInitialized","isCursorHidden","baseY","cursorX","content","_renderBlurCursor","getWidth","isCursorVisible","strokeStyle","_renderCallback","_restartInterval","_blinkStartTimeout","_blinkInterval","clearInterval","clearTimeout","_animationFrame","cancelAnimationFrame","_animationTimeRestarted","Date","now","requestAnimationFrame","setTimeout","setInterval","activeElement","textarea","hasFocus","733","linkifier","onShowLinkUnderline","_onShowLinkUnderline","onHideLinkUnderline","_onHideLinkUnderline","linkifier2","_clearCurrentLink","x1","y1","y2","x2","INVERTED_DEFAULT_COLOR","742","contrastRatio","toPaddedHex","rgb","color","toRgba","blend","isOpaque","toColor","opaque","toChannels","opacity","pow","relativeLuminance","relativeLuminance2","reduceLuminance","increaseLuminance","499","CHAR_ATLAS_CELL_SPACING","345","forwardEvent","_listeners","_disposed","_event","859","getDisposeArrayDisposable","disposeArray","_disposables","_isDisposed","register","unregister","455","concat","fillFallback","147","ExtendedAttrs","extended","fromColorRGB","clone","isUnderline","isBlink","isFgRGB","isBgRGB","isFgPalette","isBgPalette","isFgDefault","isBgDefault","isAttributeDefault","hasExtendedAttrs","updateExtended","isEmpty","getUnderlineColor","underlineColor","getUnderlineColorMode","isUnderlineColorRGB","isUnderlineColorPalette","isUnderlineColorDefault","getUnderlineStyle","underlineStyle","782","apply","arguments","combinedData","fromCharData","setFromCharData","isCombined","stringFromCodePoint","charCodeAt","CHAR_DATA_ATTR_INDEX","CHAR_DATA_CHAR_INDEX","CHAR_DATA_WIDTH_INDEX","getAsCharData","855","WHITESPACE_CELL_WIDTH","WHITESPACE_CELL_CHAR","NULL_CELL_WIDTH","NULL_CELL_CHAR","CHAR_DATA_CODE_INDEX","DEFAULT_ATTR","133","Utf8ToUtf32","StringToUtf32","utf32ToString","_interim","decode","interim","4567","AccessibilityManager","_liveRegionLineCount","_charsToConsume","_charsToAnnounce","_accessibilityTreeRoot","_rowContainer","setAttribute","_rowElements","_createAccessibilityTreeNode","_topBoundaryFocusListener","_onBoundaryFocus","_bottomBoundaryFocusListener","addEventListener","_refreshRowsDimensions","_renderRowsDebouncer","RenderDebouncer","_renderRows","_refreshRows","_liveRegion","insertAdjacentElement","_onResize","onRender","onScroll","onA11yChar","_onChar","onLineFeed","onA11yTab","_onTab","onKey","_onKey","key","_clearLiveRegion","onDimensionsChange","_screenDprMonitor","ScreenDprMonitor","setListener","addDisposableDomListener","removeElementFromParent","target","getAttribute","relatedTarget","pop","shift","removeEventListener","unshift","scrollLines","focus","preventDefault","stopImmediatePropagation","children","tabIndex","_refreshRowDimensions","textContent","tooMuchOutput","isMac","parentNode","refresh","translateBufferLineToString","innerText","_announceCharacters","3614","replace","decPrivateModes","bracketedPasteMode","triggerDataEvent","getBoundingClientRect","clientX","clientY","rightClickHandler","moveTextAreaUnderMouseCursor","paste","handlePasteEvent","copyHandler","bracketTextForPaste","prepareTextForTerminal","clipboardData","setData","selectionText","stopPropagation","getData","rightClickSelect","select","4774","7239","ColorContrastCache","_color","_rgba","setColor","getColor","5680","ColorManager","DEFAULT_ANSI_COLORS","freeze","_litmusColor","createLinearGradient","_contrastCache","onOptionsChange","setTheme","_parseColor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","split","map","Number","9631","3656","3551","__decorate","getOwnPropertyDescriptor","Reflect","decorate","__param","MouseZone","Linkifier","_bufferService","_logService","_unicodeService","_linkMatchers","_nextLinkMatcherId","_onLinkTooltip","_rowsToLinkify","attachToDom","_element","_mouseZoneManager","linkifyRows","clearAll","_rowsTimeoutId","_linkifyRows","_timeBeforeLatency","iterator","hasNext","next","_doLinkifyRow","first","debug","id","regex","handler","validationCallback","hoverTooltipCallback","tooltipCallback","hoverLeaveCallback","leaveCallback","willLinkActivate","priority","_addLinkMatcherToList","stringIndexToBufferIndex","getFg","_addLink","getStringCellWidth","_createLinkHoverEvent","remove","IBufferService","ILogService","IUnicodeService","clickCallback","hoverCallback","6465","Linkifier2","_linkProviders","_linkCacheDisposables","_isMouseOut","_activeLine","_currentLink","_mouseService","_onMouseMove","_onClick","_lastMouseEvent","_positionFromMouseEvent","composedPath","_lastBufferCell","_onHover","_askForLink","_linkAtPosition","link","_activeProviderReplies","Map","_checkLinkProviderResult","_removeIntersectingLinks","Set","has","find","_handleNewLink","_linkLeave","state","decorations","pointerCursor","isHovered","_linkHover","defineProperties","toggle","_fireUnderlineEvent","onRenderedBufferChange","hover","_createLinkUnderlineEvent","leave","getCoords","9042","promptLabel","6954","MouseZoneManager","_screenElement","_selectionService","_optionsService","_zones","_areZonesActive","_lastHoverCoords","_initialSelectionLength","_onMouseDown","_mouseMoveListener","_mouseLeaveListener","_onMouseLeave","_clickListener","_deactivate","_activate","_currentZone","pageX","pageY","_findZoneEventAt","_tooltipTimeout","_onTooltip","options","linkTooltipHoverDuration","_getSelectionLength","IMouseService","ISelectionService","IOptionsService","6193","_rowCount","_rowStart","_rowEnd","_innerRefresh","5596","_currentDevicePixelRatio","_listener","clearListener","_outerListener","_updateDpr","_resolutionMediaMatchList","removeListener","matchMedia","addListener","3236","Terminal","S","E","L","k","A","T","O","D","P","M","browser","_keyDownHandled","_onCursorMove","_onRender","_onSelectionChange","_onTitleChange","_onBell","_onFocus","_onBlur","_onA11yCharEmitter","_onA11yTabEmitter","_setup","_instantiationService","createInstance","_inputHandler","onRequestBell","bell","onRequestRefreshRows","onRequestReset","onRequestWindowsOptionsReport","_reportWindowsOptions","onAnsiColorChange","_changeAnsiColor","onTitleChange","_afterResize","optionsService","colorIndex","onThemeChange","_customKeyEventHandler","write","buffers","preventScroll","_updateOptions","measure","syncScrollArea","screenReaderMode","_accessibilityManager","setupTabStops","_setTheme","theme","_onTextAreaFocus","sendFocus","C0","ESC","updateCursorStyle","_showCursor","blur","_onTextAreaBlur","_syncTextArea","isCursorInViewport","_compositionHelper","isComposing","ybase","lineHeight","_initGlobal","_bindKeys","isFirefox","button","rightClickSelectsWord","isLinux","_keyUp","_keyDown","_keyPress","compositionstart","compositionupdate","compositionend","updateCompositionElements","_queueLinkification","isConnected","_document","ownerDocument","dir","createDocumentFragment","_viewportElement","_viewportScrollArea","_helperContainer","CoreBrowserService","setService","ICoreBrowserService","CharSizeService","ICharSizeService","_theme","onOptionChange","_characterJoinerService","CharacterJoinerService","ICharacterJoinerService","RenderService","IRenderService","_compositionView","CompositionHelper","_soundService","SoundService","ISoundService","MouseService","Viewport","onRequestSyncScrollBar","SelectionService","onRequestScrollLines","amount","suppressScrollEvent","onSelectionChange","onRequestRedraw","onLinuxMouseSelection","_onScroll","onMouseDown","_coreMouseService","areMouseEventsActive","disable","bindMouse","rendererType","Renderer","DomRenderer","getRawByteCoords","overrideType","type","buttons","deltaY","triggerMouseEvent","col","row","action","ctrl","ctrlKey","alt","altKey","shiftKey","mouseup","wheel","mousedrag","mousemove","cancel","onProtocolChange","logLevel","explainEvents","passive","activeProtocol","shouldForceSelection","hasScrollback","getLinesScrolled","applicationCursorKeys","abs","onWheel","onTouchStart","onTouchMove","refreshRows","shouldColumnSelect","attachCustomKeyEventHandler","deregister","markers","addMarker","normal","setSelection","getSelection","getSelectionPosition","startColumn","selectionStart","startRow","endColumn","selectionEnd","endRow","selectAll","selectLines","keydown","scrollToBottom","evaluateKeyboardEvent","macOptionIsMeta","_isThirdLevelShift","ETX","CR","domEvent","metaKey","isWindows","keyCode","charCode","which","_soundBell","playBellSound","hasValidSize","getBlankLine","DEFAULT_ATTR_DATA","position","WindowsOptionsReportType","GET_WIN_SIZE_PIXELS","toFixed","GET_CELL_SIZE_PIXELS","cancelEvents","_visualBell","bellStyle","CoreTerminal","1680","_scrollLines","_scrollArea","_lastRecordedBufferLength","_lastRecordedViewportHeight","_lastRecordedBufferHeight","_lastTouchY","_lastScrollTop","_wheelPartialScroll","_refreshAnimationFrame","_ignoreNextScrollEvent","offsetWidth","backgroundColor","_refresh","offsetHeight","scrollTop","offsetParent","_bubbleScroll","cancelable","_getPixelsScrolled","_applyScrollModifier","deltaMode","WheelEvent","DOM_DELTA_LINE","DOM_DELTA_PAGE","DOM_DELTA_PIXEL","fastScrollModifier","fastScrollSensitivity","scrollSensitivity","touches","2950","_textarea","_isComposing","_isSendingComposition","_compositionPosition","_dataAlreadySent","_finalizeComposition","_handleAnyTextareaChanges","ICoreService","9806","getCoordsRelativeToElement","9504","moveToCellSequence","244","AddonManager","_addons","instance","loadAddon","isDisposed","_wrappedAddonDispose","4389","_addonManager","_checkProposedApi","allowProposedApi","onData","onBinary","onBell","_parser","_buffer","_verifyIntegers","registerMarker","scrollPages","scrollToTop","scrollToLine","writeUtf8","writeln","setOption","isNaN","init","getNullCell","_onBufferChange","_normal","_alternate","onBufferActivate","alternate","_line","registerCsiHandler","toArray","addCsiHandler","registerDcsHandler","addDcsHandler","registerEscHandler","addEscHandler","registerOscHandler","addOscHandler","unicodeService","versions","activeVersion","1546","_rendererId","_currentGlyphIdentifier","chars","code","bold","dim","italic","_drawChars","_getContrastColor","_drawUncachedChars","draw","join","2512","_coreBrowserService","cursorBlink","cursorStyle","cursorWidth","3700","GridCache","cache","5098","3525","_id","TextRenderLayer","SelectionRenderLayer","_runOperation","letterSpacing","IInstantiationService","1752","4149","_clearState","_didStateChange","_areCoordinatesEqual","9596","_characterWidth","_characterFont","_characterOverlapCache","_forEachCell","getJoinedCharacters","JoinedCellData","_isOverlapping","getCodePoint","_drawBackground","_drawForeground","measureText","9616","BaseCharAtlas","1420","DynamicCharAtlas","2040","8803","1906","NoneCharAtlas","getGlyphCacheKey","_drawToCacheCount","_glyphsWaitingOnBitmap","_bitmapCommitTimeout","_bitmap","_cacheCanvas","_width","_height","LRUMap","prealloc","_canCache","_drawFromCache","capacity","peek","index","_toCoordinateX","_toCoordinateY","drawImage","inBitmap","_getForegroundColor","_addGlyphToBitmap","isSafari","_generateBitmap","createImageBitmap","then","7001","_map","_head","_tail","_nodePool","_unlinkNode","prev","_appendNode","peekValue","1296","_linkifier","_linkifier2","_terminalClass","_refreshRowElements","_selectionContainer","_injectCss","_rowFactory","DomRendererRowFactory","_onLinkHover","_onLinkLeave","_themeStyleElement","_dimensionsStyleElement","overflow","_terminalSelector","BOLD_CLASS","ITALIC_CLASS","CURSOR_CLASS","CURSOR_STYLE_BLOCK_CLASS","CURSOR_BLINK_CLASS","CURSOR_STYLE_BAR_CLASS","CURSOR_STYLE_UNDERLINE_CLASS","_createSelectionElement","createRow","_setCellUnderline","textDecoration","3787","UNDERLINE_CLASS","DIM_CLASS","display","_applyMinimumContrast","_addStyle","456","SelectionModel","isSelectAllActive","selectionStartLength","areSelectionValuesReversed","onTrim","428","_onCharSizeChange","_measureStrategy","_parentElement","_result","_measureElement","4269","_characterJoiners","_nextCharacterJoinerId","getBg","getTrimmedLength","_getJoinedRanges","_mergeRanges","_stringRangesToCellRanges","getString","5114","getRootNode","8934","3230","_isPaused","_needsFullRefresh","_isNextRenderRedrawOnly","_needsSelectionRefresh","_canvasWidth","_canvasHeight","_selectionState","_onDimensionsChange","_onRefreshRequest","_renderDebouncer","_fullRefresh","onCharSizeChange","IntersectionObserver","_onIntersectionChange","threshold","observe","disconnect","isIntersecting","intersectionRatio","_fireOnCanvasResize","changeOptions","9312","_dragScrollAmount","_enabled","_mouseDownTimeStamp","_oldHasSelection","_oldSelectionStart","_oldSelectionEnd","_onLinuxMouseSelection","_onRedrawRequest","_onRequestScrollLines","_mouseUpListener","_onMouseUp","onUserInput","_trimListener","_onTrim","_onBufferActivate","_activeSelectionMode","_removeMouseDownListeners","finalSelectionStart","finalSelectionEnd","_isClickInSelection","_getMouseBufferCoords","_areCoordsInSelection","_selectWordAtCursor","currentLink","getRangeLength","_selectWordAt","_getMouseEventScrollAmount","macOptionClickForcesSelection","timeStamp","_onIncrementalClick","detail","_onSingleClick","_onDoubleClick","_onTripleClick","_addMouseDownListeners","_dragScrollIntervalTimer","_dragScroll","hasWidth","_selectLineAt","_selectToWordAt","_fireEventIfSelectionChanged","_fireOnSelectionChange","activeBuffer","_convertViewportColToCharacterIndex","_getWordAt","charAt","_isCharWordSeparator","trim","wordSeparator","getWrappedRangeForLine","last","4725","createDecorator","357","_audioContext","AudioContext","webkitAudioContext","audioContext","createBufferSource","decodeAudioData","_base64ToArrayBuffer","_removeMimeType","bellSound","connect","destination","atob","6349","CircularList","_maxLength","onDeleteEmitter","onInsertEmitter","onTrimEmitter","_array","_startIndex","_length","_getCyclicIndex","recycle","trimStart","shiftElements","1439","isArray","8969","_onBinary","_onData","_onLineFeed","InstantiationService","OptionsService","BufferService","LogService","CoreService","CoreMouseService","ICoreMouseService","_dirtyRowService","DirtyRowService","IDirtyRowService","UnicodeService","_charsetService","CharsetService","ICharsetService","InputHandler","markRangeDirty","scrollBottom","_writeBuffer","WriteBuffer","parse","_onScrollApi","_windowsMode","writeSync","LogLevelEnum","WARN","MINIMUM_COLS","MINIMUM_ROWS","scroll","windowsMode","_enableWindowsMode","updateWindowsModeWrappedState","final","8460","5435","setWinLines","restoreWin","minimizeWin","setWinPosition","setWinSizePixels","raiseWin","lowerWin","refreshWin","setWinSizeChars","maximizeWin","fullscreenWin","getWinState","getWinPosition","getWinSizePixels","getScreenSizePixels","getCellSizePixels","getWinSizeChars","getScreenSizeChars","getIconTitle","getWinTitle","pushTitle","popTitle","_data","hook","put","unhook","EscapeSequenceParser","_parseBuffer","_stringDecoder","_utf8Decoder","_windowTitle","_iconName","_windowTitleStack","_iconNameStack","_curAttrData","_eraseAttrDataInternal","_onRequestBell","_onRequestRefreshRows","_onRequestReset","_onRequestSyncScrollBar","_onRequestWindowsOptionsReport","_onA11yChar","_onA11yTab","_onAnsiColorChange","_parseStack","paused","cursorStartX","cursorStartY","decodedLength","setCsiHandlerFallback","identifier","identToString","params","setEscHandlerFallback","setExecuteHandlerFallback","setOscHandlerFallback","setDcsHandlerFallback","payload","setPrintHandler","print","insertChars","intermediates","scrollLeft","cursorUp","scrollRight","cursorDown","cursorForward","cursorBackward","cursorNextLine","cursorPrecedingLine","cursorCharAbsolute","cursorPosition","cursorForwardTab","eraseInDisplay","prefix","eraseInLine","insertLines","deleteLines","deleteChars","scrollUp","scrollDown","eraseChars","cursorBackwardTab","charPosAbsolute","hPositionRelative","repeatPrecedingCharacter","sendDeviceAttributesPrimary","sendDeviceAttributesSecondary","linePosAbsolute","vPositionRelative","hVPosition","tabClear","setMode","setModePrivate","resetMode","resetModePrivate","charAttributes","deviceStatus","deviceStatusPrivate","softReset","setCursorStyle","setScrollRegion","saveCursor","windowOptions","restoreCursor","insertColumns","deleteColumns","setExecuteHandler","BEL","LF","lineFeed","VT","FF","carriageReturn","BS","backspace","HT","tab","SO","shiftOut","SI","shiftIn","C1","IND","NEL","nextLine","HTS","tabSet","OscHandler","setTitle","setIconName","setAnsiColor","reverseIndex","keypadApplicationMode","keypadNumericMode","fullReset","setgLevel","selectDefaultCharset","selectCharset","CHARSETS","screenAlignmentPattern","setErrorHandler","_preserveStack","_logSlowResolvingAsync","Promise","race","catch","clearRange","charset","wraparound","modes","insertMode","markDirty","setCellFromCodePoint","wcwidth","_eraseAttrData","insertCells","addCodepointToCell","precedingCodepoint","hasContent","DcsHandler","convertEol","reverseWraparound","_restrictCursor","nextStop","origin","_setCursor","_moveCursor","tabs","prevStop","_eraseInBufferLine","replaceCells","_resetBufferLine","deleteCells","_is","termName","setgCharset","DEFAULT_CHARSET","applicationKeypad","activeEncoding","activateAltBuffer","activateNormalBuffer","_updateAttrColor","_extractColor","hasSubParams","getSubParams","_processUnderline","savedX","savedY","savedCurAttrData","savedCharset","_savedCharset","_parseAnsiColorChange","markAllDirty","844","6114","isIphone","isIpad","navigator","userAgent","platform","includes","test","8273","9282","3734","9092","BufferStringIterator","Buffer","MAX_BUFFER_SIZE","_hasScrollback","_nullCell","_whitespaceCell","_cols","_rows","_getCorrectBufferLength","getWhitespaceCell","BufferLine","maxLength","scrollback","fillViewportRows","_isReflowEnabled","_reflow","_reflowLarger","_reflowSmaller","reflowLargerGetLinesToRemove","reflowLargerCreateNewLayout","reflowLargerApplyNewLayout","layout","_reflowLargerAdjustViewport","countRemoved","reflowSmallerGetNewLineLengths","newLines","copyCellsFrom","getWrappedLineTrimmedLength","setCell","tabStopWidth","Marker","line","onInsert","onDelete","onDispose","_removeMarker","_trimRight","_endIndex","_startOverscan","_endOverscan","_current","8437","_combined","_extendedAttrs","keys","copyFrom","4841","4634","reduce","5295","BufferSet","_alt","inactiveBuffer","511","643","4863","_nextId","_onDispose","7116","B","j","q","z","Q","K","Y","Z","H","2584","NUL","SOH","STX","EOT","ENQ","ACK","DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM","SUB","FS","GS","RS","US","SP","DEL","PAD","HOP","BPH","NBH","SSA","ESA","HTJ","VTS","PLD","PLU","RI","SS2","SS3","DCS","PU1","PU2","STS","CCH","MW","SPA","EPA","SOS","SGCI","SCI","CSI","ST","OSC","PM","APC","7399","48","49","50","51","52","53","54","55","56","57","186","187","188","189","190","191","192","219","220","221","222","482","225","UnicodeV6","version","5981","queueMicrotask","resolve","_action","_callbacks","_pendingData","_bufferOffset","_isSyncWriting","_syncCalls","_innerWrite","5770","PAYLOAD_LIMIT","6351","DcsParser","_handlers","_active","_ident","_handlerFb","_stack","loopPosition","fallThrough","registerHandler","clearHandler","setHandlerFallback","Params","addParam","_params","_hitLimit","2015","VT500_TRANSITION_TABLE","TransitionTable","table","setDefault","addMany","_transitions","handlers","handlerPos","transition","chunkPos","initialState","currentState","_collect","_printHandlerFb","_executeHandlerFb","_csiHandlerFb","_escHandlerFb","_errorHandlerFb","_printHandler","_executeHandlers","_csiHandlers","_escHandlers","_oscParser","OscParser","_dcsParser","_errorHandler","_identifier","reverse","clearPrintHandler","clearEscHandler","clearExecuteHandler","clearCsiHandler","clearDcsHandler","clearOscHandler","clearErrorHandler","collect","abort","addSubParam","addDigit","6242","_start","_put","8742","maxSubParamsLength","Int32Array","_subParams","_subParamsLength","_subParamsIdx","Uint16Array","_rejectDigits","_rejectSubDigits","_digitIsSub","fromArray","getSubParamsAll","744","isUserScrolling","_cachedBlankLine","isFull","7994","glevel","_charsets","1753","NONE","events","restrict","X10","VT200","DRAG","ANY","DEFAULT","SGR","_protocols","_encodings","_activeProtocol","_activeEncoding","_onProtocolChange","_lastEvent","addProtocol","addEncoding","_compareEvents","triggerBinaryEvent","down","up","drag","move","6975","_onUserInput","_scrollToBottom","disableStdin","3730","_end","4348","__spreadArrays","ServiceCollection","_entries","_services","getService","getServiceDependencies","sort","name","7866","DEBUG","info","INFO","ERROR","off","OFF","_updateLogLevel","_evalLazyOptionalParams","_log","7302","DEFAULT_OPTIONS","DEFAULT_BELL_SOUND","altClickMovesCursor","_onOptionChange","_sanitizeAndValidateOption","8343","di$target","di$dependencies","serviceRegistry","2585","1480","_providers","_onChange","_activeProvider","url","protocols","Connection","ConnectionFactory","bare","WebSocket","close","send","isOpen","readyState","CONNECTING","OPEN","onOpen","callback","onopen","onReceive","onmessage","onClose","onclose","msgInputUnknown","msgInput","msgPing","msgResizeTerminal","msgUnknownOutput","msgOutput","msgPong","msgSetWindowTitle","msgSetPreferences","msgSetReconnect","msgSetBufferSize","term","connectionFactory","args","authToken","reconnect","bufSize","pingTimer","reconnectTimeout","connection","setup","termInfo","JSON","stringify","Arguments","AuthToken","resizeHandler","colmuns","columns","onInput","input","effectiveBufferSize","inputChunk","output","setWindowTitle","preferences","setPreferences","autoReconnect","deactivate","showMessage","WebTTY","elem","fitAddOn","message","className","messageTimeout","resizeListener","from","timeout","messageTimer","removeMessage","title","onDataHandler","onResizeHandler","Xterm","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","undefined","__webpack_modules__","getElementById","protocol","host","pathname","search","factory","gotty_auth_token"],"mappings":"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","file":"gotty.js","sourcesContent":["/*!\n * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit)\n * @license MIT\n * @version 0.5.0\n * ==xterm-addon-fit/LICENSE==\n * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.FitAddon=t():e.FitAddon=t()}(self,(function(){return(()=>{\"use strict\";var e={775:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue(\"height\")),i=Math.max(0,parseInt(t.getPropertyValue(\"width\"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue(\"padding-top\"))+parseInt(n.getPropertyValue(\"padding-bottom\"))),a=i-(parseInt(n.getPropertyValue(\"padding-right\"))+parseInt(n.getPropertyValue(\"padding-left\")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(a/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()}));\n//# sourceMappingURL=xterm-addon-fit.js.map","/*!\n * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links)\n * @license MIT\n * @version 0.4.0\n * ==xterm-addon-web-links/LICENSE==\n * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.WebLinksAddon=t():e.WebLinksAddon=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.WebLinksAddon=void 0;var r=n(1),i=new RegExp(\"(?:^|[^\\\\da-z\\\\.-]+)((https?:\\\\/\\\\/)((([\\\\da-z\\\\.-]+)\\\\.([a-z\\\\.]{2,6}))|((\\\\d{1,3}\\\\.){3}\\\\d{1,3})|(localhost))(:\\\\d{1,5})?((\\\\/[\\\\/\\\\w\\\\.\\\\-%~:+@]*)*([^:\\\"'\\\\s]))?(\\\\?[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?(#[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?)($|[^\\\\/\\\\w\\\\.\\\\-%]+)\");function o(e,t){var n=window.open();n?(n.opener=null,n.location.href=t):console.warn(\"Opening link blocked as opener could not be cleared\")}var a=function(){function e(e,t,n){void 0===e&&(e=o),void 0===t&&(t={}),void 0===n&&(n=!1),this._handler=e,this._options=t,this._useLinkProvider=n,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&\"registerLinkProvider\"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new r.WebLinkProvider(this._terminal,i,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(i,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var r=function(){function e(e,t,n){this._terminal=e,this._regex=t,this._handler=n}return e.prototype.provideLinks=function(e,t){t(i.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=r;var i=function(){function e(){}return e.computeLink=function(t,n,r,i){for(var o,a=new RegExp(n.source,(n.flags||\"\")+\"g\"),s=e._translateBufferLineToStringWithWrap(t-1,!1,r),u=s[0],d=s[1],l=-1,c=[];null!==(o=a.exec(u));){var f=o[1];if(!f){console.log(\"match found without corresponding matchIndex\");break}if(l=u.indexOf(f,l+1),a.lastIndex=l+f.length,l<0)break;for(var p=l+f.length,h=d+1;p>r.cols;)p-=r.cols,h++;var v={start:{x:l+1,y:d+1},end:{x:p,y:h}};c.push({range:v,text:f,activate:i})}return c},e._translateBufferLineToStringWithWrap=function(e,t,n){var r,i,o=\"\";do{if(!(s=n.buffer.active.getLine(e)))break;s.isWrapped&&e--,i=s.isWrapped}while(i);var a=e;do{var s,u=n.buffer.active.getLine(e+1);if(r=!!u&&u.isWrapped,!(s=n.buffer.active.getLine(e)))break;o+=s.translateToString(!r&&t).substring(0,n.cols),e++}while(r);return[o,a]},e}();t.LinkComputer=i}])}));\n//# sourceMappingURL=xterm-addon-web-links.js.map","/*!\n * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl)\n * @license MIT\n * @version 0.10.0\n * ==xterm-addon-webgl/LICENSE==\n * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.WebglAddon=e():t.WebglAddon=e()}(self,(function(){return(()=>{\"use strict\";var t={965:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.GlyphRenderer=void 0;var r=i(381),o=i(310),n=i(455),s=i(259),a=i(855),l=i(147),h=10,c=h*Float32Array.BYTES_PER_ELEMENT,_=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_unitquad;\\nlayout (location = 1) in vec2 a_cellpos;\\nlayout (location = 2) in vec2 a_offset;\\nlayout (location = 3) in vec2 a_size;\\nlayout (location = 4) in vec2 a_texcoord;\\nlayout (location = 5) in vec2 a_texsize;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec2 v_texcoord;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec2 v_texcoord;\\n\\nuniform sampler2D u_texture;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = texture(u_texture, v_texcoord);\\n}\"));this._program=s,this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._textureLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_texture\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),_=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,_),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,c,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,c,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,c,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,c,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,c,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=r.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return t.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},t.prototype.updateCell=function(t,e,i,r,o,n){this._updateCell(this._vertices.attributes,t,e,i,r,o,n)},t.prototype._updateCell=function(t,e,i,r,o,s,l){var c,_=(i*this._terminal.cols+e)*h;r!==a.NULL_CELL_CODE&&r!==a.WHITESPACE_CELL_CODE&&void 0!==r?this._atlas&&((c=l&&l.length>1?this._atlas.getRasterizedGlyphCombinedChar(l,o,s):this._atlas.getRasterizedGlyph(r,o,s))?(t[_]=-c.offset.x+this._dimensions.scaledCharLeft,t[_+1]=-c.offset.y+this._dimensions.scaledCharTop,t[_+2]=c.size.x/this._dimensions.scaledCanvasWidth,t[_+3]=c.size.y/this._dimensions.scaledCanvasHeight,t[_+4]=c.texturePositionClipSpace.x,t[_+5]=c.texturePositionClipSpace.y,t[_+6]=c.sizeClipSpace.x,t[_+7]=c.sizeClipSpace.y):n.fill(t,0,_,_+h-1-2)):n.fill(t,0,_,_+h-1-2)},t.prototype.updateSelection=function(t){var e=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var i=this._colors.selectionOpaque.rgba>>>8|50331648;if(t.selection.columnSelectMode)for(var r=t.selection.startCol,o=t.selection.endCol-r,n=t.selection.viewportCappedEndRow-t.selection.viewportCappedStartRow+1,a=t.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var g=l.AttributeData.toColorRGB(f.getBgColor());u|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;u|=v>>8&16711680|v>>8&65280|v>>8&255}u|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(h));var C=s.getCell(c).getChars();this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u,C)}else this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u)}},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._colors.ansi[t]},t.prototype.onResize=function(){var t=this._terminal,e=this._gl;e.viewport(0,0,e.canvas.width,e.canvas.height);var i=t.cols*t.rows*h;if(this._vertices.count!==i){this._vertices.count=i,this._vertices.attributes=new Float32Array(i);for(var r=0;r{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RectangleRenderer=void 0;var r=i(381),o=i(455),n=i(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_position;\\nlayout (location = 1) in vec2 a_size;\\nlayout (location = 2) in vec4 a_color;\\nlayout (location = 3) in vec2 a_unitquad;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec4 v_color;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_color = a_color;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec4 v_color;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = v_color;\\n}\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),c=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,c),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return t.prototype.render=function(){var t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,r.PROJECTION_MATRIX),t.uniform2f(this._resolutionLocation,t.canvas.width,t.canvas.height),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,this._vertices.count),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.selection,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,3)},t.prototype.onResize=function(){this._updateViewportRectangle()},t.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},t.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},t.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},t.prototype.updateSelection=function(t){var e=this._terminal;if(t.hasSelection)if(t.columnSelectMode){var i=t.startCol,r=t.endCol-i,n=t.viewportCappedEndRow-t.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,r*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{i=t.viewportStartRow===t.viewportCappedStartRow?t.startCol:0;var s=t.viewportCappedStartRow===t.viewportEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-i)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(t.viewportCappedEndRow-t.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(t.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,e.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),t.viewportCappedStartRow!==t.viewportCappedEndRow){var l=t.viewportEndRow===t.viewportCappedEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,16,0,t.viewportCappedEndRow*this._dimensions.scaledCellHeight,l*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},t.prototype.updateBackgrounds=function(t){for(var e=this._terminal,i=this._vertices,r=1,o=0;o>24&255)/255,d=(l>>16&255)/255,u=(l>>8&255)/255;this._addRectangle(t.attributes,e,h,c,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,_,d,u,1)},t.prototype._addRectangle=function(t,e,i,r,o,n,s,a,l,h){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s,t[e+5]=a,t[e+6]=l,t[e+7]=h},t.prototype._addRectangleFloat=function(t,e,i,r,o,n,s){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s[0],t[e+5]=s[1],t[e+6]=s[2],t[e+7]=s[3]},t.prototype._colorToFloat32Array=function(t){return new Float32Array([(t.rgba>>24&255)/255,(t.rgba>>16&255)/255,(t.rgba>>8&255)/255,(255&t.rgba)/255])},t}();e.RectangleRenderer=a},310:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RenderModel=e.COMBINED_CHAR_BIT_MASK=e.RENDER_MODEL_FG_OFFSET=e.RENDER_MODEL_BG_OFFSET=e.RENDER_MODEL_INDICIES_PER_CELL=void 0;var r=i(455);e.RENDER_MODEL_INDICIES_PER_CELL=3,e.RENDER_MODEL_BG_OFFSET=1,e.RENDER_MODEL_FG_OFFSET=2,e.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function t(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return t.prototype.resize=function(t,i){var r=t*i*e.RENDER_MODEL_INDICIES_PER_CELL;r!==this.cells.length&&(this.cells=new Uint32Array(r),this.lineLengths=new Uint32Array(i))},t.prototype.clear=function(){r.fill(this.cells,0,0),r.fill(this.lineLengths,0,0)},t.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},t}();e.RenderModel=o},259:(t,e)=>{function i(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length),e<0&&(e=(t.length+e)%t.length),i=i>=t.length?t.length:(t.length+i)%t.length,e=Math.min(e,i);for(var r=new t.constructor(i-e),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglAddon=void 0;var r=i(666),o=function(){function t(t){this._preserveDrawingBuffer=t}return t.prototype.activate=function(t){if(!t.element)throw new Error(\"Cannot activate WebglAddon before Terminal.open\");this._terminal=t;var e=t._core._renderService,i=t._core._colorManager.colors;this._renderer=new r.WebglRenderer(t,i,this._preserveDrawingBuffer),e.setRenderer(this._renderer)},t.prototype.dispose=function(){if(!this._terminal)throw new Error(\"Cannot dispose WebglAddon because it is activated\");var t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(t.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._renderer)||void 0===t?void 0:t.textureAtlas},enumerable:!1,configurable:!0}),t.prototype.clearTextureAtlas=function(){var t;null===(t=this._renderer)||void 0===t||t.clearCharAtlas()},t}();e.WebglAddon=o},666:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglRenderer=void 0;var n=i(965),s=i(733),a=i(461),l=i(713),h=i(344),c=i(310),_=i(859),d=i(855),u=i(345),f=i(782),p=function(t){function e(e,i,r){var o=t.call(this)||this;o._terminal=e,o._colors=i,o._model=new c.RenderModel,o._workCell=new f.CellData,o._onRequestRedraw=new u.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement(\"canvas\");var l={antialias:!1,depth:!1,preserveDrawingBuffer:r};if(o._gl=o._canvas.getContext(\"webgl2\",l),!o._gl)throw new Error(\"WebGL2 not supported \"+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new h.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(e,t),Object.defineProperty(e.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._renderLayers.forEach((function(t){return t.dispose()})),this._core.screenElement.removeChild(this._canvas),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._charAtlas)||void 0===t?void 0:t.cacheCanvas},enumerable:!1,configurable:!0}),e.prototype.setColors=function(t){var e=this;this._colors=t,this._renderLayers.forEach((function(t){t.setColors(e._terminal,e._colors),t.reset(e._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},e.prototype.onResize=function(t,e){var i=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(t){return t.resize(i._terminal,i.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+\"px\",this._canvas.style.height=this.dimensions.canvasHeight+\"px\",this._core.screenElement.style.width=this.dimensions.canvasWidth+\"px\",this._core.screenElement.style.height=this.dimensions.canvasHeight+\"px\",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},e.prototype.onBlur=function(){var t=this;this._renderLayers.forEach((function(e){return e.onBlur(t._terminal)}))},e.prototype.onFocus=function(){var t=this;this._renderLayers.forEach((function(e){return e.onFocus(t._terminal)}))},e.prototype.onSelectionChanged=function(t,e,i){var r=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(r._terminal,t,e,i)})),this._updateSelectionModel(t,e,i),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.onCursorMove=function(){var t=this;this._renderLayers.forEach((function(e){return e.onCursorMove(t._terminal)}))},e.prototype.onOptionsChanged=function(){var t=this;this._renderLayers.forEach((function(e){return e.onOptionsChanged(t._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},e.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var t=l.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!(\"getRasterizedGlyph\"in t))throw new Error(\"The webgl renderer only works with the webgl char atlas\");this._charAtlas=t,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},e.prototype.clearCharAtlas=function(){var t;null===(t=this._charAtlas)||void 0===t||t.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.clear=function(){var t=this;this._renderLayers.forEach((function(e){return e.reset(t._terminal)}))},e.prototype.registerCharacterJoiner=function(t){return-1},e.prototype.deregisterCharacterJoiner=function(t){return!1},e.prototype.renderRows=function(t,e){var i=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(r){return r.onGridChanged(i._terminal,t,e)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(t,e),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},e.prototype._updateModel=function(t,e){for(var i=this._core,r=t;r<=e;r++){var o=r+i.buffer.ydisp,n=i.buffer.lines.get(o);this._model.lineLengths[r]=0;for(var s=0;s1&&(l|=c.COMBINED_CHAR_BIT_MASK),this._model.cells[h]=l,this._model.cells[h+c.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[h+c.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,r,l,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},e.prototype._updateSelectionModel=function(t,e,i){void 0===i&&(i=!1);var r=this._terminal;if(!t||!e||t[0]===e[0]&&t[1]===e[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=t[1]-r.buffer.active.viewportY,n=e[1]-r.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,r.rows-1);if(s>=r.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=i,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=t[0],this._model.selection.endCol=e[0],this._rectangleRenderer.updateSelection(this._model.selection)},e.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption(\"lineHeight\")),this.dimensions.scaledCharTop=1===this._terminal.getOption(\"lineHeight\")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption(\"letterSpacing\")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption(\"letterSpacing\")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},e}(_.Disposable);e.WebglRenderer=p},381:(t,e)=>{function i(t,e,i){var o=r(t.createShader(e));if(t.shaderSource(o,i),t.compileShader(o),t.getShaderParameter(o,t.COMPILE_STATUS))return o;console.error(t.getShaderInfoLog(o)),t.deleteShader(o)}function r(t){if(!t)throw new Error(\"value must not be falsy\");return t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.throwIfFalsy=e.expandFloat32Array=e.createShader=e.createProgram=e.PROJECTION_MATRIX=void 0,e.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),e.createProgram=function(t,e,o){var n=r(t.createProgram());if(t.attachShader(n,r(i(t,t.VERTEX_SHADER,e))),t.attachShader(n,r(i(t,t.FRAGMENT_SHADER,o))),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS))return n;console.error(t.getProgramInfoLog(n)),t.deleteProgram(n)},e.createShader=i,e.expandFloat32Array=function(t,e){for(var i=Math.min(2*t.length,e),r=new Float32Array(i),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.removeTerminalFromCache=e.acquireCharAtlas=void 0;var r=i(433),o=i(167),n=[];e.acquireCharAtlas=function(t,e,i,s){for(var a=r.generateConfig(i,s,t,e),l=0;l=0){if(r.configEquals(c.config,a))return c.atlas;1===c.ownedBy.length?(c.atlas.dispose(),n.splice(l,1)):c.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(e,\"__esModule\",{value:!0}),e.is256Color=e.configEquals=e.generateConfig=void 0;var i={css:\"\",rgba:0};e.generateConfig=function(t,e,r,o){var n={foreground:o.foreground,background:o.background,cursor:i,cursorAccent:i,selectionTransparent:i,selectionOpaque:i,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:t,scaledCharHeight:e,fontFamily:r.getOption(\"fontFamily\"),fontSize:r.getOption(\"fontSize\"),fontWeight:r.getOption(\"fontWeight\"),fontWeightBold:r.getOption(\"fontWeightBold\"),allowTransparency:r.getOption(\"allowTransparency\"),drawBoldTextInBrightColors:r.getOption(\"drawBoldTextInBrightColors\"),minimumContrastRatio:r.getOption(\"minimumContrastRatio\"),colors:n}},e.configEquals=function(t,e){for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglCharAtlas=void 0;var r=i(499),o=i(855),n=i(381),s=i(147),a=i(742),l=1024,h=1024,c=Math.floor(819.2),_={css:\"rgba(0, 0, 0, 0)\",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},u=function(){function t(t,e){this._config=e,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=t.createElement(\"canvas\"),this.cacheCanvas.width=l,this.cacheCanvas.height=h,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext(\"2d\",{alpha:!0})),this._tmpCanvas=t.createElement(\"canvas\"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext(\"2d\",{alpha:this._config.allowTransparency}))}return t.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},t.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},t.prototype._doWarmUp=function(){for(var t,e,i=33;i<126;i++){var r=this._drawToCache(i,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[i]=((t={})[o.DEFAULT_COLOR]=((e={})[o.DEFAULT_COLOR]=r,e),t)}},t.prototype.beginFrame=function(){return this._currentRowY>c&&(this.clearTexture(),this.warmUp(),!0)},t.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,l,h),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},t.prototype.getRasterizedGlyphCombinedChar=function(t,e,i){var r,o=this._cacheMapCombined[t];o||(o={},this._cacheMapCombined[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype.getRasterizedGlyph=function(t,e,i){var r,o=this._cacheMap[t];o||(o={},this._cacheMap[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._config.colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._config.colors.ansi[t]},t.prototype._getBackgroundColor=function(t,e,i){if(this._config.allowTransparency)return _;switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e);case 50331648:var r=s.AttributeData.toColorRGB(e);return{rgba:e<<8,css:\"#\"+f(r[0])+f(r[1])+f(r[2])};case 0:default:return i?this._config.colors.foreground:this._config.colors.background}},t.prototype._getForegroundCss=function(t,e,i,r,o,n,l,h){var c=this._getMinimumContrastCss(t,e,i,r,o,n,l,h);if(c)return c;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&h&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var _=s.AttributeData.toColorRGB(n);return a.channels.toCss(_[0],_[1],_[2]);case 0:default:if(l){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},t.prototype._resolveBackgroundRgba=function(t,e,i){switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},t.prototype._resolveForegroundRgba=function(t,e,i,r){switch(t){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&r&&e<8&&(e+=8),this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},t.prototype._getMinimumContrastCss=function(t,e,i,r,o,n,s,l){if(1!==this._config.minimumContrastRatio){var h=this._config.colors.contrastCache.getCss(t,r);if(void 0!==h)return h||void 0;var c=this._resolveBackgroundRgba(e,i,s),_=this._resolveForegroundRgba(o,n,s,l),d=a.rgba.ensureContrastRatio(c,_,this._config.minimumContrastRatio);if(d){var u=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(t,r,u),u}this._config.colors.contrastCache.setCss(t,r,null)}},t.prototype._drawToCache=function(t,e,i){var o=\"number\"==typeof t?String.fromCharCode(t):t;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=e,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),c=!!this._workAttributeData.isItalic(),_=this._workAttributeData.getFgColor(),u=this._workAttributeData.getFgColorMode(),f=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var g=_;_=f,f=g;var v=u;u=p,p=v}var C=this._getBackgroundColor(p,f,s);this._tmpCtx.globalCompositeOperation=\"copy\",this._tmpCtx.fillStyle=C.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation=\"source-over\";var m=n?this._config.fontWeightBold:this._config.fontWeight,y=c?\"italic\":\"\";this._tmpCtx.font=y+\" \"+m+\" \"+this._config.fontSize*this._config.devicePixelRatio+\"px \"+this._config.fontFamily,this._tmpCtx.textBaseline=\"middle\",this._tmpCtx.fillStyle=this._getForegroundCss(e,p,f,i,u,_,s,n),a&&(this._tmpCtx.globalAlpha=r.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var R=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(t,e){for(var i=!0,r=e.rgba>>>24,o=e.rgba>>>16&255,n=e.rgba>>>8&255,s=0;sl&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),b.texturePosition.x=this._currentRowX,b.texturePosition.y=this._currentRowY,b.texturePositionClipSpace.x=this._currentRowX/l,b.texturePositionClipSpace.y=this._currentRowY/h,this._currentRowHeight=Math.max(this._currentRowHeight,b.size.y),this._currentRowX+=b.size.x,this._cacheCtx.putImageData(w,b.texturePosition.x,b.texturePosition.y),b},t.prototype._findGlyphBoundingBox=function(t,e){e.top=0;for(var i=!1,r=0;r=0;o--){for(r=0;r=0;r--){for(o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.BaseRenderLayer=void 0;var r=i(713),o=i(381),n=function(){function t(t,e,i,r,o){this._container=t,this._alpha=r,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+e+\"-layer\"),this._canvas.style.zIndex=i.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return t.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},t.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},t.prototype.onOptionsChanged=function(t){},t.prototype.onBlur=function(t){},t.prototype.onFocus=function(t){},t.prototype.onCursorMove=function(t){},t.prototype.onGridChanged=function(t,e,i){},t.prototype.onSelectionChanged=function(t,e,i,r){void 0===r&&(r=!1)},t.prototype.setColors=function(t,e){this._refreshCharAtlas(t,e)},t.prototype._setTransparency=function(t,e){if(e!==this._alpha){var i=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(t,this._colors),this.onGridChanged(t,0,t.rows-1)}},t.prototype._refreshCharAtlas=function(t,e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=r.acquireCharAtlas(t,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},t.prototype.resize=function(t,e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(t,this._colors)},t.prototype._fillCells=function(t,e,i,r){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight)},t.prototype._fillBottomLineAtCells=function(t,e,i){void 0===i&&(i=1),this._ctx.fillRect(t*this._scaledCellWidth,(e+1)*this._scaledCellHeight-window.devicePixelRatio-1,i*this._scaledCellWidth,window.devicePixelRatio)},t.prototype._fillLeftLineAtCell=function(t,e,i){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,window.devicePixelRatio*i,this._scaledCellHeight)},t.prototype._strokeRectAtCell=function(t,e,i,r){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(t*this._scaledCellWidth+window.devicePixelRatio/2,e*this._scaledCellHeight+window.devicePixelRatio/2,i*this._scaledCellWidth-window.devicePixelRatio,r*this._scaledCellHeight-window.devicePixelRatio)},t.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},t.prototype._clearCells=function(t,e,i,r){this._alpha?this._ctx.clearRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight))},t.prototype._fillCharTrueColor=function(t,e,i,r){this._ctx.font=this._getFont(t,!1,!1),this._ctx.textBaseline=\"middle\",this._clipRow(t,r),this._ctx.fillText(e.getChars(),i*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},t.prototype._clipRow=function(t,e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,t.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},t.prototype._getFont=function(t,e,i){return(i?\"italic\":\"\")+\" \"+(e?t.getOption(\"fontWeightBold\"):t.getOption(\"fontWeight\"))+\" \"+t.getOption(\"fontSize\")*window.devicePixelRatio+\"px \"+t.getOption(\"fontFamily\")},t}();e.BaseRenderLayer=n},461:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CursorRenderLayer=void 0;var n=i(592),s=i(782),a=600,l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"cursor\",i,!0,r)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:\"\",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},e.prototype.reset=function(t){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(t))},e.prototype.onBlur=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onFocus=function(t){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(t):this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onOptionsChanged=function(t){var e,i=this;t.getOption(\"cursorBlink\")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new h(t,(function(){i._render(t,!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onCursorMove=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype.onGridChanged=function(t,e,i){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(t,!1):this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype._render=function(t,e){if(t._core._coreService.isCursorInitialized&&!t._core._coreService.isCursorHidden){var i=t.buffer.active.baseY+t.buffer.active.cursorY,r=i-t.buffer.active.viewportY,o=Math.min(t.buffer.active.cursorX,t.cols-1);if(r<0||r>=t.rows)this._clearCursor();else if(t._core.buffer.lines.get(i).loadCell(o,this._cell),void 0!==this._cell.content){if(!c(t)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=t.getOption(\"cursorStyle\");return n&&\"block\"!==n?this._cursorRenderers[n](t,o,r,this._cell):this._renderBlurCursor(t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===r&&this._state.isFocused===c(t)&&this._state.style===t.getOption(\"cursorStyle\")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[t.getOption(\"cursorStyle\")||\"block\"](t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=t.getOption(\"cursorStyle\"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},e.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},e.prototype._renderBarCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,i,t.getOption(\"cursorWidth\")),this._ctx.restore()},e.prototype._renderBlockCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,i,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(t,r,e,i),this._ctx.restore()},e.prototype._renderUnderlineCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,i),this._ctx.restore()},e.prototype._renderBlurCursor=function(t,e,i,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,i,r.getWidth(),1),this._ctx.restore()},e}(n.BaseRenderLayer);e.CursorRenderLayer=l;var h=function(){function t(t,e){this._renderCallback=e,this.isCursorVisible=!0,c(t)&&this._restartInterval()}return Object.defineProperty(t.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.restartBlinkAnimation=function(t){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},t.prototype._restartInterval=function(t){var e=this;void 0===t&&(t=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);if(e._animationTimeRestarted=void 0,t>0)return void e._restartInterval(t)}e.isCursorVisible=!1,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0})),e._blinkInterval=window.setInterval((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);return e._animationTimeRestarted=void 0,void e._restartInterval(t)}e.isCursorVisible=!e.isCursorVisible,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))}),a)}),t)},t.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.resume=function(t){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(t)},t}();function c(t){return document.activeElement===t.textarea&&document.hasFocus()}},733:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.LinkRenderLayer=void 0;var n=i(592),s=i(499),a=i(433),l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"link\",i,!0,r)||this;return o.linkifier.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),o.linkifier2.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier2.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state=void 0},e.prototype.reset=function(t){this._clearCurrentLink()},e.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var t=this._state.y2-this._state.y1-1;t>0&&this._clearCells(0,this._state.y1+1,this._state.cols,t),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},e.prototype._onShowLinkUnderline=function(t){if(t.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==t.fg&&a.is256Color(t.fg)?this._ctx.fillStyle=this._colors.ansi[t.fg].css:this._ctx.fillStyle=this._colors.foreground.css,t.y1===t.y2)this._fillBottomLineAtCells(t.x1,t.y1,t.x2-t.x1);else{this._fillBottomLineAtCells(t.x1,t.y1,t.cols-t.x1);for(var e=t.y1+1;e{var i,r,o,n;function s(t){var e=t.toString(16);return e.length<2?\"0\"+e:e}function a(t,e){return t>>0}}(i=e.channels||(e.channels={})),(r=e.color||(e.color={})).blend=function(t,e){var r=(255&e.rgba)/255;if(1===r)return{css:e.css,rgba:e.rgba};var o=e.rgba>>24&255,n=e.rgba>>16&255,s=e.rgba>>8&255,a=t.rgba>>24&255,l=t.rgba>>16&255,h=t.rgba>>8&255,c=a+Math.round((o-a)*r),_=l+Math.round((n-l)*r),d=h+Math.round((s-h)*r);return{css:i.toCss(c,_,d),rgba:i.toRgba(c,_,d)}},r.isOpaque=function(t){return 255==(255&t.rgba)},r.ensureContrastRatio=function(t,e,i){var r=n.ensureContrastRatio(t.rgba,e.rgba,i);if(r)return n.toColor(r>>24&255,r>>16&255,r>>8&255)},r.opaque=function(t){var e=(255|t.rgba)>>>0,r=n.toChannels(e),o=r[0],s=r[1],a=r[2];return{css:i.toCss(o,s,a),rgba:e}},r.opacity=function(t,e){var r=Math.round(255*e),o=n.toChannels(t.rgba),s=o[0],a=o[1],l=o[2];return{css:i.toCss(s,a,l,r),rgba:i.toRgba(s,a,l,r)}},(e.css||(e.css={})).toColor=function(t){switch(t.length){case 7:return{css:t,rgba:(parseInt(t.slice(1),16)<<8|255)>>>0};case 9:return{css:t,rgba:parseInt(t.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(t){function e(t,e,i){var r=t/255,o=e/255,n=i/255;return.2126*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}t.relativeLuminance=function(t){return e(t>>16&255,t>>8&255,255&t)},t.relativeLuminance2=e}(o=e.rgb||(e.rgb={})),function(t){function e(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_0||h>0||c>0);)l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),c-=Math.max(0,Math.ceil(.1*c)),_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));return(l<<24|h<<16|c<<8|255)>>>0}function r(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_>>0}t.ensureContrastRatio=function(t,i,n){var s=o.relativeLuminance(t>>8),l=o.relativeLuminance(i>>8);if(a(s,l)>24&255,t>>16&255,t>>8&255,255&t]},t.toColor=function(t,e,r){return{css:i.toCss(t,e,r),rgba:i.toRgba(t,e,r)}}}(n=e.rgba||(e.rgba={})),e.toPaddedHex=s,e.contrastRatio=a},499:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.CHAR_ATLAS_CELL_SPACING=e.DIM_OPACITY=e.INVERTED_DEFAULT_COLOR=void 0,e.INVERTED_DEFAULT_COLOR=257,e.DIM_OPACITY=.5,e.CHAR_ATLAS_CELL_SPACING=1},345:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.forwardEvent=e.EventEmitter=void 0;var i=function(){function t(){this._listeners=[],this._disposed=!1}return Object.defineProperty(t.prototype,\"event\",{get:function(){var t=this;return this._event||(this._event=function(e){return t._listeners.push(e),{dispose:function(){if(!t._disposed)for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.getDisposeArrayDisposable=e.disposeArray=e.Disposable=void 0;var i=function(){function t(){this._disposables=[],this._isDisposed=!1}return t.prototype.dispose=function(){this._isDisposed=!0;for(var t=0,e=this._disposables;t{function i(t,e,i,r){if(void 0===i&&(i=0),void 0===r&&(r=t.length),i>=t.length)return t;i=(t.length+i)%t.length,r=r>=t.length?t.length:(t.length+r)%t.length;for(var o=i;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.ExtendedAttrs=e.AttributeData=void 0;var i=function(){function t(){this.fg=0,this.bg=0,this.extended=new r}return t.toColorRGB=function(t){return[t>>>16&255,t>>>8&255,255&t]},t.fromColorRGB=function(t){return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},t.prototype.clone=function(){var e=new t;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e},t.prototype.isInverse=function(){return 67108864&this.fg},t.prototype.isBold=function(){return 134217728&this.fg},t.prototype.isUnderline=function(){return 268435456&this.fg},t.prototype.isBlink=function(){return 536870912&this.fg},t.prototype.isInvisible=function(){return 1073741824&this.fg},t.prototype.isItalic=function(){return 67108864&this.bg},t.prototype.isDim=function(){return 134217728&this.bg},t.prototype.getFgColorMode=function(){return 50331648&this.fg},t.prototype.getBgColorMode=function(){return 50331648&this.bg},t.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},t.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},t.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},t.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},t.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},t.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},t.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},t.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},t.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},t.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},t.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},t.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},t.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},t.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},t.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},t.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},t.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},t}();e.AttributeData=i;var r=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=-1),this.underlineStyle=t,this.underlineColor=e}return t.prototype.clone=function(){return new t(this.underlineStyle,this.underlineColor)},t.prototype.isEmpty=function(){return 0===this.underlineStyle},t}();e.ExtendedAttrs=r},782:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CellData=void 0;var n=i(133),s=i(855),a=i(147),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.content=0,e.fg=0,e.bg=0,e.extended=new a.ExtendedAttrs,e.combinedData=\"\",e}return o(e,t),e.fromCharData=function(t){var i=new e;return i.setFromCharData(t),i},e.prototype.isCombined=function(){return 2097152&this.content},e.prototype.getWidth=function(){return this.content>>22},e.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):\"\"},e.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},e.prototype.setFromCharData=function(t){this.fg=t[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var e=!1;if(t[s.CHAR_DATA_CHAR_INDEX].length>2)e=!0;else if(2===t[s.CHAR_DATA_CHAR_INDEX].length){var i=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){var r=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=r&&r<=57343?this.content=1024*(i-55296)+r-56320+65536|t[s.CHAR_DATA_WIDTH_INDEX]<<22:e=!0}else e=!0}else this.content=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[s.CHAR_DATA_WIDTH_INDEX]<<22;e&&(this.combinedData=t[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|t[s.CHAR_DATA_WIDTH_INDEX]<<22)},e.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},e}(a.AttributeData);e.CellData=l},855:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WHITESPACE_CELL_CODE=e.WHITESPACE_CELL_WIDTH=e.WHITESPACE_CELL_CHAR=e.NULL_CELL_CODE=e.NULL_CELL_WIDTH=e.NULL_CELL_CHAR=e.CHAR_DATA_CODE_INDEX=e.CHAR_DATA_WIDTH_INDEX=e.CHAR_DATA_CHAR_INDEX=e.CHAR_DATA_ATTR_INDEX=e.DEFAULT_ATTR=e.DEFAULT_COLOR=void 0,e.DEFAULT_COLOR=256,e.DEFAULT_ATTR=256|e.DEFAULT_COLOR<<9,e.CHAR_DATA_ATTR_INDEX=0,e.CHAR_DATA_CHAR_INDEX=1,e.CHAR_DATA_WIDTH_INDEX=2,e.CHAR_DATA_CODE_INDEX=3,e.NULL_CELL_CHAR=\"\",e.NULL_CELL_WIDTH=1,e.NULL_CELL_CODE=0,e.WHITESPACE_CELL_CHAR=\" \",e.WHITESPACE_CELL_WIDTH=1,e.WHITESPACE_CELL_CODE=32},133:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.Utf8ToUtf32=e.StringToUtf32=e.utf32ToString=e.stringFromCodePoint=void 0,e.stringFromCodePoint=function(t){return t>65535?(t-=65536,String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)},e.utf32ToString=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length);for(var r=\"\",o=e;o65535?(n-=65536,r+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):r+=String.fromCharCode(n)}return r};var i=function(){function t(){this._interim=0}return t.prototype.clear=function(){this._interim=0},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r=0,o=0;this._interim&&(56320<=(a=t.charCodeAt(o++))&&a<=57343?e[r++]=1024*(this._interim-55296)+a-56320+65536:(e[r++]=this._interim,e[r++]=a),this._interim=0);for(var n=o;n=i)return this._interim=s,r;var a;56320<=(a=t.charCodeAt(n))&&a<=57343?e[r++]=1024*(s-55296)+a-56320+65536:(e[r++]=s,e[r++]=a)}else 65279!==s&&(e[r++]=s)}return r},t}();e.StringToUtf32=i;var r=function(){function t(){this.interim=new Uint8Array(3)}return t.prototype.clear=function(){this.interim.fill(0)},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r,o,n,s,a=0,l=0,h=0;if(this.interim[0]){var c=!1,_=this.interim[0];_&=192==(224&_)?31:224==(240&_)?15:7;for(var d=0,u=void 0;(u=63&this.interim[++d])&&d<4;)_<<=6,_|=u;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=f-d;h=i)return 0;if(128!=(192&(u=t[h++]))){h--,c=!0;break}this.interim[d++]=u,_<<=6,_|=63&u}c||(2===f?_<128?h--:e[a++]=_:3===f?_<2048||_>=55296&&_<=57343||65279===_||(e[a++]=_):_<65536||_>1114111||(e[a++]=_)),this.interim.fill(0)}for(var g=i-4,v=h;v=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if((l=(31&r)<<6|63&o)<128){v--;continue}e[a++]=l}else if(224==(240&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if((l=(15&r)<<12|(63&o)<<6|63&n)<2048||l>=55296&&l<=57343||65279===l)continue;e[a++]=l}else if(240==(248&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=t[v++]))){v--;continue}if((l=(7&r)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||l>1114111)continue;e[a++]=l}}return a},t}();e.Utf8ToUtf32=r}},e={};return function i(r){if(e[r])return e[r].exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,i),o.exports}(795)})()}));\n//# sourceMappingURL=xterm-addon-webgl.js.map","/*!\n * xterm (https://npmjs.com/package/xterm)\n * @license MIT\n * @version 4.12.0\n * ==xterm/LICENSE==\n * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)\n * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var r=t();for(var i in r)(\"object\"==typeof exports?exports:e)[i]=r[i]}}(self,(function(){return(()=>{\"use strict\";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce=\"\",i._accessibilityTreeRoot=document.createElement(\"div\"),i._accessibilityTreeRoot.classList.add(\"xterm-accessibility\"),i._rowContainer=document.createElement(\"div\"),i._rowContainer.setAttribute(\"role\",\"list\"),i._rowContainer.classList.add(\"xterm-accessibility-tree\"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(\"focus\",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement(\"div\");return e.setAttribute(\"role\",\"listitem\"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,\"\\n\"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent=\"\",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=\" \":a.textContent=o,a.setAttribute(\"aria-posinset\",s),a.setAttribute(\"aria-setsize\",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\\r?\\n/g,\"\\r\")}function i(e,t){return t?\"\u001b[200~\"+e+\"\u001b[201~\":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=\"\"}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width=\"20px\",t.style.height=\"20px\",t.style.left=n+\"px\",t.style.top=o+\"px\",t.style.zIndex=\"1000\",t.focus()}Object.defineProperty(t,\"__esModule\",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData(\"text/plain\",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData(\"text/plain\"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?\"0\"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor(\"#ffffff\"),s=i.css.toColor(\"#000000\"),a=i.css.toColor(\"#ffffff\"),c=i.css.toColor(\"#000000\"),l={css:\"rgba(255, 255, 255, 0.3)\",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor(\"#2e3436\"),i.css.toColor(\"#cc0000\"),i.css.toColor(\"#4e9a06\"),i.css.toColor(\"#c4a000\"),i.css.toColor(\"#3465a4\"),i.css.toColor(\"#75507b\"),i.css.toColor(\"#06989a\"),i.css.toColor(\"#d3d7cf\"),i.css.toColor(\"#555753\"),i.css.toColor(\"#ef2929\"),i.css.toColor(\"#8ae234\"),i.css.toColor(\"#fce94f\"),i.css.toColor(\"#729fcf\"),i.css.toColor(\"#ad7fa8\"),i.css.toColor(\"#34e2e2\"),i.css.toColor(\"#eeeeec\")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement(\"canvas\");h.width=1,h.height=1;var u=h.getContext(\"2d\");if(!u)throw new Error(\"Could not get rendering context\");this._ctx=u,this._ctx.globalCompositeOperation=\"copy\",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){\"minimumContrastRatio\"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,\"string\"!=typeof this._ctx.fillStyle)return console.warn(\"Color: \"+e+\" is invalid using fallback \"+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn(\"Color: \"+e+\" is using transparency, but allowTransparency is false. Using fallback \"+t.css+\".\"),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(\",\").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLinkTooltip\",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&\"break\"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn(\"Opening link blocked as opener could not be cleared\")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add(\"xterm-cursor-pointer\")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove(\"xterm-cursor-pointer\"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,\"currentLink\",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,\"mouseleave\",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,\"mousemove\",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,\"click\",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle(\"xterm-cursor-pointer\",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(\"xterm-cursor-pointer\")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(\"xterm-cursor-pointer\")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel=\"Terminal input\",t.tooMuchOutput=\"Too much output to announce, navigate to rows manually to read\"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,\"mousedown\",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener(\"mousemove\",this._mouseMoveListener),this._element.addEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.addEventListener(\"click\",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener(\"mousemove\",this._mouseMoveListener),this._element.removeEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.removeEventListener(\"click\",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia(\"screen and (resolution: \"+window.devicePixelRatio+\"dppx)\"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),b=r(1296),S=r(7399),m=r(8460),C=r(8437),w=r(5680),E=r(3230),L=r(4725),k=r(428),A=r(8934),R=r(6465),x=r(5114),T=r(8969),O=r(4774),D=r(4269),P=\"undefined\"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new m.EventEmitter,r._onKey=new m.EventEmitter,r._onRender=new m.EventEmitter,r._onSelectionChange=new m.EventEmitter,r._onTitleChange=new m.EventEmitter,r._onBell=new m.EventEmitter,r._onFocus=new m.EventEmitter,r._onBlur=new m.EventEmitter,r._onA11yCharEmitter=new m.EventEmitter,r._onA11yTabEmitter=new m.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(R.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(m.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(m.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(m.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(m.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,\"options\",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onKey\",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRender\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBell\",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onFocus\",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBlur\",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.removeEventListener(\"mousemove\",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?(\"debug\"===e.optionsService.options.logLevel&&e._logService.debug(\"Binding to mouse events:\",e._coreMouseService.explainEvents(t)),e.element.classList.add(\"enable-mouse-events\"),e._selectionService.disable()):(e._logService.debug(\"Unbinding from mouse events.\"),e.element.classList.remove(\"enable-mouse-events\"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener(\"mousemove\",l),n.mousemove=l):(r.removeEventListener(\"mousemove\",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener(\"wheel\",s,{passive:!1}),n.wheel=s):(r.removeEventListener(\"wheel\",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener(\"mousemove\",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,\"mousedown\",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.addEventListener(\"mousemove\",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,\"wheel\",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?\"O\":\"[\")+(t.deltaY<0?\"A\":\"B\"),o=\"\",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,\"scroll\",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+\"px\")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return\"alt\"===r&&t.altKey||\"ctrl\"===r&&t.ctrlKey||\"shift\"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=\"\"}return Object.defineProperty(e.prototype,\"isComposing\",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent=\"\",this._dataAlreadySent=\"\",this._compositionView.classList.add(\"active\")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove(\"active\"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){if(t._isSendingComposition){t._isSendingComposition=!1;var e;r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0)}}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,\"\");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+\"px\",this._compositionView.style.top=n+\"px\",this._compositionView.style.height=i+\"px\",this._compositionView.style.lineHeight=i+\"px\",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+\"px\";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+\"px\",this._textarea.style.top=n+\"px\",this._textarea.style.width=Math.max(s.width,1)+\"px\",this._textarea.style.height=Math.max(s.height,1)+\"px\",this._textarea.style.lineHeight=s.height+\"px\"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?\"A\":\"B\"}function a(e,t,r,i,n,o){for(var s=e,a=t,c=\"\";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?\"O\":\"[\";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r=\"\",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?\"D\":\"C\",l(Math.abs(h-e),c(s,i));s=u>t?\"D\":\"C\";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error(\"You must set the allowProposedApi option to true to use proposed API\")},Object.defineProperty(e.prototype,\"onCursorMove\",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLineFeed\",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onSelectionChange\",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onData\",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBinary\",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTitleChange\",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBell\",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onScroll\",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onKey\",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onRender\",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onResize\",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"element\",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parser\",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"unicode\",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"textarea\",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rows\",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"cols\",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"buffer\",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"markers\",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write(\"\\r\\n\",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,\"strings\",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,\"versions\",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:\"\",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+t+\"-layer\"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline=\"ideographic\",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline=\"ideographic\",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getBgColor()).join(\",\")+\")\";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getFgColor()).join(\",\")+\")\";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?\"italic\":\"\")+\" \"+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+\" \"+this._optionsService.options.fontSize*window.devicePixelRatio+\"px \"+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,\"cursor\",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:\"\",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&\"block\"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||\"block\"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,\"link\",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error(\"value must not be falsy\");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,\"selection\",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,\"text\",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont=\"\",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,\"__esModule\",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:\"rgba(0, 0, 0, 0)\",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement(\"canvas\"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext(\"2d\",{alpha:!0}));var n=t.createElement(\"canvas\");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext(\"2d\",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,\"__esModule\",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p=\"xterm-dom-renderer-owner-\",v=\"xterm-fg-\",g=\"xterm-bg-\",y=\"xterm-focus\",b=1,S=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=b++,f._rowElements=[],f._rowContainer=document.createElement(\"div\"),f._rowContainer.classList.add(\"xterm-rows\"),f._rowContainer.style.lineHeight=\"normal\",f._rowContainer.setAttribute(\"aria-hidden\",\"true\"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement(\"div\"),f._selectionContainer.classList.add(\"xterm-selection\"),f._selectionContainer.setAttribute(\"aria-hidden\",\"true\"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement(\"div\");return n.style.height=i*this.dimensions.actualCellHeight+\"px\",n.style.top=e*this.dimensions.actualCellHeight+\"px\",n.style.left=t*this.dimensions.actualCellWidth+\"px\",n.style.width=this.dimensions.actualCellWidth*(r-t)+\"px\",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=S},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS=\"xterm-bold\",t.DIM_CLASS=\"xterm-dim\",t.ITALIC_CLASS=\"xterm-italic\",t.UNDERLINE_CLASS=\"xterm-underline\",t.CURSOR_CLASS=\"xterm-cursor\",t.CURSOR_BLINK_CLASS=\"xterm-cursor-blink\",t.CURSOR_STYLE_BLOCK_CLASS=\"xterm-cursor-block\",t.CURSOR_STYLE_BAR_CLASS=\"xterm-cursor-bar\",t.CURSOR_STYLE_UNDERLINE_CLASS=\"xterm-cursor-underline\";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){b=!0;var C=p.shift();m=new u.JoinedCellData(this._workCell,e.translateToString(!0,C[0],C[1]),C[1]-C[0]),S=C[1]-1,y=m.getWidth()}var w=this._document.createElement(\"span\");if(y>1&&(w.style.width=h*y+\"px\"),b&&(w.style.display=\"inline\",a>=g&&a<=S&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case\"bar\":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case\"underline\":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}m.isBold()&&w.classList.add(t.BOLD_CLASS),m.isItalic()&&w.classList.add(t.ITALIC_CLASS),m.isDim()&&w.classList.add(t.DIM_CLASS),m.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),m.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=m.getChars()||s.WHITESPACE_CELL_CHAR;var E=m.getFgColor(),L=m.getFgColorMode(),k=m.getBgColor(),A=m.getBgColorMode(),R=!!m.isInverse();if(R){var x=E;E=k,k=x;var T=L;L=A,A=T}switch(L){case 16777216:case 33554432:m.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add(\"xterm-fg-\"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,\"color:#\"+_(E.toString(16),\"0\",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||R&&w.classList.add(\"xterm-fg-\"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:w.classList.add(\"xterm-bg-\"+k);break;case 50331648:this._addStyle(w,\"background-color:#\"+_(k.toString(16),\"0\",6));break;case 0:default:R&&w.classList.add(\"xterm-bg-\"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=S}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,\"color:\"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute(\"style\",\"\"+(e.getAttribute(\"style\")||\"\")+t+\";\")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,\"finalSelectionStart\",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"finalSelectionEnd\",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,\"hasValidSize\",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onCharSizeChange\",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement(\"span\"),this._measureElement.classList.add(\"xterm-char-measure-element\"),this._measureElement.textContent=\"W\",this._measureElement.setAttribute(\"aria-hidden\",\"true\"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+\"px\";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData=\"\",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error(\"not implemented\")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,\"isFocused\",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,\"resize\",(function(){return l.onDevicePixelRatioChange()}))),\"IntersectionObserver\"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,\"onDimensionsChange\",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRenderedBufferChange\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRefreshRequest\",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dimensions\",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,\"g\"),b=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,\"onLinuxMouseSelection\",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestScrollLines\",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,\"selectionStart\",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionEnd\",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasSelection\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionText\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return\"\";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return\"\";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y,\" \")})).join(a.isWindows?\"\\r\\n\":\"\\n\")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(\"mouseup\",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(\"mouseup\",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption(\"altClickMovesCursor\")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(\" \"===s.charAt(a)){for(;a>0&&\" \"===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var b=a+l-h+f,S=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||\"\"!==s.slice(a,c).trim()){if(r&&0===b&&32!==o.getCodePoint(0)){var m=n.lines.get(e[1]-1);if(m&&o.isWrapped&&32!==m.getCodePoint(this._bufferService.cols-1)){var C=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(C){var w=this._bufferService.cols-C.start;b-=w,S+=w}}}if(i&&b+S===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(S+=L.length)}}return{start:b,length:S}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=b},4725:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator(\"CharSizeService\"),t.ICoreBrowserService=i.createDecorator(\"CoreBrowserService\"),t.IMouseService=i.createDecorator(\"MouseService\"),t.IRenderService=i.createDecorator(\"RenderService\"),t.ISelectionService=i.createDecorator(\"SelectionService\"),t.ISoundService=i.createDecorator(\"SoundService\"),t.ICharacterJoinerService=i.createDecorator(\"CharacterJoinerService\")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,\"audioContext\",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn(\"Web Audio API is not supported by this browser. Consider upgrading to the latest version\"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,\"onDelete\",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onInsert\",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTrim\",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxLength\",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error(\"start argument out of range\");if(e+r<0)throw new Error(\"Cannot shift elements in list beyond index 0\");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),\"object\"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),b=r(5981),S=!1,m=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new b.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"cols\",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rows\",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"buffers\",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!S&&(this._logService.warn(\"writeSync is unreliable and will be removed soon.\"),S=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case\"scrollback\":this.buffers.resize(this.cols,this.rows);break;case\"windowsMode\":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:\"H\"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,\"event\",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]=\"GET_WIN_SIZE_PIXELS\",e[e.GET_CELL_SIZE_PIXELS=1]=\"GET_CELL_SIZE_PIXELS\"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'\"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0\"q'+s.C0.ESC+\"\\\\\");break;case'\"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1\"p'+s.C0.ESC+\"\\\\\");break;case\"r\":var r=this._bufferService.buffer.scrollTop+1+\";\"+(this._bufferService.buffer.scrollBottom+1)+\"r\";this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+r+s.C0.ESC+\"\\\\\");break;case\"m\":this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r0m\"+s.C0.ESC+\"\\\\\");break;case\" q\":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+i+\" q\"+s.C0.ESC+\"\\\\\");break;default:this._logService.debug(\"Unknown DCS $q %s\",t),this._coreService.triggerDataEvent(s.C0.ESC+\"P0$r\"+s.C0.ESC+\"\\\\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle=\"\",g._iconName=\"\",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug(\"Unknown CSI code: \",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug(\"Unknown ESC code: \",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug(\"Unknown EXECUTE code: \",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug(\"Unknown OSC code: \",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){\"HOOK\"===t&&(r=r.toArray()),g._logService.debug(\"Unknown DCS code: \",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:\"@\"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"@\"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:\"A\"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"A\"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:\"B\"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:\"C\"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:\"D\"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:\"E\"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:\"F\"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:\"G\"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:\"H\"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:\"I\"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:\"L\"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:\"M\"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:\"P\"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:\"S\"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:\"T\"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:\"X\"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:\"Z\"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:\"`\"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:\"a\"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:\"b\"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:\"c\"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:\">\",final:\"c\"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:\"d\"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:\"e\"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:\"f\"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:\"g\"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:\"h\"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"h\"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:\"l\"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"l\"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:\"m\"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:\"n\"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"n\"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:\"!\",final:\"p\"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"q\"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:\"r\"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:\"s\"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:\"t\"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:\"u\"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"}\"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"~\"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:\"7\"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:\"8\"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:\"D\"},(function(){return g.index()})),g._parser.registerEscHandler({final:\"E\"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:\"H\"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:\"M\"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:\"=\"},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:\">\"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:\"c\"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:\"n\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"o\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"|\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"}\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"~\"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:\"%\",final:\"@\"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:\"%\",final:\"G\"},(function(){return g.selectDefaultCharset()}));var b=function(e){S._parser.registerEscHandler({intermediates:\"(\",final:e},(function(){return g.selectCharset(\"(\"+e)})),S._parser.registerEscHandler({intermediates:\")\",final:e},(function(){return g.selectCharset(\")\"+e)})),S._parser.registerEscHandler({intermediates:\"*\",final:e},(function(){return g.selectCharset(\"*\"+e)})),S._parser.registerEscHandler({intermediates:\"+\",final:e},(function(){return g.selectCharset(\"+\"+e)})),S._parser.registerEscHandler({intermediates:\"-\",final:e},(function(){return g.selectCharset(\"-\"+e)})),S._parser.registerEscHandler({intermediates:\".\",final:e},(function(){return g.selectCharset(\".\"+e)})),S._parser.registerEscHandler({intermediates:\"/\",final:e},(function(){return g.selectCharset(\"/\"+e)}))},S=this;for(var m in a.CHARSETS)b(m);return g._parser.registerEscHandler({intermediates:\"#\",final:\"8\"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error(\"Parsing error: \",e),e})),g._parser.registerDcsHandler({intermediates:\"$\",final:\"q\"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,\"onRequestBell\",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRefreshRows\",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestReset\",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestSyncScrollBar\",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestWindowsOptionsReport\",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onAnsiColorChange\",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t(\"#SLOW_TIMEOUT\")}),5e3)}))]).catch((function(e){if(\"#SLOW_TIMEOUT\"!==e)throw e;console.warn(\"async parser handler taking longer than 5000 ms\")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>m&&(s=this._parseStack.position+m)}if(this._logService.debug(\"parsing data\",e),this._parseBuffer.lengthm)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return\"t\"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!C(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new b.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is(\"xterm\")||this._is(\"rxvt-unicode\")||this._is(\"screen\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[?1;2c\"):this._is(\"linux\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[?6c\")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is(\"xterm\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>0;276;0c\"):this._is(\"rxvt-unicode\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>85;95;0c\"):this._is(\"linux\")?this._coreService.triggerDataEvent(e.params[0]+\"c\"):this._is(\"screen\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[>83;40003;0c\")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+\"\").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug(\"Unknown SGR attribute: %d.\",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+\"[0n\");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[\"+t+\";\"+r+\"R\")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[?\"+t+\";\"+r+\"R\")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle=\"block\";break;case 3:case 4:this._optionsService.options.cursorStyle=\"underline\";break;case 5:case 6:this._optionsService.options.cursorStyle=\"bar\"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!C(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+\"[8;\"+this._bufferService.rows+\";\"+this._bufferService.cols+\"t\");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\\d+);rgb:([\\da-f]{2})\\/([\\da-f]{2})\\/([\\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn(\"Expected format ;rgb:// but got data: \"+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug(\"Serial port requested application keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug(\"Switching back to normal keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):(\"/\"===e[0]||this._charsetService.setgCharset(S[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|\"E\".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r=\"undefined\"==typeof navigator,i=r?\"node\":navigator.userAgent,n=r?\"node\":navigator.platform;t.isFirefox=i.includes(\"Firefox\"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=[\"Macintosh\",\"MacIntel\",\"MacPPC\",\"Mac68K\"].includes(n),t.isIpad=\"iPad\"===n,t.isIphone=\"iPhone\"===n,t.isWindows=[\"Windows\",\"Win16\",\"Win32\",\"WinCE\"].includes(n),t.isLinux=n.indexOf(\"Linux\")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,\"hasScrollback\",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isCursorInViewport\",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,b=_[y];0===b&&(b=_[--y]);for(var S=l.length-d-1,m=f;S>=0;){var C=Math.min(m,b);if(l[y].copyCellsFrom(l[S],m-C,b-C,C,!0),0==(b-=C)&&(b=_[--y]),0==(m-=C)){S--;var w=Math.max(S,0);m=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var L=[],k=[];for(v=0;v=0;v--)if(T&&T.start>R+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,L.push({index:R+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++x]}else this.lines.set(v,k[R--]);var P=0;for(v=L.length-1;v>=0;v--)L[v].index+=P,this.lines.onInsertEmitter.fire(L[v]),P+=L[v].amount;var M=Math.max(0,A+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t=\"\",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):\"\"},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o=\"\";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error(\"Buffer range end (\"+e.end.x+\", \"+e.end.y+\") cannot be before start (\"+e.start.x+\", \"+e.start.y+\")\");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(S>u||0===h[S].getTrimmedLength());S--)b++;b>0&&(s.push(a+h.length-b),s.push(b)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,\"onBufferActivate\",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,\"alt\",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"active\",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"normal\",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData=\"\",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):\"\"},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR=\"\",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=\" \",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onDispose\",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={\"`\":\"◆\",a:\"▒\",b:\"␉\",c:\"␌\",d:\"␍\",e:\"␊\",f:\"°\",g:\"±\",h:\"␤\",i:\"␋\",j:\"┘\",k:\"┐\",l:\"┌\",m:\"└\",n:\"┼\",o:\"⎺\",p:\"⎻\",q:\"─\",r:\"⎼\",s:\"⎽\",t:\"├\",u:\"┤\",v:\"┴\",w:\"┬\",x:\"│\",y:\"≤\",z:\"≥\",\"{\":\"π\",\"|\":\"≠\",\"}\":\"£\",\"~\":\"·\"},t.CHARSETS.A={\"#\":\"£\"},t.CHARSETS.B=void 0,t.CHARSETS[4]={\"#\":\"£\",\"@\":\"¾\",\"[\":\"ij\",\"\\\\\":\"½\",\"]\":\"|\",\"{\":\"¨\",\"|\":\"f\",\"}\":\"¼\",\"~\":\"´\"},t.CHARSETS.C=t.CHARSETS[5]={\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.R={\"#\":\"£\",\"@\":\"à\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"§\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"¨\"},t.CHARSETS.Q={\"@\":\"à\",\"[\":\"â\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",\"`\":\"ô\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"û\"},t.CHARSETS.K={\"@\":\"§\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Ü\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"ß\"},t.CHARSETS.Y={\"#\":\"£\",\"@\":\"§\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"é\",\"`\":\"ù\",\"{\":\"à\",\"|\":\"ò\",\"}\":\"è\",\"~\":\"ì\"},t.CHARSETS.E=t.CHARSETS[6]={\"@\":\"Ä\",\"[\":\"Æ\",\"\\\\\":\"Ø\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"ä\",\"{\":\"æ\",\"|\":\"ø\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.Z={\"#\":\"£\",\"@\":\"§\",\"[\":\"¡\",\"\\\\\":\"Ñ\",\"]\":\"¿\",\"{\":\"°\",\"|\":\"ñ\",\"}\":\"ç\"},t.CHARSETS.H=t.CHARSETS[7]={\"@\":\"É\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS[\"=\"]={\"#\":\"ù\",\"@\":\"à\",\"[\":\"é\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",_:\"è\",\"`\":\"ô\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"û\"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,\"__esModule\",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL=\"\\0\",i.SOH=\"\u0001\",i.STX=\"\u0002\",i.ETX=\"\u0003\",i.EOT=\"\u0004\",i.ENQ=\"\u0005\",i.ACK=\"\u0006\",i.BEL=\"\u0007\",i.BS=\"\\b\",i.HT=\"\\t\",i.LF=\"\\n\",i.VT=\"\\v\",i.FF=\"\\f\",i.CR=\"\\r\",i.SO=\"\u000e\",i.SI=\"\u000f\",i.DLE=\"\u0010\",i.DC1=\"\u0011\",i.DC2=\"\u0012\",i.DC3=\"\u0013\",i.DC4=\"\u0014\",i.NAK=\"\u0015\",i.SYN=\"\u0016\",i.ETB=\"\u0017\",i.CAN=\"\u0018\",i.EM=\"\u0019\",i.SUB=\"\u001a\",i.ESC=\"\u001b\",i.FS=\"\u001c\",i.GS=\"\u001d\",i.RS=\"\u001e\",i.US=\"\u001f\",i.SP=\" \",i.DEL=\"\",(r=t.C1||(t.C1={})).PAD=\"€\",r.HOP=\"\",r.BPH=\"‚\",r.NBH=\"ƒ\",r.IND=\"„\",r.NEL=\"…\",r.SSA=\"†\",r.ESA=\"‡\",r.HTS=\"ˆ\",r.HTJ=\"‰\",r.VTS=\"Š\",r.PLD=\"‹\",r.PLU=\"Œ\",r.RI=\"\",r.SS2=\"Ž\",r.SS3=\"\",r.DCS=\"\",r.PU1=\"‘\",r.PU2=\"’\",r.STS=\"“\",r.CCH=\"”\",r.MW=\"•\",r.SPA=\"–\",r.EPA=\"—\",r.SOS=\"˜\",r.SGCI=\"™\",r.SCI=\"š\",r.CSI=\"›\",r.ST=\"œ\",r.OSC=\"\",r.PM=\"ž\",r.APC=\"Ÿ\"},7399:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:[\"0\",\")\"],49:[\"1\",\"!\"],50:[\"2\",\"@\"],51:[\"3\",\"#\"],52:[\"4\",\"$\"],53:[\"5\",\"%\"],54:[\"6\",\"^\"],55:[\"7\",\"&\"],56:[\"8\",\"*\"],57:[\"9\",\"(\"],186:[\";\",\":\"],187:[\"=\",\"+\"],188:[\",\",\"<\"],189:[\"-\",\"_\"],190:[\".\",\">\"],191:[\"/\",\"?\"],192:[\"`\",\"~\"],219:[\"[\",\"{\"],220:[\"\\\\\",\"|\"],221:[\"]\",\"}\"],222:[\"'\",'\"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:\"UIKeyInputUpArrow\"===e.key?s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\":\"UIKeyInputLeftArrow\"===e.key?s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\":\"UIKeyInputRightArrow\"===e.key?s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\":\"UIKeyInputDownArrow\"===e.key&&(s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+\"[Z\";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"D\",s.key===i.C0.ESC+\"[1;3D\"&&(s.key=i.C0.ESC+(r?\"b\":\"[1;5D\"))):s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"C\",s.key===i.C0.ESC+\"[1;3C\"&&(s.key=i.C0.ESC+(r?\"f\":\"[1;5C\"))):s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"A\",r||s.key!==i.C0.ESC+\"[1;3A\"||(s.key=i.C0.ESC+\"[1;5A\")):s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"B\",r||s.key!==i.C0.ESC+\"[1;3B\"||(s.key=i.C0.ESC+\"[1;5B\")):s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+\"[2~\");break;case 46:s.key=a?i.C0.ESC+\"[3;\"+(a+1)+\"~\":i.C0.ESC+\"[3~\";break;case 36:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"H\":t?i.C0.ESC+\"OH\":i.C0.ESC+\"[H\";break;case 35:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"F\":t?i.C0.ESC+\"OF\":i.C0.ESC+\"[F\";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+\"[5~\";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+\"[6~\";break;case 112:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"P\":i.C0.ESC+\"OP\";break;case 113:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"Q\":i.C0.ESC+\"OQ\";break;case 114:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"R\":i.C0.ESC+\"OR\";break;case 115:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"S\":i.C0.ESC+\"OS\";break;case 116:s.key=a?i.C0.ESC+\"[15;\"+(a+1)+\"~\":i.C0.ESC+\"[15~\";break;case 117:s.key=a?i.C0.ESC+\"[17;\"+(a+1)+\"~\":i.C0.ESC+\"[17~\";break;case 118:s.key=a?i.C0.ESC+\"[18;\"+(a+1)+\"~\":i.C0.ESC+\"[18~\";break;case 119:s.key=a?i.C0.ESC+\"[19;\"+(a+1)+\"~\":i.C0.ESC+\"[19~\";break;case 120:s.key=a?i.C0.ESC+\"[20;\"+(a+1)+\"~\":i.C0.ESC+\"[20~\";break;case 121:s.key=a?i.C0.ESC+\"[21;\"+(a+1)+\"~\":i.C0.ESC+\"[21~\";break;case 122:s.key=a?i.C0.ESC+\"[23;\"+(a+1)+\"~\":i.C0.ESC+\"[23~\";break;case 123:s.key=a?i.C0.ESC+\"[24;\"+(a+1)+\"~\":i.C0.ESC+\"[24~\";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&\"_\"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i=\"\",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version=\"6\",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WriteBuffer=void 0;var r=\"undefined\"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error(\"write data discarded, use flow control to avoid losing data\");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,\"HOOK\",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,\"PUT\",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,\"UNHOOK\",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data=\"\",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data=\"\",t._hitLimit=!1,e}));return this._params=c,this._data=\"\",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error(\"only one byte as prefix supported\");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error(\"prefix must be in range 0x3c .. 0x3f\")}if(e.intermediates){if(e.intermediates.length>2)throw new Error(\"only two bytes as intermediates are supported\");for(var i=0;in||n>47)throw new Error(\"intermediate must be in range 0x20 .. 0x2f\");r<<=8,r|=n}}if(1!==e.final.length)throw new Error(\"final must be a single byte\");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error(\"final must be in range \"+t[0]+\" .. \"+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join(\"\")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error(\"improper continuation due to previous async handler, giving up parsing\");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,\"START\")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,\"PUT\",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,\"END\",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data=\"\",this._hitLimit=!1}return e.prototype.start=function(){this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data=\"\",t._hitLimit=!1,e}));return this._data=\"\",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error(\"maxSubParamsLength must not be greater than 256\");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"buffer\",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?\"\":\"\u001b[M\"+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?\"m\":\"M\";return\"\u001b[<\"+c(e,!0)+\";\"+e.col+\";\"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol=\"\",this._activeEncoding=\"\",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&(\"DEFAULT\"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onUserInput\",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,\"start\",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"end\",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error(\"[createInstance] First service dependency of \"+e.name+\" at position \"+(u+1)+\" conflicts with \"+t.length+\" static arguments\");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND=\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:\"block\",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:\"none\",drawBoldTextInBrightColors:!0,fastScrollModifier:\"alt\",fastScrollSensitivity:5,fontFamily:\"courier-new, courier, monospace\",fontSize:15,fontWeight:\"normal\",fontWeightBold:\"bold\",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:\"info\",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:\"canvas\",windowOptions:{},windowsMode:!1,wordSeparator:\" ()[]{}',\\\"`\",altClickMovesCursor:!0,convertEol:!1,termName:\"xterm\",cancelEvents:!1});var s=[\"normal\",\"bold\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],a=[\"cols\",\"rows\"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error(\"@IServiceName-decorator can only be used to decorate a parameter\");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator(\"BufferService\"),t.ICoreMouseService=n.createDecorator(\"CoreMouseService\"),t.ICoreService=n.createDecorator(\"CoreService\"),t.ICharsetService=n.createDecorator(\"CharsetService\"),t.IDirtyRowService=n.createDecorator(\"DirtyRowService\"),t.IInstantiationService=n.createDecorator(\"InstantiationService\"),t.ILogService=n.createDecorator(\"LogService\"),t.IOptionsService=n.createDecorator(\"OptionsService\"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]=\"DEBUG\",i[i.INFO=1]=\"INFO\",i[i.WARN=2]=\"WARN\",i[i.ERROR=3]=\"ERROR\",i[i.OFF=4]=\"OFF\",t.IUnicodeService=n.createDecorator(\"UnicodeService\")},1480:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active=\"\",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,\"onChange\",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"versions\",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version \"'+e+'\"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()}));\n//# sourceMappingURL=xterm.js.map","export class ConnectionFactory {\n url: string;\n protocols: string[];\n\n constructor(url: string, protocols: string[]) {\n this.url = url;\n this.protocols = protocols;\n };\n\n create(): Connection {\n return new Connection(this.url, this.protocols);\n };\n}\n\nexport class Connection {\n bare: WebSocket;\n\n\n constructor(url: string, protocols: string[]) {\n this.bare = new WebSocket(url, protocols);\n }\n\n open() {\n // nothing todo for websocket\n };\n\n close() {\n this.bare.close();\n };\n\n send(data: string) {\n this.bare.send(data);\n };\n\n isOpen(): boolean {\n if (this.bare.readyState == WebSocket.CONNECTING ||\n this.bare.readyState == WebSocket.OPEN) {\n return true\n }\n return false\n }\n\n onOpen(callback: () => void) {\n this.bare.onopen = (event) => {\n callback();\n }\n };\n\n onReceive(callback: (data: string) => void) {\n this.bare.onmessage = (event) => {\n callback(event.data);\n }\n };\n\n onClose(callback: () => void) {\n this.bare.onclose = (event) => {\n callback();\n };\n };\n}\n","export const protocols = [\"webtty\"];\n\nexport const msgInputUnknown = '0';\nexport const msgInput = '1';\nexport const msgPing = '2';\nexport const msgResizeTerminal = '3';\n\nexport const msgUnknownOutput = '0';\nexport const msgOutput = '1';\nexport const msgPong = '2';\nexport const msgSetWindowTitle = '3';\nexport const msgSetPreferences = '4';\nexport const msgSetReconnect = '5';\nexport const msgSetBufferSize = '6';\n\n\nexport interface Terminal {\n info(): { columns: number, rows: number };\n output(data: string): void;\n showMessage(message: string, timeout: number): void;\n removeMessage(): void;\n setWindowTitle(title: string): void;\n setPreferences(value: object): void;\n onInput(callback: (input: string) => void): void;\n onResize(callback: (colmuns: number, rows: number) => void): void;\n reset(): void;\n deactivate(): void;\n close(): void;\n}\n\nexport interface Connection {\n open(): void;\n close(): void;\n send(data: string): void;\n isOpen(): boolean;\n onOpen(callback: () => void): void;\n onReceive(callback: (data: string) => void): void;\n onClose(callback: () => void): void;\n}\n\nexport interface ConnectionFactory {\n create(): Connection;\n}\n\n\nexport class WebTTY {\n term: Terminal;\n connectionFactory: ConnectionFactory;\n args: string;\n authToken: string;\n reconnect: number;\n bufSize: number;\n\n constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) {\n this.term = term;\n this.connectionFactory = connectionFactory;\n this.args = args;\n this.authToken = authToken;\n this.reconnect = -1;\n this.bufSize = 1024;\n };\n\n open() {\n let connection = this.connectionFactory.create();\n let pingTimer: NodeJS.Timeout;\n let reconnectTimeout: NodeJS.Timeout;\n\n const setup = () => {\n connection.onOpen(() => {\n const termInfo = this.term.info();\n\n connection.send(JSON.stringify(\n {\n Arguments: this.args,\n AuthToken: this.authToken,\n }\n ));\n\n\n const resizeHandler = (colmuns: number, rows: number) => {\n connection.send(\n msgResizeTerminal + JSON.stringify(\n {\n columns: colmuns,\n rows: rows\n }\n )\n );\n };\n\n this.term.onResize(resizeHandler);\n resizeHandler(termInfo.columns, termInfo.rows);\n\n this.term.onInput(\n (input: string) => {\n // Leave room for message type id\n let effectiveBufferSize = this.bufSize - 1;\n\n // Split input into buffer sized chunks\n for (let i = 0; i < Math.ceil(input.length/effectiveBufferSize); i++) {\n let inputChunk = input.substring(i*effectiveBufferSize, Math.min((i+1)*effectiveBufferSize, input.length))\n connection.send(msgInput + inputChunk);\n }\n }\n );\n\n pingTimer = setInterval(() => {\n connection.send(msgPing)\n }, 30 * 1000);\n\n });\n\n connection.onReceive((data) => {\n const payload = data.slice(1);\n switch (data[0]) {\n case msgOutput:\n this.term.output(atob(payload));\n break;\n case msgPong:\n break;\n case msgSetWindowTitle:\n this.term.setWindowTitle(payload);\n break;\n case msgSetPreferences:\n const preferences = JSON.parse(payload);\n this.term.setPreferences(preferences);\n break;\n case msgSetReconnect:\n const autoReconnect = JSON.parse(payload);\n console.log(\"Enabling reconnect: \" + autoReconnect + \" seconds\")\n this.reconnect = autoReconnect;\n break;\n case msgSetBufferSize:\n const bufSize = JSON.parse(payload);\n this.bufSize = bufSize;\n break;\n }\n });\n\n connection.onClose(() => {\n clearInterval(pingTimer);\n this.term.deactivate();\n this.term.showMessage(\"Connection Closed\", 0);\n if (this.reconnect > 0) {\n reconnectTimeout = setTimeout(() => {\n connection = this.connectionFactory.create();\n this.term.reset();\n setup();\n }, this.reconnect * 1000);\n }\n });\n\n connection.open();\n }\n\n setup();\n return () => {\n clearTimeout(reconnectTimeout);\n connection.close();\n }\n };\n};\n","import { Terminal, IDisposable } from \"xterm\";\nimport { FitAddon } from 'xterm-addon-fit';\nimport { WebLinksAddon } from 'xterm-addon-web-links';\nimport { WebglAddon } from 'xterm-addon-webgl';\n\nexport class Xterm {\n elem: HTMLElement;\n term: Terminal;\n resizeListener: () => void;\n\n message: HTMLElement;\n messageTimeout: number;\n messageTimer: NodeJS.Timeout;\n onResizeHandler: IDisposable;\n onDataHandler: IDisposable;\n fitAddOn: FitAddon;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n this.term = new Terminal();\n this.fitAddOn = new FitAddon();\n this.term.loadAddon(new WebLinksAddon());\n this.term.loadAddon(this.fitAddOn);\n\n this.message = elem.ownerDocument.createElement(\"div\");\n this.message.className = \"xterm-overlay\";\n this.messageTimeout = 2000;\n\n this.resizeListener = () => {\n this.fitAddOn.fit();\n this.term.scrollToBottom();\n this.showMessage(String(this.term.cols) + \"x\" + String(this.term.rows), this.messageTimeout);\n };\n\n this.term.open(elem);\n this.term.focus();\n this.resizeListener();\n window.addEventListener(\"resize\", () => { this.resizeListener(); });\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.term.cols, rows: this.term.rows };\n };\n\n output(data: string) {\n this.term.write(Uint8Array.from(data, c => c.charCodeAt(0)));\n };\n\n showMessage(message: string, timeout: number) {\n this.message.textContent = message;\n this.elem.appendChild(this.message);\n\n if (this.messageTimer) {\n clearTimeout(this.messageTimer);\n }\n if (timeout > 0) {\n this.messageTimer = setTimeout(() => {\n this.elem.removeChild(this.message);\n }, timeout);\n }\n };\n\n removeMessage(): void {\n if (this.message.parentNode == this.elem) {\n this.elem.removeChild(this.message);\n }\n }\n\n setWindowTitle(title: string) {\n document.title = title;\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key == \"EnableWebGL\" && key) {\n this.term.loadAddon(new WebglAddon());\n } else if (key == \"font-size\") {\n this.term.setOption(\"fontSize\", value[key])\n } else if (key == \"font-family\") {\n this.term.setOption(\"fontFamily\", value[key])\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.onDataHandler = this.term.onData((data) => {\n callback(data);\n });\n\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.onResizeHandler = this.term.onResize(() => {\n callback(this.term.cols, this.term.rows);\n });\n };\n\n deactivate(): void {\n this.onDataHandler.dispose();\n this.onResizeHandler.dispose();\n this.term.blur();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.clear();\n }\n\n close(): void {\n window.removeEventListener(\"resize\", this.resizeListener);\n this.term.dispose();\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { Xterm } from \"./xterm\";\nimport { Terminal, WebTTY, protocols } from \"./webtty\";\nimport { ConnectionFactory } from \"./websocket\";\n\n// @TODO remove these\ndeclare var gotty_auth_token: string;\ndeclare var gotty_term: string;\n\nconst elem = document.getElementById(\"terminal\")\n\nif (elem !== null) {\n var term: Terminal;\n term = new Xterm(elem);\n\n const httpsEnabled = window.location.protocol == \"https:\";\n const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws';\n const args = window.location.search;\n const factory = new ConnectionFactory(url, protocols);\n const wt = new WebTTY(term, factory, args, gotty_auth_token);\n const closer = wt.open();\n\n window.addEventListener(\"unload\", () => {\n closer();\n term.close();\n });\n};\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://gotty/./node_modules/crc-32/crc32.js","webpack://gotty/./node_modules/xterm-addon-fit/lib/xterm-addon-fit.js","webpack://gotty/./node_modules/xterm-addon-web-links/lib/xterm-addon-web-links.js","webpack://gotty/./node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js","webpack://gotty/./node_modules/xterm/lib/xterm.js","webpack://gotty/./node_modules/zmodem.js/src/encode.js","webpack://gotty/./node_modules/zmodem.js/src/text.js","webpack://gotty/./node_modules/zmodem.js/src/zcrc.js","webpack://gotty/./node_modules/zmodem.js/src/zdle.js","webpack://gotty/./node_modules/zmodem.js/src/zerror.js","webpack://gotty/./node_modules/zmodem.js/src/zheader.js","webpack://gotty/./node_modules/zmodem.js/src/zmlib.js","webpack://gotty/./node_modules/zmodem.js/src/zmodem.js","webpack://gotty/./node_modules/zmodem.js/src/zmodem_browser.js","webpack://gotty/./node_modules/zmodem.js/src/zsentry.js","webpack://gotty/./node_modules/zmodem.js/src/zsession.js","webpack://gotty/./node_modules/zmodem.js/src/zsubpacket.js","webpack://gotty/./node_modules/zmodem.js/src/zvalidation.js","webpack://gotty/./src/websocket.ts","webpack://gotty/./src/webtty.ts","webpack://gotty/./src/xterm.ts","webpack://gotty/webpack/bootstrap","webpack://gotty/./src/main.ts"],"names":["factory","CRC32","version","T0","c","table","Array","n","Int32Array","signed_crc_table","TT","T","v","out","subarray","slice","slice_by_16_tables","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","bstr","seed","C","i","L","length","charCodeAt","buf","B","str","d","DO_NOT_EXPORT_CRC","exports","self","module","e","775","t","Object","defineProperty","value","FitAddon","r","prototype","activate","this","_terminal","dispose","fit","proposeDimensions","_core","rows","cols","_renderService","clear","resize","element","parentElement","dimensions","actualCellWidth","actualCellHeight","window","getComputedStyle","parseInt","getPropertyValue","Math","max","o","a","viewport","scrollBarWidth","floor","l","call","m","enumerable","get","Symbol","toStringTag","__esModule","create","bind","default","hasOwnProperty","p","s","WebLinksAddon","RegExp","open","opener","location","href","console","warn","_handler","_options","_useLinkProvider","matchIndex","_linkProvider","registerLinkProvider","WebLinkProvider","_linkMatcherId","registerLinkMatcher","deregisterLinkMatcher","LinkComputer","_regex","provideLinks","computeLink","source","flags","_translateBufferLineToStringWithWrap","u","exec","f","log","indexOf","lastIndex","h","start","x","y","end","push","range","text","buffer","active","getLine","isWrapped","translateToString","substring","965","GlyphRenderer","Float32Array","BYTES_PER_ELEMENT","_","_colors","_gl","_dimensions","_activeBuffer","_vertices","count","attributes","attributesBuffers","selectionAttributes","throwIfFalsy","createProgram","_program","_projectionLocation","getUniformLocation","_resolutionLocation","_textureLocation","_vertexArrayObject","createVertexArray","bindVertexArray","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","enableVertexAttribArray","vertexAttribPointer","FLOAT","Uint8Array","ELEMENT_ARRAY_BUFFER","_attributesBuffer","vertexAttribDivisor","_atlasTexture","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","enable","BLEND","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","onResize","beginFrame","_atlas","updateCell","_updateCell","NULL_CELL_CODE","WHITESPACE_CELL_CODE","getRasterizedGlyphCombinedChar","getRasterizedGlyph","offset","scaledCharLeft","scaledCharTop","size","scaledCanvasWidth","scaledCanvasHeight","texturePositionClipSpace","sizeClipSpace","fill","updateSelection","selectionOpaque","rgba","selection","columnSelectMode","startCol","endCol","viewportCappedEndRow","viewportCappedStartRow","_updateSelectionRange","viewportStartRow","viewportEndRow","viewportY","RENDER_MODEL_INDICIES_PER_CELL","cells","RENDER_MODEL_FG_OFFSET","AttributeData","fg","bg","RENDER_MODEL_BG_OFFSET","getBgColorMode","_getColorFromAnsiIndex","getBgColor","g","toColorRGB","background","COMBINED_CHAR_BIT_MASK","getCell","getChars","ansi","Error","canvas","width","height","setColors","render","useProgram","lineLengths","set","STREAM_DRAW","hasCanvasChanged","uniform1i","activeTexture","TEXTURE0","cacheCanvas","generateMipmap","uniformMatrix4fv","PROJECTION_MATRIX","uniform2f","drawElementsInstanced","TRIANGLES","setAtlas","setDimensions","344","RectangleRenderer","_updateCachedColors","DYNAMIC_DRAW","_updateViewportRectangle","_bgFloat","_colorToFloat32Array","_selectionFloat","_addRectangleFloat","scaledCellWidth","scaledCellHeight","hasSelection","updateBackgrounds","_updateRectangle","foreground","expandFloat32Array","_addRectangle","310","RenderModel","Uint32Array","clearSelection","259","min","constructor","sliceFallback","795","WebglAddon","_preserveDrawingBuffer","_colorManager","colors","_renderer","WebglRenderer","setRenderer","_createRenderer","textureAtlas","configurable","clearTextureAtlas","clearCharAtlas","666","__extends","setPrototypeOf","__proto__","_model","_workCell","CellData","_onRequestRedraw","EventEmitter","_renderLayers","LinkRenderLayer","screenElement","CursorRenderLayer","scaledCharWidth","scaledCharHeight","canvasWidth","canvasHeight","_devicePixelRatio","devicePixelRatio","_updateDimensions","_canvas","document","createElement","antialias","depth","preserveDrawingBuffer","getContext","appendChild","_rectangleRenderer","_glyphRenderer","onCharSizeChanged","_isAttached","body","contains","event","forEach","removeChild","_charAtlas","reset","_refreshCharAtlas","onDevicePixelRatioChange","style","onBlur","onFocus","onSelectionChanged","_updateSelectionModel","fire","onCursorMove","onOptionsChanged","acquireCharAtlas","warmUp","clearTexture","_updateModel","registerCharacterJoiner","deregisterCharacterJoiner","renderRows","_charSizeService","onGridChanged","ydisp","lines","loadCell","getCode","ceil","getOption","round","Disposable","381","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","error","getShaderInfoLog","deleteShader","attachShader","VERTEX_SHADER","FRAGMENT_SHADER","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","713","removeTerminalFromCache","generateConfig","ownedBy","configEquals","config","atlas","splice","WebglCharAtlas","433","is256Color","css","cursor","cursorAccent","selectionTransparent","contrastCache","fontFamily","fontSize","fontWeight","fontWeightBold","allowTransparency","drawBoldTextInBrightColors","minimumContrastRatio","167","texturePosition","_config","_didWarmUp","_cacheMap","_cacheMapCombined","_currentRowY","_currentRowX","_currentRowHeight","_workBoundingBox","top","left","bottom","right","_workAttributeData","_cacheCtx","alpha","_tmpCanvas","_tmpCtx","_doWarmUp","_drawToCache","DEFAULT_COLOR","clearRect","_getBackgroundColor","_getForegroundCss","_getMinimumContrastCss","channels","toCss","substr","_resolveBackgroundRgba","_resolveForegroundRgba","getCss","ensureContrastRatio","setCss","String","fromCharCode","save","isInvisible","isBold","isInverse","isDim","isItalic","getFgColor","getFgColorMode","globalCompositeOperation","fillStyle","fillRect","font","textBaseline","globalAlpha","DIM_OPACITY","fillText","restore","R","getImageData","data","b","_findGlyphBoundingBox","w","_clipImageData","putImageData","Uint8ClampedArray","ImageData","toString","592","BaseRenderLayer","_container","_alpha","_scaledCharWidth","_scaledCharHeight","_scaledCellWidth","_scaledCellHeight","_scaledCharLeft","_scaledCharTop","classList","add","zIndex","_initCanvas","_ctx","_clearAll","_setTransparency","cloneNode","replaceChild","_fillCells","_fillBottomLineAtCells","_fillLeftLineAtCell","_strokeRectAtCell","lineWidth","strokeRect","_clearCells","_fillCharTrueColor","_getFont","_clipRow","beginPath","rect","clip","461","_onRequestRefreshRowsEvent","_cell","_state","isFocused","_cursorRenderers","bar","_renderBarCursor","block","_renderBlockCursor","underline","_renderUnderlineCursor","_clearCursor","_cursorBlinkStateManager","pause","cursorY","resume","_render","restartBlinkAnimation","isPaused","_coreService","isCursorInitialized","isCursorHidden","baseY","cursorX","content","_renderBlurCursor","getWidth","isCursorVisible","strokeStyle","_renderCallback","_restartInterval","_blinkStartTimeout","_blinkInterval","clearInterval","clearTimeout","_animationFrame","cancelAnimationFrame","_animationTimeRestarted","Date","now","requestAnimationFrame","setTimeout","setInterval","activeElement","textarea","hasFocus","733","linkifier","onShowLinkUnderline","_onShowLinkUnderline","onHideLinkUnderline","_onHideLinkUnderline","linkifier2","_clearCurrentLink","x1","y1","y2","x2","INVERTED_DEFAULT_COLOR","742","contrastRatio","toPaddedHex","rgb","color","toRgba","blend","isOpaque","toColor","opaque","toChannels","opacity","pow","relativeLuminance","relativeLuminance2","reduceLuminance","increaseLuminance","499","CHAR_ATLAS_CELL_SPACING","345","forwardEvent","_listeners","_disposed","_event","859","getDisposeArrayDisposable","disposeArray","_disposables","_isDisposed","register","unregister","455","concat","fillFallback","147","ExtendedAttrs","extended","fromColorRGB","clone","isUnderline","isBlink","isFgRGB","isBgRGB","isFgPalette","isBgPalette","isFgDefault","isBgDefault","isAttributeDefault","hasExtendedAttrs","updateExtended","isEmpty","getUnderlineColor","underlineColor","getUnderlineColorMode","isUnderlineColorRGB","isUnderlineColorPalette","isUnderlineColorDefault","getUnderlineStyle","underlineStyle","782","apply","arguments","combinedData","fromCharData","setFromCharData","isCombined","stringFromCodePoint","CHAR_DATA_ATTR_INDEX","CHAR_DATA_CHAR_INDEX","CHAR_DATA_WIDTH_INDEX","getAsCharData","855","WHITESPACE_CELL_WIDTH","WHITESPACE_CELL_CHAR","NULL_CELL_WIDTH","NULL_CELL_CHAR","CHAR_DATA_CODE_INDEX","DEFAULT_ATTR","133","Utf8ToUtf32","StringToUtf32","utf32ToString","_interim","decode","interim","4567","AccessibilityManager","_liveRegionLineCount","_charsToConsume","_charsToAnnounce","_accessibilityTreeRoot","_rowContainer","setAttribute","_rowElements","_createAccessibilityTreeNode","_topBoundaryFocusListener","_onBoundaryFocus","_bottomBoundaryFocusListener","addEventListener","_refreshRowsDimensions","_renderRowsDebouncer","RenderDebouncer","_renderRows","_refreshRows","_liveRegion","insertAdjacentElement","_onResize","onRender","onScroll","onA11yChar","_onChar","onLineFeed","onA11yTab","_onTab","onKey","_onKey","key","_clearLiveRegion","onDimensionsChange","_screenDprMonitor","ScreenDprMonitor","setListener","addDisposableDomListener","removeElementFromParent","target","getAttribute","relatedTarget","pop","shift","removeEventListener","unshift","scrollLines","focus","preventDefault","stopImmediatePropagation","children","tabIndex","_refreshRowDimensions","textContent","tooMuchOutput","isMac","parentNode","refresh","translateBufferLineToString","innerText","_announceCharacters","3614","replace","decPrivateModes","bracketedPasteMode","triggerDataEvent","getBoundingClientRect","clientX","clientY","rightClickHandler","moveTextAreaUnderMouseCursor","paste","handlePasteEvent","copyHandler","bracketTextForPaste","prepareTextForTerminal","clipboardData","setData","selectionText","stopPropagation","getData","rightClickSelect","select","4774","7239","ColorContrastCache","_color","_rgba","setColor","getColor","5680","ColorManager","DEFAULT_ANSI_COLORS","freeze","_litmusColor","createLinearGradient","_contrastCache","onOptionsChange","setTheme","_parseColor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","split","map","Number","9631","3656","3551","__decorate","getOwnPropertyDescriptor","Reflect","decorate","__param","MouseZone","Linkifier","_bufferService","_logService","_unicodeService","_linkMatchers","_nextLinkMatcherId","_onLinkTooltip","_rowsToLinkify","attachToDom","_element","_mouseZoneManager","linkifyRows","clearAll","_rowsTimeoutId","_linkifyRows","_timeBeforeLatency","iterator","hasNext","next","_doLinkifyRow","first","debug","id","regex","handler","validationCallback","hoverTooltipCallback","tooltipCallback","hoverLeaveCallback","leaveCallback","willLinkActivate","priority","_addLinkMatcherToList","stringIndexToBufferIndex","getFg","_addLink","getStringCellWidth","_createLinkHoverEvent","remove","IBufferService","ILogService","IUnicodeService","clickCallback","hoverCallback","6465","Linkifier2","_linkProviders","_linkCacheDisposables","_isMouseOut","_activeLine","_currentLink","_mouseService","_onMouseMove","_onClick","_lastMouseEvent","_positionFromMouseEvent","composedPath","_lastBufferCell","_onHover","_askForLink","_linkAtPosition","link","_activeProviderReplies","Map","_checkLinkProviderResult","_removeIntersectingLinks","Set","has","find","_handleNewLink","_linkLeave","state","decorations","pointerCursor","isHovered","_linkHover","defineProperties","toggle","_fireUnderlineEvent","onRenderedBufferChange","hover","_createLinkUnderlineEvent","leave","getCoords","9042","promptLabel","6954","MouseZoneManager","_screenElement","_selectionService","_optionsService","_zones","_areZonesActive","_lastHoverCoords","_initialSelectionLength","_onMouseDown","_mouseMoveListener","_mouseLeaveListener","_onMouseLeave","_clickListener","_deactivate","_activate","_currentZone","pageX","pageY","_findZoneEventAt","_tooltipTimeout","_onTooltip","options","linkTooltipHoverDuration","_getSelectionLength","IMouseService","ISelectionService","IOptionsService","6193","_rowCount","_rowStart","_rowEnd","_innerRefresh","5596","_currentDevicePixelRatio","_listener","clearListener","_outerListener","_updateDpr","_resolutionMediaMatchList","removeListener","matchMedia","addListener","3236","Terminal","S","E","k","A","O","D","P","M","browser","_keyDownHandled","_onCursorMove","_onRender","_onSelectionChange","_onTitleChange","_onBell","_onFocus","_onBlur","_onA11yCharEmitter","_onA11yTabEmitter","_setup","_instantiationService","createInstance","_inputHandler","onRequestBell","bell","onRequestRefreshRows","onRequestReset","onRequestWindowsOptionsReport","_reportWindowsOptions","onAnsiColorChange","_changeAnsiColor","onTitleChange","_afterResize","optionsService","colorIndex","onThemeChange","_customKeyEventHandler","write","buffers","preventScroll","_updateOptions","measure","syncScrollArea","screenReaderMode","_accessibilityManager","setupTabStops","_setTheme","theme","_onTextAreaFocus","sendFocus","C0","ESC","updateCursorStyle","_showCursor","blur","_onTextAreaBlur","_syncTextArea","isCursorInViewport","_compositionHelper","isComposing","ybase","lineHeight","_initGlobal","_bindKeys","isFirefox","button","rightClickSelectsWord","isLinux","_keyUp","_keyDown","_keyPress","compositionstart","compositionupdate","compositionend","updateCompositionElements","_queueLinkification","isConnected","_document","ownerDocument","dir","createDocumentFragment","_viewportElement","_viewportScrollArea","_helperContainer","CoreBrowserService","setService","ICoreBrowserService","CharSizeService","ICharSizeService","_theme","onOptionChange","_characterJoinerService","CharacterJoinerService","ICharacterJoinerService","RenderService","IRenderService","_compositionView","CompositionHelper","_soundService","SoundService","ISoundService","MouseService","Viewport","onRequestSyncScrollBar","SelectionService","onRequestScrollLines","amount","suppressScrollEvent","onSelectionChange","onRequestRedraw","onLinuxMouseSelection","_onScroll","onMouseDown","_coreMouseService","areMouseEventsActive","disable","bindMouse","rendererType","Renderer","DomRenderer","getRawByteCoords","overrideType","type","buttons","deltaY","triggerMouseEvent","col","row","action","ctrl","ctrlKey","alt","altKey","shiftKey","mouseup","wheel","mousedrag","mousemove","cancel","onProtocolChange","logLevel","explainEvents","passive","activeProtocol","shouldForceSelection","hasScrollback","getLinesScrolled","applicationCursorKeys","abs","onWheel","onTouchStart","onTouchMove","refreshRows","shouldColumnSelect","attachCustomKeyEventHandler","deregister","markers","addMarker","normal","setSelection","getSelection","getSelectionPosition","startColumn","selectionStart","startRow","endColumn","selectionEnd","endRow","selectAll","selectLines","keydown","scrollToBottom","evaluateKeyboardEvent","macOptionIsMeta","_isThirdLevelShift","ETX","CR","domEvent","metaKey","isWindows","keyCode","charCode","which","_soundBell","playBellSound","hasValidSize","getBlankLine","DEFAULT_ATTR_DATA","position","WindowsOptionsReportType","GET_WIN_SIZE_PIXELS","toFixed","GET_CELL_SIZE_PIXELS","cancelEvents","_visualBell","bellStyle","CoreTerminal","1680","_scrollLines","_scrollArea","_lastRecordedBufferLength","_lastRecordedViewportHeight","_lastRecordedBufferHeight","_lastTouchY","_lastScrollTop","_wheelPartialScroll","_refreshAnimationFrame","_ignoreNextScrollEvent","offsetWidth","backgroundColor","_refresh","offsetHeight","scrollTop","offsetParent","_bubbleScroll","cancelable","_getPixelsScrolled","_applyScrollModifier","deltaMode","WheelEvent","DOM_DELTA_LINE","DOM_DELTA_PAGE","DOM_DELTA_PIXEL","fastScrollModifier","fastScrollSensitivity","scrollSensitivity","touches","2950","_textarea","_isComposing","_isSendingComposition","_compositionPosition","_dataAlreadySent","_finalizeComposition","_handleAnyTextareaChanges","ICoreService","9806","getCoordsRelativeToElement","9504","moveToCellSequence","244","AddonManager","_addons","instance","loadAddon","isDisposed","_wrappedAddonDispose","4389","_addonManager","_checkProposedApi","allowProposedApi","onData","onBinary","onBell","_parser","_buffer","_verifyIntegers","registerMarker","scrollPages","scrollToTop","scrollToLine","writeUtf8","writeln","setOption","isNaN","init","getNullCell","_onBufferChange","_normal","_alternate","onBufferActivate","alternate","_line","registerCsiHandler","toArray","addCsiHandler","registerDcsHandler","addDcsHandler","registerEscHandler","addEscHandler","registerOscHandler","addOscHandler","unicodeService","versions","activeVersion","1546","_rendererId","_currentGlyphIdentifier","chars","code","bold","dim","italic","_drawChars","_getContrastColor","_drawUncachedChars","draw","join","2512","_coreBrowserService","cursorBlink","cursorStyle","cursorWidth","3700","GridCache","cache","5098","3525","_id","TextRenderLayer","SelectionRenderLayer","_runOperation","letterSpacing","IInstantiationService","1752","4149","_clearState","_didStateChange","_areCoordinatesEqual","9596","_characterWidth","_characterFont","_characterOverlapCache","_forEachCell","getJoinedCharacters","JoinedCellData","_isOverlapping","getCodePoint","_drawBackground","_drawForeground","measureText","9616","BaseCharAtlas","1420","DynamicCharAtlas","2040","8803","1906","NoneCharAtlas","getGlyphCacheKey","_drawToCacheCount","_glyphsWaitingOnBitmap","_bitmapCommitTimeout","_bitmap","_cacheCanvas","_width","_height","LRUMap","prealloc","_canCache","_drawFromCache","capacity","peek","index","_toCoordinateX","_toCoordinateY","drawImage","inBitmap","_getForegroundColor","_addGlyphToBitmap","isSafari","_generateBitmap","createImageBitmap","then","7001","_map","_head","_tail","_nodePool","_unlinkNode","prev","_appendNode","peekValue","1296","_linkifier","_linkifier2","_terminalClass","_refreshRowElements","_selectionContainer","_injectCss","_rowFactory","DomRendererRowFactory","_onLinkHover","_onLinkLeave","_themeStyleElement","_dimensionsStyleElement","overflow","_terminalSelector","BOLD_CLASS","ITALIC_CLASS","CURSOR_CLASS","CURSOR_STYLE_BLOCK_CLASS","CURSOR_BLINK_CLASS","CURSOR_STYLE_BAR_CLASS","CURSOR_STYLE_UNDERLINE_CLASS","_createSelectionElement","createRow","_setCellUnderline","textDecoration","3787","UNDERLINE_CLASS","DIM_CLASS","display","_applyMinimumContrast","_addStyle","456","SelectionModel","isSelectAllActive","selectionStartLength","areSelectionValuesReversed","onTrim","428","_onCharSizeChange","_measureStrategy","_parentElement","_result","_measureElement","4269","_characterJoiners","_nextCharacterJoinerId","getBg","getTrimmedLength","_getJoinedRanges","_mergeRanges","_stringRangesToCellRanges","getString","5114","getRootNode","8934","3230","_isPaused","_needsFullRefresh","_isNextRenderRedrawOnly","_needsSelectionRefresh","_canvasWidth","_canvasHeight","_selectionState","_onDimensionsChange","_onRefreshRequest","_renderDebouncer","_fullRefresh","onCharSizeChange","IntersectionObserver","_onIntersectionChange","threshold","observe","disconnect","isIntersecting","intersectionRatio","_fireOnCanvasResize","changeOptions","9312","_dragScrollAmount","_enabled","_mouseDownTimeStamp","_oldHasSelection","_oldSelectionStart","_oldSelectionEnd","_onLinuxMouseSelection","_onRedrawRequest","_onRequestScrollLines","_mouseUpListener","_onMouseUp","onUserInput","_trimListener","_onTrim","_onBufferActivate","_activeSelectionMode","_removeMouseDownListeners","finalSelectionStart","finalSelectionEnd","_isClickInSelection","_getMouseBufferCoords","_areCoordsInSelection","_selectWordAtCursor","currentLink","getRangeLength","_selectWordAt","_getMouseEventScrollAmount","macOptionClickForcesSelection","timeStamp","_onIncrementalClick","detail","_onSingleClick","_onDoubleClick","_onTripleClick","_addMouseDownListeners","_dragScrollIntervalTimer","_dragScroll","hasWidth","_selectLineAt","_selectToWordAt","_fireEventIfSelectionChanged","_fireOnSelectionChange","activeBuffer","_convertViewportColToCharacterIndex","_getWordAt","charAt","_isCharWordSeparator","trim","wordSeparator","getWrappedRangeForLine","last","4725","createDecorator","357","_audioContext","AudioContext","webkitAudioContext","audioContext","createBufferSource","decodeAudioData","_base64ToArrayBuffer","_removeMimeType","bellSound","connect","destination","atob","6349","CircularList","_maxLength","onDeleteEmitter","onInsertEmitter","onTrimEmitter","_array","_startIndex","_length","_getCyclicIndex","recycle","trimStart","shiftElements","1439","isArray","8969","_onBinary","_onData","_onLineFeed","InstantiationService","OptionsService","BufferService","LogService","CoreService","CoreMouseService","ICoreMouseService","_dirtyRowService","DirtyRowService","IDirtyRowService","UnicodeService","_charsetService","CharsetService","ICharsetService","InputHandler","markRangeDirty","scrollBottom","_writeBuffer","WriteBuffer","parse","_onScrollApi","_windowsMode","writeSync","LogLevelEnum","WARN","MINIMUM_COLS","MINIMUM_ROWS","scroll","windowsMode","_enableWindowsMode","updateWindowsModeWrappedState","final","8460","5435","setWinLines","restoreWin","minimizeWin","setWinPosition","setWinSizePixels","raiseWin","lowerWin","refreshWin","setWinSizeChars","maximizeWin","fullscreenWin","getWinState","getWinPosition","getWinSizePixels","getScreenSizePixels","getCellSizePixels","getWinSizeChars","getScreenSizeChars","getIconTitle","getWinTitle","pushTitle","popTitle","_data","hook","put","unhook","EscapeSequenceParser","_parseBuffer","_stringDecoder","_utf8Decoder","_windowTitle","_iconName","_windowTitleStack","_iconNameStack","_curAttrData","_eraseAttrDataInternal","_onRequestBell","_onRequestRefreshRows","_onRequestReset","_onRequestSyncScrollBar","_onRequestWindowsOptionsReport","_onA11yChar","_onA11yTab","_onAnsiColorChange","_parseStack","paused","cursorStartX","cursorStartY","decodedLength","setCsiHandlerFallback","identifier","identToString","params","setEscHandlerFallback","setExecuteHandlerFallback","setOscHandlerFallback","setDcsHandlerFallback","payload","setPrintHandler","print","insertChars","intermediates","scrollLeft","cursorUp","scrollRight","cursorDown","cursorForward","cursorBackward","cursorNextLine","cursorPrecedingLine","cursorCharAbsolute","cursorPosition","cursorForwardTab","eraseInDisplay","prefix","eraseInLine","insertLines","deleteLines","deleteChars","scrollUp","scrollDown","eraseChars","cursorBackwardTab","charPosAbsolute","hPositionRelative","repeatPrecedingCharacter","sendDeviceAttributesPrimary","sendDeviceAttributesSecondary","linePosAbsolute","vPositionRelative","hVPosition","tabClear","setMode","setModePrivate","resetMode","resetModePrivate","charAttributes","deviceStatus","deviceStatusPrivate","softReset","setCursorStyle","setScrollRegion","saveCursor","windowOptions","restoreCursor","insertColumns","deleteColumns","setExecuteHandler","BEL","LF","lineFeed","VT","FF","carriageReturn","BS","backspace","HT","tab","SO","shiftOut","SI","shiftIn","C1","IND","NEL","nextLine","HTS","tabSet","OscHandler","setTitle","setIconName","setAnsiColor","reverseIndex","keypadApplicationMode","keypadNumericMode","fullReset","setgLevel","selectDefaultCharset","selectCharset","CHARSETS","screenAlignmentPattern","setErrorHandler","_preserveStack","_logSlowResolvingAsync","Promise","race","catch","clearRange","charset","wraparound","modes","insertMode","markDirty","setCellFromCodePoint","wcwidth","_eraseAttrData","insertCells","addCodepointToCell","precedingCodepoint","hasContent","DcsHandler","convertEol","reverseWraparound","_restrictCursor","nextStop","origin","_setCursor","_moveCursor","tabs","prevStop","_eraseInBufferLine","replaceCells","_resetBufferLine","deleteCells","_is","termName","setgCharset","DEFAULT_CHARSET","applicationKeypad","activeEncoding","activateAltBuffer","activateNormalBuffer","_updateAttrColor","_extractColor","hasSubParams","getSubParams","_processUnderline","savedX","savedY","savedCurAttrData","savedCharset","_savedCharset","_parseAnsiColorChange","markAllDirty","844","6114","isIphone","isIpad","navigator","userAgent","platform","includes","test","8273","9282","3734","9092","BufferStringIterator","Buffer","MAX_BUFFER_SIZE","_hasScrollback","_nullCell","_whitespaceCell","_cols","_rows","_getCorrectBufferLength","getWhitespaceCell","BufferLine","maxLength","scrollback","fillViewportRows","_isReflowEnabled","_reflow","_reflowLarger","_reflowSmaller","reflowLargerGetLinesToRemove","reflowLargerCreateNewLayout","reflowLargerApplyNewLayout","layout","_reflowLargerAdjustViewport","countRemoved","reflowSmallerGetNewLineLengths","newLines","copyCellsFrom","getWrappedLineTrimmedLength","setCell","tabStopWidth","Marker","line","onInsert","onDelete","onDispose","_removeMarker","_trimRight","_endIndex","_startOverscan","_endOverscan","_current","8437","_combined","_extendedAttrs","keys","copyFrom","4841","4634","reduce","5295","BufferSet","_alt","inactiveBuffer","511","643","4863","_nextId","_onDispose","7116","j","q","z","Q","K","Y","Z","H","2584","NUL","SOH","STX","EOT","ENQ","ACK","DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM","SUB","FS","GS","RS","US","SP","DEL","PAD","HOP","BPH","NBH","SSA","ESA","HTJ","VTS","PLD","PLU","RI","SS2","SS3","DCS","PU1","PU2","STS","CCH","MW","SPA","EPA","SOS","SGCI","SCI","CSI","ST","OSC","PM","APC","7399","48","49","50","51","52","53","54","55","56","57","186","187","188","189","190","191","192","219","220","221","222","482","225","UnicodeV6","5981","queueMicrotask","resolve","_action","_callbacks","_pendingData","_bufferOffset","_isSyncWriting","_syncCalls","_innerWrite","5770","PAYLOAD_LIMIT","6351","DcsParser","_handlers","_active","_ident","_handlerFb","_stack","loopPosition","fallThrough","registerHandler","clearHandler","setHandlerFallback","Params","addParam","_params","_hitLimit","2015","VT500_TRANSITION_TABLE","TransitionTable","setDefault","addMany","_transitions","handlers","handlerPos","transition","chunkPos","initialState","currentState","_collect","_printHandlerFb","_executeHandlerFb","_csiHandlerFb","_escHandlerFb","_errorHandlerFb","_printHandler","_executeHandlers","_csiHandlers","_escHandlers","_oscParser","OscParser","_dcsParser","_errorHandler","_identifier","reverse","clearPrintHandler","clearEscHandler","clearExecuteHandler","clearCsiHandler","clearDcsHandler","clearOscHandler","clearErrorHandler","collect","abort","addSubParam","addDigit","6242","_start","_put","8742","maxSubParamsLength","_subParams","_subParamsLength","_subParamsIdx","Uint16Array","_rejectDigits","_rejectSubDigits","_digitIsSub","fromArray","getSubParamsAll","744","isUserScrolling","_cachedBlankLine","isFull","7994","glevel","_charsets","1753","NONE","events","restrict","X10","VT200","DRAG","ANY","DEFAULT","SGR","_protocols","_encodings","_activeProtocol","_activeEncoding","_onProtocolChange","_lastEvent","addProtocol","addEncoding","_compareEvents","triggerBinaryEvent","down","up","drag","move","6975","_onUserInput","_scrollToBottom","disableStdin","3730","_end","4348","__spreadArrays","ServiceCollection","_entries","_services","getService","getServiceDependencies","sort","name","7866","DEBUG","info","INFO","ERROR","off","OFF","_updateLogLevel","_evalLazyOptionalParams","_log","7302","DEFAULT_OPTIONS","DEFAULT_BELL_SOUND","altClickMovesCursor","_onOptionChange","_sanitizeAndValidateOption","8343","di$target","di$dependencies","serviceRegistry","2585","1480","_providers","_onChange","_activeProvider","Zmodem","HEX_DIGITS","HEX_OCTET_VALUE","hd","ENCODELIB","pack_u16_be","number","pack_u32_le","high_bytes","unpack_u16_be","bytes_arr","unpack_u32_le","octets","octets_to_hex","hex","parse_hex_octets","hex_octets","Text","Encoder","TextEncoder","unescape","encodeURIComponent","bytes","Decoder","TextDecoder","decodeURIComponent","escape","CRC32_MOD","_crctab","_updcrc","cp","crc","divident","currByte","crc_width","bit","_compute_crctab","__verify","expect","got","assign","CRC","crc16","octet_nums","crc32","verify16","verify32","err","input","encode_cur","encode_todo","ZDLE","ZMLIB","ZmodemZDLE","set_escape_ctrl_chars","escape_ctrl_chars","_setup_zdle_table","_zdle_table","zdle_table","last_code","_lastcode","arrbuf","ArrayBuffer","arrbuf_uint8","escctl_yn","arrbuf_i","trace","JSON","stringify","so_far","zsendline_tab","XOFF","XON","turbo_escape","TYPE_MESSAGE","aborted","peer_aborted","already_aborted","expected","validation","val","_generate_message","msg","args_after_type","msg_or_type","super","generated","message","ZPAD","ZBIN","ZHEX","ZBIN32","HEX_HEADER_CRLF","HEX_HEADER_CRLF_XON","HEX_HEADER_PREFIX","BINARY16_HEADER_PREFIX","BINARY32_HEADER_PREFIX","Header","ibuffer","discard_all","parser","garbage","TRIM_LOOP","first_ZPAD","_parse_hex","_parse_binary16","_parse_binary32","hdr","args","Ctr","FRAME_NAME_CREATOR","to_crc","_crc_bytes","_hex_header_ending","zencoder","_to_binary","_bytes4","crc_func","encode","TYPENUM","ZRQINIT_HEADER","ZRINIT_FLAG","CANFDX","CANOVIO","CANBRK","CANCRY","CANLZW","CANFC32","ESCCTL","ESC8","ZRINIT_HEADER","flags_arr","bufsize","flags_num","fl","_get_ZRINIT_flag_num","undefined","ZSINIT_FLAG","ZSINIT_HEADER","attn_seq_arr","_get_ZSINIT_flag_num","some","num","ZACK_HEADER","payload4","ZFILE_VALUES","sparse","transport","management","conversion","ZFILE_ORDER","ZFILE_HEADER","opts","bytes_copy","skip_if_absent","extkey","ZSKIP_HEADER","ZABORT_HEADER","ZFIN_HEADER","ZFERR_HEADER","ZOffsetHeader","ZRPOS_HEADER","ZDATA_HEADER","ZEOF_HEADER","FRAME_CLASS_TYPES","fc","NAME","CREATORS","_get_blank_header","typenum","creator","_get_blank_header_from_constructor","zdle_decoded","_parse_non_zdle_binary16","decoded","hdr_err","hex_bytes","lf_pos","preceding","parse_hex","ABORT_SEQUENCE","strip_ignored_bytes","find_subarray","haystack","needle","HAYSTACK","_check_aborted","session","Browser","send_files","files","batch","total_size","fobj","obj","mtime","lastModified","files_remaining","bytes_remaining","file_idx","promise_callback","cur_b","send_offer","xfer","on_offer_response","res","piece","reader","FileReader","onerror","onprogress","result","get_offset","send","on_progress","onload","on_file_complete","readAsArrayBuffer","save_to_disk","packets","blob","Blob","url","URL","createObjectURL","el","download","click","COMMON_ZM_HEX_START","SENTRY_CONSTRUCTOR_REQUIRED_ARGS","Detection","session_type","accepter","denier","checker","_confirmer","_denier","_is_valid","_session_type","Sentry","sentry","arg","_cache","_zsession","session_before_consume","consume","has_ended","get_trailing_bytes","new_session","_parse","to_terminal","_parsed_session","_on_retract","_on_detect","is_valid","on","_to_terminal","_after_session_end","set_sender","_sender","_send_abort","expired_session","array_like","zsession","common_hex_at","Session","ZRINIT_FLAGS","DEFAULT_RECEIVE_INPUT_MODE","OVER_AND_OUT","_Eventer","_on_evt","_evt_once_index","evt_name","todo","_get_evt_queue","queue","at","sess","cb","Receive","Send","sender_func","_has_ended","_before_consume","_aborted","_strip_and_enqueue_input","_check_for_abort_sequence","_consume_first","_input_buffer","_Add_event","trim_leading_garbage","_Happen","_trim_leading_garbage_until_header","new_header_and_crc","_log_header","_consume_header","_last_header_name","_last_header_crc","label","header","new_header","_on_receive","_next_header_handler","abort_at","_on_session_end","bytes_hdr","_create_header_bytes","_last_sent_header","name_and_args","build","_get_header_formatter","_zencoder","hdr_or_pkt","_bytes_after_OO","_bytes_being_consumed","parse_func","subpacket","Subpacket","_consume_data","frame_end","_next_subpacket_handler","_got_ZFIN","array","parsed","_parse_and_consume_subpacket","_parse_and_consume_header","get_payload","_textdecoder","_file_info","packet_payload","nul_at","fname","_octets_to_string","the_rest","mode","serial","Offer","get_options","_accept","_skip","_current_transfer","_accepted_offer","_offset_ok","_send_ZRPOS","_file_offset","_on_data_in","ack_expected","_send_header","between_files_handler","ZFILE","_consume_ZFILE_data","ZSINIT","spkt","_consume_ZSINIT_data","ZFIN","_consume_ZFIN","_attn","_started","ret","_make_promise_for_between_files","_send_ZRINIT","resolve_accept","ZDATA","_consume_ZDATA","_consume_ZDATA_data","ZEOF","_consume_ZEOF","bound_make_promise_for_between_files","_on_file_end","Transfer_Offer_Mixin","get_details","_zfile_opts","Transfer","file_info","send_func","end_func","_send","zfile_opts","accept_func","skip_func","_accept_func","_skip_func","_input_handler","_skipped","_verify_not_skipped","_accepted","on_input","_spool","_input_handler_mode","_get_spool","SENDER_BINARY_HEADER","zrinit_hdr","_subpacket_encode_func","_consume_ZRINIT","_start_keepalive_on_set_sender","func","_start_keepalive","_keepalive_promise","_keepalive_timeout","ZACK","_got_ZSINIT_ZACK","_send_ZSINIT","_keep_alive_promise","zsinit_flags","escapes_ctrl_chars","_send_header_and_data","_last_ZRINIT","get_buffer_size","can_full_duplex","can_overlap_io","escape_8th_bit","promise","subpacket_payload","Validation","offer_parameters","subpacket_space_pieces","_string_to_octets","_sending_file","payload_array","_convert_params_to_offer_payload_array","_stop_keepalive","zrpos_handler_setter_func","ZRPOS","_ensure_receiver_escapes_ctrl_chars","handler_setter_promise","ZSKIP","_send_interim_file_piece","_end_file","_sent_ZDATA","hdr_name_and_args","data_arr","frameend","data_bytes","_build_subpacket_bytes","string","_textencoder","uint8arr","bytes_obj","_send_file_part","_ensure_we_are_sending","_prepare_to_receive_ZRINIT","after_consume","ZRINIT","ok_to_close","rej","_sent_OO","final_packetend","obj_offset","bytes_count","chunk_size","at_end","chunk","_build_and_send_subpacket","SUBPACKET_BUILDER","ZmodemSubpacket","_encode","_payload","_frameend_num","crc_len","end_at","_frame_ends_lookup","104","ZEndNoAckSubpacket","105","ZNoEndNoAckSubpacket","106","ZNoEndAckSubpacket","107","ZEndAckSubpacket","zdle_at","frameend_num","zdle_encoded_payload","got_crc","ZEndSubpacketBase","ZNoEndSubpacketBase","end_no_ack","end_ack","no_end_no_ack","no_end_ack","LOOKS_LIKE_ZMODEM_HEADER","_validate_number","ok","mtime_ok","date_obj","getTime","protocols","Connection","ConnectionFactory","bare","WebSocket","close","isOpen","readyState","CONNECTING","OPEN","onOpen","callback","onopen","onReceive","onmessage","onClose","onclose","msgInputUnknown","msgInput","msgPing","msgResizeTerminal","msgUnknownOutput","msgOutput","msgPong","msgSetWindowTitle","msgSetPreferences","msgSetReconnect","msgSetBufferSize","term","connectionFactory","authToken","reconnect","bufSize","output","detection","zmodemDetect","sendInput","alert","confirm","zmodemSend","zmodemOffer","dialog","getFileSendDialog","selector","getElementById","onchange","getFileAcceptanceDialog","filenameElem","sizeElem","skipLink","onclick","ev","skip","acceptLink","accept","payloads","dataString","effectiveBufferSize","maxChunkSize","inputChunk","connection","btoa","className","innerHTML","pingTimer","reconnectTimeout","setup","termInfo","Arguments","AuthToken","resizeHandler","colmuns","columns","onInput","from","setWindowTitle","preferences","setPreferences","autoReconnect","deactivate","showMessage","WebTTY","elem","fitAddOn","messageTimeout","resizeListener","getMessage","timeout","showMessageElem","messageTimer","removeMessage","title","onDataHandler","onResizeHandler","Xterm","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","protocol","host","pathname","search","gotty_auth_token"],"mappings":"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AC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CA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","file":"gotty.js","sourcesContent":["/*!\n * crc-32 (https://npmjs.com/package/crc-32)\n * @license Apache-2.0\n * @version 1.2.1\n * ==crc-32/LICENSE==\n * Apache License\n * Version 2.0, January 2004\n * http://www.apache.org/licenses/\n * \n * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n * \n * 1. Definitions.\n * \n * \"License\" shall mean the terms and conditions for use, reproduction,\n * and distribution as defined by Sections 1 through 9 of this document.\n * \n * \"Licensor\" shall mean the copyright owner or entity authorized by\n * the copyright owner that is granting the License.\n * \n * \"Legal Entity\" shall mean the union of the acting entity and all\n * other entities that control, are controlled by, or are under common\n * control with that entity. For the purposes of this definition,\n * \"control\" means (i) the power, direct or indirect, to cause the\n * direction or management of such entity, whether by contract or\n * otherwise, or (ii) ownership of fifty percent (50%) or more of the\n * outstanding shares, or (iii) beneficial ownership of such entity.\n * \n * \"You\" (or \"Your\") shall mean an individual or Legal Entity\n * exercising permissions granted by this License.\n * \n * \"Source\" form shall mean the preferred form for making modifications,\n * including but not limited to software source code, documentation\n * source, and configuration files.\n * \n * \"Object\" form shall mean any form resulting from mechanical\n * transformation or translation of a Source form, including but\n * not limited to compiled object code, generated documentation,\n * and conversions to other media types.\n * \n * \"Work\" shall mean the work of authorship, whether in Source or\n * Object form, made available under the License, as indicated by a\n * copyright notice that is included in or attached to the work\n * (an example is provided in the Appendix below).\n * \n * \"Derivative Works\" shall mean any work, whether in Source or Object\n * form, that is based on (or derived from) the Work and for which the\n * editorial revisions, annotations, elaborations, or other modifications\n * represent, as a whole, an original work of authorship. For the purposes\n * of this License, Derivative Works shall not include works that remain\n * separable from, or merely link (or bind by name) to the interfaces of,\n * the Work and Derivative Works thereof.\n * \n * \"Contribution\" shall mean any work of authorship, including\n * the original version of the Work and any modifications or additions\n * to that Work or Derivative Works thereof, that is intentionally\n * submitted to Licensor for inclusion in the Work by the copyright owner\n * or by an individual or Legal Entity authorized to submit on behalf of\n * the copyright owner. For the purposes of this definition, \"submitted\"\n * means any form of electronic, verbal, or written communication sent\n * to the Licensor or its representatives, including but not limited to\n * communication on electronic mailing lists, source code control systems,\n * and issue tracking systems that are managed by, or on behalf of, the\n * Licensor for the purpose of discussing and improving the Work, but\n * excluding communication that is conspicuously marked or otherwise\n * designated in writing by the copyright owner as \"Not a Contribution.\"\n * \n * \"Contributor\" shall mean Licensor and any individual or Legal Entity\n * on behalf of whom a Contribution has been received by Licensor and\n * subsequently incorporated within the Work.\n * \n * 2. Grant of Copyright License. Subject to the terms and conditions of\n * this License, each Contributor hereby grants to You a perpetual,\n * worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n * copyright license to reproduce, prepare Derivative Works of,\n * publicly display, publicly perform, sublicense, and distribute the\n * Work and such Derivative Works in Source or Object form.\n * \n * 3. Grant of Patent License. Subject to the terms and conditions of\n * this License, each Contributor hereby grants to You a perpetual,\n * worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n * (except as stated in this section) patent license to make, have made,\n * use, offer to sell, sell, import, and otherwise transfer the Work,\n * where such license applies only to those patent claims licensable\n * by such Contributor that are necessarily infringed by their\n * Contribution(s) alone or by combination of their Contribution(s)\n * with the Work to which such Contribution(s) was submitted. If You\n * institute patent litigation against any entity (including a\n * cross-claim or counterclaim in a lawsuit) alleging that the Work\n * or a Contribution incorporated within the Work constitutes direct\n * or contributory patent infringement, then any patent licenses\n * granted to You under this License for that Work shall terminate\n * as of the date such litigation is filed.\n * \n * 4. Redistribution. You may reproduce and distribute copies of the\n * Work or Derivative Works thereof in any medium, with or without\n * modifications, and in Source or Object form, provided that You\n * meet the following conditions:\n * \n * (a) You must give any other recipients of the Work or\n * Derivative Works a copy of this License; and\n * \n * (b) You must cause any modified files to carry prominent notices\n * stating that You changed the files; and\n * \n * (c) You must retain, in the Source form of any Derivative Works\n * that You distribute, all copyright, patent, trademark, and\n * attribution notices from the Source form of the Work,\n * excluding those notices that do not pertain to any part of\n * the Derivative Works; and\n * \n * (d) If the Work includes a \"NOTICE\" text file as part of its\n * distribution, then any Derivative Works that You distribute must\n * include a readable copy of the attribution notices contained\n * within such NOTICE file, excluding those notices that do not\n * pertain to any part of the Derivative Works, in at least one\n * of the following places: within a NOTICE text file distributed\n * as part of the Derivative Works; within the Source form or\n * documentation, if provided along with the Derivative Works; or,\n * within a display generated by the Derivative Works, if and\n * wherever such third-party notices normally appear. The contents\n * of the NOTICE file are for informational purposes only and\n * do not modify the License. You may add Your own attribution\n * notices within Derivative Works that You distribute, alongside\n * or as an addendum to the NOTICE text from the Work, provided\n * that such additional attribution notices cannot be construed\n * as modifying the License.\n * \n * You may add Your own copyright statement to Your modifications and\n * may provide additional or different license terms and conditions\n * for use, reproduction, or distribution of Your modifications, or\n * for any such Derivative Works as a whole, provided Your use,\n * reproduction, and distribution of the Work otherwise complies with\n * the conditions stated in this License.\n * \n * 5. Submission of Contributions. Unless You explicitly state otherwise,\n * any Contribution intentionally submitted for inclusion in the Work\n * by You to the Licensor shall be under the terms and conditions of\n * this License, without any additional terms or conditions.\n * Notwithstanding the above, nothing herein shall supersede or modify\n * the terms of any separate license agreement you may have executed\n * with Licensor regarding such Contributions.\n * \n * 6. Trademarks. This License does not grant permission to use the trade\n * names, trademarks, service marks, or product names of the Licensor,\n * except as required for reasonable and customary use in describing the\n * origin of the Work and reproducing the content of the NOTICE file.\n * \n * 7. Disclaimer of Warranty. Unless required by applicable law or\n * agreed to in writing, Licensor provides the Work (and each\n * Contributor provides its Contributions) on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n * implied, including, without limitation, any warranties or conditions\n * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n * PARTICULAR PURPOSE. You are solely responsible for determining the\n * appropriateness of using or redistributing the Work and assume any\n * risks associated with Your exercise of permissions under this License.\n * \n * 8. Limitation of Liability. In no event and under no legal theory,\n * whether in tort (including negligence), contract, or otherwise,\n * unless required by applicable law (such as deliberate and grossly\n * negligent acts) or agreed to in writing, shall any Contributor be\n * liable to You for damages, including any direct, indirect, special,\n * incidental, or consequential damages of any character arising as a\n * result of this License or out of the use or inability to use the\n * Work (including but not limited to damages for loss of goodwill,\n * work stoppage, computer failure or malfunction, or any and all\n * other commercial damages or losses), even if such Contributor\n * has been advised of the possibility of such damages.\n * \n * 9. Accepting Warranty or Additional Liability. While redistributing\n * the Work or Derivative Works thereof, You may choose to offer,\n * and charge a fee for, acceptance of support, warranty, indemnity,\n * or other liability obligations and/or rights consistent with this\n * License. However, in accepting such obligations, You may act only\n * on Your own behalf and on Your sole responsibility, not on behalf\n * of any other Contributor, and only if You agree to indemnify,\n * defend, and hold each Contributor harmless for any liability\n * incurred by, or claims asserted against, such Contributor by reason\n * of your accepting any such warranty or additional liability.\n * \n * END OF TERMS AND CONDITIONS\n * \n * APPENDIX: How to apply the Apache License to your work.\n * \n * To apply the Apache License to your work, attach the following\n * boilerplate notice, with the fields enclosed by brackets \"{}\"\n * replaced with your own identifying information. (Don't include\n * the brackets!) The text should be enclosed in the appropriate\n * comment syntax for the file format. We also recommend that a\n * file or class name and description of purpose be included on the\n * same \"printed page\" as the copyright notice for easier\n * identification within third-party archives.\n * \n * Copyright (C) 2014-present SheetJS LLC\n * \n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n * http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */\n/* vim: set ts=2: */\n/*exported CRC32 */\nvar CRC32;\n(function (factory) {\n\t/*jshint ignore:start */\n\t/*eslint-disable */\n\tif(typeof DO_NOT_EXPORT_CRC === 'undefined') {\n\t\tif('object' === typeof exports) {\n\t\t\tfactory(exports);\n\t\t} else if ('function' === typeof define && define.amd) {\n\t\t\tdefine(function () {\n\t\t\t\tvar module = {};\n\t\t\t\tfactory(module);\n\t\t\t\treturn module;\n\t\t\t});\n\t\t} else {\n\t\t\tfactory(CRC32 = {});\n\t\t}\n\t} else {\n\t\tfactory(CRC32 = {});\n\t}\n\t/*eslint-enable */\n\t/*jshint ignore:end */\n}(function(CRC32) {\nCRC32.version = '1.2.1';\n/*global Int32Array */\nfunction signed_crc_table() {\n\tvar c = 0, table = new Array(256);\n\n\tfor(var n =0; n != 256; ++n){\n\t\tc = n;\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\ttable[n] = c;\n\t}\n\n\treturn typeof Int32Array !== 'undefined' ? new Int32Array(table) : table;\n}\n\nvar T0 = signed_crc_table();\nfunction slice_by_16_tables(T) {\n\tvar c = 0, v = 0, n = 0, table = typeof Int32Array !== 'undefined' ? new Int32Array(4096) : new Array(4096) ;\n\n\tfor(n = 0; n != 256; ++n) table[n] = T[n];\n\tfor(n = 0; n != 256; ++n) {\n\t\tv = T[n];\n\t\tfor(c = 256 + n; c < 4096; c += 256) v = table[c] = (v >>> 8) ^ T[v & 0xFF];\n\t}\n\tvar out = [];\n\tfor(n = 1; n != 16; ++n) out[n - 1] = typeof Int32Array !== 'undefined' ? table.subarray(n * 256, n * 256 + 256) : table.slice(n * 256, n * 256 + 256);\n\treturn out;\n}\nvar TT = slice_by_16_tables(T0);\nvar T1 = TT[0], T2 = TT[1], T3 = TT[2], T4 = TT[3], T5 = TT[4];\nvar T6 = TT[5], T7 = TT[6], T8 = TT[7], T9 = TT[8], Ta = TT[9];\nvar Tb = TT[10], Tc = TT[11], Td = TT[12], Te = TT[13], Tf = TT[14];\nfunction crc32_bstr(bstr, seed) {\n\tvar C = seed ^ -1;\n\tfor(var i = 0, L = bstr.length; i < L;) C = (C>>>8) ^ T0[(C^bstr.charCodeAt(i++))&0xFF];\n\treturn ~C;\n}\n\nfunction crc32_buf(B, seed) {\n\tvar C = seed ^ -1, L = B.length - 15, i = 0;\n\tfor(; i < L;) C =\n\t\tTf[B[i++] ^ (C & 255)] ^\n\t\tTe[B[i++] ^ ((C >> 8) & 255)] ^\n\t\tTd[B[i++] ^ ((C >> 16) & 255)] ^\n\t\tTc[B[i++] ^ (C >>> 24)] ^\n\t\tTb[B[i++]] ^ Ta[B[i++]] ^ T9[B[i++]] ^ T8[B[i++]] ^\n\t\tT7[B[i++]] ^ T6[B[i++]] ^ T5[B[i++]] ^ T4[B[i++]] ^\n\t\tT3[B[i++]] ^ T2[B[i++]] ^ T1[B[i++]] ^ T0[B[i++]];\n\tL += 15;\n\twhile(i < L) C = (C>>>8) ^ T0[(C^B[i++])&0xFF];\n\treturn ~C;\n}\n\nfunction crc32_str(str, seed) {\n\tvar C = seed ^ -1;\n\tfor(var i = 0, L = str.length, c = 0, d = 0; i < L;) {\n\t\tc = str.charCodeAt(i++);\n\t\tif(c < 0x80) {\n\t\t\tC = (C>>>8) ^ T0[(C^c)&0xFF];\n\t\t} else if(c < 0x800) {\n\t\t\tC = (C>>>8) ^ T0[(C ^ (192|((c>>6)&31)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(c&63)))&0xFF];\n\t\t} else if(c >= 0xD800 && c < 0xE000) {\n\t\t\tc = (c&1023)+64; d = str.charCodeAt(i++)&1023;\n\t\t\tC = (C>>>8) ^ T0[(C ^ (240|((c>>8)&7)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((c>>2)&63)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((d>>6)&15)|((c&3)<<4)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(d&63)))&0xFF];\n\t\t} else {\n\t\t\tC = (C>>>8) ^ T0[(C ^ (224|((c>>12)&15)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((c>>6)&63)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(c&63)))&0xFF];\n\t\t}\n\t}\n\treturn ~C;\n}\nCRC32.table = T0;\n// $FlowIgnore\nCRC32.bstr = crc32_bstr;\n// $FlowIgnore\nCRC32.buf = crc32_buf;\n// $FlowIgnore\nCRC32.str = crc32_str;\n}));\n","/*!\n * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit)\n * @license MIT\n * @version 0.5.0\n * ==xterm-addon-fit/LICENSE==\n * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.FitAddon=t():e.FitAddon=t()}(self,(function(){return(()=>{\"use strict\";var e={775:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue(\"height\")),i=Math.max(0,parseInt(t.getPropertyValue(\"width\"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue(\"padding-top\"))+parseInt(n.getPropertyValue(\"padding-bottom\"))),a=i-(parseInt(n.getPropertyValue(\"padding-right\"))+parseInt(n.getPropertyValue(\"padding-left\")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(a/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()}));\n//# sourceMappingURL=xterm-addon-fit.js.map","/*!\n * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links)\n * @license MIT\n * @version 0.4.0\n * ==xterm-addon-web-links/LICENSE==\n * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.WebLinksAddon=t():e.WebLinksAddon=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.WebLinksAddon=void 0;var r=n(1),i=new RegExp(\"(?:^|[^\\\\da-z\\\\.-]+)((https?:\\\\/\\\\/)((([\\\\da-z\\\\.-]+)\\\\.([a-z\\\\.]{2,6}))|((\\\\d{1,3}\\\\.){3}\\\\d{1,3})|(localhost))(:\\\\d{1,5})?((\\\\/[\\\\/\\\\w\\\\.\\\\-%~:+@]*)*([^:\\\"'\\\\s]))?(\\\\?[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?(#[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?)($|[^\\\\/\\\\w\\\\.\\\\-%]+)\");function o(e,t){var n=window.open();n?(n.opener=null,n.location.href=t):console.warn(\"Opening link blocked as opener could not be cleared\")}var a=function(){function e(e,t,n){void 0===e&&(e=o),void 0===t&&(t={}),void 0===n&&(n=!1),this._handler=e,this._options=t,this._useLinkProvider=n,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&\"registerLinkProvider\"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new r.WebLinkProvider(this._terminal,i,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(i,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var r=function(){function e(e,t,n){this._terminal=e,this._regex=t,this._handler=n}return e.prototype.provideLinks=function(e,t){t(i.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=r;var i=function(){function e(){}return e.computeLink=function(t,n,r,i){for(var o,a=new RegExp(n.source,(n.flags||\"\")+\"g\"),s=e._translateBufferLineToStringWithWrap(t-1,!1,r),u=s[0],d=s[1],l=-1,c=[];null!==(o=a.exec(u));){var f=o[1];if(!f){console.log(\"match found without corresponding matchIndex\");break}if(l=u.indexOf(f,l+1),a.lastIndex=l+f.length,l<0)break;for(var p=l+f.length,h=d+1;p>r.cols;)p-=r.cols,h++;var v={start:{x:l+1,y:d+1},end:{x:p,y:h}};c.push({range:v,text:f,activate:i})}return c},e._translateBufferLineToStringWithWrap=function(e,t,n){var r,i,o=\"\";do{if(!(s=n.buffer.active.getLine(e)))break;s.isWrapped&&e--,i=s.isWrapped}while(i);var a=e;do{var s,u=n.buffer.active.getLine(e+1);if(r=!!u&&u.isWrapped,!(s=n.buffer.active.getLine(e)))break;o+=s.translateToString(!r&&t).substring(0,n.cols),e++}while(r);return[o,a]},e}();t.LinkComputer=i}])}));\n//# sourceMappingURL=xterm-addon-web-links.js.map","/*!\n * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl)\n * @license MIT\n * @version 0.10.0\n * ==xterm-addon-webgl/LICENSE==\n * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.WebglAddon=e():t.WebglAddon=e()}(self,(function(){return(()=>{\"use strict\";var t={965:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.GlyphRenderer=void 0;var r=i(381),o=i(310),n=i(455),s=i(259),a=i(855),l=i(147),h=10,c=h*Float32Array.BYTES_PER_ELEMENT,_=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_unitquad;\\nlayout (location = 1) in vec2 a_cellpos;\\nlayout (location = 2) in vec2 a_offset;\\nlayout (location = 3) in vec2 a_size;\\nlayout (location = 4) in vec2 a_texcoord;\\nlayout (location = 5) in vec2 a_texsize;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec2 v_texcoord;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec2 v_texcoord;\\n\\nuniform sampler2D u_texture;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = texture(u_texture, v_texcoord);\\n}\"));this._program=s,this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._textureLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_texture\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),_=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,_),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,c,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,c,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,c,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,c,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,c,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=r.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return t.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},t.prototype.updateCell=function(t,e,i,r,o,n){this._updateCell(this._vertices.attributes,t,e,i,r,o,n)},t.prototype._updateCell=function(t,e,i,r,o,s,l){var c,_=(i*this._terminal.cols+e)*h;r!==a.NULL_CELL_CODE&&r!==a.WHITESPACE_CELL_CODE&&void 0!==r?this._atlas&&((c=l&&l.length>1?this._atlas.getRasterizedGlyphCombinedChar(l,o,s):this._atlas.getRasterizedGlyph(r,o,s))?(t[_]=-c.offset.x+this._dimensions.scaledCharLeft,t[_+1]=-c.offset.y+this._dimensions.scaledCharTop,t[_+2]=c.size.x/this._dimensions.scaledCanvasWidth,t[_+3]=c.size.y/this._dimensions.scaledCanvasHeight,t[_+4]=c.texturePositionClipSpace.x,t[_+5]=c.texturePositionClipSpace.y,t[_+6]=c.sizeClipSpace.x,t[_+7]=c.sizeClipSpace.y):n.fill(t,0,_,_+h-1-2)):n.fill(t,0,_,_+h-1-2)},t.prototype.updateSelection=function(t){var e=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var i=this._colors.selectionOpaque.rgba>>>8|50331648;if(t.selection.columnSelectMode)for(var r=t.selection.startCol,o=t.selection.endCol-r,n=t.selection.viewportCappedEndRow-t.selection.viewportCappedStartRow+1,a=t.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var g=l.AttributeData.toColorRGB(f.getBgColor());u|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;u|=v>>8&16711680|v>>8&65280|v>>8&255}u|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(h));var C=s.getCell(c).getChars();this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u,C)}else this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u)}},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._colors.ansi[t]},t.prototype.onResize=function(){var t=this._terminal,e=this._gl;e.viewport(0,0,e.canvas.width,e.canvas.height);var i=t.cols*t.rows*h;if(this._vertices.count!==i){this._vertices.count=i,this._vertices.attributes=new Float32Array(i);for(var r=0;r{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RectangleRenderer=void 0;var r=i(381),o=i(455),n=i(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_position;\\nlayout (location = 1) in vec2 a_size;\\nlayout (location = 2) in vec4 a_color;\\nlayout (location = 3) in vec2 a_unitquad;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec4 v_color;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_color = a_color;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec4 v_color;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = v_color;\\n}\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),c=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,c),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return t.prototype.render=function(){var t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,r.PROJECTION_MATRIX),t.uniform2f(this._resolutionLocation,t.canvas.width,t.canvas.height),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,this._vertices.count),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.selection,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,3)},t.prototype.onResize=function(){this._updateViewportRectangle()},t.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},t.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},t.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},t.prototype.updateSelection=function(t){var e=this._terminal;if(t.hasSelection)if(t.columnSelectMode){var i=t.startCol,r=t.endCol-i,n=t.viewportCappedEndRow-t.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,r*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{i=t.viewportStartRow===t.viewportCappedStartRow?t.startCol:0;var s=t.viewportCappedStartRow===t.viewportEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-i)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(t.viewportCappedEndRow-t.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(t.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,e.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),t.viewportCappedStartRow!==t.viewportCappedEndRow){var l=t.viewportEndRow===t.viewportCappedEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,16,0,t.viewportCappedEndRow*this._dimensions.scaledCellHeight,l*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},t.prototype.updateBackgrounds=function(t){for(var e=this._terminal,i=this._vertices,r=1,o=0;o>24&255)/255,d=(l>>16&255)/255,u=(l>>8&255)/255;this._addRectangle(t.attributes,e,h,c,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,_,d,u,1)},t.prototype._addRectangle=function(t,e,i,r,o,n,s,a,l,h){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s,t[e+5]=a,t[e+6]=l,t[e+7]=h},t.prototype._addRectangleFloat=function(t,e,i,r,o,n,s){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s[0],t[e+5]=s[1],t[e+6]=s[2],t[e+7]=s[3]},t.prototype._colorToFloat32Array=function(t){return new Float32Array([(t.rgba>>24&255)/255,(t.rgba>>16&255)/255,(t.rgba>>8&255)/255,(255&t.rgba)/255])},t}();e.RectangleRenderer=a},310:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RenderModel=e.COMBINED_CHAR_BIT_MASK=e.RENDER_MODEL_FG_OFFSET=e.RENDER_MODEL_BG_OFFSET=e.RENDER_MODEL_INDICIES_PER_CELL=void 0;var r=i(455);e.RENDER_MODEL_INDICIES_PER_CELL=3,e.RENDER_MODEL_BG_OFFSET=1,e.RENDER_MODEL_FG_OFFSET=2,e.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function t(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return t.prototype.resize=function(t,i){var r=t*i*e.RENDER_MODEL_INDICIES_PER_CELL;r!==this.cells.length&&(this.cells=new Uint32Array(r),this.lineLengths=new Uint32Array(i))},t.prototype.clear=function(){r.fill(this.cells,0,0),r.fill(this.lineLengths,0,0)},t.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},t}();e.RenderModel=o},259:(t,e)=>{function i(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length),e<0&&(e=(t.length+e)%t.length),i=i>=t.length?t.length:(t.length+i)%t.length,e=Math.min(e,i);for(var r=new t.constructor(i-e),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglAddon=void 0;var r=i(666),o=function(){function t(t){this._preserveDrawingBuffer=t}return t.prototype.activate=function(t){if(!t.element)throw new Error(\"Cannot activate WebglAddon before Terminal.open\");this._terminal=t;var e=t._core._renderService,i=t._core._colorManager.colors;this._renderer=new r.WebglRenderer(t,i,this._preserveDrawingBuffer),e.setRenderer(this._renderer)},t.prototype.dispose=function(){if(!this._terminal)throw new Error(\"Cannot dispose WebglAddon because it is activated\");var t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(t.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._renderer)||void 0===t?void 0:t.textureAtlas},enumerable:!1,configurable:!0}),t.prototype.clearTextureAtlas=function(){var t;null===(t=this._renderer)||void 0===t||t.clearCharAtlas()},t}();e.WebglAddon=o},666:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglRenderer=void 0;var n=i(965),s=i(733),a=i(461),l=i(713),h=i(344),c=i(310),_=i(859),d=i(855),u=i(345),f=i(782),p=function(t){function e(e,i,r){var o=t.call(this)||this;o._terminal=e,o._colors=i,o._model=new c.RenderModel,o._workCell=new f.CellData,o._onRequestRedraw=new u.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement(\"canvas\");var l={antialias:!1,depth:!1,preserveDrawingBuffer:r};if(o._gl=o._canvas.getContext(\"webgl2\",l),!o._gl)throw new Error(\"WebGL2 not supported \"+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new h.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(e,t),Object.defineProperty(e.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._renderLayers.forEach((function(t){return t.dispose()})),this._core.screenElement.removeChild(this._canvas),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._charAtlas)||void 0===t?void 0:t.cacheCanvas},enumerable:!1,configurable:!0}),e.prototype.setColors=function(t){var e=this;this._colors=t,this._renderLayers.forEach((function(t){t.setColors(e._terminal,e._colors),t.reset(e._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},e.prototype.onResize=function(t,e){var i=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(t){return t.resize(i._terminal,i.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+\"px\",this._canvas.style.height=this.dimensions.canvasHeight+\"px\",this._core.screenElement.style.width=this.dimensions.canvasWidth+\"px\",this._core.screenElement.style.height=this.dimensions.canvasHeight+\"px\",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},e.prototype.onBlur=function(){var t=this;this._renderLayers.forEach((function(e){return e.onBlur(t._terminal)}))},e.prototype.onFocus=function(){var t=this;this._renderLayers.forEach((function(e){return e.onFocus(t._terminal)}))},e.prototype.onSelectionChanged=function(t,e,i){var r=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(r._terminal,t,e,i)})),this._updateSelectionModel(t,e,i),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.onCursorMove=function(){var t=this;this._renderLayers.forEach((function(e){return e.onCursorMove(t._terminal)}))},e.prototype.onOptionsChanged=function(){var t=this;this._renderLayers.forEach((function(e){return e.onOptionsChanged(t._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},e.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var t=l.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!(\"getRasterizedGlyph\"in t))throw new Error(\"The webgl renderer only works with the webgl char atlas\");this._charAtlas=t,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},e.prototype.clearCharAtlas=function(){var t;null===(t=this._charAtlas)||void 0===t||t.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.clear=function(){var t=this;this._renderLayers.forEach((function(e){return e.reset(t._terminal)}))},e.prototype.registerCharacterJoiner=function(t){return-1},e.prototype.deregisterCharacterJoiner=function(t){return!1},e.prototype.renderRows=function(t,e){var i=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(r){return r.onGridChanged(i._terminal,t,e)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(t,e),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},e.prototype._updateModel=function(t,e){for(var i=this._core,r=t;r<=e;r++){var o=r+i.buffer.ydisp,n=i.buffer.lines.get(o);this._model.lineLengths[r]=0;for(var s=0;s1&&(l|=c.COMBINED_CHAR_BIT_MASK),this._model.cells[h]=l,this._model.cells[h+c.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[h+c.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,r,l,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},e.prototype._updateSelectionModel=function(t,e,i){void 0===i&&(i=!1);var r=this._terminal;if(!t||!e||t[0]===e[0]&&t[1]===e[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=t[1]-r.buffer.active.viewportY,n=e[1]-r.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,r.rows-1);if(s>=r.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=i,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=t[0],this._model.selection.endCol=e[0],this._rectangleRenderer.updateSelection(this._model.selection)},e.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption(\"lineHeight\")),this.dimensions.scaledCharTop=1===this._terminal.getOption(\"lineHeight\")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption(\"letterSpacing\")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption(\"letterSpacing\")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},e}(_.Disposable);e.WebglRenderer=p},381:(t,e)=>{function i(t,e,i){var o=r(t.createShader(e));if(t.shaderSource(o,i),t.compileShader(o),t.getShaderParameter(o,t.COMPILE_STATUS))return o;console.error(t.getShaderInfoLog(o)),t.deleteShader(o)}function r(t){if(!t)throw new Error(\"value must not be falsy\");return t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.throwIfFalsy=e.expandFloat32Array=e.createShader=e.createProgram=e.PROJECTION_MATRIX=void 0,e.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),e.createProgram=function(t,e,o){var n=r(t.createProgram());if(t.attachShader(n,r(i(t,t.VERTEX_SHADER,e))),t.attachShader(n,r(i(t,t.FRAGMENT_SHADER,o))),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS))return n;console.error(t.getProgramInfoLog(n)),t.deleteProgram(n)},e.createShader=i,e.expandFloat32Array=function(t,e){for(var i=Math.min(2*t.length,e),r=new Float32Array(i),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.removeTerminalFromCache=e.acquireCharAtlas=void 0;var r=i(433),o=i(167),n=[];e.acquireCharAtlas=function(t,e,i,s){for(var a=r.generateConfig(i,s,t,e),l=0;l=0){if(r.configEquals(c.config,a))return c.atlas;1===c.ownedBy.length?(c.atlas.dispose(),n.splice(l,1)):c.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(e,\"__esModule\",{value:!0}),e.is256Color=e.configEquals=e.generateConfig=void 0;var i={css:\"\",rgba:0};e.generateConfig=function(t,e,r,o){var n={foreground:o.foreground,background:o.background,cursor:i,cursorAccent:i,selectionTransparent:i,selectionOpaque:i,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:t,scaledCharHeight:e,fontFamily:r.getOption(\"fontFamily\"),fontSize:r.getOption(\"fontSize\"),fontWeight:r.getOption(\"fontWeight\"),fontWeightBold:r.getOption(\"fontWeightBold\"),allowTransparency:r.getOption(\"allowTransparency\"),drawBoldTextInBrightColors:r.getOption(\"drawBoldTextInBrightColors\"),minimumContrastRatio:r.getOption(\"minimumContrastRatio\"),colors:n}},e.configEquals=function(t,e){for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglCharAtlas=void 0;var r=i(499),o=i(855),n=i(381),s=i(147),a=i(742),l=1024,h=1024,c=Math.floor(819.2),_={css:\"rgba(0, 0, 0, 0)\",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},u=function(){function t(t,e){this._config=e,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=t.createElement(\"canvas\"),this.cacheCanvas.width=l,this.cacheCanvas.height=h,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext(\"2d\",{alpha:!0})),this._tmpCanvas=t.createElement(\"canvas\"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext(\"2d\",{alpha:this._config.allowTransparency}))}return t.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},t.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},t.prototype._doWarmUp=function(){for(var t,e,i=33;i<126;i++){var r=this._drawToCache(i,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[i]=((t={})[o.DEFAULT_COLOR]=((e={})[o.DEFAULT_COLOR]=r,e),t)}},t.prototype.beginFrame=function(){return this._currentRowY>c&&(this.clearTexture(),this.warmUp(),!0)},t.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,l,h),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},t.prototype.getRasterizedGlyphCombinedChar=function(t,e,i){var r,o=this._cacheMapCombined[t];o||(o={},this._cacheMapCombined[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype.getRasterizedGlyph=function(t,e,i){var r,o=this._cacheMap[t];o||(o={},this._cacheMap[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._config.colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._config.colors.ansi[t]},t.prototype._getBackgroundColor=function(t,e,i){if(this._config.allowTransparency)return _;switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e);case 50331648:var r=s.AttributeData.toColorRGB(e);return{rgba:e<<8,css:\"#\"+f(r[0])+f(r[1])+f(r[2])};case 0:default:return i?this._config.colors.foreground:this._config.colors.background}},t.prototype._getForegroundCss=function(t,e,i,r,o,n,l,h){var c=this._getMinimumContrastCss(t,e,i,r,o,n,l,h);if(c)return c;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&h&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var _=s.AttributeData.toColorRGB(n);return a.channels.toCss(_[0],_[1],_[2]);case 0:default:if(l){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},t.prototype._resolveBackgroundRgba=function(t,e,i){switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},t.prototype._resolveForegroundRgba=function(t,e,i,r){switch(t){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&r&&e<8&&(e+=8),this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},t.prototype._getMinimumContrastCss=function(t,e,i,r,o,n,s,l){if(1!==this._config.minimumContrastRatio){var h=this._config.colors.contrastCache.getCss(t,r);if(void 0!==h)return h||void 0;var c=this._resolveBackgroundRgba(e,i,s),_=this._resolveForegroundRgba(o,n,s,l),d=a.rgba.ensureContrastRatio(c,_,this._config.minimumContrastRatio);if(d){var u=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(t,r,u),u}this._config.colors.contrastCache.setCss(t,r,null)}},t.prototype._drawToCache=function(t,e,i){var o=\"number\"==typeof t?String.fromCharCode(t):t;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=e,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),c=!!this._workAttributeData.isItalic(),_=this._workAttributeData.getFgColor(),u=this._workAttributeData.getFgColorMode(),f=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var g=_;_=f,f=g;var v=u;u=p,p=v}var C=this._getBackgroundColor(p,f,s);this._tmpCtx.globalCompositeOperation=\"copy\",this._tmpCtx.fillStyle=C.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation=\"source-over\";var m=n?this._config.fontWeightBold:this._config.fontWeight,y=c?\"italic\":\"\";this._tmpCtx.font=y+\" \"+m+\" \"+this._config.fontSize*this._config.devicePixelRatio+\"px \"+this._config.fontFamily,this._tmpCtx.textBaseline=\"middle\",this._tmpCtx.fillStyle=this._getForegroundCss(e,p,f,i,u,_,s,n),a&&(this._tmpCtx.globalAlpha=r.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var R=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(t,e){for(var i=!0,r=e.rgba>>>24,o=e.rgba>>>16&255,n=e.rgba>>>8&255,s=0;sl&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),b.texturePosition.x=this._currentRowX,b.texturePosition.y=this._currentRowY,b.texturePositionClipSpace.x=this._currentRowX/l,b.texturePositionClipSpace.y=this._currentRowY/h,this._currentRowHeight=Math.max(this._currentRowHeight,b.size.y),this._currentRowX+=b.size.x,this._cacheCtx.putImageData(w,b.texturePosition.x,b.texturePosition.y),b},t.prototype._findGlyphBoundingBox=function(t,e){e.top=0;for(var i=!1,r=0;r=0;o--){for(r=0;r=0;r--){for(o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.BaseRenderLayer=void 0;var r=i(713),o=i(381),n=function(){function t(t,e,i,r,o){this._container=t,this._alpha=r,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+e+\"-layer\"),this._canvas.style.zIndex=i.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return t.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},t.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},t.prototype.onOptionsChanged=function(t){},t.prototype.onBlur=function(t){},t.prototype.onFocus=function(t){},t.prototype.onCursorMove=function(t){},t.prototype.onGridChanged=function(t,e,i){},t.prototype.onSelectionChanged=function(t,e,i,r){void 0===r&&(r=!1)},t.prototype.setColors=function(t,e){this._refreshCharAtlas(t,e)},t.prototype._setTransparency=function(t,e){if(e!==this._alpha){var i=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(t,this._colors),this.onGridChanged(t,0,t.rows-1)}},t.prototype._refreshCharAtlas=function(t,e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=r.acquireCharAtlas(t,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},t.prototype.resize=function(t,e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(t,this._colors)},t.prototype._fillCells=function(t,e,i,r){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight)},t.prototype._fillBottomLineAtCells=function(t,e,i){void 0===i&&(i=1),this._ctx.fillRect(t*this._scaledCellWidth,(e+1)*this._scaledCellHeight-window.devicePixelRatio-1,i*this._scaledCellWidth,window.devicePixelRatio)},t.prototype._fillLeftLineAtCell=function(t,e,i){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,window.devicePixelRatio*i,this._scaledCellHeight)},t.prototype._strokeRectAtCell=function(t,e,i,r){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(t*this._scaledCellWidth+window.devicePixelRatio/2,e*this._scaledCellHeight+window.devicePixelRatio/2,i*this._scaledCellWidth-window.devicePixelRatio,r*this._scaledCellHeight-window.devicePixelRatio)},t.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},t.prototype._clearCells=function(t,e,i,r){this._alpha?this._ctx.clearRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight))},t.prototype._fillCharTrueColor=function(t,e,i,r){this._ctx.font=this._getFont(t,!1,!1),this._ctx.textBaseline=\"middle\",this._clipRow(t,r),this._ctx.fillText(e.getChars(),i*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},t.prototype._clipRow=function(t,e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,t.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},t.prototype._getFont=function(t,e,i){return(i?\"italic\":\"\")+\" \"+(e?t.getOption(\"fontWeightBold\"):t.getOption(\"fontWeight\"))+\" \"+t.getOption(\"fontSize\")*window.devicePixelRatio+\"px \"+t.getOption(\"fontFamily\")},t}();e.BaseRenderLayer=n},461:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CursorRenderLayer=void 0;var n=i(592),s=i(782),a=600,l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"cursor\",i,!0,r)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:\"\",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},e.prototype.reset=function(t){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(t))},e.prototype.onBlur=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onFocus=function(t){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(t):this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onOptionsChanged=function(t){var e,i=this;t.getOption(\"cursorBlink\")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new h(t,(function(){i._render(t,!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onCursorMove=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype.onGridChanged=function(t,e,i){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(t,!1):this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype._render=function(t,e){if(t._core._coreService.isCursorInitialized&&!t._core._coreService.isCursorHidden){var i=t.buffer.active.baseY+t.buffer.active.cursorY,r=i-t.buffer.active.viewportY,o=Math.min(t.buffer.active.cursorX,t.cols-1);if(r<0||r>=t.rows)this._clearCursor();else if(t._core.buffer.lines.get(i).loadCell(o,this._cell),void 0!==this._cell.content){if(!c(t)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=t.getOption(\"cursorStyle\");return n&&\"block\"!==n?this._cursorRenderers[n](t,o,r,this._cell):this._renderBlurCursor(t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===r&&this._state.isFocused===c(t)&&this._state.style===t.getOption(\"cursorStyle\")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[t.getOption(\"cursorStyle\")||\"block\"](t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=t.getOption(\"cursorStyle\"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},e.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},e.prototype._renderBarCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,i,t.getOption(\"cursorWidth\")),this._ctx.restore()},e.prototype._renderBlockCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,i,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(t,r,e,i),this._ctx.restore()},e.prototype._renderUnderlineCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,i),this._ctx.restore()},e.prototype._renderBlurCursor=function(t,e,i,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,i,r.getWidth(),1),this._ctx.restore()},e}(n.BaseRenderLayer);e.CursorRenderLayer=l;var h=function(){function t(t,e){this._renderCallback=e,this.isCursorVisible=!0,c(t)&&this._restartInterval()}return Object.defineProperty(t.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.restartBlinkAnimation=function(t){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},t.prototype._restartInterval=function(t){var e=this;void 0===t&&(t=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);if(e._animationTimeRestarted=void 0,t>0)return void e._restartInterval(t)}e.isCursorVisible=!1,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0})),e._blinkInterval=window.setInterval((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);return e._animationTimeRestarted=void 0,void e._restartInterval(t)}e.isCursorVisible=!e.isCursorVisible,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))}),a)}),t)},t.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.resume=function(t){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(t)},t}();function c(t){return document.activeElement===t.textarea&&document.hasFocus()}},733:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.LinkRenderLayer=void 0;var n=i(592),s=i(499),a=i(433),l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"link\",i,!0,r)||this;return o.linkifier.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),o.linkifier2.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier2.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state=void 0},e.prototype.reset=function(t){this._clearCurrentLink()},e.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var t=this._state.y2-this._state.y1-1;t>0&&this._clearCells(0,this._state.y1+1,this._state.cols,t),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},e.prototype._onShowLinkUnderline=function(t){if(t.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==t.fg&&a.is256Color(t.fg)?this._ctx.fillStyle=this._colors.ansi[t.fg].css:this._ctx.fillStyle=this._colors.foreground.css,t.y1===t.y2)this._fillBottomLineAtCells(t.x1,t.y1,t.x2-t.x1);else{this._fillBottomLineAtCells(t.x1,t.y1,t.cols-t.x1);for(var e=t.y1+1;e{var i,r,o,n;function s(t){var e=t.toString(16);return e.length<2?\"0\"+e:e}function a(t,e){return t>>0}}(i=e.channels||(e.channels={})),(r=e.color||(e.color={})).blend=function(t,e){var r=(255&e.rgba)/255;if(1===r)return{css:e.css,rgba:e.rgba};var o=e.rgba>>24&255,n=e.rgba>>16&255,s=e.rgba>>8&255,a=t.rgba>>24&255,l=t.rgba>>16&255,h=t.rgba>>8&255,c=a+Math.round((o-a)*r),_=l+Math.round((n-l)*r),d=h+Math.round((s-h)*r);return{css:i.toCss(c,_,d),rgba:i.toRgba(c,_,d)}},r.isOpaque=function(t){return 255==(255&t.rgba)},r.ensureContrastRatio=function(t,e,i){var r=n.ensureContrastRatio(t.rgba,e.rgba,i);if(r)return n.toColor(r>>24&255,r>>16&255,r>>8&255)},r.opaque=function(t){var e=(255|t.rgba)>>>0,r=n.toChannels(e),o=r[0],s=r[1],a=r[2];return{css:i.toCss(o,s,a),rgba:e}},r.opacity=function(t,e){var r=Math.round(255*e),o=n.toChannels(t.rgba),s=o[0],a=o[1],l=o[2];return{css:i.toCss(s,a,l,r),rgba:i.toRgba(s,a,l,r)}},(e.css||(e.css={})).toColor=function(t){switch(t.length){case 7:return{css:t,rgba:(parseInt(t.slice(1),16)<<8|255)>>>0};case 9:return{css:t,rgba:parseInt(t.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(t){function e(t,e,i){var r=t/255,o=e/255,n=i/255;return.2126*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}t.relativeLuminance=function(t){return e(t>>16&255,t>>8&255,255&t)},t.relativeLuminance2=e}(o=e.rgb||(e.rgb={})),function(t){function e(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_0||h>0||c>0);)l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),c-=Math.max(0,Math.ceil(.1*c)),_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));return(l<<24|h<<16|c<<8|255)>>>0}function r(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_>>0}t.ensureContrastRatio=function(t,i,n){var s=o.relativeLuminance(t>>8),l=o.relativeLuminance(i>>8);if(a(s,l)>24&255,t>>16&255,t>>8&255,255&t]},t.toColor=function(t,e,r){return{css:i.toCss(t,e,r),rgba:i.toRgba(t,e,r)}}}(n=e.rgba||(e.rgba={})),e.toPaddedHex=s,e.contrastRatio=a},499:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.CHAR_ATLAS_CELL_SPACING=e.DIM_OPACITY=e.INVERTED_DEFAULT_COLOR=void 0,e.INVERTED_DEFAULT_COLOR=257,e.DIM_OPACITY=.5,e.CHAR_ATLAS_CELL_SPACING=1},345:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.forwardEvent=e.EventEmitter=void 0;var i=function(){function t(){this._listeners=[],this._disposed=!1}return Object.defineProperty(t.prototype,\"event\",{get:function(){var t=this;return this._event||(this._event=function(e){return t._listeners.push(e),{dispose:function(){if(!t._disposed)for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.getDisposeArrayDisposable=e.disposeArray=e.Disposable=void 0;var i=function(){function t(){this._disposables=[],this._isDisposed=!1}return t.prototype.dispose=function(){this._isDisposed=!0;for(var t=0,e=this._disposables;t{function i(t,e,i,r){if(void 0===i&&(i=0),void 0===r&&(r=t.length),i>=t.length)return t;i=(t.length+i)%t.length,r=r>=t.length?t.length:(t.length+r)%t.length;for(var o=i;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.ExtendedAttrs=e.AttributeData=void 0;var i=function(){function t(){this.fg=0,this.bg=0,this.extended=new r}return t.toColorRGB=function(t){return[t>>>16&255,t>>>8&255,255&t]},t.fromColorRGB=function(t){return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},t.prototype.clone=function(){var e=new t;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e},t.prototype.isInverse=function(){return 67108864&this.fg},t.prototype.isBold=function(){return 134217728&this.fg},t.prototype.isUnderline=function(){return 268435456&this.fg},t.prototype.isBlink=function(){return 536870912&this.fg},t.prototype.isInvisible=function(){return 1073741824&this.fg},t.prototype.isItalic=function(){return 67108864&this.bg},t.prototype.isDim=function(){return 134217728&this.bg},t.prototype.getFgColorMode=function(){return 50331648&this.fg},t.prototype.getBgColorMode=function(){return 50331648&this.bg},t.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},t.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},t.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},t.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},t.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},t.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},t.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},t.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},t.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},t.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},t.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},t.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},t.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},t.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},t.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},t.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},t.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},t}();e.AttributeData=i;var r=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=-1),this.underlineStyle=t,this.underlineColor=e}return t.prototype.clone=function(){return new t(this.underlineStyle,this.underlineColor)},t.prototype.isEmpty=function(){return 0===this.underlineStyle},t}();e.ExtendedAttrs=r},782:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CellData=void 0;var n=i(133),s=i(855),a=i(147),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.content=0,e.fg=0,e.bg=0,e.extended=new a.ExtendedAttrs,e.combinedData=\"\",e}return o(e,t),e.fromCharData=function(t){var i=new e;return i.setFromCharData(t),i},e.prototype.isCombined=function(){return 2097152&this.content},e.prototype.getWidth=function(){return this.content>>22},e.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):\"\"},e.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},e.prototype.setFromCharData=function(t){this.fg=t[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var e=!1;if(t[s.CHAR_DATA_CHAR_INDEX].length>2)e=!0;else if(2===t[s.CHAR_DATA_CHAR_INDEX].length){var i=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){var r=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=r&&r<=57343?this.content=1024*(i-55296)+r-56320+65536|t[s.CHAR_DATA_WIDTH_INDEX]<<22:e=!0}else e=!0}else this.content=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[s.CHAR_DATA_WIDTH_INDEX]<<22;e&&(this.combinedData=t[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|t[s.CHAR_DATA_WIDTH_INDEX]<<22)},e.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},e}(a.AttributeData);e.CellData=l},855:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WHITESPACE_CELL_CODE=e.WHITESPACE_CELL_WIDTH=e.WHITESPACE_CELL_CHAR=e.NULL_CELL_CODE=e.NULL_CELL_WIDTH=e.NULL_CELL_CHAR=e.CHAR_DATA_CODE_INDEX=e.CHAR_DATA_WIDTH_INDEX=e.CHAR_DATA_CHAR_INDEX=e.CHAR_DATA_ATTR_INDEX=e.DEFAULT_ATTR=e.DEFAULT_COLOR=void 0,e.DEFAULT_COLOR=256,e.DEFAULT_ATTR=256|e.DEFAULT_COLOR<<9,e.CHAR_DATA_ATTR_INDEX=0,e.CHAR_DATA_CHAR_INDEX=1,e.CHAR_DATA_WIDTH_INDEX=2,e.CHAR_DATA_CODE_INDEX=3,e.NULL_CELL_CHAR=\"\",e.NULL_CELL_WIDTH=1,e.NULL_CELL_CODE=0,e.WHITESPACE_CELL_CHAR=\" \",e.WHITESPACE_CELL_WIDTH=1,e.WHITESPACE_CELL_CODE=32},133:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.Utf8ToUtf32=e.StringToUtf32=e.utf32ToString=e.stringFromCodePoint=void 0,e.stringFromCodePoint=function(t){return t>65535?(t-=65536,String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)},e.utf32ToString=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length);for(var r=\"\",o=e;o65535?(n-=65536,r+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):r+=String.fromCharCode(n)}return r};var i=function(){function t(){this._interim=0}return t.prototype.clear=function(){this._interim=0},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r=0,o=0;this._interim&&(56320<=(a=t.charCodeAt(o++))&&a<=57343?e[r++]=1024*(this._interim-55296)+a-56320+65536:(e[r++]=this._interim,e[r++]=a),this._interim=0);for(var n=o;n=i)return this._interim=s,r;var a;56320<=(a=t.charCodeAt(n))&&a<=57343?e[r++]=1024*(s-55296)+a-56320+65536:(e[r++]=s,e[r++]=a)}else 65279!==s&&(e[r++]=s)}return r},t}();e.StringToUtf32=i;var r=function(){function t(){this.interim=new Uint8Array(3)}return t.prototype.clear=function(){this.interim.fill(0)},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r,o,n,s,a=0,l=0,h=0;if(this.interim[0]){var c=!1,_=this.interim[0];_&=192==(224&_)?31:224==(240&_)?15:7;for(var d=0,u=void 0;(u=63&this.interim[++d])&&d<4;)_<<=6,_|=u;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=f-d;h=i)return 0;if(128!=(192&(u=t[h++]))){h--,c=!0;break}this.interim[d++]=u,_<<=6,_|=63&u}c||(2===f?_<128?h--:e[a++]=_:3===f?_<2048||_>=55296&&_<=57343||65279===_||(e[a++]=_):_<65536||_>1114111||(e[a++]=_)),this.interim.fill(0)}for(var g=i-4,v=h;v=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if((l=(31&r)<<6|63&o)<128){v--;continue}e[a++]=l}else if(224==(240&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if((l=(15&r)<<12|(63&o)<<6|63&n)<2048||l>=55296&&l<=57343||65279===l)continue;e[a++]=l}else if(240==(248&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=t[v++]))){v--;continue}if((l=(7&r)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||l>1114111)continue;e[a++]=l}}return a},t}();e.Utf8ToUtf32=r}},e={};return function i(r){if(e[r])return e[r].exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,i),o.exports}(795)})()}));\n//# sourceMappingURL=xterm-addon-webgl.js.map","/*!\n * xterm (https://npmjs.com/package/xterm)\n * @license MIT\n * @version 4.12.0\n * ==xterm/LICENSE==\n * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)\n * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var r=t();for(var i in r)(\"object\"==typeof exports?exports:e)[i]=r[i]}}(self,(function(){return(()=>{\"use strict\";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce=\"\",i._accessibilityTreeRoot=document.createElement(\"div\"),i._accessibilityTreeRoot.classList.add(\"xterm-accessibility\"),i._rowContainer=document.createElement(\"div\"),i._rowContainer.setAttribute(\"role\",\"list\"),i._rowContainer.classList.add(\"xterm-accessibility-tree\"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(\"focus\",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement(\"div\");return e.setAttribute(\"role\",\"listitem\"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,\"\\n\"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent=\"\",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=\" \":a.textContent=o,a.setAttribute(\"aria-posinset\",s),a.setAttribute(\"aria-setsize\",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\\r?\\n/g,\"\\r\")}function i(e,t){return t?\"\u001b[200~\"+e+\"\u001b[201~\":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=\"\"}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width=\"20px\",t.style.height=\"20px\",t.style.left=n+\"px\",t.style.top=o+\"px\",t.style.zIndex=\"1000\",t.focus()}Object.defineProperty(t,\"__esModule\",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData(\"text/plain\",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData(\"text/plain\"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?\"0\"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor(\"#ffffff\"),s=i.css.toColor(\"#000000\"),a=i.css.toColor(\"#ffffff\"),c=i.css.toColor(\"#000000\"),l={css:\"rgba(255, 255, 255, 0.3)\",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor(\"#2e3436\"),i.css.toColor(\"#cc0000\"),i.css.toColor(\"#4e9a06\"),i.css.toColor(\"#c4a000\"),i.css.toColor(\"#3465a4\"),i.css.toColor(\"#75507b\"),i.css.toColor(\"#06989a\"),i.css.toColor(\"#d3d7cf\"),i.css.toColor(\"#555753\"),i.css.toColor(\"#ef2929\"),i.css.toColor(\"#8ae234\"),i.css.toColor(\"#fce94f\"),i.css.toColor(\"#729fcf\"),i.css.toColor(\"#ad7fa8\"),i.css.toColor(\"#34e2e2\"),i.css.toColor(\"#eeeeec\")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement(\"canvas\");h.width=1,h.height=1;var u=h.getContext(\"2d\");if(!u)throw new Error(\"Could not get rendering context\");this._ctx=u,this._ctx.globalCompositeOperation=\"copy\",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){\"minimumContrastRatio\"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,\"string\"!=typeof this._ctx.fillStyle)return console.warn(\"Color: \"+e+\" is invalid using fallback \"+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn(\"Color: \"+e+\" is using transparency, but allowTransparency is false. Using fallback \"+t.css+\".\"),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(\",\").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLinkTooltip\",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&\"break\"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn(\"Opening link blocked as opener could not be cleared\")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add(\"xterm-cursor-pointer\")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove(\"xterm-cursor-pointer\"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,\"currentLink\",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,\"mouseleave\",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,\"mousemove\",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,\"click\",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle(\"xterm-cursor-pointer\",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(\"xterm-cursor-pointer\")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(\"xterm-cursor-pointer\")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel=\"Terminal input\",t.tooMuchOutput=\"Too much output to announce, navigate to rows manually to read\"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,\"mousedown\",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener(\"mousemove\",this._mouseMoveListener),this._element.addEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.addEventListener(\"click\",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener(\"mousemove\",this._mouseMoveListener),this._element.removeEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.removeEventListener(\"click\",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia(\"screen and (resolution: \"+window.devicePixelRatio+\"dppx)\"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),b=r(1296),S=r(7399),m=r(8460),C=r(8437),w=r(5680),E=r(3230),L=r(4725),k=r(428),A=r(8934),R=r(6465),x=r(5114),T=r(8969),O=r(4774),D=r(4269),P=\"undefined\"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new m.EventEmitter,r._onKey=new m.EventEmitter,r._onRender=new m.EventEmitter,r._onSelectionChange=new m.EventEmitter,r._onTitleChange=new m.EventEmitter,r._onBell=new m.EventEmitter,r._onFocus=new m.EventEmitter,r._onBlur=new m.EventEmitter,r._onA11yCharEmitter=new m.EventEmitter,r._onA11yTabEmitter=new m.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(R.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(m.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(m.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(m.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(m.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,\"options\",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onKey\",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRender\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBell\",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onFocus\",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBlur\",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.removeEventListener(\"mousemove\",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?(\"debug\"===e.optionsService.options.logLevel&&e._logService.debug(\"Binding to mouse events:\",e._coreMouseService.explainEvents(t)),e.element.classList.add(\"enable-mouse-events\"),e._selectionService.disable()):(e._logService.debug(\"Unbinding from mouse events.\"),e.element.classList.remove(\"enable-mouse-events\"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener(\"mousemove\",l),n.mousemove=l):(r.removeEventListener(\"mousemove\",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener(\"wheel\",s,{passive:!1}),n.wheel=s):(r.removeEventListener(\"wheel\",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener(\"mousemove\",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,\"mousedown\",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.addEventListener(\"mousemove\",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,\"wheel\",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?\"O\":\"[\")+(t.deltaY<0?\"A\":\"B\"),o=\"\",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,\"scroll\",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+\"px\")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return\"alt\"===r&&t.altKey||\"ctrl\"===r&&t.ctrlKey||\"shift\"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=\"\"}return Object.defineProperty(e.prototype,\"isComposing\",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent=\"\",this._dataAlreadySent=\"\",this._compositionView.classList.add(\"active\")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove(\"active\"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){if(t._isSendingComposition){t._isSendingComposition=!1;var e;r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0)}}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,\"\");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+\"px\",this._compositionView.style.top=n+\"px\",this._compositionView.style.height=i+\"px\",this._compositionView.style.lineHeight=i+\"px\",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+\"px\";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+\"px\",this._textarea.style.top=n+\"px\",this._textarea.style.width=Math.max(s.width,1)+\"px\",this._textarea.style.height=Math.max(s.height,1)+\"px\",this._textarea.style.lineHeight=s.height+\"px\"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?\"A\":\"B\"}function a(e,t,r,i,n,o){for(var s=e,a=t,c=\"\";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?\"O\":\"[\";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r=\"\",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?\"D\":\"C\",l(Math.abs(h-e),c(s,i));s=u>t?\"D\":\"C\";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error(\"You must set the allowProposedApi option to true to use proposed API\")},Object.defineProperty(e.prototype,\"onCursorMove\",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLineFeed\",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onSelectionChange\",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onData\",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBinary\",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTitleChange\",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBell\",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onScroll\",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onKey\",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onRender\",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onResize\",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"element\",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parser\",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"unicode\",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"textarea\",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rows\",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"cols\",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"buffer\",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"markers\",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write(\"\\r\\n\",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,\"strings\",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,\"versions\",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:\"\",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+t+\"-layer\"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline=\"ideographic\",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline=\"ideographic\",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getBgColor()).join(\",\")+\")\";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getFgColor()).join(\",\")+\")\";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?\"italic\":\"\")+\" \"+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+\" \"+this._optionsService.options.fontSize*window.devicePixelRatio+\"px \"+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,\"cursor\",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:\"\",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&\"block\"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||\"block\"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,\"link\",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error(\"value must not be falsy\");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,\"selection\",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,\"text\",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont=\"\",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,\"__esModule\",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:\"rgba(0, 0, 0, 0)\",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement(\"canvas\"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext(\"2d\",{alpha:!0}));var n=t.createElement(\"canvas\");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext(\"2d\",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,\"__esModule\",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p=\"xterm-dom-renderer-owner-\",v=\"xterm-fg-\",g=\"xterm-bg-\",y=\"xterm-focus\",b=1,S=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=b++,f._rowElements=[],f._rowContainer=document.createElement(\"div\"),f._rowContainer.classList.add(\"xterm-rows\"),f._rowContainer.style.lineHeight=\"normal\",f._rowContainer.setAttribute(\"aria-hidden\",\"true\"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement(\"div\"),f._selectionContainer.classList.add(\"xterm-selection\"),f._selectionContainer.setAttribute(\"aria-hidden\",\"true\"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement(\"div\");return n.style.height=i*this.dimensions.actualCellHeight+\"px\",n.style.top=e*this.dimensions.actualCellHeight+\"px\",n.style.left=t*this.dimensions.actualCellWidth+\"px\",n.style.width=this.dimensions.actualCellWidth*(r-t)+\"px\",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=S},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS=\"xterm-bold\",t.DIM_CLASS=\"xterm-dim\",t.ITALIC_CLASS=\"xterm-italic\",t.UNDERLINE_CLASS=\"xterm-underline\",t.CURSOR_CLASS=\"xterm-cursor\",t.CURSOR_BLINK_CLASS=\"xterm-cursor-blink\",t.CURSOR_STYLE_BLOCK_CLASS=\"xterm-cursor-block\",t.CURSOR_STYLE_BAR_CLASS=\"xterm-cursor-bar\",t.CURSOR_STYLE_UNDERLINE_CLASS=\"xterm-cursor-underline\";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){b=!0;var C=p.shift();m=new u.JoinedCellData(this._workCell,e.translateToString(!0,C[0],C[1]),C[1]-C[0]),S=C[1]-1,y=m.getWidth()}var w=this._document.createElement(\"span\");if(y>1&&(w.style.width=h*y+\"px\"),b&&(w.style.display=\"inline\",a>=g&&a<=S&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case\"bar\":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case\"underline\":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}m.isBold()&&w.classList.add(t.BOLD_CLASS),m.isItalic()&&w.classList.add(t.ITALIC_CLASS),m.isDim()&&w.classList.add(t.DIM_CLASS),m.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),m.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=m.getChars()||s.WHITESPACE_CELL_CHAR;var E=m.getFgColor(),L=m.getFgColorMode(),k=m.getBgColor(),A=m.getBgColorMode(),R=!!m.isInverse();if(R){var x=E;E=k,k=x;var T=L;L=A,A=T}switch(L){case 16777216:case 33554432:m.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add(\"xterm-fg-\"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,\"color:#\"+_(E.toString(16),\"0\",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||R&&w.classList.add(\"xterm-fg-\"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:w.classList.add(\"xterm-bg-\"+k);break;case 50331648:this._addStyle(w,\"background-color:#\"+_(k.toString(16),\"0\",6));break;case 0:default:R&&w.classList.add(\"xterm-bg-\"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=S}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,\"color:\"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute(\"style\",\"\"+(e.getAttribute(\"style\")||\"\")+t+\";\")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,\"finalSelectionStart\",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"finalSelectionEnd\",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,\"hasValidSize\",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onCharSizeChange\",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement(\"span\"),this._measureElement.classList.add(\"xterm-char-measure-element\"),this._measureElement.textContent=\"W\",this._measureElement.setAttribute(\"aria-hidden\",\"true\"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+\"px\";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData=\"\",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error(\"not implemented\")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,\"isFocused\",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,\"resize\",(function(){return l.onDevicePixelRatioChange()}))),\"IntersectionObserver\"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,\"onDimensionsChange\",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRenderedBufferChange\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRefreshRequest\",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dimensions\",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,\"g\"),b=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,\"onLinuxMouseSelection\",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestScrollLines\",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,\"selectionStart\",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionEnd\",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasSelection\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionText\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return\"\";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return\"\";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y,\" \")})).join(a.isWindows?\"\\r\\n\":\"\\n\")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(\"mouseup\",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(\"mouseup\",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption(\"altClickMovesCursor\")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(\" \"===s.charAt(a)){for(;a>0&&\" \"===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var b=a+l-h+f,S=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||\"\"!==s.slice(a,c).trim()){if(r&&0===b&&32!==o.getCodePoint(0)){var m=n.lines.get(e[1]-1);if(m&&o.isWrapped&&32!==m.getCodePoint(this._bufferService.cols-1)){var C=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(C){var w=this._bufferService.cols-C.start;b-=w,S+=w}}}if(i&&b+S===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(S+=L.length)}}return{start:b,length:S}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=b},4725:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator(\"CharSizeService\"),t.ICoreBrowserService=i.createDecorator(\"CoreBrowserService\"),t.IMouseService=i.createDecorator(\"MouseService\"),t.IRenderService=i.createDecorator(\"RenderService\"),t.ISelectionService=i.createDecorator(\"SelectionService\"),t.ISoundService=i.createDecorator(\"SoundService\"),t.ICharacterJoinerService=i.createDecorator(\"CharacterJoinerService\")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,\"audioContext\",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn(\"Web Audio API is not supported by this browser. Consider upgrading to the latest version\"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,\"onDelete\",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onInsert\",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTrim\",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxLength\",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error(\"start argument out of range\");if(e+r<0)throw new Error(\"Cannot shift elements in list beyond index 0\");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),\"object\"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),b=r(5981),S=!1,m=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new b.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"cols\",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rows\",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"buffers\",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!S&&(this._logService.warn(\"writeSync is unreliable and will be removed soon.\"),S=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case\"scrollback\":this.buffers.resize(this.cols,this.rows);break;case\"windowsMode\":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:\"H\"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,\"event\",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]=\"GET_WIN_SIZE_PIXELS\",e[e.GET_CELL_SIZE_PIXELS=1]=\"GET_CELL_SIZE_PIXELS\"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'\"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0\"q'+s.C0.ESC+\"\\\\\");break;case'\"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1\"p'+s.C0.ESC+\"\\\\\");break;case\"r\":var r=this._bufferService.buffer.scrollTop+1+\";\"+(this._bufferService.buffer.scrollBottom+1)+\"r\";this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+r+s.C0.ESC+\"\\\\\");break;case\"m\":this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r0m\"+s.C0.ESC+\"\\\\\");break;case\" q\":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+i+\" q\"+s.C0.ESC+\"\\\\\");break;default:this._logService.debug(\"Unknown DCS $q %s\",t),this._coreService.triggerDataEvent(s.C0.ESC+\"P0$r\"+s.C0.ESC+\"\\\\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle=\"\",g._iconName=\"\",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug(\"Unknown CSI code: \",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug(\"Unknown ESC code: \",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug(\"Unknown EXECUTE code: \",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug(\"Unknown OSC code: \",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){\"HOOK\"===t&&(r=r.toArray()),g._logService.debug(\"Unknown DCS code: \",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:\"@\"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"@\"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:\"A\"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"A\"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:\"B\"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:\"C\"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:\"D\"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:\"E\"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:\"F\"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:\"G\"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:\"H\"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:\"I\"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:\"L\"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:\"M\"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:\"P\"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:\"S\"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:\"T\"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:\"X\"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:\"Z\"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:\"`\"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:\"a\"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:\"b\"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:\"c\"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:\">\",final:\"c\"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:\"d\"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:\"e\"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:\"f\"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:\"g\"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:\"h\"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"h\"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:\"l\"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"l\"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:\"m\"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:\"n\"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"n\"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:\"!\",final:\"p\"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"q\"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:\"r\"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:\"s\"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:\"t\"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:\"u\"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"}\"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"~\"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:\"7\"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:\"8\"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:\"D\"},(function(){return g.index()})),g._parser.registerEscHandler({final:\"E\"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:\"H\"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:\"M\"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:\"=\"},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:\">\"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:\"c\"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:\"n\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"o\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"|\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"}\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"~\"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:\"%\",final:\"@\"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:\"%\",final:\"G\"},(function(){return g.selectDefaultCharset()}));var b=function(e){S._parser.registerEscHandler({intermediates:\"(\",final:e},(function(){return g.selectCharset(\"(\"+e)})),S._parser.registerEscHandler({intermediates:\")\",final:e},(function(){return g.selectCharset(\")\"+e)})),S._parser.registerEscHandler({intermediates:\"*\",final:e},(function(){return g.selectCharset(\"*\"+e)})),S._parser.registerEscHandler({intermediates:\"+\",final:e},(function(){return g.selectCharset(\"+\"+e)})),S._parser.registerEscHandler({intermediates:\"-\",final:e},(function(){return g.selectCharset(\"-\"+e)})),S._parser.registerEscHandler({intermediates:\".\",final:e},(function(){return g.selectCharset(\".\"+e)})),S._parser.registerEscHandler({intermediates:\"/\",final:e},(function(){return g.selectCharset(\"/\"+e)}))},S=this;for(var m in a.CHARSETS)b(m);return g._parser.registerEscHandler({intermediates:\"#\",final:\"8\"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error(\"Parsing error: \",e),e})),g._parser.registerDcsHandler({intermediates:\"$\",final:\"q\"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,\"onRequestBell\",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRefreshRows\",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestReset\",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestSyncScrollBar\",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestWindowsOptionsReport\",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onAnsiColorChange\",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t(\"#SLOW_TIMEOUT\")}),5e3)}))]).catch((function(e){if(\"#SLOW_TIMEOUT\"!==e)throw e;console.warn(\"async parser handler taking longer than 5000 ms\")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>m&&(s=this._parseStack.position+m)}if(this._logService.debug(\"parsing data\",e),this._parseBuffer.lengthm)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return\"t\"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!C(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new b.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is(\"xterm\")||this._is(\"rxvt-unicode\")||this._is(\"screen\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[?1;2c\"):this._is(\"linux\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[?6c\")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is(\"xterm\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>0;276;0c\"):this._is(\"rxvt-unicode\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>85;95;0c\"):this._is(\"linux\")?this._coreService.triggerDataEvent(e.params[0]+\"c\"):this._is(\"screen\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[>83;40003;0c\")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+\"\").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug(\"Unknown SGR attribute: %d.\",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+\"[0n\");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[\"+t+\";\"+r+\"R\")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[?\"+t+\";\"+r+\"R\")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle=\"block\";break;case 3:case 4:this._optionsService.options.cursorStyle=\"underline\";break;case 5:case 6:this._optionsService.options.cursorStyle=\"bar\"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!C(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+\"[8;\"+this._bufferService.rows+\";\"+this._bufferService.cols+\"t\");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\\d+);rgb:([\\da-f]{2})\\/([\\da-f]{2})\\/([\\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn(\"Expected format ;rgb:// but got data: \"+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug(\"Serial port requested application keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug(\"Switching back to normal keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):(\"/\"===e[0]||this._charsetService.setgCharset(S[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|\"E\".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r=\"undefined\"==typeof navigator,i=r?\"node\":navigator.userAgent,n=r?\"node\":navigator.platform;t.isFirefox=i.includes(\"Firefox\"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=[\"Macintosh\",\"MacIntel\",\"MacPPC\",\"Mac68K\"].includes(n),t.isIpad=\"iPad\"===n,t.isIphone=\"iPhone\"===n,t.isWindows=[\"Windows\",\"Win16\",\"Win32\",\"WinCE\"].includes(n),t.isLinux=n.indexOf(\"Linux\")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,\"hasScrollback\",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isCursorInViewport\",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,b=_[y];0===b&&(b=_[--y]);for(var S=l.length-d-1,m=f;S>=0;){var C=Math.min(m,b);if(l[y].copyCellsFrom(l[S],m-C,b-C,C,!0),0==(b-=C)&&(b=_[--y]),0==(m-=C)){S--;var w=Math.max(S,0);m=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var L=[],k=[];for(v=0;v=0;v--)if(T&&T.start>R+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,L.push({index:R+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++x]}else this.lines.set(v,k[R--]);var P=0;for(v=L.length-1;v>=0;v--)L[v].index+=P,this.lines.onInsertEmitter.fire(L[v]),P+=L[v].amount;var M=Math.max(0,A+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t=\"\",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):\"\"},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o=\"\";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error(\"Buffer range end (\"+e.end.x+\", \"+e.end.y+\") cannot be before start (\"+e.start.x+\", \"+e.start.y+\")\");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(S>u||0===h[S].getTrimmedLength());S--)b++;b>0&&(s.push(a+h.length-b),s.push(b)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,\"onBufferActivate\",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,\"alt\",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"active\",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"normal\",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData=\"\",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):\"\"},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR=\"\",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=\" \",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onDispose\",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={\"`\":\"◆\",a:\"▒\",b:\"␉\",c:\"␌\",d:\"␍\",e:\"␊\",f:\"°\",g:\"±\",h:\"␤\",i:\"␋\",j:\"┘\",k:\"┐\",l:\"┌\",m:\"└\",n:\"┼\",o:\"⎺\",p:\"⎻\",q:\"─\",r:\"⎼\",s:\"⎽\",t:\"├\",u:\"┤\",v:\"┴\",w:\"┬\",x:\"│\",y:\"≤\",z:\"≥\",\"{\":\"π\",\"|\":\"≠\",\"}\":\"£\",\"~\":\"·\"},t.CHARSETS.A={\"#\":\"£\"},t.CHARSETS.B=void 0,t.CHARSETS[4]={\"#\":\"£\",\"@\":\"¾\",\"[\":\"ij\",\"\\\\\":\"½\",\"]\":\"|\",\"{\":\"¨\",\"|\":\"f\",\"}\":\"¼\",\"~\":\"´\"},t.CHARSETS.C=t.CHARSETS[5]={\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.R={\"#\":\"£\",\"@\":\"à\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"§\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"¨\"},t.CHARSETS.Q={\"@\":\"à\",\"[\":\"â\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",\"`\":\"ô\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"û\"},t.CHARSETS.K={\"@\":\"§\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Ü\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"ß\"},t.CHARSETS.Y={\"#\":\"£\",\"@\":\"§\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"é\",\"`\":\"ù\",\"{\":\"à\",\"|\":\"ò\",\"}\":\"è\",\"~\":\"ì\"},t.CHARSETS.E=t.CHARSETS[6]={\"@\":\"Ä\",\"[\":\"Æ\",\"\\\\\":\"Ø\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"ä\",\"{\":\"æ\",\"|\":\"ø\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.Z={\"#\":\"£\",\"@\":\"§\",\"[\":\"¡\",\"\\\\\":\"Ñ\",\"]\":\"¿\",\"{\":\"°\",\"|\":\"ñ\",\"}\":\"ç\"},t.CHARSETS.H=t.CHARSETS[7]={\"@\":\"É\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS[\"=\"]={\"#\":\"ù\",\"@\":\"à\",\"[\":\"é\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",_:\"è\",\"`\":\"ô\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"û\"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,\"__esModule\",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL=\"\\0\",i.SOH=\"\u0001\",i.STX=\"\u0002\",i.ETX=\"\u0003\",i.EOT=\"\u0004\",i.ENQ=\"\u0005\",i.ACK=\"\u0006\",i.BEL=\"\u0007\",i.BS=\"\\b\",i.HT=\"\\t\",i.LF=\"\\n\",i.VT=\"\\v\",i.FF=\"\\f\",i.CR=\"\\r\",i.SO=\"\u000e\",i.SI=\"\u000f\",i.DLE=\"\u0010\",i.DC1=\"\u0011\",i.DC2=\"\u0012\",i.DC3=\"\u0013\",i.DC4=\"\u0014\",i.NAK=\"\u0015\",i.SYN=\"\u0016\",i.ETB=\"\u0017\",i.CAN=\"\u0018\",i.EM=\"\u0019\",i.SUB=\"\u001a\",i.ESC=\"\u001b\",i.FS=\"\u001c\",i.GS=\"\u001d\",i.RS=\"\u001e\",i.US=\"\u001f\",i.SP=\" \",i.DEL=\"\",(r=t.C1||(t.C1={})).PAD=\"€\",r.HOP=\"\",r.BPH=\"‚\",r.NBH=\"ƒ\",r.IND=\"„\",r.NEL=\"…\",r.SSA=\"†\",r.ESA=\"‡\",r.HTS=\"ˆ\",r.HTJ=\"‰\",r.VTS=\"Š\",r.PLD=\"‹\",r.PLU=\"Œ\",r.RI=\"\",r.SS2=\"Ž\",r.SS3=\"\",r.DCS=\"\",r.PU1=\"‘\",r.PU2=\"’\",r.STS=\"“\",r.CCH=\"”\",r.MW=\"•\",r.SPA=\"–\",r.EPA=\"—\",r.SOS=\"˜\",r.SGCI=\"™\",r.SCI=\"š\",r.CSI=\"›\",r.ST=\"œ\",r.OSC=\"\",r.PM=\"ž\",r.APC=\"Ÿ\"},7399:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:[\"0\",\")\"],49:[\"1\",\"!\"],50:[\"2\",\"@\"],51:[\"3\",\"#\"],52:[\"4\",\"$\"],53:[\"5\",\"%\"],54:[\"6\",\"^\"],55:[\"7\",\"&\"],56:[\"8\",\"*\"],57:[\"9\",\"(\"],186:[\";\",\":\"],187:[\"=\",\"+\"],188:[\",\",\"<\"],189:[\"-\",\"_\"],190:[\".\",\">\"],191:[\"/\",\"?\"],192:[\"`\",\"~\"],219:[\"[\",\"{\"],220:[\"\\\\\",\"|\"],221:[\"]\",\"}\"],222:[\"'\",'\"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:\"UIKeyInputUpArrow\"===e.key?s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\":\"UIKeyInputLeftArrow\"===e.key?s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\":\"UIKeyInputRightArrow\"===e.key?s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\":\"UIKeyInputDownArrow\"===e.key&&(s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+\"[Z\";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"D\",s.key===i.C0.ESC+\"[1;3D\"&&(s.key=i.C0.ESC+(r?\"b\":\"[1;5D\"))):s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"C\",s.key===i.C0.ESC+\"[1;3C\"&&(s.key=i.C0.ESC+(r?\"f\":\"[1;5C\"))):s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"A\",r||s.key!==i.C0.ESC+\"[1;3A\"||(s.key=i.C0.ESC+\"[1;5A\")):s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"B\",r||s.key!==i.C0.ESC+\"[1;3B\"||(s.key=i.C0.ESC+\"[1;5B\")):s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+\"[2~\");break;case 46:s.key=a?i.C0.ESC+\"[3;\"+(a+1)+\"~\":i.C0.ESC+\"[3~\";break;case 36:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"H\":t?i.C0.ESC+\"OH\":i.C0.ESC+\"[H\";break;case 35:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"F\":t?i.C0.ESC+\"OF\":i.C0.ESC+\"[F\";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+\"[5~\";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+\"[6~\";break;case 112:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"P\":i.C0.ESC+\"OP\";break;case 113:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"Q\":i.C0.ESC+\"OQ\";break;case 114:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"R\":i.C0.ESC+\"OR\";break;case 115:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"S\":i.C0.ESC+\"OS\";break;case 116:s.key=a?i.C0.ESC+\"[15;\"+(a+1)+\"~\":i.C0.ESC+\"[15~\";break;case 117:s.key=a?i.C0.ESC+\"[17;\"+(a+1)+\"~\":i.C0.ESC+\"[17~\";break;case 118:s.key=a?i.C0.ESC+\"[18;\"+(a+1)+\"~\":i.C0.ESC+\"[18~\";break;case 119:s.key=a?i.C0.ESC+\"[19;\"+(a+1)+\"~\":i.C0.ESC+\"[19~\";break;case 120:s.key=a?i.C0.ESC+\"[20;\"+(a+1)+\"~\":i.C0.ESC+\"[20~\";break;case 121:s.key=a?i.C0.ESC+\"[21;\"+(a+1)+\"~\":i.C0.ESC+\"[21~\";break;case 122:s.key=a?i.C0.ESC+\"[23;\"+(a+1)+\"~\":i.C0.ESC+\"[23~\";break;case 123:s.key=a?i.C0.ESC+\"[24;\"+(a+1)+\"~\":i.C0.ESC+\"[24~\";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&\"_\"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i=\"\",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version=\"6\",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WriteBuffer=void 0;var r=\"undefined\"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error(\"write data discarded, use flow control to avoid losing data\");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,\"HOOK\",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,\"PUT\",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,\"UNHOOK\",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data=\"\",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data=\"\",t._hitLimit=!1,e}));return this._params=c,this._data=\"\",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error(\"only one byte as prefix supported\");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error(\"prefix must be in range 0x3c .. 0x3f\")}if(e.intermediates){if(e.intermediates.length>2)throw new Error(\"only two bytes as intermediates are supported\");for(var i=0;in||n>47)throw new Error(\"intermediate must be in range 0x20 .. 0x2f\");r<<=8,r|=n}}if(1!==e.final.length)throw new Error(\"final must be a single byte\");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error(\"final must be in range \"+t[0]+\" .. \"+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join(\"\")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error(\"improper continuation due to previous async handler, giving up parsing\");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,\"START\")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,\"PUT\",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,\"END\",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data=\"\",this._hitLimit=!1}return e.prototype.start=function(){this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data=\"\",t._hitLimit=!1,e}));return this._data=\"\",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error(\"maxSubParamsLength must not be greater than 256\");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"buffer\",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?\"\":\"\u001b[M\"+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?\"m\":\"M\";return\"\u001b[<\"+c(e,!0)+\";\"+e.col+\";\"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol=\"\",this._activeEncoding=\"\",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&(\"DEFAULT\"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onUserInput\",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,\"start\",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"end\",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error(\"[createInstance] First service dependency of \"+e.name+\" at position \"+(u+1)+\" conflicts with \"+t.length+\" static arguments\");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND=\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:\"block\",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:\"none\",drawBoldTextInBrightColors:!0,fastScrollModifier:\"alt\",fastScrollSensitivity:5,fontFamily:\"courier-new, courier, monospace\",fontSize:15,fontWeight:\"normal\",fontWeightBold:\"bold\",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:\"info\",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:\"canvas\",windowOptions:{},windowsMode:!1,wordSeparator:\" ()[]{}',\\\"`\",altClickMovesCursor:!0,convertEol:!1,termName:\"xterm\",cancelEvents:!1});var s=[\"normal\",\"bold\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],a=[\"cols\",\"rows\"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error(\"@IServiceName-decorator can only be used to decorate a parameter\");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator(\"BufferService\"),t.ICoreMouseService=n.createDecorator(\"CoreMouseService\"),t.ICoreService=n.createDecorator(\"CoreService\"),t.ICharsetService=n.createDecorator(\"CharsetService\"),t.IDirtyRowService=n.createDecorator(\"DirtyRowService\"),t.IInstantiationService=n.createDecorator(\"InstantiationService\"),t.ILogService=n.createDecorator(\"LogService\"),t.IOptionsService=n.createDecorator(\"OptionsService\"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]=\"DEBUG\",i[i.INFO=1]=\"INFO\",i[i.WARN=2]=\"WARN\",i[i.ERROR=3]=\"ERROR\",i[i.OFF=4]=\"OFF\",t.IUnicodeService=n.createDecorator(\"UnicodeService\")},1480:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active=\"\",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,\"onChange\",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"versions\",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version \"'+e+'\"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()}));\n//# sourceMappingURL=xterm.js.map","\"use strict\";\n\nvar Zmodem = module.exports;\n\nconst HEX_DIGITS = [ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 97, 98, 99, 100, 101, 102 ];\n\nconst HEX_OCTET_VALUE = {};\nfor (var hd=0; hd 0xffff) throw( \"Number cannot exceed 16 bits: \" + number )\n\n return [ number >> 8, number & 0xff ];\n },\n\n /**\n * Return an array with the given number as 4 little-endian bytes.\n *\n * @param {number} number - The number to encode.\n *\n * @returns {number[]} The octet values.\n */\n pack_u32_le: function pack_u32_le(number) {\n //Can’t bit-shift because that runs into JS’s bit-shift problem.\n //(See _updcrc32() for an example.)\n var high_bytes = number / 65536; //fraction is ok\n\n //a little-endian 4-byte sequence\n return [\n number & 0xff,\n (number & 65535) >> 8,\n high_bytes & 0xff,\n high_bytes >> 8,\n ];\n },\n\n /**\n * The inverse of pack_u16_be() - i.e., take in 2 octet values\n * and parse them as an unsigned, 2-byte big-endian number.\n *\n * @param {number[]} octets - The octet values (2 of them).\n *\n * @returns {number} The decoded number.\n */\n unpack_u16_be: function unpack_u16_be(bytes_arr) {\n return (bytes_arr[0] << 8) + bytes_arr[1];\n },\n\n /**\n * The inverse of pack_u32_le() - i.e., take in a 4-byte sequence\n * and parse it as an unsigned, 4-byte little-endian number.\n *\n * @param {number[]} octets - The octet values (4 of them).\n *\n * @returns {number} The decoded number.\n */\n unpack_u32_le: function unpack_u32_le(octets) {\n // … (254 << 24 is -33554432, according to JavaScript)\n return octets[0] + (octets[1] << 8) + (octets[2] << 16) + (octets[3] * 16777216);\n },\n\n /**\n * Encode a series of octet values to be the octet values that\n * correspond to the ASCII hex characters for each octet. The\n * returned array is suitable for use as binary data.\n *\n * For example:\n *\n * Original Hex Returned\n * 254 fe 102, 101\n * 12 0c 48, 99\n * 129 81 56, 49\n *\n * @param {number[]} octets - The original octet values.\n *\n * @returns {number[]} The octet values that correspond to an ASCII\n * representation of the given octets.\n */\n octets_to_hex: function octets_to_hex(octets) {\n var hex = [];\n for (var o=0; o> 4 ],\n HEX_DIGITS[ octets[o] & 0x0f ]\n );\n }\n\n return hex;\n },\n\n /**\n * The inverse of octets_to_hex(): takes an array\n * of hex octet pairs and returns their octet values.\n *\n * @param {number[]} hex_octets - The hex octet values.\n *\n * @returns {number[]} The parsed octet values.\n */\n parse_hex_octets: function parse_hex_octets(hex_octets) {\n var octets = new Array(hex_octets.length / 2);\n\n for (var i=0; i> 8) & 255)]\n ^ ((255 & crc) << 8)\n ^ cp\n );\n}\n\nfunction __verify(expect, got) {\n var err;\n\n if ( expect.join() !== got.join() ) {\n throw new Zmodem.Error(\"crc\", got, expect);\n }\n}\n\n//TODO: use external implementation(s)\nZmodem.CRC = {\n\n //https://www.lammertbies.nl/comm/info/crc-calculation.html\n //CRC-CCITT (XModem)\n\n /**\n * Deduce a given set of octet values’ CRC16, as per the CRC16\n * variant that ZMODEM uses (CRC-CCITT/XModem).\n *\n * @param {Array} octets - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @returns {Array} crc - The CRC, expressed as an array of octet values.\n */\n crc16: function crc16(octet_nums) {\n var crc = octet_nums[0];\n for (var b=1; b>> 0 //bit-shift to get unsigned\n );\n },\n\n /**\n * Verify a given set of octet values’ CRC16.\n * An exception is thrown on failure.\n *\n * @param {Array} bytes_arr - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {Array} crc - The CRC to check against, expressed as\n * an array of octet values.\n */\n verify16: function verify16(bytes_arr, got) {\n return __verify( this.crc16(bytes_arr), got );\n },\n\n /**\n * Verify a given set of octet values’ CRC32.\n * An exception is thrown on failure.\n *\n * @param {Array} bytes_arr - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {Array} crc - The CRC to check against, expressed as\n * an array of octet values.\n */\n verify32: function verify32(bytes_arr, crc) {\n try {\n __verify( this.crc32(bytes_arr), crc );\n }\n catch(err) {\n err.input = bytes_arr.slice(0);\n throw err;\n }\n },\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zmlib\")\n);\n\n//encode() variables - declare them here so we don’t\n//create them in the function.\nvar encode_cur, encode_todo;\n\nconst ZDLE = Zmodem.ZMLIB.ZDLE;\n\n/**\n * Class that handles ZDLE encoding and decoding.\n * Encoding is subject to a given configuration--specifically, whether\n * we want to escape all control characters. Decoding is static; however\n * a given string is encoded we can always decode it.\n */\nZmodem.ZDLE = class ZmodemZDLE {\n /**\n * Create a ZDLE encoder.\n *\n * @param {object} [config] - The initial configuration.\n * @param {object} config.escape_ctrl_chars - Whether the ZDLE encoder\n * should escape control characters.\n */\n constructor(config) {\n this._config = {};\n if (config) {\n this.set_escape_ctrl_chars(!!config.escape_ctrl_chars);\n }\n }\n\n /**\n * Enable or disable control-character escaping.\n * You should probably enable this for sender sessions.\n *\n * @param {boolean} value - Whether to enable (true) or disable (false).\n */\n set_escape_ctrl_chars(value) {\n if (typeof value !== \"boolean\") throw \"need boolean!\";\n\n if (value !== this._config.escape_ctrl_chars) {\n this._config.escape_ctrl_chars = value;\n this._setup_zdle_table();\n }\n }\n\n /**\n * Whether or not control-character escaping is enabled.\n *\n * @return {boolean} Whether the escaping is on (true) or off (false).\n */\n escapes_ctrl_chars() {\n return !!this._config.escape_ctrl_chars;\n }\n\n //I don’t know of any Zmodem implementations that use ZESC8\n //(“escape_8th_bit”)??\n\n /*\n ZMODEM software escapes ZDLE, 020, 0220, 021, 0221, 023, and 0223. If\n preceded by 0100 or 0300 (@), 015 and 0215 are also escaped to protect the\n Telenet command escape CR-@-CR.\n */\n\n /**\n * Encode an array of octet values and return it.\n * This will mutate the given array.\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {number[]} The passed-in array, transformed. This is the\n * same object that is passed in.\n */\n encode(octets) {\n //NB: Performance matters here!\n\n if (!this._zdle_table) throw \"No ZDLE encode table configured!\";\n\n var zdle_table = this._zdle_table;\n\n var last_code = this._lastcode;\n\n var arrbuf = new ArrayBuffer( 2 * octets.length );\n var arrbuf_uint8 = new Uint8Array(arrbuf);\n\n var escctl_yn = this._config.escape_ctrl_chars;\n\n var arrbuf_i = 0;\n\n for (encode_cur=0; encode_cur=0; o--) {\n if (octets[o] === ZDLE) {\n octets.splice( o, 2, octets[o+1] - 64 );\n }\n }\n\n return octets;\n }\n\n /**\n * Remove, ZDLE-decode, and return bytes from the passed-in array.\n * If the requested number of ZDLE-encoded bytes isn’t available,\n * then the passed-in array is unmodified (and the return is undefined).\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @param {number} offset - The number of (undecoded) bytes to skip\n * at the beginning of the “octets” array.\n *\n * @param {number} count - The number of bytes (octet values) to return.\n *\n * @returns {number[]|undefined} An array with the requested number of\n * decoded octet values, or undefined if that number of decoded\n * octets isn’t available (given the passed-in offset).\n */\n static splice(octets, offset, count) {\n var so_far = 0;\n\n if (!offset) offset = 0;\n\n for (var i = offset; i> 8,\n 0,\n flags_num,\n ];\n }\n\n //undefined if nonstop I/O is allowed\n get_buffer_size() {\n return Zmodem.ENCODELIB.unpack_u16_be( this._bytes4.slice(0, 2) ) || undefined;\n }\n\n //Unimplemented:\n // can_decrypt\n // can_decompress\n\n //----------------------------------------------------------------------\n //function names taken from Jacques Mattheij’s implementation,\n //as used in syncterm.\n\n can_full_duplex() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANFDX );\n }\n\n can_overlap_io() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANOVIO );\n }\n\n can_break() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANBRK );\n }\n\n can_fcs_32() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANFC32 );\n }\n\n escape_ctrl_chars() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.ESCCTL );\n }\n\n //Is this used? I don’t see it used in lrzsz or syncterm\n //Looks like it was a “foreseen” feature that Forsberg\n //never implemented. (The need for it went away, maybe?)\n escape_8th_bit() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.ESC8 );\n }\n};\n\n//----------------------------------------------------------------------\n\n//Since context makes clear what’s going on, we use these\n//rather than the T-prefixed constants in the specification.\nconst ZSINIT_FLAG = {\n ESCCTL: 0x40, // Transmitter will escape ctl chars\n ESC8: 0x80, // Transmitter will escape 8th bit\n};\n\nfunction _get_ZSINIT_flag_num(fl) {\n if (!ZSINIT_FLAG[fl]) {\n throw(\"Invalid ZSINIT flag: \" + fl);\n }\n return ZSINIT_FLAG[fl];\n}\n\nclass ZSINIT_HEADER extends Zmodem.Header {\n constructor( flags_arr, attn_seq_arr ) {\n super();\n var flags_num = 0;\n\n flags_arr.forEach( function(fl) {\n flags_num |= _get_ZSINIT_flag_num(fl);\n } );\n\n this._bytes4 = [ 0, 0, 0, flags_num ];\n\n if (attn_seq_arr) {\n if (attn_seq_arr.length > 31) {\n throw(\"Attn sequence must be <= 31 bytes\");\n }\n if (attn_seq_arr.some( function(num) { return num > 255 } )) {\n throw(\"Attn sequence (\" + attn_seq_arr + \") must be <256\");\n }\n this._data = attn_seq_arr.concat([0]);\n }\n }\n\n escape_ctrl_chars() {\n return !!( this._bytes4[3] & ZSINIT_FLAG.ESCCTL );\n }\n\n //Is this used? I don’t see it used in lrzsz or syncterm\n escape_8th_bit() {\n return !!( this._bytes4[3] & ZSINIT_FLAG.ESC8 );\n }\n}\n\n//Thus far it doesn’t seem we really need this header except to respond\n//to ZSINIT, which doesn’t require a payload.\nclass ZACK_HEADER extends Zmodem.Header {\n constructor(payload4) {\n super();\n\n if (payload4) {\n this._bytes4 = payload4.slice();\n }\n }\n}\nZACK_HEADER.prototype._hex_header_ending = HEX_HEADER_CRLF;\n\n//----------------------------------------------------------------------\n\nconst ZFILE_VALUES = {\n\n //ZF3 (i.e., first byte)\n extended: {\n sparse: 0x40, //ZXSPARS\n },\n\n //ZF2\n transport: [\n undefined,\n \"compress\", //ZTLZW\n \"encrypt\", //ZTCRYPT\n \"rle\", //ZTRLE\n ],\n\n //ZF1\n management: [\n undefined,\n \"newer_or_longer\", //ZF1_ZMNEWL\n \"crc\", //ZF1_ZMCRC\n \"append\", //ZF1_ZMAPND\n \"clobber\", //ZF1_ZMCLOB\n \"newer\", //ZF1_ZMNEW\n \"mtime_or_length\", //ZF1_ZMNEW\n \"protect\", //ZF1_ZMPROT\n \"rename\", //ZF1_ZMPROT\n ],\n\n //ZF0 (i.e., last byte)\n conversion: [\n undefined,\n \"binary\", //ZCBIN\n \"text\", //ZCNL\n \"resume\", //ZCRESUM\n ],\n};\n\nconst ZFILE_ORDER = [\"extended\", \"transport\", \"management\", \"conversion\"];\n\nconst ZMSKNOLOC = 0x80,\n MANAGEMENT_MASK = 0x1f,\n ZXSPARS = 0x40\n;\n\nclass ZFILE_HEADER extends Zmodem.Header {\n\n //TODO: allow options on instantiation\n get_options() {\n var opts = {\n sparse: !!(this._bytes4[0] & ZXSPARS),\n };\n\n var bytes_copy = this._bytes4.slice(0);\n\n ZFILE_ORDER.forEach( function(key, i) {\n if (ZFILE_VALUES[key] instanceof Array) {\n if (key === \"management\") {\n opts.skip_if_absent = !!(bytes_copy[i] & ZMSKNOLOC);\n bytes_copy[i] &= MANAGEMENT_MASK;\n }\n\n opts[key] = ZFILE_VALUES[key][ bytes_copy[i] ];\n }\n else {\n for (var extkey in ZFILE_VALUES[key]) {\n opts[extkey] = !!(bytes_copy[i] & ZFILE_VALUES[key][extkey]);\n if (opts[extkey]) {\n bytes_copy[i] ^= ZFILE_VALUES[key][extkey]\n }\n }\n }\n\n if (!opts[key] && bytes_copy[i]) {\n opts[key] = \"unknown:\" + bytes_copy[i];\n }\n } );\n\n return opts;\n }\n}\n\n//----------------------------------------------------------------------\n\n//Empty headers - in addition to ZRQINIT\nclass ZSKIP_HEADER extends Zmodem.Header {}\n//No need for ZNAK\nclass ZABORT_HEADER extends Zmodem.Header {}\nclass ZFIN_HEADER extends Zmodem.Header {}\nclass ZFERR_HEADER extends Zmodem.Header {}\n\nZFIN_HEADER.prototype._hex_header_ending = HEX_HEADER_CRLF;\n\nclass ZOffsetHeader extends Zmodem.Header {\n constructor(offset) {\n super();\n this._bytes4 = Zmodem.ENCODELIB.pack_u32_le(offset);\n }\n\n get_offset() {\n return Zmodem.ENCODELIB.unpack_u32_le(this._bytes4);\n }\n}\n\nclass ZRPOS_HEADER extends ZOffsetHeader {};\nclass ZDATA_HEADER extends ZOffsetHeader {};\nclass ZEOF_HEADER extends ZOffsetHeader {};\n\n//As request, receiver creates.\n/* UNIMPLEMENTED FOR NOW\nclass ZCRC_HEADER extends ZHeader {\n constructor(crc_le_bytes) {\n super();\n if (crc_le_bytes) { //response, sender creates\n this._bytes4 = crc_le_bytes;\n }\n }\n}\n*/\n\n//No ZCHALLENGE implementation\n\n//class ZCOMPL_HEADER extends ZHeader {}\n//class ZCAN_HEADER extends Zmodem.Header {}\n\n//As described, this header represents an information disclosure.\n//It could be interpreted, I suppose, merely as “this is how much space\n//I have FOR YOU.”\n//TODO: implement if needed/requested\n//class ZFREECNT_HEADER extends ZmodemHeader {}\n\n//----------------------------------------------------------------------\n\nconst FRAME_CLASS_TYPES = [\n [ ZRQINIT_HEADER, \"ZRQINIT\" ],\n [ ZRINIT_HEADER, \"ZRINIT\" ],\n [ ZSINIT_HEADER, \"ZSINIT\" ],\n [ ZACK_HEADER, \"ZACK\" ],\n [ ZFILE_HEADER, \"ZFILE\" ],\n [ ZSKIP_HEADER, \"ZSKIP\" ],\n undefined, // [ ZNAK_HEADER, \"ZNAK\" ],\n [ ZABORT_HEADER, \"ZABORT\" ],\n [ ZFIN_HEADER, \"ZFIN\" ],\n [ ZRPOS_HEADER, \"ZRPOS\" ],\n [ ZDATA_HEADER, \"ZDATA\" ],\n [ ZEOF_HEADER, \"ZEOF\" ],\n [ ZFERR_HEADER, \"ZFERR\" ], //see note\n undefined, //[ ZCRC_HEADER, \"ZCRC\" ],\n undefined, //[ ZCHALLENGE_HEADER, \"ZCHALLENGE\" ],\n undefined, //[ ZCOMPL_HEADER, \"ZCOMPL\" ],\n undefined, //[ ZCAN_HEADER, \"ZCAN\" ],\n undefined, //[ ZFREECNT_HEADER, \"ZFREECNT\" ],\n undefined, //[ ZCOMMAND_HEADER, \"ZCOMMAND\" ],\n undefined, //[ ZSTDERR_HEADER, \"ZSTDERR\" ],\n];\n\n/*\nZFERR is described as “error in reading or writing file”. It’s really\nnot a good idea from a security angle for the endpoint to expose this\ninformation. We should parse this and handle it as ZABORT but never send it.\n\nLikewise with ZFREECNT: the sender shouldn’t ask how much space is left\non the other box; rather, the receiver should decide what to do with the\nfile size as the sender reports it.\n*/\n\nvar FRAME_NAME_CREATOR = {};\n\nfor (var fc=0; fc 11) {\n hdr_err = \"Invalid hex header - no LF detected within 12 bytes!\";\n }\n\n //incomplete header\n return;\n }\n else {\n hex_bytes = bytes_arr.splice( 0, lf_pos );\n\n //Trim off the LF\n bytes_arr.shift();\n\n if ( hex_bytes.length === 19 ) {\n\n //NB: The spec says CR but seems to treat high-bit variants\n //of control characters the same as the regulars; should we\n //also allow 0x8d?\n var preceding = hex_bytes.pop();\n if ( preceding !== 0x0d && preceding !== 0x8d ) {\n hdr_err = \"Invalid hex header: (CR/)LF doesn’t have CR!\";\n }\n }\n else if ( hex_bytes.length !== 18 ) {\n hdr_err = \"Invalid hex header: invalid number of bytes before LF!\";\n }\n }\n\n if (hdr_err) {\n hdr_err += \" (\" + hex_bytes.length + \" bytes: \" + hex_bytes.join() + \")\";\n throw hdr_err;\n }\n\n hex_bytes.splice(0, 4);\n\n //Should be 7 bytes ultimately:\n // 1 for typenum\n // 4 for header data\n // 2 for CRC\n var octets = Zmodem.ENCODELIB.parse_hex_octets(hex_bytes);\n\n return _parse_non_zdle_binary16(octets);\n}\n\nZmodem.Header.parse_hex = _parse_hex;\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nconst\n ZDLE = 0x18,\n XON = 0x11,\n XOFF = 0x13,\n XON_HIGH = 0x80 | XON,\n XOFF_HIGH = 0x80 | XOFF,\n CAN = 0x18 //NB: same character as ZDLE\n;\n\n/**\n * Tools and constants that are useful for ZMODEM.\n *\n * @exports ZMLIB\n */\nZmodem.ZMLIB = {\n\n /**\n * @property {number} The ZDLE constant, which ZMODEM uses for escaping\n */\n ZDLE: ZDLE,\n\n /**\n * @property {number} XON - ASCII XON\n */\n XON: XON,\n\n /**\n * @property {number} XOFF - ASCII XOFF\n */\n XOFF: XOFF,\n\n /**\n * @property {number[]} ABORT_SEQUENCE - ZMODEM’s abort sequence\n */\n ABORT_SEQUENCE: [ CAN, CAN, CAN, CAN, CAN ],\n\n /**\n * Remove octet values from the given array that ZMODEM always ignores.\n * This will mutate the given array.\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {number[]} The passed-in array. This is the same object that is\n * passed in.\n */\n strip_ignored_bytes: function strip_ignored_bytes(octets) {\n for (var o=octets.length-1; o>=0; o--) {\n switch (octets[o]) {\n case XON:\n case XON_HIGH:\n case XOFF:\n case XOFF_HIGH:\n octets.splice(o, 1);\n continue;\n }\n }\n\n return octets;\n },\n\n /**\n * Like Array.prototype.indexOf, but searches for a subarray\n * rather than just a particular value.\n *\n * @param {Array} haystack - The array to search, i.e., the bigger.\n *\n * @param {Array} needle - The array whose values to find,\n * i.e., the smaller.\n *\n * @returns {number} The position in “haystack” where “needle”\n * first appears—or, -1 if “needle” doesn’t appear anywhere\n * in “haystack”.\n */\n find_subarray: function find_subarray(haystack, needle) {\n var h=0, n;\n\n var start = Date.now();\n\n HAYSTACK:\n while (h !== -1) {\n h = haystack.indexOf( needle[0], h );\n if (h === -1) break HAYSTACK;\n\n for (n=1; n=0; f--) {\n var fobj = files[f];\n total_size += fobj.size;\n batch[f] = {\n obj: fobj,\n name: fobj.name,\n size: fobj.size,\n mtime: new Date(fobj.lastModified),\n files_remaining: files.length - f,\n bytes_remaining: total_size,\n };\n }\n\n var file_idx = 0;\n function promise_callback() {\n var cur_b = batch[file_idx];\n\n if (!cur_b) {\n return Promise.resolve(); //batch done!\n }\n\n file_idx++;\n\n return session.send_offer(cur_b).then( function after_send_offer(xfer) {\n if (options.on_offer_response) {\n options.on_offer_response(cur_b.obj, xfer);\n }\n\n if (xfer === undefined) {\n return promise_callback(); //skipped\n }\n\n return new Promise( function(res) {\n var reader = new FileReader();\n\n //This really shouldn’t happen … so let’s\n //blow up if it does.\n reader.onerror = function reader_onerror(e) {\n console.error(\"file read error\", e);\n throw(\"File read error: \" + e);\n };\n\n var piece;\n reader.onprogress = function reader_onprogress(e) {\n\n //Some browsers (e.g., Chrome) give partial returns,\n //while others (e.g., Firefox) don’t.\n if (e.target.result) {\n piece = new Uint8Array(e.target.result, xfer.get_offset())\n\n _check_aborted(session);\n\n xfer.send(piece);\n\n if (options.on_progress) {\n options.on_progress(cur_b.obj, xfer, piece);\n }\n }\n };\n\n reader.onload = function reader_onload(e) {\n piece = new Uint8Array(e.target.result, xfer, piece)\n\n _check_aborted(session);\n\n xfer.end(piece).then( function() {\n if (options.on_progress && piece.length) {\n options.on_progress(cur_b.obj, xfer, piece);\n }\n\n if (options.on_file_complete) {\n options.on_file_complete(cur_b.obj, xfer);\n }\n\n //Resolve the current file-send promise with\n //another promise. That promise resolves immediately\n //if we’re done, or with another file-send promise\n //if there’s more to send.\n res( promise_callback() );\n } );\n };\n\n reader.readAsArrayBuffer(cur_b.obj);\n } );\n } );\n }\n\n return promise_callback();\n },\n\n /**\n * Prompt a user to save the given packets as a file by injecting an\n * `` element (with `display: none` styling) into the page and\n * calling the element’s `click()`\n * method. The element is removed immediately after.\n *\n * @param {Array} packets - Same as the first argument to [Blob’s constructor](https://developer.mozilla.org/en-US/docs/Web/API/Blob).\n * @param {string} name - The name to give the file.\n */\n save_to_disk: function save_to_disk(packets, name) {\n var blob = new Blob(packets);\n var url = URL.createObjectURL(blob);\n\n var el = document.createElement(\"a\");\n el.style.display = \"none\";\n el.href = url;\n el.download = name;\n document.body.appendChild(el);\n\n //It seems like a security problem that this actually works;\n //I’d think there would need to be some confirmation before\n //a browser could save arbitrarily many bytes onto the disk.\n //But, hey.\n el.click();\n\n document.body.removeChild(el);\n },\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zmlib\"),\n require(\"./zsession\")\n);\n\nconst\n MIN_ZM_HEX_START_LENGTH = 20,\n MAX_ZM_HEX_START_LENGTH = 21,\n\n // **, ZDLE, 'B0'\n //ZRQINIT’s next byte will be '0'; ZRINIT’s will be '1'.\n COMMON_ZM_HEX_START = [ 42, 42, 24, 66, 48 ],\n\n SENTRY_CONSTRUCTOR_REQUIRED_ARGS = [\n \"to_terminal\",\n \"on_detect\",\n \"on_retract\",\n \"sender\",\n ],\n\n ASTERISK = 42\n;\n\n/**\n * An instance of this object is passed to the Sentry’s on_detect\n * callback each time the Sentry object sees what looks like the\n * start of a ZMODEM session.\n *\n * Note that it is possible for a detection to be “retracted”\n * if the Sentry consumes bytes afterward that are not ZMODEM.\n * When this happens, the Sentry’s `retract` event will fire,\n * after which the Detection object is no longer usable.\n */\nclass Detection {\n\n /**\n * Not called directly.\n */\n constructor(session_type, accepter, denier, checker) {\n\n //confirm() - user confirms that ZMODEM is desired\n this._confirmer = accepter;\n\n //deny() - user declines ZMODEM; send abort sequence\n //\n //TODO: It might be ideal to forgo the session “peaceably”,\n //i.e., such that the peer doesn’t end in error. That’s\n //possible if we’re the sender, we accept the session,\n //then we just send a close(), but it doesn’t seem to be\n //possible for a receiver. Thus, let’s just leave it so\n //it’s at least consistent (and simpler, too).\n this._denier = denier;\n\n this._is_valid = checker;\n\n this._session_type = session_type;\n }\n\n /**\n * Confirm that the detected ZMODEM sequence indicates the\n * start of a ZMODEM session.\n *\n * @return {Session} The ZMODEM Session object (i.e., either a\n * Send or Receive instance).\n */\n confirm() {\n return this._confirmer.apply(this, arguments);\n }\n\n /**\n * Tell the Sentry that the detected bytes sequence is\n * **NOT** intended to be the start of a ZMODEM session.\n */\n deny() {\n return this._denier.apply(this, arguments);\n }\n\n /**\n * Tells whether the Detection is still valid; i.e., whether\n * the Sentry has `consume()`d bytes that invalidate the\n * Detection.\n *\n * @returns {boolean} Whether the Detection is valid.\n */\n is_valid() {\n return this._is_valid.apply(this, arguments);\n }\n\n /**\n * Gives the session’s role.\n *\n * @returns {string} One of:\n * - `receive`\n * - `send`\n */\n get_session_role() { return this._session_type }\n}\n\n/**\n * Class that parses an input stream for the beginning of a\n * ZMODEM session. We look for the tell-tale signs\n * of a ZMODEM transfer and allow the client to determine whether\n * it’s really ZMODEM or not.\n *\n * This is the “mother” class for zmodem.js;\n * all other class instances are created, directly or indirectly,\n * by an instance of this class.\n *\n * This logic is not unlikely to need tweaking, and it can never\n * be fully bulletproof; if it could be bulletproof it would be\n * simpler since there wouldn’t need to be the .confirm()/.deny()\n * step.\n *\n * One thing you could do to make things a bit simpler *is* just\n * to make that assumption for your users--i.e., to .confirm()\n * Detection objects automatically. That’ll be one less step\n * for the user, but an unaccustomed user might find that a bit\n * confusing. It’s also then possible to have a “false positive”:\n * a text stream that contains a ZMODEM initialization string but\n * isn’t, in fact, meant to start a ZMODEM session.\n *\n * Workflow:\n * - parse all input with .consume(). As long as nothing looks\n * like ZMODEM, all the traffic will go to to_terminal().\n *\n * - when a “tell-tale” sequence of bytes arrives, we create a\n * Detection object and pass it to the “on_detect” handler.\n *\n * - Either .confirm() or .deny() with the Detection object.\n * This is the user’s chance to say, “yeah, I know those\n * bytes look like ZMODEM, but they’re not. So back off!”\n *\n * If you .confirm(), the Session object is returned, and\n * further input that goes to the Sentry’s .consume() will\n * go to the (now-active) Session object.\n *\n * - Sometimes additional traffic arrives that makes it apparent\n * that no ZMODEM session is intended to start; in this case,\n * the Sentry marks the Detection as “stale” and calls the\n * `on_retract` handler. Any attempt from here to .confirm()\n * on the Detection object will prompt an exception.\n *\n * (This “retraction” behavior will only happen prior to\n * .confirm() or .deny() being called on the Detection object.\n * Beyond that point, either the Session has to deal with the\n * “garbage”, or it’s back to the terminal anyway.\n *\n * - Once the Session object is done, the Sentry will again send\n * all traffic to to_terminal().\n */\nZmodem.Sentry = class ZmodemSentry {\n\n /**\n * Invoked directly. Creates a new Sentry that inspects all\n * traffic before it goes to the terminal.\n *\n * @param {Object} options - The Sentry parameters\n *\n * @param {Function} options.to_terminal - Handler that sends\n * traffic to the terminal object. Receives an iterable object\n * (e.g., an Array) that contains octet numbers.\n *\n * @param {Function} options.on_detect - Handler for new\n * detection events. Receives a new Detection object.\n *\n * @param {Function} options.on_retract - Handler for retraction\n * events. Receives no input.\n *\n * @param {Function} options.sender - Handler that sends traffic to\n * the peer. If, for example, your application uses WebSocket to talk\n * to the peer, use this to send data to the WebSocket instance.\n */\n constructor(options) {\n if (!options) throw \"Need options!\";\n\n var sentry = this;\n SENTRY_CONSTRUCTOR_REQUIRED_ARGS.forEach( function(arg) {\n if (!options[arg]) {\n throw \"Need “\" + arg + \"”!\";\n }\n sentry[\"_\" + arg] = options[arg];\n } );\n\n this._cache = [];\n }\n\n _after_session_end() {\n this._zsession = null;\n }\n\n /**\n * “Consumes” a piece of input:\n *\n * - If there is no active or pending ZMODEM session, the text is\n * all output. (This is regardless of whether we’ve got a new\n * Detection.)\n *\n * - If there is no active ZMODEM session and the input **ends** with\n * a ZRINIT or ZRQINIT, then a new Detection object is created,\n * and it is passed to the “on_detect” function.\n * If there was another pending Detection object, it is retracted.\n *\n * - If there is no active ZMODEM session and the input does NOT end\n * with a ZRINIT or ZRQINIT, then any pending Detection object is\n * retracted.\n *\n * - If there is an active ZMODEM session, the input is passed to it.\n * Any non-ZMODEM data (i.e., “garbage”) parsed from the input\n * is sent to output.\n * If the ZMODEM session ends, any post-ZMODEM part of the input\n * is sent to output.\n *\n * @param {number[] | ArrayBuffer} input - Octets to parse as input.\n */\n consume(input) {\n if (!(input instanceof Array)) {\n input = Array.prototype.slice.call( new Uint8Array(input) );\n }\n\n if (this._zsession) {\n var session_before_consume = this._zsession;\n\n session_before_consume.consume(input);\n\n if (session_before_consume.has_ended()) {\n if (session_before_consume.type === \"receive\") {\n input = session_before_consume.get_trailing_bytes();\n }\n else {\n input = [];\n }\n }\n else return;\n }\n\n var new_session = this._parse(input);\n var to_terminal = input;\n\n if (new_session) {\n let replacement_detect = !!this._parsed_session;\n\n if (replacement_detect) {\n //no terminal output if the new session is of the\n //same type as the old\n if (this._parsed_session.type === new_session.type) {\n to_terminal = [];\n }\n\n this._on_retract();\n }\n\n this._parsed_session = new_session;\n\n var sentry = this;\n\n function checker() {\n return sentry._parsed_session === new_session;\n }\n\n //This runs with the Sentry object as the context.\n function accepter() {\n if (!this.is_valid()) {\n throw \"Stale ZMODEM session!\";\n }\n\n new_session.on(\"garbage\", sentry._to_terminal);\n\n new_session.on(\n \"session_end\",\n sentry._after_session_end.bind(sentry)\n );\n\n new_session.set_sender(sentry._sender);\n\n delete sentry._parsed_session;\n\n return sentry._zsession = new_session;\n };\n\n function denier() {\n if (!this.is_valid()) return;\n };\n\n this._on_detect( new Detection(\n new_session.type,\n accepter,\n this._send_abort.bind(this),\n checker\n ) );\n }\n else {\n /*\n if (this._parsed_session) {\n this._session_stale_because = 'Non-ZMODEM output received after ZMODEM initialization.';\n }\n */\n\n var expired_session = this._parsed_session;\n\n this._parsed_session = null;\n\n if (expired_session) {\n\n //If we got a single “C” after parsing a session,\n //that means our peer is trying to downgrade to YMODEM.\n //That won’t work, so we just send the ABORT_SEQUENCE\n //right away.\n if (to_terminal.length === 1 && to_terminal[0] === 67) {\n this._send_abort();\n }\n\n this._on_retract();\n }\n }\n\n this._to_terminal(to_terminal);\n }\n\n /**\n * @return {Session|null} The sentry’s current Session object, or\n * null if there is none.\n */\n get_confirmed_session() {\n return this._zsession || null;\n }\n\n _send_abort() {\n this._sender( Zmodem.ZMLIB.ABORT_SEQUENCE );\n }\n\n /**\n * Parse an input stream and decide how much of it goes to the\n * terminal or to a new Session object.\n *\n * This will accommodate input strings that are fragmented\n * across calls to this function; e.g., if you send the first\n * two bytes at the end of one parse() call then send the rest\n * at the beginning of the next, parse() will recognize it as\n * the beginning of a ZMODEM session.\n *\n * In order to keep from blocking any actual useful data to the\n * terminal in real-time, this will send on the initial\n * ZRINIT/ZRQINIT bytes to the terminal. They’re meant to go to the\n * terminal anyway, so that should be fine.\n *\n * @private\n *\n * @param {Array|Uint8Array} array_like - The input bytes.\n * Each member should be a number between 0 and 255 (inclusive).\n *\n * @return {Array} A two-member list:\n * 0) the bytes that should be printed on the terminal\n * 1) the created Session object (if any)\n */\n _parse(array_like) {\n var cache = this._cache;\n\n cache.push.apply( cache, array_like );\n\n while (true) {\n let common_hex_at = Zmodem.ZMLIB.find_subarray( cache, COMMON_ZM_HEX_START );\n if (-1 === common_hex_at) break;\n\n let before_common_hex = cache.splice(0, common_hex_at);\n let zsession;\n try {\n zsession = Zmodem.Session.parse(cache);\n } catch(err) { //ignore errors\n //console.log(err);\n }\n\n if (!zsession) break;\n\n //Don’t need to parse the trailing XON.\n if ((cache.length === 1) && (cache[0] === Zmodem.ZMLIB.XON)) {\n cache.shift();\n }\n\n //If there are still bytes in the cache,\n //then we don’t have a ZMODEM session. This logic depends\n //on the sender only sending one initial header.\n return cache.length ? null : zsession;\n }\n\n cache.splice( MAX_ZM_HEX_START_LENGTH );\n\n return null;\n }\n}\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\n/**\n * This is where the protocol-level logic lives: the interaction of ZMODEM\n * headers and subpackets. The logic here is not unlikely to need tweaking\n * as little edge cases crop up.\n */\n\nZmodem.DEBUG = true;\n\nObject.assign(\n Zmodem,\n require(\"./encode\"),\n require(\"./text\"),\n require(\"./zdle\"),\n require(\"./zmlib\"),\n require(\"./zheader\"),\n require(\"./zsubpacket\"),\n require(\"./zvalidation\"),\n require(\"./zerror\")\n);\n\nconst\n //pertinent to this module\n KEEPALIVE_INTERVAL = 5000,\n\n //We ourselves don’t need ESCCTL, so we don’t send it;\n //however, we always expect to receive it in ZRINIT.\n //See _ensure_receiver_escapes_ctrl_chars() for more details.\n ZRINIT_FLAGS = [\n \"CANFDX\", //full duplex\n \"CANOVIO\", //overlap I/O\n\n //lsz has a buffer overflow bug that shows itself when:\n //\n // - 16-bit CRC is used, and\n // - lsz receives the abort sequence while sending a file\n //\n //To avoid this, we just tell lsz to use 32-bit CRC\n //even though there is otherwise no reason. This ensures that\n //unfixed lsz versions will avoid the buffer overflow.\n \"CANFC32\",\n ],\n\n //We do this because some WebSocket shell servers\n //(e.g., xterm.js’s demo server) enable the IEXTEN termios flag,\n //which bars 0x0f and 0x16 from reaching the shell process,\n //which results in transmission errors.\n FORCE_ESCAPE_CTRL_CHARS = true,\n\n DEFAULT_RECEIVE_INPUT_MODE = \"spool_uint8array\",\n\n //pertinent to ZMODEM\n MAX_CHUNK_LENGTH = 8192, //1 KiB officially, but lrzsz allows 8192\n BS = 0x8,\n OVER_AND_OUT = [ 79, 79 ],\n ABORT_SEQUENCE = Zmodem.ZMLIB.ABORT_SEQUENCE\n;\n\n/**\n * A base class for objects that have events.\n *\n * @private\n */\nclass _Eventer {\n\n /**\n * Not called directly.\n */\n constructor() {\n this._on_evt = {};\n this._evt_once_index = {};\n }\n\n _Add_event(evt_name) {\n this._on_evt[evt_name] = [];\n this._evt_once_index[evt_name] = [];\n }\n\n _get_evt_queue(evt_name) {\n if (!this._on_evt[evt_name]) {\n throw( \"Bad event: \" + evt_name );\n }\n\n return this._on_evt[evt_name];\n }\n\n /**\n * Register a callback for a given event.\n *\n * @param {string} evt_name - The name of the event.\n *\n * @param {Function} todo - The function to execute when the event happens.\n */\n on(evt_name, todo) {\n var queue = this._get_evt_queue(evt_name);\n\n queue.push(todo);\n\n return this;\n }\n\n /**\n * Unregister a callback for a given event.\n *\n * @param {string} evt_name - The name of the event.\n *\n * @param {Function} [todo] - The function to execute when the event\n * happens. If not given, the last event registered for the event\n * is unregistered.\n */\n off(evt_name, todo) {\n var queue = this._get_evt_queue(evt_name);\n\n if (todo) {\n var at = queue.indexOf(todo);\n if (at === -1) {\n throw(\"“\" + todo + \"” is not in the “\" + evt_name + \"” queue.\");\n }\n queue.splice(at, 1);\n }\n else {\n queue.pop();\n }\n\n return this;\n }\n\n _Happen(evt_name /*, arg0, arg1, .. */) {\n var queue = this._get_evt_queue(evt_name); //might as well validate\n\n //console.info(\"EVENT\", this, arguments);\n\n var args = Array.apply(null, arguments);\n args.shift();\n\n var sess = this;\n\n queue.forEach( function(cb) { cb.apply(sess, args) } );\n\n return queue.length;\n }\n}\n\n/**\n * The Session classes handle the protocol-level logic.\n * These shield the user from dealing with headers and subpackets.\n * This is a base class with functionality common to both Receive\n * and Send subclasses.\n *\n * @extends _Eventer\n*/\nZmodem.Session = class ZmodemSession extends _Eventer {\n\n /**\n * Parse out a hex header from the given array.\n * If there’s a ZRQINIT or ZRINIT at the beginning,\n * we’ll return it. If the input isn’t a header,\n * for whatever reason, we return undefined.\n *\n * @param {number[]} octets - The bytes to parse.\n *\n * @return {Session|undefined} A Session object if the beginning\n * of a session was parsable in “octets”; otherwise undefined.\n */\n static parse( octets ) {\n\n //Will need to trap errors.\n var hdr;\n try {\n hdr = Zmodem.Header.parse_hex(octets);\n }\n catch(e) { //Don’t report since we aren’t in session\n\n //debug\n //console.warn(\"No hex header: \", e);\n\n return;\n }\n\n if (!hdr) return;\n\n switch (hdr.NAME) {\n case \"ZRQINIT\":\n //throw if ZCOMMAND\n return new Zmodem.Session.Receive();\n case \"ZRINIT\":\n return new Zmodem.Session.Send(hdr);\n }\n\n //console.warn(\"Invalid first Zmodem header\", hdr);\n }\n\n /**\n * Sets the sender function that a Session object will use.\n *\n * @param {Function} sender_func - The function to call.\n * It will receive an Array with the relevant octets.\n *\n * @return {Session} The session object (for chaining).\n */\n set_sender(sender_func) {\n this._sender = sender_func;\n return this;\n }\n\n /**\n * Whether the current Session has ended.\n *\n * @returns {boolean} The ended state.\n */\n has_ended() { return this._has_ended() }\n\n /**\n * Consumes an array of octets as ZMODEM session input.\n *\n * @param {number[]} octets - The input octets.\n */\n consume(octets) {\n this._before_consume(octets);\n\n if (this._aborted) throw new Zmodem.Error('already_aborted');\n\n if (!octets.length) return;\n\n this._strip_and_enqueue_input(octets);\n\n if (!this._check_for_abort_sequence(octets)) {\n this._consume_first();\n }\n\n return;\n }\n\n /**\n * Whether the current Session has been `abort()`ed.\n *\n * @returns {boolean} The aborted state.\n */\n aborted() { return !!this._aborted }\n\n /**\n * Not called directly.\n */\n constructor() {\n super();\n //if (!sender_func) throw \"Need sender!\";\n\n //this._first_header = first_header;\n //this._sender = sender_func;\n this._config = {};\n\n //this._input = new ZInput();\n\n this._input_buffer = [];\n\n //This is mostly for debugging.\n this._Add_event(\"receive\");\n this._Add_event(\"garbage\");\n this._Add_event(\"session_end\");\n }\n\n /**\n * Returns the Session object’s role.\n *\n * @returns {string} One of:\n * - `receive`\n * - `send`\n */\n get_role() { return this.type }\n\n _trim_leading_garbage_until_header() {\n var garbage = Zmodem.Header.trim_leading_garbage(this._input_buffer);\n\n if (garbage.length) {\n if (this._Happen(\"garbage\", garbage) === 0) {\n console.debug(\n \"Garbage: \",\n String.fromCharCode.apply(String, garbage),\n garbage\n );\n }\n }\n }\n\n _parse_and_consume_header() {\n this._trim_leading_garbage_until_header();\n\n var new_header_and_crc = Zmodem.Header.parse(this._input_buffer);\n if (!new_header_and_crc) return;\n\n if (Zmodem.DEBUG) {\n this._log_header( \"RECEIVED HEADER\", new_header_and_crc[0] );\n }\n\n this._consume_header(new_header_and_crc[0]);\n\n this._last_header_name = new_header_and_crc[0].NAME;\n this._last_header_crc = new_header_and_crc[1];\n\n return new_header_and_crc[0];\n }\n\n _log_header(label, header) {\n console.debug(this.type, label, header.NAME, header._bytes4.join());\n }\n\n _consume_header(new_header) {\n this._on_receive(new_header);\n\n var handler = this._next_header_handler && this._next_header_handler[ new_header.NAME ];\n if (!handler) {\n console.error(\"Unhandled header!\", new_header, this._next_header_handler);\n throw new Zmodem.Error( \"Unhandled header: \" + new_header.NAME );\n }\n\n this._next_header_handler = null;\n\n handler.call(this, new_header);\n }\n\n //TODO: strip out the abort sequence\n _check_for_abort_sequence() {\n var abort_at = Zmodem.ZMLIB.find_subarray( this._input_buffer, ABORT_SEQUENCE );\n\n if (abort_at !== -1) {\n\n //TODO: expose this to caller\n this._input_buffer.splice( 0, abort_at + ABORT_SEQUENCE.length );\n\n this._aborted = true;\n\n //TODO compare response here to lrzsz.\n this._on_session_end();\n\n //We shouldn’t ever expect to receive an abort. Even if we\n //have sent an abort ourselves, the Sentry should have stopped\n //directing input to this Session object.\n //if (this._expect_abort) {\n // return true;\n //}\n\n throw new Zmodem.Error(\"peer_aborted\");\n }\n }\n\n _send_header(name /*, args */) {\n if (!this._sender) throw \"Need sender!\";\n\n var args = Array.apply( null, arguments );\n\n var bytes_hdr = this._create_header_bytes(args);\n\n if (Zmodem.DEBUG) {\n this._log_header( \"SENDING HEADER\", bytes_hdr[1] );\n }\n\n this._sender(bytes_hdr[0]);\n\n this._last_sent_header = bytes_hdr[1];\n }\n\n _create_header_bytes(name_and_args) {\n\n var hdr = Zmodem.Header.build.apply( Zmodem.Header, name_and_args );\n\n var formatter = this._get_header_formatter(name_and_args[0]);\n\n return [\n hdr[formatter](this._zencoder),\n hdr\n ];\n }\n\n _strip_and_enqueue_input(input) {\n Zmodem.ZMLIB.strip_ignored_bytes(input);\n\n //It’s possible that “input” is empty at this point.\n //It doesn’t seem to hurt anything to keep processing, though.\n\n this._input_buffer.push.apply( this._input_buffer, input );\n }\n\n /**\n * **STOP!** You probably want to `skip()` an Offer rather than\n * `abort()`. See below.\n *\n * Abort the current session by sending the ZMODEM abort sequence.\n * This function will cause the Session object to refuse to send\n * any further data.\n *\n * Zmodem.Sentry is configured to send all output to the terminal\n * after a session’s `abort()`. That could result in lots of\n * ZMODEM garble being sent to the JavaScript terminal, which you\n * probably don’t want.\n *\n * `skip()` on an Offer is better because Session will continue to\n * discard data until we reach either another file or the\n * sender-initiated end of the ZMODEM session. So no ZMODEM garble,\n * and the session will end successfully.\n *\n * The behavior of `abort()` is subject to change since it’s not\n * very useful as currently implemented.\n */\n abort() {\n\n //this._expect_abort = true;\n\n //From Forsberg:\n //\n //The Cancel sequence consists of eight CAN characters\n //and ten backspace characters. ZMODEM only requires five\n //Cancel characters; the other three are \"insurance\".\n //The trailing backspace characters attempt to erase\n //the effects of the CAN characters if they are\n //received by a command interpreter.\n //\n //FG: Since we assume our connection is reliable, there’s\n //no reason to send more than 5 CANs.\n this._sender(\n ABORT_SEQUENCE.concat([ BS, BS, BS, BS, BS ])\n );\n\n this._aborted = true;\n this._sender = function() {\n throw new Zmodem.Error('already_aborted');\n };\n\n this._on_session_end();\n\n return;\n }\n\n //----------------------------------------------------------------------\n _on_session_end() {\n this._Happen(\"session_end\");\n }\n\n _on_receive(hdr_or_pkt) {\n this._Happen(\"receive\", hdr_or_pkt);\n }\n\n _before_consume() {}\n}\n\nfunction _trim_OO(array) {\n if (0 === Zmodem.ZMLIB.find_subarray(array, OVER_AND_OUT)) {\n array.splice(0, OVER_AND_OUT.length);\n }\n\n //TODO: This assumes OVER_AND_OUT is 2 bytes long. No biggie, but.\n else if ( array[0] === OVER_AND_OUT[ OVER_AND_OUT.length - 1 ] ) {\n array.splice(0, 1);\n }\n\n return array;\n}\n\n/** A class for ZMODEM receive sessions.\n *\n * @extends Session\n */\nZmodem.Session.Receive = class ZmodemReceiveSession extends Zmodem.Session {\n //We only get 1 file at a time, so on each consume() either\n //continue state for the current file or start a new one.\n\n /**\n * Not called directly.\n */\n constructor() {\n super();\n\n this._Add_event(\"offer\");\n this._Add_event(\"data_in\");\n this._Add_event(\"file_end\");\n }\n\n /**\n * Consume input bytes from the sender.\n *\n * @private\n * @param {number[]} octets - The bytes to consume.\n */\n _before_consume(octets) {\n if (this._bytes_after_OO) {\n throw \"PROTOCOL: Session is completed!\";\n }\n\n //Put this here so that our logic later on has access to the\n //input string and can populate _bytes_after_OO when the\n //session ends.\n this._bytes_being_consumed = octets;\n }\n\n /**\n * Return any bytes that have been `consume()`d but\n * came after the end of the ZMODEM session.\n *\n * @returns {number[]} The trailing bytes.\n */\n get_trailing_bytes() {\n if (this._aborted) return [];\n\n if (!this._bytes_after_OO) {\n throw \"PROTOCOL: Session is not completed!\";\n }\n\n return this._bytes_after_OO.slice(0);\n }\n\n _has_ended() { return this.aborted() || !!this._bytes_after_OO }\n\n //Receiver always sends hex headers.\n _get_header_formatter() { return \"to_hex\" }\n\n _parse_and_consume_subpacket() {\n var parse_func;\n if (this._last_header_crc === 16) {\n parse_func = \"parse16\";\n }\n else {\n parse_func = \"parse32\";\n }\n\n var subpacket = Zmodem.Subpacket[parse_func](this._input_buffer);\n\n if (subpacket) {\n if (Zmodem.DEBUG) {\n console.debug(this.type, \"RECEIVED SUBPACKET\", subpacket);\n }\n\n this._consume_data(subpacket);\n\n //What state are we in if the subpacket indicates frame end\n //but we haven’t gotten ZEOF yet? Can anything other than ZEOF\n //follow after a ZDATA?\n if (subpacket.frame_end()) {\n this._next_subpacket_handler = null;\n }\n }\n\n return subpacket;\n }\n\n _consume_first() {\n if (this._got_ZFIN) {\n if (this._input_buffer.length < 2) return;\n\n //if it’s OO, then set this._bytes_after_OO\n if (Zmodem.ZMLIB.find_subarray(this._input_buffer, OVER_AND_OUT) === 0) {\n\n //This doubles as an indication that the session has ended.\n //We need to set this right away so that handlers like\n //\"session_end\" will have access to it.\n this._bytes_after_OO = _trim_OO(this._bytes_being_consumed.slice(0));\n this._on_session_end();\n\n return;\n }\n else {\n throw( \"PROTOCOL: Only thing after ZFIN should be “OO” (79,79), not: \" + this._input_buffer.join() );\n }\n }\n\n var parsed;\n do {\n if (this._next_subpacket_handler) {\n parsed = this._parse_and_consume_subpacket();\n }\n else {\n parsed = this._parse_and_consume_header();\n }\n } while (parsed && this._input_buffer.length);\n }\n\n _consume_data(subpacket) {\n this._on_receive(subpacket);\n\n if (!this._next_subpacket_handler) {\n throw( \"PROTOCOL: Received unexpected data packet after \" + this._last_header_name + \" header: \" + subpacket.get_payload().join() );\n }\n\n this._next_subpacket_handler.call(this, subpacket);\n }\n\n _octets_to_string(octets) {\n if (!this._textdecoder) {\n this._textdecoder = new Zmodem.Text.Decoder();\n }\n\n return this._textdecoder.decode( new Uint8Array(octets) );\n }\n\n _consume_ZFILE_data(hdr, subpacket) {\n if (this._file_info) {\n throw \"PROTOCOL: second ZFILE data subpacket received\";\n }\n\n var packet_payload = subpacket.get_payload();\n var nul_at = packet_payload.indexOf(0);\n\n //\n var fname = this._octets_to_string( packet_payload.slice(0, nul_at) );\n var the_rest = this._octets_to_string( packet_payload.slice( 1 + nul_at ) ).split(\" \");\n\n var mtime = the_rest[1] && parseInt( the_rest[1], 8 ) || undefined;\n if (mtime) {\n mtime = new Date(mtime * 1000);\n }\n\n this._file_info = {\n name: fname,\n size: the_rest[0] ? parseInt( the_rest[0], 10 ) : null,\n mtime: mtime || null,\n mode: the_rest[2] && parseInt( the_rest[2], 8 ) || null,\n serial: the_rest[3] && parseInt( the_rest[3], 10 ) || null,\n\n files_remaining: the_rest[4] ? parseInt( the_rest[4], 10 ) : null,\n bytes_remaining: the_rest[5] ? parseInt( the_rest[5], 10 ) : null,\n };\n\n //console.log(\"ZFILE\", hdr);\n\n var xfer = new Offer(\n hdr.get_options(),\n this._file_info,\n this._accept.bind(this),\n this._skip.bind(this)\n );\n this._current_transfer = xfer;\n\n //this._Happen(\"offer\", xfer);\n }\n\n _consume_ZDATA_data(subpacket) {\n if (!this._accepted_offer) {\n throw \"PROTOCOL: Received data without accepting!\";\n }\n\n //TODO: Probably should include some sort of preventive against\n //infinite loop here: if the peer hasn’t sent us what we want after,\n //say, 10 ZRPOS headers then we should send ZABORT and just end.\n if (!this._offset_ok) {\n console.warn(\"offset not ok!\");\n _send_ZRPOS();\n return;\n }\n\n this._file_offset += subpacket.get_payload().length;\n this._on_data_in(subpacket);\n\n /*\n console.warn(\"received error from data_in callback; retrying\", e);\n throw \"unimplemented\";\n */\n\n if (subpacket.ack_expected() && !subpacket.frame_end()) {\n this._send_header( \"ZACK\", Zmodem.ENCODELIB.pack_u32_le(this._file_offset) );\n }\n }\n\n _make_promise_for_between_files() {\n var sess = this;\n\n return new Promise( function(res) {\n var between_files_handler = {\n ZFILE: function(hdr) {\n this._next_subpacket_handler = function(subpacket) {\n this._next_subpacket_handler = null;\n this._consume_ZFILE_data(hdr, subpacket);\n this._Happen(\"offer\", this._current_transfer);\n res(this._current_transfer);\n };\n },\n\n //We use this as a keep-alive. Maybe other\n //implementations do, too?\n ZSINIT: function(hdr) {\n //The content of this header doesn’t affect us\n //since all it does is tell us details of how\n //the sender will ZDLE-encode binary data. Our\n //ZDLE parser doesn’t need to know in advance.\n\n sess._next_subpacket_handler = function(spkt) {\n sess._next_subpacket_handler = null;\n sess._consume_ZSINIT_data(spkt);\n sess._send_header('ZACK');\n sess._next_header_handler = between_files_handler;\n };\n },\n\n ZFIN: function() {\n this._consume_ZFIN();\n res();\n },\n };\n\n sess._next_header_handler = between_files_handler;\n } );\n }\n\n _consume_ZSINIT_data(spkt) {\n\n //TODO: Should this be used when we signal a cancellation?\n this._attn = spkt.get_payload();\n }\n\n /**\n * Start the ZMODEM session by signaling to the sender that\n * we are ready for the first file offer.\n *\n * @returns {Promise} A promise that resolves with an Offer object\n * or, if the sender closes the session immediately without offering\n * anything, nothing.\n */\n start() {\n if (this._started) throw \"Already started!\";\n this._started = true;\n\n var ret = this._make_promise_for_between_files();\n\n this._send_ZRINIT();\n\n return ret;\n }\n\n //Returns a promise that’s fulfilled when the file\n //transfer is done.\n //\n // That ZEOF promise return is another promise that’s\n // fulfilled when we get either ZFIN or another ZFILE.\n _accept(offset) {\n this._accepted_offer = true;\n this._file_offset = offset || 0;\n\n var sess = this;\n\n var ret = new Promise( function(resolve_accept) {\n var last_ZDATA;\n\n sess._next_header_handler = {\n ZDATA: function on_ZDATA(hdr) {\n this._consume_ZDATA(hdr);\n\n this._next_subpacket_handler = this._consume_ZDATA_data;\n\n this._next_header_handler = {\n ZEOF: function on_ZEOF(hdr) {\n\n // Do this first to verify the ZEOF.\n // This also fires the “file_end” event.\n this._consume_ZEOF(hdr);\n\n this._next_subpacket_handler = null;\n\n // We don’t care about this promise.\n // Prior to v0.1.8 we did because we called\n // resolve_accept() at the resolution of this\n // promise, but that was a bad idea and was\n // never documented, so 0.1.8 changed it.\n this._make_promise_for_between_files();\n\n resolve_accept();\n\n this._send_ZRINIT();\n },\n };\n },\n };\n } );\n\n this._send_ZRPOS();\n\n return ret;\n }\n\n _skip() {\n var ret = this._make_promise_for_between_files();\n\n if (this._accepted_offer) {\n // There’s a race condition where we might attempt to\n // skip() an in-progress transfer near its end but actually\n // the skip() will fire after the transfer is complete.\n // While there might be ways to prevent this, they likely\n // would require extra work on the part of implementations.\n //\n // It seems far simpler just to make this function a no-op\n // in these cases.\n if (!this._current_transfer) return;\n\n //For cancel of an in-progress transfer from lsz,\n //it’s necessary to avoid this buffer overflow bug:\n //\n // https://github.com/gooselinux/lrzsz/blob/master/lrzsz-0.12.20.patch\n //\n //… which we do by asking for CRC32 from lsz.\n\n //We might or might not have consumed ZDATA.\n //The sender also might or might not send a ZEOF before it\n //parses the ZSKIP. Thus, we want to ignore the following:\n //\n // - ZDATA\n // - ZDATA then ZEOF\n // - ZEOF\n //\n //… and just look for the next between-file header.\n\n var bound_make_promise_for_between_files = function() {\n\n //Once this happens we fail on any received data packet.\n //So it needs not to happen until we’ve received a header.\n this._accepted_offer = false;\n this._next_subpacket_handler = null;\n\n this._make_promise_for_between_files();\n }.bind(this);\n\n Object.assign(\n this._next_header_handler,\n {\n ZEOF: bound_make_promise_for_between_files,\n ZDATA: function() {\n bound_make_promise_for_between_files();\n this._next_header_handler.ZEOF = bound_make_promise_for_between_files;\n }.bind(this),\n }\n );\n }\n\n //this._accepted_offer = false;\n\n this._file_info = null;\n\n this._send_header( \"ZSKIP\" );\n\n return ret;\n }\n\n _send_ZRINIT() {\n this._send_header( \"ZRINIT\", ZRINIT_FLAGS );\n }\n\n _consume_ZFIN() {\n this._got_ZFIN = true;\n this._send_header( \"ZFIN\" );\n }\n\n _consume_ZEOF(header) {\n if (this._file_offset !== header.get_offset()) {\n throw( \"ZEOF offset mismatch; unimplemented (local: \" + this._file_offset + \"; ZEOF: \" + header.get_offset() + \")\" );\n }\n\n this._on_file_end();\n\n //Preserve these two so that file_end callbacks\n //will have the right information.\n this._file_info = null;\n this._current_transfer = null;\n }\n\n _consume_ZDATA(header) {\n if ( this._file_offset === header.get_offset() ) {\n this._offset_ok = true;\n }\n else {\n throw \"Error correction is unimplemented.\";\n }\n }\n\n _send_ZRPOS() {\n this._send_header( \"ZRPOS\", this._file_offset );\n }\n\n //----------------------------------------------------------------------\n //events\n\n _on_file_end() {\n this._Happen(\"file_end\");\n\n if (this._current_transfer) {\n this._current_transfer._Happen(\"complete\");\n this._current_transfer = null;\n }\n }\n\n _on_data_in(subpacket) {\n this._Happen(\"data_in\", subpacket);\n\n if (this._current_transfer) {\n this._current_transfer._Happen(\"input\", subpacket.get_payload());\n }\n }\n}\n\nObject.assign(\n Zmodem.Session.Receive.prototype,\n {\n type: \"receive\",\n }\n);\n\n//----------------------------------------------------------------------\n\n/**\n * @typedef {Object} FileDetails\n *\n * @property {string} name - The name of the file.\n *\n * @property {number} [size] - The file size, in bytes.\n *\n * @property {number} [mode] - The file mode (e.g., 0100644).\n *\n * @property {Date|number} [mtime] - The file’s modification time.\n * When expressed as a number, the unit is epoch seconds.\n *\n * @property {number} [files_remaining] - Inclusive of the current file,\n * so this value is never less than 1.\n *\n * @property {number} [bytes_remaining] - Inclusive of the current file.\n */\n\n/**\n * Common methods for Transfer and Offer objects.\n *\n * @mixin\n */\nvar Transfer_Offer_Mixin = {\n /**\n * Returns the file details object.\n * @returns {FileDetails} `mtime` is a Date.\n */\n get_details: function get_details() {\n return Object.assign( {}, this._file_info );\n },\n\n /**\n * Returns a parse of the ZFILE header’s payload.\n *\n * @returns {Object} Members are:\n *\n * - `conversion` (string | undefined)\n * - `management` (string | undefined)\n * - `transfer` (string | undefined)\n * - `sparse` (boolean)\n */\n get_options: function get_options() {\n return Object.assign( {}, this._zfile_opts );\n },\n\n /**\n * Returns the offset based on the last transferred chunk.\n * @returns {number} The file offset (i.e., number of bytes after\n * the start of the file).\n */\n get_offset: function get_offset() {\n return this._file_offset;\n },\n};\n\n/**\n * A class to represent a sender’s interaction with a single file\n * transfer within a batch. When a receiver accepts an offer, the\n * Session instantiates this class and passes the instance as the\n * promise resolution from send_offer().\n *\n * @mixes Transfer_Offer_Mixin\n */\nclass Transfer {\n\n /**\n * Not called directly.\n */\n constructor(file_info, offset, send_func, end_func) {\n this._file_info = file_info;\n this._file_offset = offset || 0;\n\n this._send = send_func;\n this._end = end_func;\n }\n\n /**\n * Send a (non-terminal) piece of the file.\n *\n * @param { number[] | Uint8Array } array_like - The bytes to send.\n */\n send(array_like) {\n this._send(array_like);\n this._file_offset += array_like.length;\n }\n\n /**\n * Complete the file transfer.\n *\n * @param { number[] | Uint8Array } [array_like] - The last bytes to send.\n *\n * @return { Promise } Resolves when the receiver has indicated\n * acceptance of the end of the file transfer.\n */\n end(array_like) {\n var ret = this._end(array_like || []);\n if (array_like) this._file_offset += array_like.length;\n return ret;\n }\n}\nObject.assign( Transfer.prototype, Transfer_Offer_Mixin );\n\n/**\n * A class to represent a receiver’s interaction with a single file\n * transfer offer within a batch. There is functionality here to\n * skip or accept offered files and either to spool the packet\n * payloads or to handle them yourself.\n *\n * @mixes Transfer_Offer_Mixin\n */\nclass Offer extends _Eventer {\n\n /**\n * Not called directly.\n */\n constructor(zfile_opts, file_info, accept_func, skip_func) {\n super();\n\n this._zfile_opts = zfile_opts;\n this._file_info = file_info;\n\n this._accept_func = accept_func;\n this._skip_func = skip_func;\n\n this._Add_event(\"input\");\n this._Add_event(\"complete\");\n\n //Register this first so that application handlers receive\n //the updated offset.\n this.on(\"input\", this._input_handler);\n }\n\n _verify_not_skipped() {\n if (this._skipped) {\n throw new Zmodem.Error(\"Already skipped!\");\n }\n }\n\n /**\n * Tell the sender that you don’t want the offered file.\n *\n * You can send this in lieu of `accept()` or after it, e.g.,\n * if you find that the transfer is taking too long. Note that,\n * if you `skip()` after you `accept()`, you’ll likely have to\n * wait for buffers to clear out.\n *\n */\n skip() {\n this._verify_not_skipped();\n this._skipped = true;\n\n return this._skip_func.apply(this, arguments);\n }\n\n /**\n * Tell the sender to send the offered file.\n *\n * @param {Object} [opts] - Can be:\n * @param {string} [opts.oninput=spool_uint8array] - Can be:\n *\n * - `spool_uint8array`: Stores the ZMODEM\n * packet payloads as Uint8Array instances.\n * This makes for an easy transition to a Blob,\n * which JavaScript can use to save the file to disk.\n *\n * - `spool_array`: Stores the ZMODEM packet payloads\n * as Array instances. Each value is an octet value.\n *\n * - (function): A handler that receives each payload\n * as it arrives. The Offer object does not store\n * the payloads internally when thus configured.\n *\n * @return { Promise } Resolves when the file is fully received.\n * If the Offer has been spooling\n * the packet payloads, the promise resolves with an Array\n * that contains those payloads.\n */\n accept(opts) {\n this._verify_not_skipped();\n\n if (this._accepted) {\n throw new Zmodem.Error(\"Already accepted!\");\n }\n this._accepted = true;\n\n if (!opts) opts = {};\n\n this._file_offset = opts.offset || 0;\n\n switch (opts.on_input) {\n case null:\n case undefined:\n case \"spool_array\":\n case DEFAULT_RECEIVE_INPUT_MODE: //default\n this._spool = [];\n break;\n default:\n if (typeof opts.on_input !== \"function\") {\n throw \"Invalid “on_input”: \" + opts.on_input;\n }\n }\n\n this._input_handler_mode = opts.on_input || DEFAULT_RECEIVE_INPUT_MODE;\n\n return this._accept_func(this._file_offset).then( this._get_spool.bind(this) );\n }\n\n _input_handler(payload) {\n this._file_offset += payload.length;\n\n if (typeof this._input_handler_mode === \"function\") {\n this._input_handler_mode(payload);\n }\n else {\n if (this._input_handler_mode === DEFAULT_RECEIVE_INPUT_MODE) {\n payload = new Uint8Array(payload);\n }\n\n //sanity\n else if (this._input_handler_mode !== \"spool_array\") {\n throw new Zmodem.Error(\"WTF?? _input_handler_mode = \" + this._input_handler_mode);\n }\n\n this._spool.push(payload);\n }\n }\n\n _get_spool() {\n return this._spool;\n }\n}\nObject.assign( Offer.prototype, Transfer_Offer_Mixin );\n\n//Curious that ZSINIT isn’t here … but, lsz sends it as hex.\nconst SENDER_BINARY_HEADER = {\n ZFILE: true,\n ZDATA: true,\n};\n\n/**\n * A class that encapsulates behavior for a ZMODEM sender.\n *\n * @extends Session\n */\nZmodem.Session.Send = class ZmodemSendSession extends Zmodem.Session {\n\n /**\n * Not called directly.\n */\n constructor(zrinit_hdr) {\n super();\n\n if (!zrinit_hdr) {\n throw \"Need first header!\";\n }\n else if (zrinit_hdr.NAME !== \"ZRINIT\") {\n throw(\"First header should be ZRINIT, not \" + zrinit_hdr.NAME);\n }\n\n this._last_header_name = 'ZRINIT';\n\n //We don’t need to send crc32. Even if the other side can grok it,\n //there’s no point to sending it since, for now, we assume we’re\n //on a reliable connection, e.g., TCP. Ideally we’d just forgo\n //CRC checks completely, but ZMODEM doesn’t allow that.\n //\n //If we *were* to start using crc32, we’d update this every time\n //we send a header.\n this._subpacket_encode_func = 'encode16';\n\n this._zencoder = new Zmodem.ZDLE();\n\n this._consume_ZRINIT(zrinit_hdr);\n\n this._file_offset = 0;\n\n var zrqinit_count = 0;\n\n this._start_keepalive_on_set_sender = true;\n\n //lrzsz will send ZRINIT until it gets an offer. (keep-alive?)\n //It sends 4 additional ones after the initial ZRINIT and, if\n //no response is received, starts sending “C” (0x43, 67) as if to\n //try to downgrade to XMODEM or YMODEM.\n //var sess = this;\n //this._prepare_to_receive_ZRINIT( function keep_alive() {\n // sess._prepare_to_receive_ZRINIT(keep_alive);\n //} );\n\n //queue up the ZSINIT flag to send -- but seems useless??\n\n /*\n Object.assign(\n this._on_evt,\n {\n file_received: [],\n },\n };\n */\n }\n\n /**\n * Sets the sender function. The first time this is called,\n * it will also initiate a keepalive using ZSINIT until the\n * first file is sent.\n *\n * @param {Function} func - The function to call.\n * It will receive an Array with the relevant octets.\n *\n * @return {Session} The session object (for chaining).\n */\n set_sender(func) {\n super.set_sender(func);\n\n if (this._start_keepalive_on_set_sender) {\n this._start_keepalive_on_set_sender = false;\n this._start_keepalive();\n }\n\n return this;\n }\n\n //7.3.3 .. The sender also uses hex headers when they are\n //not followed by binary data subpackets.\n //\n //FG: … or when the header is ZSINIT? That’s what lrzsz does, anyway.\n //Then it sends a single NUL byte as the payload to an end_ack subpacket.\n _get_header_formatter(name) {\n return SENDER_BINARY_HEADER[name] ? \"to_binary16\" : \"to_hex\";\n }\n\n //In order to keep lrzsz from timing out, we send ZSINIT every 5 seconds.\n //Maybe make this configurable?\n _start_keepalive() {\n //if (this._keepalive_promise) throw \"Keep-alive already started!\";\n if (!this._keepalive_promise) {\n var sess = this;\n\n this._keepalive_promise = new Promise(function(resolve) {\n //console.log(\"SETTING KEEPALIVE TIMEOUT\");\n sess._keepalive_timeout = setTimeout(resolve, KEEPALIVE_INTERVAL);\n }).then( function() {\n sess._next_header_handler = {\n ZACK: function() {\n\n //We’re going to need to ensure that the\n //receiver is ready for all control characters\n //to be escaped. If we’ve already sent a ZSINIT\n //and gotten a response, then we know that that\n //work is already done later on when we actually\n //send an offer.\n sess._got_ZSINIT_ZACK = true;\n },\n };\n sess._send_ZSINIT();\n\n sess._keepalive_promise = null;\n sess._start_keepalive();\n });\n }\n }\n\n _stop_keepalive() {\n if (this._keepalive_promise) {\n //console.log(\"STOPPING KEEPALIVE\");\n clearTimeout(this._keepalive_timeout);\n this._keep_alive_promise = null;\n }\n }\n\n _send_ZSINIT() {\n //See note at _ensure_receiver_escapes_ctrl_chars()\n //for why we have to pass ESCCTL.\n\n var zsinit_flags = [];\n if (this._zencoder.escapes_ctrl_chars()) {\n zsinit_flags.push(\"ESCCTL\");\n }\n\n this._send_header_and_data(\n [\"ZSINIT\", zsinit_flags],\n [0],\n \"end_ack\"\n );\n }\n\n _consume_ZRINIT(hdr) {\n this._last_ZRINIT = hdr;\n\n if (hdr.get_buffer_size()) {\n throw( \"Buffer size (\" + hdr.get_buffer_size() + \") is unsupported!\" );\n }\n\n if (!hdr.can_full_duplex()) {\n throw( \"Half-duplex I/O is unsupported!\" );\n }\n\n if (!hdr.can_overlap_io()) {\n throw( \"Non-overlap I/O is unsupported!\" );\n }\n\n if (hdr.escape_8th_bit()) {\n throw( \"8-bit escaping is unsupported!\" );\n }\n\n if (FORCE_ESCAPE_CTRL_CHARS) {\n this._zencoder.set_escape_ctrl_chars(true);\n if (!hdr.escape_ctrl_chars()) {\n console.debug(\"Peer didn’t request escape of all control characters. Will send ZSINIT to force recognition of escaped control characters.\");\n }\n }\n else {\n this._zencoder.set_escape_ctrl_chars(hdr.escape_ctrl_chars());\n }\n }\n\n //https://stackoverflow.com/questions/23155939/missing-0xf-and-0x16-when-binary-data-through-virtual-serial-port-pair-created-b\n //^^ Because of that, we always escape control characters.\n //The alternative would be that lrz would never receive those\n //two bytes from zmodem.js.\n _ensure_receiver_escapes_ctrl_chars() {\n var promise;\n\n var needs_ZSINIT = !this._last_ZRINIT.escape_ctrl_chars() && !this._got_ZSINIT_ZACK;\n\n if (needs_ZSINIT) {\n var sess = this;\n promise = new Promise( function(res) {\n sess._next_header_handler = {\n ZACK: (hdr) => {\n res();\n },\n };\n sess._send_ZSINIT();\n } );\n }\n else {\n promise = Promise.resolve();\n }\n\n return promise;\n }\n\n _convert_params_to_offer_payload_array(params) {\n params = Zmodem.Validation.offer_parameters(params);\n\n var subpacket_payload = params.name + \"\\x00\";\n\n var subpacket_space_pieces = [\n (params.size || 0).toString(10),\n params.mtime ? params.mtime.toString(8) : \"0\",\n params.mode ? (0x8000 | params.mode).toString(8) : \"0\",\n \"0\", //serial\n ];\n\n if (params.files_remaining) {\n subpacket_space_pieces.push( params.files_remaining );\n\n if (params.bytes_remaining) {\n subpacket_space_pieces.push( params.bytes_remaining );\n }\n }\n\n subpacket_payload += subpacket_space_pieces.join(\" \");\n return this._string_to_octets(subpacket_payload);\n }\n\n /**\n * Send an offer to the receiver.\n *\n * @param {FileDetails} params - All about the file you want to transfer.\n *\n * @returns {Promise} If the receiver accepts the offer, then the\n * resolution is a Transfer object; otherwise the resolution is\n * undefined.\n */\n send_offer(params) {\n if (Zmodem.DEBUG) {\n console.debug(\"SENDING OFFER\", params);\n }\n\n if (!params) throw \"need file params!\";\n\n if (this._sending_file) throw \"Already sending file!\";\n\n var payload_array = this._convert_params_to_offer_payload_array(params);\n\n this._stop_keepalive();\n\n var sess = this;\n\n function zrpos_handler_setter_func() {\n sess._next_header_handler = {\n\n // The receiver may send ZRPOS in at least two cases:\n //\n // 1) A malformed subpacket arrived, so we need to\n // “rewind” a bit and continue from the receiver’s\n // last-successful location in the file.\n //\n // 2) The receiver hasn’t gotten any data for a bit,\n // so it sends ZRPOS as a “ping”.\n //\n // Case #1 shouldn’t happen since zmodem.js requires a\n // reliable transport. Case #2, though, can happen due\n // to either normal network congestion or errors in\n // implementation. In either case, there’s nothing for\n // us to do but to ignore the ZRPOS, with an optional\n // warning.\n //\n ZRPOS: function(hdr) {\n if (Zmodem.DEBUG) {\n console.warn(\"Mid-transfer ZRPOS … implementation error?\");\n }\n\n zrpos_handler_setter_func();\n },\n };\n };\n\n var doer_func = function() {\n\n //return Promise object that is fulfilled when the ZRPOS or ZSKIP arrives.\n //The promise value is the byte offset, or undefined for ZSKIP.\n //If ZRPOS arrives, then send ZDATA(0) and set this._sending_file.\n var handler_setter_promise = new Promise( function(res) {\n sess._next_header_handler = {\n ZSKIP: function() {\n sess._start_keepalive();\n res();\n },\n ZRPOS: function(hdr) {\n sess._sending_file = true;\n\n zrpos_handler_setter_func();\n\n res(\n new Transfer(\n params,\n hdr.get_offset(),\n sess._send_interim_file_piece.bind(sess),\n sess._end_file.bind(sess)\n )\n );\n },\n };\n } );\n\n sess._send_header_and_data( [\"ZFILE\"], payload_array, \"end_ack\" );\n\n delete sess._sent_ZDATA;\n\n return handler_setter_promise;\n };\n\n if (FORCE_ESCAPE_CTRL_CHARS) {\n return this._ensure_receiver_escapes_ctrl_chars().then(doer_func);\n }\n\n return doer_func();\n }\n\n _send_header_and_data( hdr_name_and_args, data_arr, frameend ) {\n var bytes_hdr = this._create_header_bytes(hdr_name_and_args);\n\n var data_bytes = this._build_subpacket_bytes(data_arr, frameend);\n\n bytes_hdr[0].push.apply( bytes_hdr[0], data_bytes );\n\n if (Zmodem.DEBUG) {\n this._log_header( \"SENDING HEADER\", bytes_hdr[1] );\n console.debug( this.type, \"-- HEADER PAYLOAD:\", frameend, data_bytes.length );\n }\n\n this._sender( bytes_hdr[0] );\n\n this._last_sent_header = bytes_hdr[1];\n }\n\n _build_subpacket_bytes( bytes_arr, frameend ) {\n var subpacket = Zmodem.Subpacket.build(bytes_arr, frameend);\n\n return subpacket[this._subpacket_encode_func]( this._zencoder );\n }\n\n _build_and_send_subpacket( bytes_arr, frameend ) {\n this._sender( this._build_subpacket_bytes(bytes_arr, frameend) );\n }\n\n _string_to_octets(string) {\n if (!this._textencoder) {\n this._textencoder = new Zmodem.Text.Encoder();\n }\n\n var uint8arr = this._textencoder.encode(string);\n return Array.prototype.slice.call(uint8arr);\n }\n\n /*\n Potential future support for responding to ZRPOS:\n send_file_offset(offset) {\n }\n */\n\n /*\n Sending logic works thus:\n - ASSUME the receiver can overlap I/O (CANOVIO)\n (so fail if !CANFDX || !CANOVIO)\n - Sender opens the firehose … all ZCRCG (!end/!ack)\n until the end, when we send a ZCRCE (end/!ack)\n NB: try 8k/32k/64k chunk sizes? Looks like there’s\n no need to change the packet otherwise.\n */\n //TODO: Put this on a Transfer object similar to what Receive uses?\n _send_interim_file_piece(bytes_obj) {\n\n //We don’t ask the receiver to confirm because there’s no need.\n this._send_file_part(bytes_obj, \"no_end_no_ack\");\n\n //This pattern will allow\n //error-correction without buffering the entire stream in JS.\n //For now the promise is always resolved, but in the future we\n //can make it only resolve once we’ve gotten acknowledgement.\n return Promise.resolve();\n }\n\n _ensure_we_are_sending() {\n if (!this._sending_file) throw \"Not sending a file currently!\";\n }\n\n //This resolves once we receive ZEOF.\n _end_file(bytes_obj) {\n this._ensure_we_are_sending();\n\n //Is the frame-end-ness of this last packet redundant\n //with the ZEOF packet?? - No. It signals the receiver that\n //the next thing to expect is a header, not a packet.\n\n //no-ack, following lrzsz’s example\n this._send_file_part(bytes_obj, \"end_no_ack\");\n\n var sess = this;\n\n //Register this before we send ZEOF in case of local round-trip.\n //(Basically just for synchronous testing, but.)\n var ret = new Promise( function(res) {\n //console.log(\"UNSETTING SENDING FLAG\");\n sess._sending_file = false;\n sess._prepare_to_receive_ZRINIT(res);\n } );\n\n this._send_header( \"ZEOF\", this._file_offset );\n\n this._file_offset = 0;\n\n return ret;\n }\n\n //Called at the beginning of our session\n //and also when we’re done sending a file.\n _prepare_to_receive_ZRINIT(after_consume) {\n this._next_header_handler = {\n ZRINIT: function(hdr) {\n this._consume_ZRINIT(hdr);\n if (after_consume) after_consume();\n },\n };\n }\n\n /**\n * Signal to the receiver that the ZMODEM session is wrapping up.\n *\n * @returns {Promise} Resolves when the receiver has responded to\n * our signal that the session is over.\n */\n close() {\n var ok_to_close = (this._last_header_name === \"ZRINIT\")\n if (!ok_to_close) {\n ok_to_close = (this._last_header_name === \"ZSKIP\");\n }\n if (!ok_to_close) {\n ok_to_close = (this._last_sent_header.name === \"ZSINIT\") && (this._last_header_name === \"ZACK\");\n }\n\n if (!ok_to_close) {\n throw( \"Can’t close; last received header was “\" + this._last_header_name + \"”\" );\n }\n\n var sess = this;\n\n var ret = new Promise( function(res, rej) {\n sess._next_header_handler = {\n ZFIN: function() {\n sess._sender( OVER_AND_OUT );\n sess._sent_OO = true;\n sess._on_session_end();\n res();\n },\n };\n } );\n\n this._send_header(\"ZFIN\");\n\n return ret;\n }\n\n _has_ended() {\n return this.aborted() || !!this._sent_OO;\n }\n\n _send_file_part(bytes_obj, final_packetend) {\n if (!this._sent_ZDATA) {\n this._send_header( \"ZDATA\", this._file_offset );\n this._sent_ZDATA = true;\n }\n\n var obj_offset = 0;\n\n var bytes_count = bytes_obj.length;\n\n //We have to go through at least once in event of an\n //empty buffer, e.g., an empty end_file.\n while (true) {\n var chunk_size = Math.min(obj_offset + MAX_CHUNK_LENGTH, bytes_count) - obj_offset;\n\n var at_end = (chunk_size + obj_offset) >= bytes_count;\n\n var chunk = bytes_obj.slice( obj_offset, obj_offset + chunk_size );\n if (!(chunk instanceof Array)) {\n chunk = Array.prototype.slice.call(chunk);\n }\n\n this._build_and_send_subpacket(\n chunk,\n at_end ? final_packetend : \"no_end_no_ack\"\n );\n\n this._file_offset += chunk_size;\n obj_offset += chunk_size;\n\n if (obj_offset >= bytes_count) break;\n }\n }\n\n _consume_first() {\n if (!this._parse_and_consume_header()) {\n\n //When the ZMODEM receive program starts, it immediately sends\n //a ZRINIT header to initiate ZMODEM file transfers, or a\n //ZCHALLENGE header to verify the sending program. The receive\n //program resends its header at response time (default 10 second)\n //intervals for a suitable period of time (40 seconds total)\n //before falling back to YMODEM protocol.\n if (this._input_buffer.join() === \"67\") {\n throw \"Receiver has fallen back to YMODEM.\";\n }\n }\n }\n\n _on_session_end() {\n this._stop_keepalive();\n super._on_session_end();\n }\n}\n\nObject.assign(\n Zmodem.Session.Send.prototype,\n {\n type: \"send\",\n }\n);\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zcrc\"),\n require(\"./zdle\"),\n require(\"./zmlib\"),\n require(\"./zerror\")\n);\n\nconst\n ZCRCE = 0x68, // 'h', 104, frame ends, header packet follows\n ZCRCG = 0x69, // 'i', 105, frame continues nonstop\n ZCRCQ = 0x6a, // 'j', 106, frame continues, ZACK expected\n ZCRCW = 0x6b // 'k', 107, frame ends, ZACK expected\n;\n\nvar SUBPACKET_BUILDER;\n\n/** Class that represents a ZMODEM data subpacket. */\nZmodem.Subpacket = class ZmodemSubpacket {\n\n /**\n * Build a Subpacket subclass given a payload and frame end string.\n *\n * @param {Array} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {string} frameend - One of:\n * - `no_end_no_ack`\n * - `end_no_ack`\n * - `no_end_ack` (unused currently)\n * - `end_ack`\n *\n * @returns {Subpacket} An instance of the appropriate Subpacket subclass.\n */\n static build(octets, frameend) {\n\n //TODO: make this better\n var Ctr = SUBPACKET_BUILDER[frameend];\n if (!Ctr) {\n throw(\"No subpacket type “\" + frameend + \"” is defined! Try one of: \" + Object.keys(SUBPACKET_BUILDER).join(\", \"));\n }\n\n return new Ctr(octets);\n }\n\n /**\n * Return the octet values array that represents the object\n * encoded with a 16-bit CRC.\n *\n * @param {ZDLE} zencoder - A ZDLE instance to use for ZDLE encoding.\n *\n * @returns {number[]} An array of octet values suitable for sending\n * as binary data.\n */\n encode16(zencoder) {\n return this._encode( zencoder, Zmodem.CRC.crc16 );\n }\n\n /**\n * Return the octet values array that represents the object\n * encoded with a 32-bit CRC.\n *\n * @param {ZDLE} zencoder - A ZDLE instance to use for ZDLE encoding.\n *\n * @returns {number[]} An array of octet values suitable for sending\n * as binary data.\n */\n encode32(zencoder) {\n return this._encode( zencoder, Zmodem.CRC.crc32 );\n }\n\n /**\n * Return the subpacket payload’s octet values.\n *\n * NOTE: For speed, this returns the actual data in the subpacket;\n * if you mutate this return value, you alter the Subpacket object\n * internals. This is OK if you won’t need the Subpacket anymore, but\n * just be careful.\n *\n * @returns {number[]} The subpacket’s payload, represented as an\n * array of octet values. **DO NOT ALTER THIS ARRAY** unless you\n * no longer need the Subpacket.\n */\n get_payload() { return this._payload }\n\n /**\n * Parse out a Subpacket object from a given array of octet values,\n * assuming a 16-bit CRC.\n *\n * An exception is thrown if the given bytes are definitively invalid\n * as subpacket values with 16-bit CRC.\n *\n * @param {number[]} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {Subpacket|undefined} An instance of the appropriate Subpacket\n * subclass, or undefined if not enough octet values are given\n * to determine whether there is a valid subpacket here or not.\n */\n static parse16(octets) {\n return ZmodemSubpacket._parse(octets, 2);\n }\n\n //parse32 test:\n //[102, 105, 108, 101, 110, 97, 109, 101, 119, 105, 116, 104, 115, 112, 97, 99, 101, 115, 0, 49, 55, 49, 51, 49, 52, 50, 52, 51, 50, 49, 55, 50, 49, 48, 48, 54, 52, 52, 48, 49, 49, 55, 0, 43, 8, 63, 115, 23, 17]\n\n /**\n * Same as parse16(), but assuming a 32-bit CRC.\n *\n * @param {number[]} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {Subpacket|undefined} An instance of the appropriate Subpacket\n * subclass, or undefined if not enough octet values are given\n * to determine whether there is a valid subpacket here or not.\n */\n static parse32(octets) {\n return ZmodemSubpacket._parse(octets, 4);\n }\n\n /**\n * Not used directly.\n */\n constructor(payload) {\n this._payload = payload;\n }\n\n _encode(zencoder, crc_func) {\n return zencoder.encode( this._payload.slice(0) ).concat(\n [ Zmodem.ZMLIB.ZDLE, this._frameend_num ],\n zencoder.encode( crc_func( this._payload.concat(this._frameend_num) ) )\n );\n }\n\n //Because of ZDLE encoding, we’ll never see any of the frame-end octets\n //in a stream except as the ends of data payloads.\n static _parse(bytes_arr, crc_len) {\n\n var end_at;\n var creator;\n\n //These have to be written in decimal since they’re lookup keys.\n var _frame_ends_lookup = {\n 104: ZEndNoAckSubpacket,\n 105: ZNoEndNoAckSubpacket,\n 106: ZNoEndAckSubpacket,\n 107: ZEndAckSubpacket,\n };\n\n var zdle_at = 0;\n while (zdle_at < bytes_arr.length) {\n zdle_at = bytes_arr.indexOf( Zmodem.ZMLIB.ZDLE, zdle_at );\n if (zdle_at === -1) return;\n\n var after_zdle = bytes_arr[ zdle_at + 1 ];\n creator = _frame_ends_lookup[ after_zdle ];\n if (creator) {\n end_at = zdle_at + 1;\n break;\n }\n\n zdle_at++;\n }\n\n if (!creator) return;\n\n var frameend_num = bytes_arr[end_at];\n\n //sanity check\n if (bytes_arr[end_at - 1] !== Zmodem.ZMLIB.ZDLE) {\n throw( \"Byte before frame end should be ZDLE, not \" + bytes_arr[end_at - 1] );\n }\n\n var zdle_encoded_payload = bytes_arr.splice( 0, end_at - 1 );\n\n var got_crc = Zmodem.ZDLE.splice( bytes_arr, 2, crc_len );\n if (!got_crc) {\n //got payload but no CRC yet .. should be rare!\n\n //We have to put the ZDLE-encoded payload back before returning.\n bytes_arr.unshift.apply(bytes_arr, zdle_encoded_payload);\n\n return;\n }\n\n var payload = Zmodem.ZDLE.decode(zdle_encoded_payload);\n\n //We really shouldn’t need to do this, but just for good measure.\n //I suppose it’s conceivable this may run over UDP or something?\n Zmodem.CRC[ (crc_len === 2) ? \"verify16\" : \"verify32\" ](\n payload.concat( [frameend_num] ),\n got_crc\n );\n\n return new creator(payload, got_crc);\n }\n}\n\nclass ZEndSubpacketBase extends Zmodem.Subpacket {\n frame_end() { return true }\n}\nclass ZNoEndSubpacketBase extends Zmodem.Subpacket {\n frame_end() { return false }\n}\n\n//Used for end-of-file.\nclass ZEndNoAckSubpacket extends ZEndSubpacketBase {\n ack_expected() { return false }\n}\nZEndNoAckSubpacket.prototype._frameend_num = ZCRCE;\n\n//Used for ZFILE and ZSINIT payloads.\nclass ZEndAckSubpacket extends ZEndSubpacketBase {\n ack_expected() { return true }\n}\nZEndAckSubpacket.prototype._frameend_num = ZCRCW;\n\n//Used for ZDATA, prior to end-of-file.\nclass ZNoEndNoAckSubpacket extends ZNoEndSubpacketBase {\n ack_expected() { return false }\n}\nZNoEndNoAckSubpacket.prototype._frameend_num = ZCRCG;\n\n//only used if receiver can full-duplex\nclass ZNoEndAckSubpacket extends ZNoEndSubpacketBase {\n ack_expected() { return true }\n}\nZNoEndAckSubpacket.prototype._frameend_num = ZCRCQ;\n\nSUBPACKET_BUILDER = {\n end_no_ack: ZEndNoAckSubpacket,\n end_ack: ZEndAckSubpacket,\n no_end_no_ack: ZNoEndNoAckSubpacket,\n no_end_ack: ZNoEndAckSubpacket,\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zerror\")\n);\n\nconst LOOKS_LIKE_ZMODEM_HEADER = /\\*\\x18[AC]|\\*\\*\\x18B/;\n\nfunction _validate_number(key, value) {\n if (value < 0) {\n throw new Zmodem.Error(\"validation\", \"“\" + key + \"” (\" + value + \") must be nonnegative.\");\n }\n\n if (value !== Math.floor(value)) {\n throw new Zmodem.Error(\"validation\", \"“\" + key + \"” (\" + value + \") must be an integer.\");\n }\n}\n\n/** Validation logic for zmodem.js\n *\n * @exports Validation\n */\nZmodem.Validation = {\n\n /**\n * Validates and normalizes a set of parameters for an offer to send.\n * NOTE: This returns “mtime” as epoch seconds, not a Date. This is\n * inconsistent with the get_details() method in Session, but it’s\n * more useful for sending over the wire.\n *\n * @param {FileDetails} params - The file details. Some fairly trivial\n * variances from the specification are allowed.\n *\n * @return {FileDetails} The parameters that should be sent. `mtime`\n * will be a Date rather than a number.\n */\n offer_parameters: function offer_parameters(params) {\n if (!params.name) {\n throw new Zmodem.Error(\"validation\", \"Need “name”!\");\n }\n\n if (typeof params.name !== \"string\") {\n throw new Zmodem.Error(\"validation\", \"“name” (\" + params.name + \") must be a string!\");\n }\n\n //So that we can override values as is useful\n //without affecting the passed-in object.\n params = Object.assign({}, params);\n\n if (LOOKS_LIKE_ZMODEM_HEADER.test(params.name)) {\n console.warn(\"The filename \" + JSON.stringify(name) + \" contains characters that look like a ZMODEM header. This could corrupt the ZMODEM session; consider renaming it so that the filename doesn’t contain control characters.\");\n }\n\n if (params.serial !== null && params.serial !== undefined) {\n throw new Zmodem.Error(\"validation\", \"“serial” is meaningless.\");\n }\n\n params.serial = null;\n\n [\"size\", \"mode\", \"files_remaining\", \"bytes_remaining\"].forEach(\n function(k) {\n var ok;\n switch (typeof params[k]) {\n case \"object\":\n ok = (params[k] === null);\n break;\n case \"undefined\":\n params[k] = null;\n ok = true;\n break;\n case \"number\":\n _validate_number(k, params[k]);\n\n ok = true;\n break;\n }\n\n if (!ok) {\n throw new Zmodem.Error(\"validation\", \"“\" + k + \"” (\" + params[k] + \") must be null, undefined, or a number.\");\n }\n }\n );\n\n if (typeof params.mode === \"number\") {\n params.mode |= 0x8000;\n }\n\n if (params.files_remaining === 0) {\n throw new Zmodem.Error(\"validation\", \"“files_remaining”, if given, must be positive.\");\n }\n\n var mtime_ok;\n switch (typeof params.mtime) {\n case \"object\":\n mtime_ok = true;\n\n if (params.mtime instanceof Date) {\n\n var date_obj = params.mtime;\n params.mtime = Math.floor( date_obj.getTime() / 1000 );\n if (params.mtime < 0) {\n throw new Zmodem.Error(\"validation\", \"“mtime” (\" + date_obj + \") must not be earlier than 1970.\");\n }\n }\n else if (params.mtime !== null) {\n mtime_ok = false;\n }\n\n break;\n\n case \"undefined\":\n params.mtime = null;\n mtime_ok = true;\n break;\n case \"number\":\n _validate_number(\"mtime\", params.mtime);\n mtime_ok = true;\n break;\n }\n\n if (!mtime_ok) {\n throw new Zmodem.Error(\"validation\", \"“mtime” (\" + params.mtime + \") must be null, undefined, a Date, or a number.\");\n }\n\n return params;\n },\n};\n","export class ConnectionFactory {\n url: string;\n protocols: string[];\n\n constructor(url: string, protocols: string[]) {\n this.url = url;\n this.protocols = protocols;\n };\n\n create(): Connection {\n return new Connection(this.url, this.protocols);\n };\n}\n\nexport class Connection {\n bare: WebSocket;\n\n\n constructor(url: string, protocols: string[]) {\n this.bare = new WebSocket(url, protocols);\n }\n\n open() {\n // nothing todo for websocket\n };\n\n close() {\n this.bare.close();\n };\n\n send(data: string) {\n this.bare.send(data);\n };\n\n isOpen(): boolean {\n if (this.bare.readyState == WebSocket.CONNECTING ||\n this.bare.readyState == WebSocket.OPEN) {\n return true\n }\n return false\n }\n\n onOpen(callback: () => void) {\n this.bare.onopen = (event) => {\n callback();\n }\n };\n\n onReceive(callback: (data: string) => void) {\n this.bare.onmessage = (event) => {\n callback(event.data);\n }\n };\n\n onClose(callback: () => void) {\n this.bare.onclose = (event) => {\n callback();\n };\n };\n}\n","import * as Zmodem from 'zmodem.js/src/zmodem_browser';\n\nexport const protocols = [\"webtty\"];\n\nexport const msgInputUnknown = '0';\nexport const msgInput = '1';\nexport const msgPing = '2';\nexport const msgResizeTerminal = '3';\n\nexport const msgUnknownOutput = '0';\nexport const msgOutput = '1';\nexport const msgPong = '2';\nexport const msgSetWindowTitle = '3';\nexport const msgSetPreferences = '4';\nexport const msgSetReconnect = '5';\nexport const msgSetBufferSize = '6';\n\n\nexport interface Terminal {\n info(): { columns: number, rows: number };\n output(data: string): void;\n showMessage(message: string, timeout: number): void;\n getMessage(): HTMLElement;\n removeMessage(): void;\n setWindowTitle(title: string): void;\n setPreferences(value: object): void;\n onInput(callback: (input: string) => void): void;\n onResize(callback: (colmuns: number, rows: number) => void): void;\n reset(): void;\n deactivate(): void;\n close(): void;\n}\n\nexport interface Connection {\n open(): void;\n close(): void;\n send(data: string): void;\n isOpen(): boolean;\n onOpen(callback: () => void): void;\n onReceive(callback: (data: string) => void): void;\n onClose(callback: () => void): void;\n}\n\nexport interface ConnectionFactory {\n create(): Connection;\n}\n\n\nexport class WebTTY {\n term: Terminal;\n connectionFactory: ConnectionFactory;\n connection: Connection;\n args: string;\n authToken: string;\n reconnect: number;\n bufSize: number;\n sentry: Zmodem.Sentry;\n\n constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) {\n this.term = term;\n this.connectionFactory = connectionFactory;\n this.args = args;\n this.authToken = authToken;\n this.reconnect = -1;\n this.bufSize = 1024;\n\n this.sentry = new Zmodem.Sentry({\n 'to_terminal': (d: any) => this.term.output(d),\n 'on_detect': (detection: Zmodem.Detection) => this.zmodemDetect(detection),\n 'sender': (x: Uint8Array) => this.sendInput(x),\n 'on_retract': (x: any) => alert(\"never mind!\"),\n })\n };\n\n private zmodemDetect(detection: Zmodem.Detection) {\n var zsession = detection.confirm();\n\n if (zsession.type === \"send\") {\n this.zmodemSend(zsession);\n }\n else {\n zsession.on(\"offer\", (xfer: any) => this.zmodemOffer(xfer));\n zsession.start();\n }\n }\n\n private zmodemSend(zsession: any) {\n let dialog = this.getFileSendDialog();\n dialog.style.display = 'block';\n\n let selector = document.getElementById(\"sendFileSelector\");\n if (selector != null) {\n selector.onchange = (event) => {\n Zmodem.Browser.send_files(zsession, (event.target as HTMLInputElement).files)\n .then(() => zsession.close())\n .catch(e => console.log(e));\n dialog.style.display = 'none';\n };\n }\n }\n\n private zmodemOffer(xfer: Zmodem.Offer) {\n var dialog = this.getFileAcceptanceDialog();\n dialog.style.display = 'block';\n\n var filenameElem = document.getElementById(\"filename\");\n if (filenameElem != null) {\n filenameElem.textContent = xfer.get_details().name;\n }\n var sizeElem = document.getElementById(\"filesize\");\n if (sizeElem != null) {\n sizeElem.textContent = xfer.get_details().size;\n }\n var skipLink = document.getElementById(\"skipTransfer\");\n if (skipLink != null) {\n skipLink.onclick = (ev) => {\n xfer.skip();\n dialog.style.display = 'none';\n }\n }\n\n var acceptLink = document.getElementById(\"acceptTransfer\");\n if (acceptLink != null) {\n acceptLink.onclick = (ev) => {\n dialog.style.display = 'none';\n xfer.accept().then((payloads: any) => {\n //Now you need some mechanism to save the file.\n //An example of how you can do this in a browser:\n Zmodem.Browser.save_to_disk(\n payloads,\n xfer.get_details().name\n );\n });\n }\n }\n }\n\n private sendInput(input: string | Uint8Array) {\n let effectiveBufferSize = this.bufSize - 1;\n let dataString: string\n\n if (Array.isArray(input)) {\n dataString = String.fromCharCode.apply(null, input);\n } else {\n dataString = (input as string);\n }\n\n // Account for base64 encoding\n let maxChunkSize = Math.floor(effectiveBufferSize / 4)*3;\n\n for (let i = 0; i < Math.ceil(dataString.length / maxChunkSize); i++) {\n let inputChunk = dataString.substring(i * effectiveBufferSize, Math.min((i + 1) * effectiveBufferSize, dataString.length))\n this.connection.send(msgInput + btoa(inputChunk));\n }\n }\n\n getFileAcceptanceDialog(): HTMLElement {\n let dialog = document.getElementById(\"acceptFileDialog\");\n if (dialog == null) {\n dialog = document.createElement(\"div\");\n dialog.id = 'acceptFileDialog';\n dialog.className = 'fileDialog';\n dialog.innerHTML = '

Incoming file transfer: ( bytes)

Accept Decline';\n document.body.appendChild(dialog);\n }\n return dialog;\n }\n\n getFileSendDialog(): HTMLElement {\n let dialog = document.getElementById(\"sendFileDialog\");\n if (dialog == null) {\n dialog = document.createElement(\"div\");\n dialog.id = 'sendFileDialog';\n dialog.className = 'fileDialog';\n dialog.innerHTML = '

Remote ready to receive files.

';\n document.body.appendChild(dialog);\n }\n return dialog;\n }\n\n open() {\n let connection = this.connectionFactory.create();\n let pingTimer: NodeJS.Timeout;\n let reconnectTimeout: NodeJS.Timeout;\n this.connection = connection;\n\n const setup = () => {\n connection.onOpen(() => {\n const termInfo = this.term.info();\n\n connection.send(JSON.stringify(\n {\n Arguments: this.args,\n AuthToken: this.authToken,\n }\n ));\n\n\n const resizeHandler = (colmuns: number, rows: number) => {\n connection.send(\n msgResizeTerminal + JSON.stringify(\n {\n columns: colmuns,\n rows: rows\n }\n )\n );\n };\n\n this.term.onResize(resizeHandler);\n resizeHandler(termInfo.columns, termInfo.rows);\n\n this.term.onInput(\n (input: string) => {\n this.sendInput(input);\n }\n );\n\n pingTimer = setInterval(() => {\n connection.send(msgPing)\n }, 30 * 1000);\n\n });\n\n connection.onReceive((data) => {\n const payload = data.slice(1);\n switch (data[0]) {\n case msgOutput:\n this.sentry.consume(Uint8Array.from(atob(payload), c => c.charCodeAt(0)));\n break;\n case msgPong:\n break;\n case msgSetWindowTitle:\n this.term.setWindowTitle(payload);\n break;\n case msgSetPreferences:\n const preferences = JSON.parse(payload);\n this.term.setPreferences(preferences);\n break;\n case msgSetReconnect:\n const autoReconnect = JSON.parse(payload);\n console.log(\"Enabling reconnect: \" + autoReconnect + \" seconds\")\n this.reconnect = autoReconnect;\n break;\n case msgSetBufferSize:\n const bufSize = JSON.parse(payload);\n this.bufSize = bufSize;\n break;\n }\n });\n\n connection.onClose(() => {\n clearInterval(pingTimer);\n this.term.deactivate();\n this.term.showMessage(\"Connection Closed\", 0);\n if (this.reconnect > 0) {\n reconnectTimeout = setTimeout(() => {\n connection = this.connectionFactory.create();\n this.term.reset();\n setup();\n }, this.reconnect * 1000);\n }\n });\n\n connection.open();\n }\n\n setup();\n return () => {\n clearTimeout(reconnectTimeout);\n connection.close();\n }\n };\n};\n","import { Terminal, IDisposable } from \"xterm\";\nimport { FitAddon } from 'xterm-addon-fit';\nimport { WebLinksAddon } from 'xterm-addon-web-links';\nimport { WebglAddon } from 'xterm-addon-webgl';\n\nexport class Xterm {\n elem: HTMLElement;\n term: Terminal;\n resizeListener: () => void;\n\n message: HTMLElement;\n messageTimeout: number;\n messageTimer: NodeJS.Timeout;\n onResizeHandler: IDisposable;\n onDataHandler: IDisposable;\n fitAddOn: FitAddon;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n this.term = new Terminal();\n this.fitAddOn = new FitAddon();\n this.term.loadAddon(new WebLinksAddon());\n this.term.loadAddon(this.fitAddOn);\n\n this.message = elem.ownerDocument.createElement(\"div\");\n this.message.className = \"xterm-overlay\";\n this.messageTimeout = 2000;\n\n this.resizeListener = () => {\n this.fitAddOn.fit();\n this.term.scrollToBottom();\n this.showMessage(String(this.term.cols) + \"x\" + String(this.term.rows), this.messageTimeout);\n };\n\n this.term.open(elem);\n this.term.focus();\n this.resizeListener();\n window.addEventListener(\"resize\", () => { this.resizeListener(); });\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.term.cols, rows: this.term.rows };\n };\n\n output(data: string) {\n this.term.write(data);\n };\n\n getMessage(): HTMLElement {\n return this.message;\n }\n\n showMessage(message: string, timeout: number) {\n this.message.innerHTML = message;\n this.showMessageElem(timeout);\n }\n\n showMessageElem(timeout: number) {\n this.elem.appendChild(this.message);\n\n if (this.messageTimer) {\n clearTimeout(this.messageTimer);\n }\n if (timeout > 0) {\n this.messageTimer = setTimeout(() => {\n this.elem.removeChild(this.message);\n }, timeout);\n }\n };\n\n removeMessage(): void {\n if (this.message.parentNode == this.elem) {\n this.elem.removeChild(this.message);\n }\n }\n\n setWindowTitle(title: string) {\n document.title = title;\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key == \"EnableWebGL\" && key) {\n this.term.loadAddon(new WebglAddon());\n } else if (key == \"font-size\") {\n this.term.setOption(\"fontSize\", value[key])\n } else if (key == \"font-family\") {\n this.term.setOption(\"fontFamily\", value[key])\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.onDataHandler = this.term.onData((data) => {\n callback(data);\n });\n\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.onResizeHandler = this.term.onResize(() => {\n callback(this.term.cols, this.term.rows);\n });\n };\n\n deactivate(): void {\n this.onDataHandler.dispose();\n this.onResizeHandler.dispose();\n this.term.blur();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.clear();\n }\n\n close(): void {\n window.removeEventListener(\"resize\", this.resizeListener);\n this.term.dispose();\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { Xterm } from \"./xterm\";\nimport { Terminal, WebTTY, protocols } from \"./webtty\";\nimport { ConnectionFactory } from \"./websocket\";\n\n// @TODO remove these\ndeclare var gotty_auth_token: string;\ndeclare var gotty_term: string;\n\nconst elem = document.getElementById(\"terminal\")\n\nif (elem !== null) {\n var term: Terminal;\n term = new Xterm(elem);\n\n const httpsEnabled = window.location.protocol == \"https:\";\n const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws';\n const args = window.location.search;\n const factory = new ConnectionFactory(url, protocols);\n const wt = new WebTTY(term, factory, args, gotty_auth_token);\n const closer = wt.open();\n\n window.addEventListener(\"unload\", () => {\n closer();\n term.close();\n });\n};\n"],"sourceRoot":""} \ No newline at end of file diff --git a/js/package-lock.json b/js/package-lock.json index 906cf7a..edba5e6 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -13,7 +13,8 @@ "xterm": "^4.12.0", "xterm-addon-fit": "^0.5.0", "xterm-addon-web-links": "^0.4.0", - "xterm-addon-webgl": "^0.10.0" + "xterm-addon-webgl": "^0.10.0", + "zmodem.js": "^0.1.10" }, "devDependencies": { "license-loader": "^0.5.0", @@ -429,6 +430,21 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "dev": true }, + "node_modules/crc-32": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.1.tgz", + "integrity": "sha512-Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w==", + "dependencies": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.3.1" + }, + "bin": { + "crc32": "bin/crc32.njs" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -615,6 +631,14 @@ "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, + "node_modules/exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==", + "engines": { + "node": ">=0.8" + } + }, "node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -1217,6 +1241,17 @@ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" }, + "node_modules/printj": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/printj/-/printj-1.3.1.tgz", + "integrity": "sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg==", + "bin": { + "printj": "bin/printj.njs" + }, + "engines": { + "node": ">=0.8" + } + }, "node_modules/process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -1825,6 +1860,14 @@ "funding": { "url": "https://github.com/sponsors/sindresorhus" } + }, + "node_modules/zmodem.js": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/zmodem.js/-/zmodem.js-0.1.10.tgz", + "integrity": "sha512-Z1DWngunZ/j3BmIzSJpFZVNV73iHkj89rxXX4IciJdU9ga3nZ7rJ5LkfjV/QDsKhc7bazDWTTJCLJ+iRXD82dw==", + "dependencies": { + "crc-32": "^1.1.1" + } } }, "dependencies": { @@ -2167,6 +2210,15 @@ "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=", "dev": true }, + "crc-32": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/crc-32/-/crc-32-1.2.1.tgz", + "integrity": "sha512-Dn/xm/1vFFgs3nfrpEVScHoIslO9NZRITWGz/1E/St6u4xw99vfZzVkW0OSnzx2h9egej9xwMCEut6sqwokM/w==", + "requires": { + "exit-on-epipe": "~1.0.1", + "printj": "~1.3.1" + } + }, "cross-spawn": { "version": "7.0.3", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", @@ -2297,6 +2349,11 @@ "strip-final-newline": "^2.0.0" } }, + "exit-on-epipe": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/exit-on-epipe/-/exit-on-epipe-1.0.1.tgz", + "integrity": "sha512-h2z5mrROTxce56S+pnvAV890uu7ls7f1kEvVGJbw1OlFH3/mlJ5bkXu0KRyW94v37zzHPiUd55iLn3DA7TjWpw==" + }, "fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", @@ -2727,6 +2784,11 @@ "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz", "integrity": "sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ==" }, + "printj": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/printj/-/printj-1.3.1.tgz", + "integrity": "sha512-GA3TdL8szPK4AQ2YnOe/b+Y1jUFwmmGMMK/qbY7VcE3Z7FU8JstbKiKRzO6CIiAKPhTO8m01NoQ0V5f3jc4OGg==" + }, "process-nextick-args": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", @@ -3164,6 +3226,14 @@ "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==" + }, + "zmodem.js": { + "version": "0.1.10", + "resolved": "https://registry.npmjs.org/zmodem.js/-/zmodem.js-0.1.10.tgz", + "integrity": "sha512-Z1DWngunZ/j3BmIzSJpFZVNV73iHkj89rxXX4IciJdU9ga3nZ7rJ5LkfjV/QDsKhc7bazDWTTJCLJ+iRXD82dw==", + "requires": { + "crc-32": "^1.1.1" + } } } } diff --git a/js/package.json b/js/package.json index cbf9d5f..f6d5eba 100644 --- a/js/package.json +++ b/js/package.json @@ -15,6 +15,7 @@ "xterm": "^4.12.0", "xterm-addon-fit": "^0.5.0", "xterm-addon-web-links": "^0.4.0", - "xterm-addon-webgl": "^0.10.0" + "xterm-addon-webgl": "^0.10.0", + "zmodem.js": "^0.1.10" } } diff --git a/js/src/webtty.ts b/js/src/webtty.ts index 636f633..af0caf1 100644 --- a/js/src/webtty.ts +++ b/js/src/webtty.ts @@ -1,3 +1,5 @@ +import * as Zmodem from 'zmodem.js/src/zmodem_browser'; + export const protocols = ["webtty"]; export const msgInputUnknown = '0'; @@ -18,6 +20,7 @@ export interface Terminal { info(): { columns: number, rows: number }; output(data: string): void; showMessage(message: string, timeout: number): void; + getMessage(): HTMLElement; removeMessage(): void; setWindowTitle(title: string): void; setPreferences(value: object): void; @@ -46,10 +49,12 @@ export interface ConnectionFactory { export class WebTTY { term: Terminal; connectionFactory: ConnectionFactory; + connection: Connection; args: string; authToken: string; reconnect: number; bufSize: number; + sentry: Zmodem.Sentry; constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) { this.term = term; @@ -58,12 +63,126 @@ export class WebTTY { this.authToken = authToken; this.reconnect = -1; this.bufSize = 1024; + + this.sentry = new Zmodem.Sentry({ + 'to_terminal': (d: any) => this.term.output(d), + 'on_detect': (detection: Zmodem.Detection) => this.zmodemDetect(detection), + 'sender': (x: Uint8Array) => this.sendInput(x), + 'on_retract': (x: any) => alert("never mind!"), + }) }; + private zmodemDetect(detection: Zmodem.Detection) { + var zsession = detection.confirm(); + + if (zsession.type === "send") { + this.zmodemSend(zsession); + } + else { + zsession.on("offer", (xfer: any) => this.zmodemOffer(xfer)); + zsession.start(); + } + } + + private zmodemSend(zsession: any) { + let dialog = this.getFileSendDialog(); + dialog.style.display = 'block'; + + let selector = document.getElementById("sendFileSelector"); + if (selector != null) { + selector.onchange = (event) => { + Zmodem.Browser.send_files(zsession, (event.target as HTMLInputElement).files) + .then(() => zsession.close()) + .catch(e => console.log(e)); + dialog.style.display = 'none'; + }; + } + } + + private zmodemOffer(xfer: Zmodem.Offer) { + var dialog = this.getFileAcceptanceDialog(); + dialog.style.display = 'block'; + + var filenameElem = document.getElementById("filename"); + if (filenameElem != null) { + filenameElem.textContent = xfer.get_details().name; + } + var sizeElem = document.getElementById("filesize"); + if (sizeElem != null) { + sizeElem.textContent = xfer.get_details().size; + } + var skipLink = document.getElementById("skipTransfer"); + if (skipLink != null) { + skipLink.onclick = (ev) => { + xfer.skip(); + dialog.style.display = 'none'; + } + } + + var acceptLink = document.getElementById("acceptTransfer"); + if (acceptLink != null) { + acceptLink.onclick = (ev) => { + dialog.style.display = 'none'; + xfer.accept().then((payloads: any) => { + //Now you need some mechanism to save the file. + //An example of how you can do this in a browser: + Zmodem.Browser.save_to_disk( + payloads, + xfer.get_details().name + ); + }); + } + } + } + + private sendInput(input: string | Uint8Array) { + let effectiveBufferSize = this.bufSize - 1; + let dataString: string + + if (Array.isArray(input)) { + dataString = String.fromCharCode.apply(null, input); + } else { + dataString = (input as string); + } + + // Account for base64 encoding + let maxChunkSize = Math.floor(effectiveBufferSize / 4)*3; + + for (let i = 0; i < Math.ceil(dataString.length / maxChunkSize); i++) { + let inputChunk = dataString.substring(i * effectiveBufferSize, Math.min((i + 1) * effectiveBufferSize, dataString.length)) + this.connection.send(msgInput + btoa(inputChunk)); + } + } + + getFileAcceptanceDialog(): HTMLElement { + let dialog = document.getElementById("acceptFileDialog"); + if (dialog == null) { + dialog = document.createElement("div"); + dialog.id = 'acceptFileDialog'; + dialog.className = 'fileDialog'; + dialog.innerHTML = '

Incoming file transfer: ( bytes)

Accept Decline'; + document.body.appendChild(dialog); + } + return dialog; + } + + getFileSendDialog(): HTMLElement { + let dialog = document.getElementById("sendFileDialog"); + if (dialog == null) { + dialog = document.createElement("div"); + dialog.id = 'sendFileDialog'; + dialog.className = 'fileDialog'; + dialog.innerHTML = '

Remote ready to receive files.

'; + document.body.appendChild(dialog); + } + return dialog; + } + open() { let connection = this.connectionFactory.create(); let pingTimer: NodeJS.Timeout; let reconnectTimeout: NodeJS.Timeout; + this.connection = connection; const setup = () => { connection.onOpen(() => { @@ -93,14 +212,7 @@ export class WebTTY { this.term.onInput( (input: string) => { - // Leave room for message type id - let effectiveBufferSize = this.bufSize - 1; - - // Split input into buffer sized chunks - for (let i = 0; i < Math.ceil(input.length/effectiveBufferSize); i++) { - let inputChunk = input.substring(i*effectiveBufferSize, Math.min((i+1)*effectiveBufferSize, input.length)) - connection.send(msgInput + inputChunk); - } + this.sendInput(input); } ); @@ -114,7 +226,7 @@ export class WebTTY { const payload = data.slice(1); switch (data[0]) { case msgOutput: - this.term.output(atob(payload)); + this.sentry.consume(Uint8Array.from(atob(payload), c => c.charCodeAt(0))); break; case msgPong: break; diff --git a/js/src/xterm.ts b/js/src/xterm.ts index 13ee987..07559e1 100644 --- a/js/src/xterm.ts +++ b/js/src/xterm.ts @@ -43,11 +43,19 @@ export class Xterm { }; output(data: string) { - this.term.write(Uint8Array.from(data, c => c.charCodeAt(0))); + this.term.write(data); }; + getMessage(): HTMLElement { + return this.message; + } + showMessage(message: string, timeout: number) { - this.message.textContent = message; + this.message.innerHTML = message; + this.showMessageElem(timeout); + } + + showMessageElem(timeout: number) { this.elem.appendChild(this.message); if (this.messageTimer) { diff --git a/resources/index.css b/resources/index.css index 26c6f33..0223c3a 100644 --- a/resources/index.css +++ b/resources/index.css @@ -4,4 +4,17 @@ html, body, #terminal { width: 100%; padding: 0%; margin: 0%; +} + +.fileDialog { + position: fixed; + top: 40%; + left: 40%; + background-color: lightgray; + padding: 20px; + border: 10px; + border-color: red; + border-width: medium; + display: none; + z-index: 5; } \ No newline at end of file diff --git a/webtty/webtty.go b/webtty/webtty.go index 0ce5fea..2d65074 100644 --- a/webtty/webtty.go +++ b/webtty/webtty.go @@ -176,7 +176,13 @@ func (wt *WebTTY) handleMasterReadEvent(data []byte) error { return nil } - _, err := wt.slave.Write(data[1:]) + var decodedBuffer = make([]byte, len(data)) + n, err := base64.StdEncoding.Decode(decodedBuffer, data[1:]) + if err != nil { + return errors.Wrapf(err, "failed to write received data to slave") + } + + _, err = wt.slave.Write(decodedBuffer[:n]) if err != nil { return errors.Wrapf(err, "failed to write received data to slave") } diff --git a/webtty/webtty_test.go b/webtty/webtty_test.go index fca6a80..9923d93 100644 --- a/webtty/webtty_test.go +++ b/webtty/webtty_test.go @@ -98,8 +98,8 @@ func TestWriteFromFrontend(t *testing.T) { checkNextMsgType(t, mMaster.gottyToMasterReader, SetWindowTitle) checkNextMsgType(t, mMaster.gottyToMasterReader, SetBufferSize) - // simulate input from frontend... - message := []byte("1hello\n") // line buffered canonical mode + // simulate input from frontend... ("hello" in base64) + message := []byte("1aGVsbG8=\n") // line buffered canonical mode mMaster.masterToGottyWriter.Write(message) // ...and make sure it makes it through to the slave intact @@ -108,7 +108,7 @@ func TestWriteFromFrontend(t *testing.T) { if err != nil { t.Fatalf("Unexpected error from Write(): %s", err) } - if !bytes.Equal(readBuf[:n], message[1:]) { + if !bytes.Equal(readBuf[:n], []byte("hello")) { t.Fatalf("Unexpected message received: `%s`", readBuf[:n]) } } From 82c3acf3b15e4290d2426d59283ce0d09c0c28c2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Thu, 31 Mar 2022 10:39:29 -0700 Subject: [PATCH 11/56] Add rule to build gotty.js.map --- Makefile | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/Makefile b/Makefile index 817956e..1776901 100644 --- a/Makefile +++ b/Makefile @@ -11,7 +11,16 @@ docker: docker build . -t gotty-bash:$(VERSION) .PHONY: all docker assets -assets: bindata/static/js/gotty.js.map bindata/static/js/gotty.js bindata/static/index.html bindata/static/icon.svg bindata/static/favicon.ico bindata/static/css/index.css bindata/static/css/xterm.css bindata/static/css/xterm_customize.css bindata/static/manifest.json bindata/static/icon_192.png +assets: bindata/static/js/gotty.js.map \ + bindata/static/js/gotty.js \ + bindata/static/index.html \ + bindata/static/icon.svg \ + bindata/static/favicon.ico \ + bindata/static/css/index.css \ + bindata/static/css/xterm.css \ + bindata/static/css/xterm_customize.css \ + bindata/static/manifest.json \ + bindata/static/icon_192.png all: gotty @@ -31,7 +40,7 @@ js/node_modules/xterm/dist/xterm.css: cd js && \ npm install -bindata/static/js/gotty.js: js/src/* | js/node_modules/webpack +bindata/static/js/gotty.js.map bindata/static/js/gotty.js: js/src/* | js/node_modules/webpack cd js && \ npx webpack --mode=$(WEBPACK_MODE) From 1eed97f0f86597161b7e4b78b61a5901422e9d0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Thu, 31 Mar 2022 10:42:51 -0700 Subject: [PATCH 12/56] Make sure we read the full message --- server/ws_wrapper.go | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/server/ws_wrapper.go b/server/ws_wrapper.go index 819c393..aa3816f 100644 --- a/server/ws_wrapper.go +++ b/server/ws_wrapper.go @@ -1,7 +1,10 @@ package server import ( + "io/ioutil" + "github.com/gorilla/websocket" + "github.com/pkg/errors" ) type wsWrapper struct { @@ -28,6 +31,11 @@ func (wsw *wsWrapper) Read(p []byte) (n int, err error) { continue } - return reader.Read(p) + b, err := ioutil.ReadAll(reader) + if len(b) > len(p) { + return 0, errors.Wrapf(err, "Client message exceeded buffer size") + } + n = copy(p, b) + return n, err } } From dd3603c341fd84d5e50d2b8ff811b4246dc675b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Thu, 31 Mar 2022 10:46:59 -0700 Subject: [PATCH 13/56] Make client request base64 encoding This makes gotty-client still work. --- bindata/static/js/gotty.js | 2 +- bindata/static/js/gotty.js.map | 2 +- js/package-lock.json | 29 ----------------------------- js/src/webtty.ts | 5 ++++- webtty/codecs.go | 19 +++++++++++++++++++ webtty/message_types.go | 2 ++ webtty/webtty.go | 14 ++++++++++++-- webtty/webtty_test.go | 6 +++--- 8 files changed, 42 insertions(+), 37 deletions(-) create mode 100644 webtty/codecs.go diff --git a/bindata/static/js/gotty.js b/bindata/static/js/gotty.js index 7e291a7..1132ead 100644 --- a/bindata/static/js/gotty.js +++ b/bindata/static/js/gotty.js @@ -1,3 +1,3 @@ /*! For license information please see gotty.js.LICENSE.txt */ -(()=>{var e={619:(e,t)=>{var r;r=function(e){e.version="1.2.1";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!=typeof Int32Array?new Int32Array(t):t}(),r=function(e){var t=0,r=0,i=0,n="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(i=0;256!=i;++i)n[i]=e[i];for(i=0;256!=i;++i)for(r=e[i],t=256+i;t<4096;t+=256)r=n[t]=r>>>8^e[255&r];var o=[];for(i=1;16!=i;++i)o[i-1]="undefined"!=typeof Int32Array?n.subarray(256*i,256*i+256):n.slice(256*i,256*i+256);return o}(t),i=r[0],n=r[1],o=r[2],s=r[3],a=r[4],c=r[5],l=r[6],h=r[7],u=r[8],_=r[9],f=r[10],d=r[11],p=r[12],v=r[13],g=r[14];e.table=t,e.bstr=function(e,r){for(var i=-1^r,n=0,o=e.length;n>>8^t[255&(i^e.charCodeAt(n++))];return~i},e.buf=function(e,r){for(var y=-1^r,m=e.length-15,b=0;b>8&255]^p[e[b++]^y>>16&255]^d[e[b++]^y>>>24]^f[e[b++]]^_[e[b++]]^u[e[b++]]^h[e[b++]]^l[e[b++]]^c[e[b++]]^a[e[b++]]^s[e[b++]]^o[e[b++]]^n[e[b++]]^i[e[b++]]^t[e[b++]];for(m+=15;b>>8^t[255&(y^e[b++])];return~y},e.str=function(e,r){for(var i=-1^r,n=0,o=e.length,s=0,a=0;n>>8^t[255&(i^s)]:s<2048?i=(i=i>>>8^t[255&(i^(192|s>>6&31))])>>>8^t[255&(i^(128|63&s))]:s>=55296&&s<57344?(s=64+(1023&s),a=1023&e.charCodeAt(n++),i=(i=(i=(i=i>>>8^t[255&(i^(240|s>>8&7))])>>>8^t[255&(i^(128|s>>2&63))])>>>8^t[255&(i^(128|a>>6&15|(3&s)<<4))])>>>8^t[255&(i^(128|63&a))]):i=(i=(i=i>>>8^t[255&(i^(224|s>>12&15))])>>>8^t[255&(i^(128|s>>6&63))])>>>8^t[255&(i^(128|63&s))];return~i}},"undefined"==typeof DO_NOT_EXPORT_CRC?r(t):r({})},881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue("padding-top"))+parseInt(n.getPropertyValue("padding-bottom"))),s=i-(parseInt(n.getPropertyValue("padding-right"))+parseInt(n.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),n=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function o(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=o),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,n,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(n,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(n.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var n=function(){function e(){}return e.computeLink=function(t,r,i,n){for(var o,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(o=s.exec(c));){var _=o[1];if(!_){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(_,h+1),s.lastIndex=h+_.length,h<0)break;for(var f=h+_.length,d=l+1;f>i.cols;)f-=i.cols,d++;var p={start:{x:h+1,y:l+1},end:{x:f,y:d}};u.push({range:p,text:_,activate:n})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,n,o="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,n=a.isWrapped}while(n);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;o+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[o,s]},e}();t.LinkComputer=n}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),n=r(310),o=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var o=this._gl,s=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,u),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,2,o.FLOAT,!1,h,0),o.vertexAttribDivisor(2,1),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,o.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(3,1),o.enableVertexAttribArray(4),o.vertexAttribPointer(4,2,o.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(4,1),o.enableVertexAttribArray(5),o.vertexAttribPointer(5,2,o.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(5,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(o.createTexture()),o.bindTexture(o.TEXTURE_2D,this._atlasTexture),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,1,1,0,o.RGBA,o.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.enable(o.BLEND),o.blendFunc(o.SRC_ALPHA,o.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,n,o){this._updateCell(this._vertices.attributes,e,t,r,i,n,o)},e.prototype._updateCell=function(e,t,r,i,n,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,n,s):this._atlas.getRasterizedGlyph(i,n,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):o.fill(e,0,u,u+l-1-2)):o.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,n=e.selection.endCol-i,o=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var v=c.AttributeData.toColorRGB(d.getBgColor());f|=v[0]<<16|v[1]<<8|v[2]<<0;case 0:default:var g=this._colors.background.rgba;f|=g>>8&16711680|g>>8&65280|g>>8&255}f|=50331648}if(_&n.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var y=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f,y)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),n=r(455),o=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var o=this._gl;this._program=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,h),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,o.FLOAT,!1,s,0),o.vertexAttribDivisor(0,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,4,o.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,o=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,o*this._dimensions.scaledCellHeight,this._selectionFloat),n.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else n.fill(this._vertices.selection,0,16)}else n.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,n=0;n>24&255)/255,_=(c>>16&255)/255,f=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-o)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,_,f,1)},e.prototype._addRectangle=function(e,t,r,i,n,o,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,n,o,s){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var n=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=n},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),n=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=n},666:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var o=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),_=r(855),f=r(345),d=r(782),p=function(e){function t(t,r,i){var n=e.call(this)||this;n._terminal=t,n._colors=r,n._model=new h.RenderModel,n._workCell=new d.CellData,n._onRequestRedraw=new f.EventEmitter,n._core=n._terminal._core,n._renderLayers=[new s.LinkRenderLayer(n._core.screenElement,2,n._colors,n._core),new a.CursorRenderLayer(n._core.screenElement,3,n._colors,n._onRequestRedraw)],n.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},n._devicePixelRatio=window.devicePixelRatio,n._updateDimensions(),n._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(n._gl=n._canvas.getContext("webgl2",c),!n._gl)throw new Error("WebGL2 not supported "+n._gl);return n._core.screenElement.appendChild(n._canvas),n._rectangleRenderer=new l.RectangleRenderer(n._terminal,n._colors,n._gl,n.dimensions),n._glyphRenderer=new o.GlyphRenderer(n._terminal,n._colors,n._gl,n.dimensions),n.onCharSizeChanged(),n._isAttached=document.body.contains(n._core.screenElement),n}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(n){return n.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var n=i+r.buffer.ydisp,o=r.buffer.lines.get(n);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var n=e[1]-i.buffer.active.viewportY,o=t[1]-i.buffer.active.viewportY,s=Math.max(n,0),a=Math.min(o,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=n,this._model.selection.viewportEndRow=o,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=p},381:(e,t)=>{function r(e,t,r){var n=i(e.createShader(t));if(e.shaderSource(n,r),e.compileShader(n),e.getShaderParameter(n,e.COMPILE_STATUS))return n;console.error(e.getShaderInfoLog(n)),e.deleteShader(n)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,n){var o=i(e.createProgram());if(e.attachShader(o,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(o,i(r(e,e.FRAGMENT_SHADER,n))),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS))return o;console.error(e.getProgramInfoLog(o)),e.deleteProgram(o)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),n=r(167),o=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),o.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,n){var o={foreground:n.foreground,background:n.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:n.ansi.slice(),contrastCache:n.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),n=r(855),o=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},_={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},f=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=o.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=o.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,n.DEFAULT_COLOR,n.DEFAULT_COLOR);this._cacheMap[r]=((e={})[n.DEFAULT_COLOR]=((t={})[n.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,n=this._cacheMapCombined[e];n||(n={},this._cacheMapCombined[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,n=this._cacheMap[e];n||(n={},this._cacheMap[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+d(i[0])+d(i[1])+d(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,n,o,c,l){var h=this._getMinimumContrastCss(e,t,r,i,n,o,c,l);if(h)return h;switch(n){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&o<8&&(o+=8),this._getColorFromAnsiIndex(o).css;case 50331648:var u=s.AttributeData.toColorRGB(o);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var _=this._config.colors.background.css;return 9===_.length?_.substr(0,7):_}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,n,o,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(n,o,s,c),_=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(_){var f=a.channels.toCss(_>>24&255,_>>16&255,_>>8&255);return this._config.colors.contrastCache.setCss(e,i,f),f}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var n="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return _;var o=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),f=this._workAttributeData.getFgColorMode(),d=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var v=u;u=d,d=v;var g=f;f=p,p=g}var y=this._getBackgroundColor(p,d,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var m=o?this._config.fontWeightBold:this._config.fontWeight,b=h?"italic":"";this._tmpCtx.font=b+" "+m+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,p,d,r,f,u,s,o),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(n,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;n--){for(i=0;i=0;i--){for(n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),n=r(381),o=function(){function e(e,t,r,i,n){this._container=e,this._alpha=i,this._colors=n,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=n.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=o},461:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var o=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,n){var o=e.call(this,t,"cursor",r,!0,i)||this;return o._onRequestRefreshRowsEvent=n,o._cell=new s.CellData,o._state={x:0,y:0,isFocused:!1,style:"",width:0},o._cursorRenderers={bar:o._renderBarCursor.bind(o),block:o._renderBlockCursor.bind(o),underline:o._renderUnderlineCursor.bind(o)},o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,n=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(n,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=e.getOption("cursorStyle");return o&&"block"!==o?this._cursorRenderers[o](e,n,i,this._cell):this._renderBlurCursor(e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===n&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(o.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var o=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,n){var o=e.call(this,t,"link",r,!0,i)||this;return n.linkifier.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),n.linkifier2.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier2.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),_=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=" ":a.textContent=o,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=""}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=n+"px",t.style.top=o+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData("text/plain"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,_)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,_)},c=this;null!==(i=o.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add("xterm-cursor-pointer")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),_=r(9312),f=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),m=r(1296),b=r(7399),C=r(8460),S=r(8437),w=r(5680),E=r(3230),A=r(4725),R=r(428),L=r(8934),x=r(6465),k=r(5114),T=r(8969),O=r(4774),D=r(4269),P="undefined"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=f,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(x.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.removeEventListener("mousemove",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener("mousemove",l),n.mousemove=l):(r.removeEventListener("mousemove",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener("wheel",s,{passive:!1}),n.wheel=s):(r.removeEventListener("wheel",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.addEventListener("mousemove",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,"wheel",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),o="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,n,o){for(var s=e,a=t,c="";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-o(s,i):t;var _=i,f=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var _=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(_-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new _(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new f(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),_=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),f=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),_=this._resolveForegroundRgba(i,r,s,a),f=c.rgba.ensureContrastRatio(u,_,this._optionsService.options.minimumContrastRatio);if(f){var d={css:c.channels.toCss(f>>24&255,f>>16&255,f>>8&255),rgba:f};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,_=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new f(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&"block"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=_;var f=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,"link",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),_=r(4725),f=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,_){var f=e.call(this)||this;f._colors=t,f._screenElement=r,f._bufferService=s,f._charSizeService=u,f._optionsService=_,f._id=v++,f._onRequestRedraw=new p.EventEmitter;var d=f._optionsService.options.allowTransparency;return f._renderLayers=[o.createInstance(a.TextRenderLayer,f._screenElement,0,f._colors,d,f._id),o.createInstance(c.SelectionRenderLayer,f._screenElement,1,f._colors,f._id),o.createInstance(h.LinkRenderLayer,f._screenElement,2,f._colors,f._id,i,n),o.createInstance(l.CursorRenderLayer,f._screenElement,3,f._colors,f._id,f._onRequestRedraw)],f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._devicePixelRatio=window.devicePixelRatio,f._updateDimensions(),f.onOptionsChanged(),f}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,"selection",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var _=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,_,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),_=r(2585),f=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,"text",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var _=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,_[0],_[1]),_[1]-_[0]),u=_[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,_.IBufferService),s(6,_.IOptionsService),s(7,f.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),_={css:"rgba(0, 0, 0, 0)",rgba:0};function f(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=f;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var n=t.createElement("canvas");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=f(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),_=r(8460),f=r(4774),d=r(9631),p="xterm-dom-renderer-owner-",v="xterm-fg-",g="xterm-bg-",y="xterm-focus",m=1,b=function(e){function t(t,r,i,n,o,s,c,l,h,u){var _=e.call(this)||this;return _._colors=t,_._element=r,_._screenElement=i,_._viewportElement=n,_._linkifier=o,_._linkifier2=s,_._charSizeService=l,_._optionsService=h,_._bufferService=u,_._terminalClass=m++,_._rowElements=[],_._rowContainer=document.createElement("div"),_._rowContainer.classList.add("xterm-rows"),_._rowContainer.style.lineHeight="normal",_._rowContainer.setAttribute("aria-hidden","true"),_._refreshRowElements(_._bufferService.cols,_._bufferService.rows),_._selectionContainer=document.createElement("div"),_._selectionContainer.classList.add("xterm-selection"),_._selectionContainer.setAttribute("aria-hidden","true"),_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._updateDimensions(),_._injectCss(),_._rowFactory=c.createInstance(a.DomRendererRowFactory,document,_._colors),_._element.classList.add(p+_._terminalClass),_._screenElement.appendChild(_._rowContainer),_._screenElement.appendChild(_._selectionContainer),_._linkifier.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_._linkifier2.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier2.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new _.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement("div");return n.style.height=i*this.dimensions.actualCellHeight+"px",n.style.top=e*this.dimensions.actualCellHeight+"px",n.style.left=t*this.dimensions.actualCellWidth+"px",n.style.width=this.dimensions.actualCellWidth*(r-t)+"px",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=b},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var _=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,_){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,_)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){m=!0;var S=p.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),b=S[1]-1,y=C.getWidth()}var w=this._document.createElement("span");if(y>1&&(w.style.width=h*y+"px"),m&&(w.style.display="inline",a>=g&&a<=b&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var E=C.getFgColor(),A=C.getFgColorMode(),R=C.getBgColor(),L=C.getBgColorMode(),x=!!C.isInverse();if(x){var k=E;E=R,R=k;var T=A;A=L,L=T}switch(A){case 16777216:case 33554432:C.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add("xterm-fg-"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,"color:#"+f(E.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||x&&w.classList.add("xterm-fg-"+o.INVERTED_DEFAULT_COLOR)}switch(L){case 16777216:case 33554432:w.classList.add("xterm-bg-"+R);break;case 50331648:this._addStyle(w,"background-color:#"+f(R.toString(16),"0",6));break;case 0:default:x&&w.classList.add("xterm-bg-"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=b}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function f(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData="",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var _=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),_=0;_1)for(u=this._getJoinedRanges(i,s,o,t,n),_=0;_{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),_=r(2585),f=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var _=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});_.observe(i),l.register({dispose:function(){return _.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,_.IOptionsService),s(4,f.ICharSizeService),s(5,_.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),_=r(2585),f=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,"g"),m=function(e){function t(t,r,i,n,o,s,a,u){var _=e.call(this)||this;return _._element=t,_._screenElement=r,_._linkifier=i,_._bufferService=n,_._coreService=o,_._mouseService=s,_._optionsService=a,_._renderService=u,_._dragScrollAmount=0,_._enabled=!0,_._workCell=new l.CellData,_._mouseDownTimeStamp=0,_._oldHasSelection=!1,_._oldSelectionStart=void 0,_._oldSelectionEnd=void 0,_._onLinuxMouseSelection=_.register(new h.EventEmitter),_._onRedrawRequest=_.register(new h.EventEmitter),_._onSelectionChange=_.register(new h.EventEmitter),_._onRequestScrollLines=_.register(new h.EventEmitter),_._mouseMoveListener=function(e){return _._onMouseMove(e)},_._mouseUpListener=function(e){return _._onMouseUp(e)},_._coreService.onUserInput((function(){_.hasSelection&&_.clearSelection()})),_._trimListener=_._bufferService.buffer.lines.onTrim((function(e){return _._onTrim(e)})),_.register(_._bufferService.buffers.onBufferActivate((function(e){return _._onBufferActivate(e)}))),_.enable(),_._model=new c.SelectionModel(_._bufferService),_._activeSelectionMode=0,_}return n(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=f.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,_=0,f=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(f+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(_+=g-1,a-=g-1),a--,d--}for(;p1&&(f+=y-1,c+=y-1),c++,p++}}c++;var m=a+l-h+_,b=Math.min(this._bufferService.cols,c-a+h+u-_-f);if(t||""!==s.slice(a,c).trim()){if(r&&0===m&&32!==o.getCodePoint(0)){var C=n.lines.get(e[1]-1);if(C&&o.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;m-=w,b+=w}}}if(i&&m+b===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(b+=A.length)}}return{start:m,length:b}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,_.IBufferService),s(4,_.ICoreService),s(5,u.IMouseService),s(6,_.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=m},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),_=r(8460),f=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),m=r(5981),b=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new _.EventEmitter,r._onData=new _.EventEmitter,r._onLineFeed=new _.EventEmitter,r._onResize=new _.EventEmitter,r._onScroll=new _.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(f.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(_.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(_.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(_.forwardEvent(r._coreService.onData,r._onData)),r.register(_.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new m.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new _.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!b&&(this._logService.warn("writeSync is unreliable and will be removed soon."),b=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle="",g._iconName="",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=_.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new f.EventEmitter,g._onRequestRefreshRows=new f.EventEmitter,g._onRequestReset=new f.EventEmitter,g._onRequestSyncScrollBar=new f.EventEmitter,g._onRequestWindowsOptionsReport=new f.EventEmitter,g._onA11yChar=new f.EventEmitter,g._onA11yTab=new f.EventEmitter,g._onCursorMove=new f.EventEmitter,g._onLineFeed=new f.EventEmitter,g._onScroll=new f.EventEmitter,g._onTitleChange=new f.EventEmitter,g._onAnsiColorChange=new f.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug("Unknown CSI code: ",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug("Unknown ESC code: ",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug("Unknown EXECUTE code: ",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),g._logService.debug("Unknown DCS code: ",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:"@"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:"A"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:"B"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:"C"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:"D"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:"E"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:"F"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:"G"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:"H"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:"I"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:"L"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:"M"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:"P"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:"S"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:"T"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:"X"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:"Z"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:"`"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:"a"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:"b"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:"c"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:"d"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:"e"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:"f"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:"g"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:"h"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:"l"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:"m"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:"n"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:"r"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:"s"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:"t"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:"u"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:"7"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:"8"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:"D"},(function(){return g.index()})),g._parser.registerEscHandler({final:"E"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:"H"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:"M"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:"="},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:">"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:"c"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:"n"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"o"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"|"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"}"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"~"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return g.selectDefaultCharset()}));var m=function(e){b._parser.registerEscHandler({intermediates:"(",final:e},(function(){return g.selectCharset("("+e)})),b._parser.registerEscHandler({intermediates:")",final:e},(function(){return g.selectCharset(")"+e)})),b._parser.registerEscHandler({intermediates:"*",final:e},(function(){return g.selectCharset("*"+e)})),b._parser.registerEscHandler({intermediates:"+",final:e},(function(){return g.selectCharset("+"+e)})),b._parser.registerEscHandler({intermediates:"-",final:e},(function(){return g.selectCharset("-"+e)})),b._parser.registerEscHandler({intermediates:".",final:e},(function(){return g.selectCharset("."+e)})),b._parser.registerEscHandler({intermediates:"/",final:e},(function(){return g.selectCharset("/"+e)}))},b=this;for(var C in a.CHARSETS)m(C);return g._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error("Parsing error: ",e),e})),g._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===f.getWidth(o.x-1)&&f.setCellFromCodePoint(o.x-1,0,1,_.fg,_.bg,_.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),f=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(f.insertCells(o.x,n,o.getNullCell(_),_),2===f.getWidth(c-1)&&f.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,_.fg,_.bg,_.extended)),f.setCellFromCodePoint(o.x++,i,n,_.fg,_.bg,_.extended),n>0)for(;--n;)f.setCellFromCodePoint(o.x++,0,0,_.fg,_.bg,_.extended)}else f.getWidth(o.x-1)?f.addCodepointToCell(o.x-1,i):f.addCodepointToCell(o.x-2,i)}r-t>0&&(f.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===f.getWidth(o.x)&&!f.hasContent(o.x)&&f.setCellFromCodePoint(o.x,0,1,_.fg,_.bg,_.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new m.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=_.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=_.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=_.DEFAULT_ATTR_DATA.fg,i.bg=_.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(b[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,n=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(n),t.isIpad="iPad"===n,t.isIphone="iPhone"===n,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(n),t.isLinux=n.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=f.length-1,m=f[y];0===m&&(m=f[--y]);for(var b=l.length-d-1,C=_;b>=0;){var S=Math.min(C,m);if(l[y].copyCellsFrom(l[b],C-S,m-S,S,!0),0==(m-=S)&&(m=f[--y]),0==(C-=S)){b--;var w=Math.max(b,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var A=[],R=[];for(v=0;v=0;v--)if(T&&T.start>x+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,A.push({index:x+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++k]}else this.lines.set(v,R[x--]);var P=0;for(v=A.length-1;v>=0;v--)A[v].index+=P,this.lines.onInsertEmitter.fire(A[v]),P+=A[v].amount;var M=Math.max(0,L+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new _(this,e,t,r,i,n)},e}();t.Buffer=u;var _=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=_},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o="";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(b>u||0===h[b].getTrimmedLength());b--)m++;m>0&&(s.push(a+h.length-m),s.push(m)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;in||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=n}}if(1!==e.final.length)throw new Error("final must be a single byte");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[_](this._params));_--)if(i instanceof Promise)return this._preserveStack(3,a,_,o,l),i;_<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var f=this._escHandlers[this._collect<<8|n],d=f?f.length-1:-1;d>=0&&!0!==(i=f[d]());d--)if(i instanceof Promise)return this._preserveStack(4,f,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),_=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),f=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(_),o}return n(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(_)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=f},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator("BufferService"),t.ICoreMouseService=n.createDecorator("CoreMouseService"),t.ICoreService=n.createDecorator("CoreService"),t.ICharsetService=n.createDecorator("CharsetService"),t.IDirtyRowService=n.createDecorator("DirtyRowService"),t.IInstantiationService=n.createDecorator("InstantiationService"),t.ILogService=n.createDecorator("LogService"),t.IOptionsService=n.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=n.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()},444:e=>{"use strict";var t=e.exports;const r=[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102],i={};for(var n=0;n65535)throw"Number cannot exceed 16 bits: "+e;return[e>>8,255&e]},pack_u32_le:function(e){var t=e/65536;return[255&e,(65535&e)>>8,255&t,t>>8]},unpack_u16_be:function(e){return(e[0]<<8)+e[1]},unpack_u32_le:function(e){return e[0]+(e[1]<<8)+(e[2]<<16)+16777216*e[3]},octets_to_hex:function(e){for(var t=[],i=0;i>4],r[15&e[i]]);return t},parse_hex_octets:function(e){for(var t=new Array(e.length/2),r=0;r{e.exports.Text={Encoder:"undefined"!=typeof TextEncoder?TextEncoder:class{encode(e){e=unescape(encodeURIComponent(e));for(var t=new Array(e.length),r=0;r{"use strict";const i=r(619);var n,o=e.exports;function s(e,t){return n||function(){n=new Array(256);for(var e=0;e<256;e++){for(var t=e<<8&65535,r=0;r<8;r++)0!=(32768&t)?(t<<=1,t^=4129):t<<=1;n[e]=65535&t}}(),n[t>>8&255]^(255&t)<<8^e}function a(e,t){if(e.join()!==t.join())throw new o.Error("crc",t,e)}Object.assign(o,r(595),r(444)),o.CRC={crc16:function(e){for(var t=e[0],r=1;r>>0)},verify16:function(e,t){return a(this.crc16(e),t)},verify32:function(e,t){try{a(this.crc32(e),t)}catch(t){throw t.input=e.slice(0),t}}}},80:(e,t,r)=>{"use strict";var i,n,o=e.exports;Object.assign(o,r(560));const s=o.ZMLIB.ZDLE;o.ZDLE=class e{constructor(e){this._config={},e&&this.set_escape_ctrl_chars(!!e.escape_ctrl_chars)}set_escape_ctrl_chars(e){if("boolean"!=typeof e)throw"need boolean!";e!==this._config.escape_ctrl_chars&&(this._config.escape_ctrl_chars=e,this._setup_zdle_table())}escapes_ctrl_chars(){return!!this._config.escape_ctrl_chars}encode(e){if(!this._zdle_table)throw"No ZDLE encode table configured!";var t=this._zdle_table,r=this._lastcode,o=new ArrayBuffer(2*e.length),a=new Uint8Array(o),c=this._config.escape_ctrl_chars,l=0;for(i=0;i=0;t--)e[t]===s&&e.splice(t,2,e[t+1]-64);return e}static splice(t,r,i){var n=0;r||(r=0);for(var o=r;o{"use strict";var t=e.exports;const r={aborted:"Session aborted",peer_aborted:"Peer aborted session",already_aborted:"Session already aborted",crc:function(e,t){return this.got=e.slice(0),this.expected=t.slice(0),"CRC check failed! (got: "+e.join()+"; expected: "+t.join()+")"},validation:function(e){return e}};function i(e){const t=r[e];switch(typeof t){case"string":return t;case"function":var i=[].slice.call(arguments).slice(1);return t.apply(this,i)}return null}t.Error=class extends Error{constructor(e){super();var t=i.apply(this,arguments);t?(this.type=e,this.message=t):this.message=e}}},547:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(444),r(80),r(560),r(724),r(595));const n="*".charCodeAt(0),o="A".charCodeAt(0),s="B".charCodeAt(0),a="C".charCodeAt(0),c=[13,10],l=c.slice(0).concat([i.ZMLIB.XON]),h=[n,n,i.ZMLIB.ZDLE,s],u=[n,i.ZMLIB.ZDLE,o],_=[n,i.ZMLIB.ZDLE,a];i.Header=class{static trim_leading_garbage(e){var t,r,o=[];e:for(;e.length&&!r;){var s=e.indexOf(n);if(-1===s){t=!0;break e}if(o.push.apply(o,e.splice(0,s)),e.length<2)break e;if(e[1]===n)if(e.length>8,0,r]}get_buffer_size(){return i.ENCODELIB.unpack_u16_be(this._bytes4.slice(0,2))||void 0}can_full_duplex(){return!!(this._bytes4[3]&d.CANFDX)}can_overlap_io(){return!!(this._bytes4[3]&d.CANOVIO)}can_break(){return!!(this._bytes4[3]&d.CANBRK)}can_fcs_32(){return!!(this._bytes4[3]&d.CANFC32)}escape_ctrl_chars(){return!!(this._bytes4[3]&d.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&d.ESC8)}}const v={ESCCTL:64,ESC8:128};class g extends i.Header{constructor(e,t){super();var r=0;if(e.forEach((function(e){r|=function(e){if(!v[e])throw"Invalid ZSINIT flag: "+e;return v[e]}(e)})),this._bytes4=[0,0,0,r],t){if(t.length>31)throw"Attn sequence must be <= 31 bytes";if(t.some((function(e){return e>255})))throw"Attn sequence ("+t+") must be <256";this._data=t.concat([0])}}escape_ctrl_chars(){return!!(this._bytes4[3]&v.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&v.ESC8)}}class y extends i.Header{constructor(e){super(),e&&(this._bytes4=e.slice())}}y.prototype._hex_header_ending=c;const m={extended:{sparse:64},transport:[void 0,"compress","encrypt","rle"],management:[void 0,"newer_or_longer","crc","append","clobber","newer","mtime_or_length","protect","rename"],conversion:[void 0,"binary","text","resume"]},b=["extended","transport","management","conversion"];class C extends i.Header{get_options(){var e={sparse:!!(64&this._bytes4[0])},t=this._bytes4.slice(0);return b.forEach((function(r,i){if(m[r]instanceof Array)"management"===r&&(e.skip_if_absent=!!(128&t[i]),t[i]&=31),e[r]=m[r][t[i]];else for(var n in m[r])e[n]=!!(t[i]&m[r][n]),e[n]&&(t[i]^=m[r][n]);!e[r]&&t[i]&&(e[r]="unknown:"+t[i])})),e}}class S extends i.Header{}class w extends i.Header{}class E extends i.Header{}class A extends i.Header{}E.prototype._hex_header_ending=c;class R extends i.Header{constructor(e){super(),this._bytes4=i.ENCODELIB.pack_u32_le(e)}get_offset(){return i.ENCODELIB.unpack_u32_le(this._bytes4)}}class L extends R{}class x extends R{}class k extends R{}const T=[[f,"ZRQINIT"],[p,"ZRINIT"],[g,"ZSINIT"],[y,"ZACK"],[C,"ZFILE"],[S,"ZSKIP"],void 0,[w,"ZABORT"],[E,"ZFIN"],[L,"ZRPOS"],[x,"ZDATA"],[k,"ZEOF"],[A,"ZFERR"],void 0,void 0,void 0,void 0,void 0,void 0,void 0];for(var O={},D=0;D11&&(t="Invalid hex header - no LF detected within 12 bytes!")}i.Header.parse_hex=F},560:e=>{"use strict";e.exports.ZMLIB={ZDLE:24,XON:17,XOFF:19,ABORT_SEQUENCE:[24,24,24,24,24],strip_ignored_bytes:function(e){for(var t=e.length-1;t>=0;t--)switch(e[t]){case 17:case 145:case 19:case 147:e.splice(t,1);continue}return e},find_subarray:function(e,t){var r,i=0;Date.now();e:for(;-1!==i&&-1!==(i=e.indexOf(t[0],i));){for(r=1;r{Object.assign(e.exports,r(963))},597:(e,t,r)=>{"use strict";var i=e.exports;function n(e){if(e.aborted())throw new i.Error("aborted")}window.Zmodem=i,Object.assign(i,r(357)),i.Browser={send_files:function(e,t,r){r||(r={});for(var i=[],o=0,s=t.length-1;s>=0;s--){var a=t[s];o+=a.size,i[s]={obj:a,name:a.name,size:a.size,mtime:new Date(a.lastModified),files_remaining:t.length-s,bytes_remaining:o}}var c=0;return function t(){var o=i[c];return o?(c++,e.send_offer(o).then((function(i){return r.on_offer_response&&r.on_offer_response(o.obj,i),void 0===i?t():new Promise((function(s){var a,c=new FileReader;c.onerror=function(e){throw console.error("file read error",e),"File read error: "+e},c.onprogress=function(t){t.target.result&&(a=new Uint8Array(t.target.result,i.get_offset()),n(e),i.send(a),r.on_progress&&r.on_progress(o.obj,i,a))},c.onload=function(c){a=new Uint8Array(c.target.result,i,a),n(e),i.end(a).then((function(){r.on_progress&&a.length&&r.on_progress(o.obj,i,a),r.on_file_complete&&r.on_file_complete(o.obj,i),s(t())}))},c.readAsArrayBuffer(o.obj)}))}))):Promise.resolve()}()},save_to_disk:function(e,t){var r=new Blob(e),i=URL.createObjectURL(r),n=document.createElement("a");n.style.display="none",n.href=i,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}}},963:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(560),r(246));const n=[42,42,24,66,48],o=["to_terminal","on_detect","on_retract","sender"];class s{constructor(e,t,r,i){this._confirmer=t,this._denier=r,this._is_valid=i,this._session_type=e}confirm(){return this._confirmer.apply(this,arguments)}deny(){return this._denier.apply(this,arguments)}is_valid(){return this._is_valid.apply(this,arguments)}get_session_role(){return this._session_type}}i.Sentry=class{constructor(e){if(!e)throw"Need options!";var t=this;o.forEach((function(r){if(!e[r])throw"Need “"+r+"”!";t["_"+r]=e[r]})),this._cache=[]}_after_session_end(){this._zsession=null}consume(e){if(e instanceof Array||(e=Array.prototype.slice.call(new Uint8Array(e))),this._zsession){var t=this._zsession;if(t.consume(e),!t.has_ended())return;e="receive"===t.type?t.get_trailing_bytes():[]}var r=this._parse(e),i=e;if(r){!!this._parsed_session&&(this._parsed_session.type===r.type&&(i=[]),this._on_retract()),this._parsed_session=r;var n=this;this._on_detect(new s(r.type,(function(){if(!this.is_valid())throw"Stale ZMODEM session!";return r.on("garbage",n._to_terminal),r.on("session_end",n._after_session_end.bind(n)),r.set_sender(n._sender),delete n._parsed_session,n._zsession=r}),this._send_abort.bind(this),(function(){return n._parsed_session===r})))}else{var o=this._parsed_session;this._parsed_session=null,o&&(1===i.length&&67===i[0]&&this._send_abort(),this._on_retract())}this._to_terminal(i)}get_confirmed_session(){return this._zsession||null}_send_abort(){this._sender(i.ZMLIB.ABORT_SEQUENCE)}_parse(e){var t=this._cache;for(t.push.apply(t,e);;){let e,r=i.ZMLIB.find_subarray(t,n);if(-1===r)break;t.splice(0,r);try{e=i.Session.parse(t)}catch(e){}if(!e)break;return 1===t.length&&t[0]===i.ZMLIB.XON&&t.shift(),t.length?null:e}return t.splice(21),null}}},246:(e,t,r)=>{"use strict";var i=e.exports;i.DEBUG=!0,Object.assign(i,r(444),r(956),r(80),r(560),r(547),r(270),r(792),r(595));const n=["CANFDX","CANOVIO","CANFC32"],o="spool_uint8array",s=[79,79],a=i.ZMLIB.ABORT_SEQUENCE;class c{constructor(){this._on_evt={},this._evt_once_index={}}_Add_event(e){this._on_evt[e]=[],this._evt_once_index[e]=[]}_get_evt_queue(e){if(!this._on_evt[e])throw"Bad event: "+e;return this._on_evt[e]}on(e,t){return this._get_evt_queue(e).push(t),this}off(e,t){var r=this._get_evt_queue(e);if(t){var i=r.indexOf(t);if(-1===i)throw"“"+t+"” is not in the “"+e+"” queue.";r.splice(i,1)}else r.pop();return this}_Happen(e){var t=this._get_evt_queue(e),r=Array.apply(null,arguments);r.shift();var i=this;return t.forEach((function(e){e.apply(i,r)})),t.length}}i.Session=class extends c{static parse(e){var t;try{t=i.Header.parse_hex(e)}catch(e){return}if(t)switch(t.NAME){case"ZRQINIT":return new i.Session.Receive;case"ZRINIT":return new i.Session.Send(t)}}set_sender(e){return this._sender=e,this}has_ended(){return this._has_ended()}consume(e){if(this._before_consume(e),this._aborted)throw new i.Error("already_aborted");e.length&&(this._strip_and_enqueue_input(e),this._check_for_abort_sequence(e)||this._consume_first())}aborted(){return!!this._aborted}constructor(){super(),this._config={},this._input_buffer=[],this._Add_event("receive"),this._Add_event("garbage"),this._Add_event("session_end")}get_role(){return this.type}_trim_leading_garbage_until_header(){var e=i.Header.trim_leading_garbage(this._input_buffer);e.length&&0===this._Happen("garbage",e)&&console.debug("Garbage: ",String.fromCharCode.apply(String,e),e)}_parse_and_consume_header(){this._trim_leading_garbage_until_header();var e=i.Header.parse(this._input_buffer);if(e)return i.DEBUG&&this._log_header("RECEIVED HEADER",e[0]),this._consume_header(e[0]),this._last_header_name=e[0].NAME,this._last_header_crc=e[1],e[0]}_log_header(e,t){console.debug(this.type,e,t.NAME,t._bytes4.join())}_consume_header(e){this._on_receive(e);var t=this._next_header_handler&&this._next_header_handler[e.NAME];if(!t)throw console.error("Unhandled header!",e,this._next_header_handler),new i.Error("Unhandled header: "+e.NAME);this._next_header_handler=null,t.call(this,e)}_check_for_abort_sequence(){var e=i.ZMLIB.find_subarray(this._input_buffer,a);if(-1!==e)throw this._input_buffer.splice(0,e+a.length),this._aborted=!0,this._on_session_end(),new i.Error("peer_aborted")}_send_header(e){if(!this._sender)throw"Need sender!";var t=Array.apply(null,arguments),r=this._create_header_bytes(t);i.DEBUG&&this._log_header("SENDING HEADER",r[1]),this._sender(r[0]),this._last_sent_header=r[1]}_create_header_bytes(e){var t=i.Header.build.apply(i.Header,e);return[t[this._get_header_formatter(e[0])](this._zencoder),t]}_strip_and_enqueue_input(e){i.ZMLIB.strip_ignored_bytes(e),this._input_buffer.push.apply(this._input_buffer,e)}abort(){this._sender(a.concat([8,8,8,8,8])),this._aborted=!0,this._sender=function(){throw new i.Error("already_aborted")},this._on_session_end()}_on_session_end(){this._Happen("session_end")}_on_receive(e){this._Happen("receive",e)}_before_consume(){}},i.Session.Receive=class extends i.Session{constructor(){super(),this._Add_event("offer"),this._Add_event("data_in"),this._Add_event("file_end")}_before_consume(e){if(this._bytes_after_OO)throw"PROTOCOL: Session is completed!";this._bytes_being_consumed=e}get_trailing_bytes(){if(this._aborted)return[];if(!this._bytes_after_OO)throw"PROTOCOL: Session is not completed!";return this._bytes_after_OO.slice(0)}_has_ended(){return this.aborted()||!!this._bytes_after_OO}_get_header_formatter(){return"to_hex"}_parse_and_consume_subpacket(){var e;e=16===this._last_header_crc?"parse16":"parse32";var t=i.Subpacket[e](this._input_buffer);return t&&(i.DEBUG&&console.debug(this.type,"RECEIVED SUBPACKET",t),this._consume_data(t),t.frame_end()&&(this._next_subpacket_handler=null)),t}_consume_first(){if(this._got_ZFIN){if(this._input_buffer.length<2)return;if(0===i.ZMLIB.find_subarray(this._input_buffer,s))return this._bytes_after_OO=(e=this._bytes_being_consumed.slice(0),0===i.ZMLIB.find_subarray(e,s)?e.splice(0,s.length):e[0]===s[s.length-1]&&e.splice(0,1),e),void this._on_session_end();throw"PROTOCOL: Only thing after ZFIN should be “OO” (79,79), not: "+this._input_buffer.join()}var e,t;do{t=this._next_subpacket_handler?this._parse_and_consume_subpacket():this._parse_and_consume_header()}while(t&&this._input_buffer.length)}_consume_data(e){if(this._on_receive(e),!this._next_subpacket_handler)throw"PROTOCOL: Received unexpected data packet after "+this._last_header_name+" header: "+e.get_payload().join();this._next_subpacket_handler.call(this,e)}_octets_to_string(e){return this._textdecoder||(this._textdecoder=new i.Text.Decoder),this._textdecoder.decode(new Uint8Array(e))}_consume_ZFILE_data(e,t){if(this._file_info)throw"PROTOCOL: second ZFILE data subpacket received";var r=t.get_payload(),i=r.indexOf(0),n=this._octets_to_string(r.slice(0,i)),o=this._octets_to_string(r.slice(1+i)).split(" "),s=o[1]&&parseInt(o[1],8)||void 0;s&&(s=new Date(1e3*s)),this._file_info={name:n,size:o[0]?parseInt(o[0],10):null,mtime:s||null,mode:o[2]&&parseInt(o[2],8)||null,serial:o[3]&&parseInt(o[3],10)||null,files_remaining:o[4]?parseInt(o[4],10):null,bytes_remaining:o[5]?parseInt(o[5],10):null};var a=new u(e.get_options(),this._file_info,this._accept.bind(this),this._skip.bind(this));this._current_transfer=a}_consume_ZDATA_data(e){if(!this._accepted_offer)throw"PROTOCOL: Received data without accepting!";if(!this._offset_ok)return console.warn("offset not ok!"),void _send_ZRPOS();this._file_offset+=e.get_payload().length,this._on_data_in(e),e.ack_expected()&&!e.frame_end()&&this._send_header("ZACK",i.ENCODELIB.pack_u32_le(this._file_offset))}_make_promise_for_between_files(){var e=this;return new Promise((function(t){var r={ZFILE:function(e){this._next_subpacket_handler=function(r){this._next_subpacket_handler=null,this._consume_ZFILE_data(e,r),this._Happen("offer",this._current_transfer),t(this._current_transfer)}},ZSINIT:function(t){e._next_subpacket_handler=function(t){e._next_subpacket_handler=null,e._consume_ZSINIT_data(t),e._send_header("ZACK"),e._next_header_handler=r}},ZFIN:function(){this._consume_ZFIN(),t()}};e._next_header_handler=r}))}_consume_ZSINIT_data(e){this._attn=e.get_payload()}start(){if(this._started)throw"Already started!";this._started=!0;var e=this._make_promise_for_between_files();return this._send_ZRINIT(),e}_accept(e){this._accepted_offer=!0,this._file_offset=e||0;var t=this,r=new Promise((function(e){t._next_header_handler={ZDATA:function(t){this._consume_ZDATA(t),this._next_subpacket_handler=this._consume_ZDATA_data,this._next_header_handler={ZEOF:function(t){this._consume_ZEOF(t),this._next_subpacket_handler=null,this._make_promise_for_between_files(),e(),this._send_ZRINIT()}}}}}));return this._send_ZRPOS(),r}_skip(){var e=this._make_promise_for_between_files();if(this._accepted_offer){if(!this._current_transfer)return;var t=function(){this._accepted_offer=!1,this._next_subpacket_handler=null,this._make_promise_for_between_files()}.bind(this);Object.assign(this._next_header_handler,{ZEOF:t,ZDATA:function(){t(),this._next_header_handler.ZEOF=t}.bind(this)})}return this._file_info=null,this._send_header("ZSKIP"),e}_send_ZRINIT(){this._send_header("ZRINIT",n)}_consume_ZFIN(){this._got_ZFIN=!0,this._send_header("ZFIN")}_consume_ZEOF(e){if(this._file_offset!==e.get_offset())throw"ZEOF offset mismatch; unimplemented (local: "+this._file_offset+"; ZEOF: "+e.get_offset()+")";this._on_file_end(),this._file_info=null,this._current_transfer=null}_consume_ZDATA(e){if(this._file_offset!==e.get_offset())throw"Error correction is unimplemented.";this._offset_ok=!0}_send_ZRPOS(){this._send_header("ZRPOS",this._file_offset)}_on_file_end(){this._Happen("file_end"),this._current_transfer&&(this._current_transfer._Happen("complete"),this._current_transfer=null)}_on_data_in(e){this._Happen("data_in",e),this._current_transfer&&this._current_transfer._Happen("input",e.get_payload())}},Object.assign(i.Session.Receive.prototype,{type:"receive"});var l={get_details:function(){return Object.assign({},this._file_info)},get_options:function(){return Object.assign({},this._zfile_opts)},get_offset:function(){return this._file_offset}};class h{constructor(e,t,r,i){this._file_info=e,this._file_offset=t||0,this._send=r,this._end=i}send(e){this._send(e),this._file_offset+=e.length}end(e){var t=this._end(e||[]);return e&&(this._file_offset+=e.length),t}}Object.assign(h.prototype,l);class u extends c{constructor(e,t,r,i){super(),this._zfile_opts=e,this._file_info=t,this._accept_func=r,this._skip_func=i,this._Add_event("input"),this._Add_event("complete"),this.on("input",this._input_handler)}_verify_not_skipped(){if(this._skipped)throw new i.Error("Already skipped!")}skip(){return this._verify_not_skipped(),this._skipped=!0,this._skip_func.apply(this,arguments)}accept(e){if(this._verify_not_skipped(),this._accepted)throw new i.Error("Already accepted!");switch(this._accepted=!0,e||(e={}),this._file_offset=e.offset||0,e.on_input){case null:case void 0:case"spool_array":case o:this._spool=[];break;default:if("function"!=typeof e.on_input)throw"Invalid “on_input”: "+e.on_input}return this._input_handler_mode=e.on_input||o,this._accept_func(this._file_offset).then(this._get_spool.bind(this))}_input_handler(e){if(this._file_offset+=e.length,"function"==typeof this._input_handler_mode)this._input_handler_mode(e);else{if(this._input_handler_mode===o)e=new Uint8Array(e);else if("spool_array"!==this._input_handler_mode)throw new i.Error("WTF?? _input_handler_mode = "+this._input_handler_mode);this._spool.push(e)}}_get_spool(){return this._spool}}Object.assign(u.prototype,l);const _={ZFILE:!0,ZDATA:!0};i.Session.Send=class extends i.Session{constructor(e){if(super(),!e)throw"Need first header!";if("ZRINIT"!==e.NAME)throw"First header should be ZRINIT, not "+e.NAME;this._last_header_name="ZRINIT",this._subpacket_encode_func="encode16",this._zencoder=new i.ZDLE,this._consume_ZRINIT(e),this._file_offset=0,this._start_keepalive_on_set_sender=!0}set_sender(e){return super.set_sender(e),this._start_keepalive_on_set_sender&&(this._start_keepalive_on_set_sender=!1,this._start_keepalive()),this}_get_header_formatter(e){return _[e]?"to_binary16":"to_hex"}_start_keepalive(){if(!this._keepalive_promise){var e=this;this._keepalive_promise=new Promise((function(t){e._keepalive_timeout=setTimeout(t,5e3)})).then((function(){e._next_header_handler={ZACK:function(){e._got_ZSINIT_ZACK=!0}},e._send_ZSINIT(),e._keepalive_promise=null,e._start_keepalive()}))}}_stop_keepalive(){this._keepalive_promise&&(clearTimeout(this._keepalive_timeout),this._keep_alive_promise=null)}_send_ZSINIT(){var e=[];this._zencoder.escapes_ctrl_chars()&&e.push("ESCCTL"),this._send_header_and_data(["ZSINIT",e],[0],"end_ack")}_consume_ZRINIT(e){if(this._last_ZRINIT=e,e.get_buffer_size())throw"Buffer size ("+e.get_buffer_size()+") is unsupported!";if(!e.can_full_duplex())throw"Half-duplex I/O is unsupported!";if(!e.can_overlap_io())throw"Non-overlap I/O is unsupported!";if(e.escape_8th_bit())throw"8-bit escaping is unsupported!";this._zencoder.set_escape_ctrl_chars(!0),e.escape_ctrl_chars()||console.debug("Peer didn’t request escape of all control characters. Will send ZSINIT to force recognition of escaped control characters.")}_ensure_receiver_escapes_ctrl_chars(){var e;if(this._last_ZRINIT.escape_ctrl_chars()||this._got_ZSINIT_ZACK)e=Promise.resolve();else{var t=this;e=new Promise((function(e){t._next_header_handler={ZACK:t=>{e()}},t._send_ZSINIT()}))}return e}_convert_params_to_offer_payload_array(e){var t=(e=i.Validation.offer_parameters(e)).name+"\0",r=[(e.size||0).toString(10),e.mtime?e.mtime.toString(8):"0",e.mode?(32768|e.mode).toString(8):"0","0"];return e.files_remaining&&(r.push(e.files_remaining),e.bytes_remaining&&r.push(e.bytes_remaining)),t+=r.join(" "),this._string_to_octets(t)}send_offer(e){if(i.DEBUG&&console.debug("SENDING OFFER",e),!e)throw"need file params!";if(this._sending_file)throw"Already sending file!";var t=this._convert_params_to_offer_payload_array(e);this._stop_keepalive();var r=this;function n(){r._next_header_handler={ZRPOS:function(e){i.DEBUG&&console.warn("Mid-transfer ZRPOS … implementation error?"),n()}}}return this._ensure_receiver_escapes_ctrl_chars().then((function(){var i=new Promise((function(t){r._next_header_handler={ZSKIP:function(){r._start_keepalive(),t()},ZRPOS:function(i){r._sending_file=!0,n(),t(new h(e,i.get_offset(),r._send_interim_file_piece.bind(r),r._end_file.bind(r)))}}}));return r._send_header_and_data(["ZFILE"],t,"end_ack"),delete r._sent_ZDATA,i}))}_send_header_and_data(e,t,r){var n=this._create_header_bytes(e),o=this._build_subpacket_bytes(t,r);n[0].push.apply(n[0],o),i.DEBUG&&(this._log_header("SENDING HEADER",n[1]),console.debug(this.type,"-- HEADER PAYLOAD:",r,o.length)),this._sender(n[0]),this._last_sent_header=n[1]}_build_subpacket_bytes(e,t){return i.Subpacket.build(e,t)[this._subpacket_encode_func](this._zencoder)}_build_and_send_subpacket(e,t){this._sender(this._build_subpacket_bytes(e,t))}_string_to_octets(e){this._textencoder||(this._textencoder=new i.Text.Encoder);var t=this._textencoder.encode(e);return Array.prototype.slice.call(t)}_send_interim_file_piece(e){return this._send_file_part(e,"no_end_no_ack"),Promise.resolve()}_ensure_we_are_sending(){if(!this._sending_file)throw"Not sending a file currently!"}_end_file(e){this._ensure_we_are_sending(),this._send_file_part(e,"end_no_ack");var t=this,r=new Promise((function(e){t._sending_file=!1,t._prepare_to_receive_ZRINIT(e)}));return this._send_header("ZEOF",this._file_offset),this._file_offset=0,r}_prepare_to_receive_ZRINIT(e){this._next_header_handler={ZRINIT:function(t){this._consume_ZRINIT(t),e&&e()}}}close(){var e="ZRINIT"===this._last_header_name;if(e||(e="ZSKIP"===this._last_header_name),e||(e="ZSINIT"===this._last_sent_header.name&&"ZACK"===this._last_header_name),!e)throw"Can’t close; last received header was “"+this._last_header_name+"”";var t=this,r=new Promise((function(e,r){t._next_header_handler={ZFIN:function(){t._sender(s),t._sent_OO=!0,t._on_session_end(),e()}}}));return this._send_header("ZFIN"),r}_has_ended(){return this.aborted()||!!this._sent_OO}_send_file_part(e,t){this._sent_ZDATA||(this._send_header("ZDATA",this._file_offset),this._sent_ZDATA=!0);for(var r=0,i=e.length;;){var n=Math.min(r+8192,i)-r,o=n+r>=i,s=e.slice(r,r+n);if(s instanceof Array||(s=Array.prototype.slice.call(s)),this._build_and_send_subpacket(s,o?t:"no_end_no_ack"),this._file_offset+=n,(r+=n)>=i)break}}_consume_first(){if(!this._parse_and_consume_header()&&"67"===this._input_buffer.join())throw"Receiver has fallen back to YMODEM."}_on_session_end(){this._stop_keepalive(),super._on_session_end()}},Object.assign(i.Session.Send.prototype,{type:"send"})},270:(e,t,r)=>{"use strict";var i,n=e.exports;Object.assign(n,r(724),r(80),r(560),r(595)),n.Subpacket=class e{static build(e,t){var r=i[t];if(!r)throw"No subpacket type “"+t+"” is defined! Try one of: "+Object.keys(i).join(", ");return new r(e)}encode16(e){return this._encode(e,n.CRC.crc16)}encode32(e){return this._encode(e,n.CRC.crc32)}get_payload(){return this._payload}static parse16(t){return e._parse(t,2)}static parse32(t){return e._parse(t,4)}constructor(e){this._payload=e}_encode(e,t){return e.encode(this._payload.slice(0)).concat([n.ZMLIB.ZDLE,this._frameend_num],e.encode(t(this._payload.concat(this._frameend_num))))}static _parse(e,t){for(var r,i,o={104:a,105:l,106:h,107:c},s=0;s{"use strict";var i=e.exports;Object.assign(i,r(595));const n=/\*\x18[AC]|\*\*\x18B/;function o(e,t){if(t<0)throw new i.Error("validation","“"+e+"” ("+t+") must be nonnegative.");if(t!==Math.floor(t))throw new i.Error("validation","“"+e+"” ("+t+") must be an integer.")}i.Validation={offer_parameters:function(e){if(!e.name)throw new i.Error("validation","Need “name”!");if("string"!=typeof e.name)throw new i.Error("validation","“name” ("+e.name+") must be a string!");if(e=Object.assign({},e),n.test(e.name)&&console.warn("The filename "+JSON.stringify(name)+" contains characters that look like a ZMODEM header. This could corrupt the ZMODEM session; consider renaming it so that the filename doesn’t contain control characters."),null!==e.serial&&void 0!==e.serial)throw new i.Error("validation","“serial” is meaningless.");if(e.serial=null,["size","mode","files_remaining","bytes_remaining"].forEach((function(t){var r;switch(typeof e[t]){case"object":r=null===e[t];break;case"undefined":e[t]=null,r=!0;break;case"number":o(t,e[t]),r=!0}if(!r)throw new i.Error("validation","“"+t+"” ("+e[t]+") must be null, undefined, or a number.")})),"number"==typeof e.mode&&(e.mode|=32768),0===e.files_remaining)throw new i.Error("validation","“files_remaining”, if given, must be positive.");var t;switch(typeof e.mtime){case"object":if(t=!0,e.mtime instanceof Date){var r=e.mtime;if(e.mtime=Math.floor(r.getTime()/1e3),e.mtime<0)throw new i.Error("validation","“mtime” ("+r+") must not be earlier than 1970.")}else null!==e.mtime&&(t=!1);break;case"undefined":e.mtime=null,t=!0;break;case"number":o("mtime",e.mtime),t=!0}if(!t)throw new i.Error("validation","“mtime” ("+e.mtime+") must be null, undefined, a Date, or a number.");return e}}},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0;var i=r(597);t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var n=function(){function e(e,t,r,n){var o=this;this.term=e,this.connectionFactory=t,this.args=r,this.authToken=n,this.reconnect=-1,this.bufSize=1024,this.sentry=new i.Sentry({to_terminal:function(e){return o.term.output(e)},on_detect:function(e){return o.zmodemDetect(e)},sender:function(e){return o.sendInput(e)},on_retract:function(e){return alert("never mind!")}})}return e.prototype.zmodemDetect=function(e){var t=this,r=e.confirm();"send"===r.type?this.zmodemSend(r):(r.on("offer",(function(e){return t.zmodemOffer(e)})),r.start())},e.prototype.zmodemSend=function(e){var t=this.getFileSendDialog();t.style.display="block";var r=document.getElementById("sendFileSelector");null!=r&&(r.onchange=function(r){i.Browser.send_files(e,r.target.files).then((function(){return e.close()})).catch((function(e){return console.log(e)})),t.style.display="none"})},e.prototype.zmodemOffer=function(e){var t=this.getFileAcceptanceDialog();t.style.display="block";var r=document.getElementById("filename");null!=r&&(r.textContent=e.get_details().name);var n=document.getElementById("filesize");null!=n&&(n.textContent=e.get_details().size);var o=document.getElementById("skipTransfer");null!=o&&(o.onclick=function(r){e.skip(),t.style.display="none"});var s=document.getElementById("acceptTransfer");null!=s&&(s.onclick=function(r){t.style.display="none",e.accept().then((function(t){i.Browser.save_to_disk(t,e.get_details().name)}))})},e.prototype.sendInput=function(e){var r,i=this.bufSize-1;r=Array.isArray(e)?String.fromCharCode.apply(null,e):e;for(var n=3*Math.floor(i/4),o=0;oIncoming file transfer: ( bytes)

Accept Decline',document.body.appendChild(e)),e},e.prototype.getFileSendDialog=function(){var e=document.getElementById("sendFileDialog");return null==e&&((e=document.createElement("div")).id="sendFileDialog",e.className="fileDialog",e.innerHTML='

Remote ready to receive files.

',document.body.appendChild(e)),e},e.prototype.open=function(){var e,r,i=this,n=this.connectionFactory.create();this.connection=n;var o=function(){n.onOpen((function(){var r=i.term.info();n.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var o=function(e,r){n.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(o),o(r.columns,r.rows),i.term.onInput((function(e){i.sendInput(e)})),e=setInterval((function(){n.send(t.msgPing)}),3e4)})),n.onReceive((function(e){var r=e.slice(1);switch(e[0]){case t.msgOutput:i.sentry.consume(Uint8Array.from(atob(r),(function(e){return e.charCodeAt(0)})));break;case t.msgPong:break;case t.msgSetWindowTitle:i.term.setWindowTitle(r);break;case t.msgSetPreferences:var n=JSON.parse(r);i.term.setPreferences(n);break;case t.msgSetReconnect:var o=JSON.parse(r);console.log("Enabling reconnect: "+o+" seconds"),i.reconnect=o;break;case t.msgSetBufferSize:var s=JSON.parse(r);i.bufSize=s}})),n.onClose((function(){clearInterval(e),i.term.deactivate(),i.term.showMessage("Connection Closed",0),i.reconnect>0&&(r=setTimeout((function(){n=i.connectionFactory.create(),i.term.reset(),o()}),1e3*i.reconnect))})),n.open()};return o(),function(){clearTimeout(r),n.close()}},e}();t.WebTTY=n},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),n=r(881),o=r(962),s=r(445),a=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new n.FitAddon,this.term.loadAddon(new o.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()}))}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(e)},e.prototype.getMessage=function(){return this.message},e.prototype.showMessage=function(e,t){this.message.innerHTML=e,this.showMessageElem(t)},e.prototype.showMessageElem=function(e){var t=this;this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),e>0&&(this.messageTimer=setTimeout((function(){t.elem.removeChild(t.message)}),e))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=a}},t={};function r(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(()=>{"use strict";var e=r(949),t=r(818),i=r(69),n=document.getElementById("terminal");if(null!==n){var o;o=new e.Xterm(n);var s=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",a=window.location.search,c=new i.ConnectionFactory(s,t.protocols),l=new t.WebTTY(o,c,a,gotty_auth_token).open();window.addEventListener("unload",(function(){l(),o.close()}))}})()})(); +(()=>{var e={619:(e,t)=>{var r;r=function(e){e.version="1.2.1";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!=typeof Int32Array?new Int32Array(t):t}(),r=function(e){var t=0,r=0,i=0,n="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(i=0;256!=i;++i)n[i]=e[i];for(i=0;256!=i;++i)for(r=e[i],t=256+i;t<4096;t+=256)r=n[t]=r>>>8^e[255&r];var o=[];for(i=1;16!=i;++i)o[i-1]="undefined"!=typeof Int32Array?n.subarray(256*i,256*i+256):n.slice(256*i,256*i+256);return o}(t),i=r[0],n=r[1],o=r[2],s=r[3],a=r[4],c=r[5],l=r[6],h=r[7],u=r[8],_=r[9],f=r[10],d=r[11],p=r[12],v=r[13],g=r[14];e.table=t,e.bstr=function(e,r){for(var i=-1^r,n=0,o=e.length;n>>8^t[255&(i^e.charCodeAt(n++))];return~i},e.buf=function(e,r){for(var y=-1^r,m=e.length-15,b=0;b>8&255]^p[e[b++]^y>>16&255]^d[e[b++]^y>>>24]^f[e[b++]]^_[e[b++]]^u[e[b++]]^h[e[b++]]^l[e[b++]]^c[e[b++]]^a[e[b++]]^s[e[b++]]^o[e[b++]]^n[e[b++]]^i[e[b++]]^t[e[b++]];for(m+=15;b>>8^t[255&(y^e[b++])];return~y},e.str=function(e,r){for(var i=-1^r,n=0,o=e.length,s=0,a=0;n>>8^t[255&(i^s)]:s<2048?i=(i=i>>>8^t[255&(i^(192|s>>6&31))])>>>8^t[255&(i^(128|63&s))]:s>=55296&&s<57344?(s=64+(1023&s),a=1023&e.charCodeAt(n++),i=(i=(i=(i=i>>>8^t[255&(i^(240|s>>8&7))])>>>8^t[255&(i^(128|s>>2&63))])>>>8^t[255&(i^(128|a>>6&15|(3&s)<<4))])>>>8^t[255&(i^(128|63&a))]):i=(i=(i=i>>>8^t[255&(i^(224|s>>12&15))])>>>8^t[255&(i^(128|s>>6&63))])>>>8^t[255&(i^(128|63&s))];return~i}},"undefined"==typeof DO_NOT_EXPORT_CRC?r(t):r({})},881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue("padding-top"))+parseInt(n.getPropertyValue("padding-bottom"))),s=i-(parseInt(n.getPropertyValue("padding-right"))+parseInt(n.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),n=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function o(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=o),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,n,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(n,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(n.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var n=function(){function e(){}return e.computeLink=function(t,r,i,n){for(var o,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(o=s.exec(c));){var _=o[1];if(!_){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(_,h+1),s.lastIndex=h+_.length,h<0)break;for(var f=h+_.length,d=l+1;f>i.cols;)f-=i.cols,d++;var p={start:{x:h+1,y:l+1},end:{x:f,y:d}};u.push({range:p,text:_,activate:n})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,n,o="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,n=a.isWrapped}while(n);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;o+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[o,s]},e}();t.LinkComputer=n}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),n=r(310),o=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var o=this._gl,s=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,u),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,2,o.FLOAT,!1,h,0),o.vertexAttribDivisor(2,1),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,o.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(3,1),o.enableVertexAttribArray(4),o.vertexAttribPointer(4,2,o.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(4,1),o.enableVertexAttribArray(5),o.vertexAttribPointer(5,2,o.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(5,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(o.createTexture()),o.bindTexture(o.TEXTURE_2D,this._atlasTexture),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,1,1,0,o.RGBA,o.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.enable(o.BLEND),o.blendFunc(o.SRC_ALPHA,o.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,n,o){this._updateCell(this._vertices.attributes,e,t,r,i,n,o)},e.prototype._updateCell=function(e,t,r,i,n,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,n,s):this._atlas.getRasterizedGlyph(i,n,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):o.fill(e,0,u,u+l-1-2)):o.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,n=e.selection.endCol-i,o=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var v=c.AttributeData.toColorRGB(d.getBgColor());f|=v[0]<<16|v[1]<<8|v[2]<<0;case 0:default:var g=this._colors.background.rgba;f|=g>>8&16711680|g>>8&65280|g>>8&255}f|=50331648}if(_&n.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var y=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f,y)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),n=r(455),o=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var o=this._gl;this._program=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,h),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,o.FLOAT,!1,s,0),o.vertexAttribDivisor(0,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,4,o.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,o=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,o*this._dimensions.scaledCellHeight,this._selectionFloat),n.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else n.fill(this._vertices.selection,0,16)}else n.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,n=0;n>24&255)/255,_=(c>>16&255)/255,f=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-o)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,_,f,1)},e.prototype._addRectangle=function(e,t,r,i,n,o,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,n,o,s){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var n=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=n},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),n=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=n},666:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var o=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),_=r(855),f=r(345),d=r(782),p=function(e){function t(t,r,i){var n=e.call(this)||this;n._terminal=t,n._colors=r,n._model=new h.RenderModel,n._workCell=new d.CellData,n._onRequestRedraw=new f.EventEmitter,n._core=n._terminal._core,n._renderLayers=[new s.LinkRenderLayer(n._core.screenElement,2,n._colors,n._core),new a.CursorRenderLayer(n._core.screenElement,3,n._colors,n._onRequestRedraw)],n.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},n._devicePixelRatio=window.devicePixelRatio,n._updateDimensions(),n._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(n._gl=n._canvas.getContext("webgl2",c),!n._gl)throw new Error("WebGL2 not supported "+n._gl);return n._core.screenElement.appendChild(n._canvas),n._rectangleRenderer=new l.RectangleRenderer(n._terminal,n._colors,n._gl,n.dimensions),n._glyphRenderer=new o.GlyphRenderer(n._terminal,n._colors,n._gl,n.dimensions),n.onCharSizeChanged(),n._isAttached=document.body.contains(n._core.screenElement),n}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(n){return n.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var n=i+r.buffer.ydisp,o=r.buffer.lines.get(n);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var n=e[1]-i.buffer.active.viewportY,o=t[1]-i.buffer.active.viewportY,s=Math.max(n,0),a=Math.min(o,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=n,this._model.selection.viewportEndRow=o,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=p},381:(e,t)=>{function r(e,t,r){var n=i(e.createShader(t));if(e.shaderSource(n,r),e.compileShader(n),e.getShaderParameter(n,e.COMPILE_STATUS))return n;console.error(e.getShaderInfoLog(n)),e.deleteShader(n)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,n){var o=i(e.createProgram());if(e.attachShader(o,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(o,i(r(e,e.FRAGMENT_SHADER,n))),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS))return o;console.error(e.getProgramInfoLog(o)),e.deleteProgram(o)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),n=r(167),o=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),o.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,n){var o={foreground:n.foreground,background:n.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:n.ansi.slice(),contrastCache:n.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),n=r(855),o=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},_={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},f=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=o.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=o.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,n.DEFAULT_COLOR,n.DEFAULT_COLOR);this._cacheMap[r]=((e={})[n.DEFAULT_COLOR]=((t={})[n.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,n=this._cacheMapCombined[e];n||(n={},this._cacheMapCombined[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,n=this._cacheMap[e];n||(n={},this._cacheMap[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+d(i[0])+d(i[1])+d(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,n,o,c,l){var h=this._getMinimumContrastCss(e,t,r,i,n,o,c,l);if(h)return h;switch(n){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&o<8&&(o+=8),this._getColorFromAnsiIndex(o).css;case 50331648:var u=s.AttributeData.toColorRGB(o);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var _=this._config.colors.background.css;return 9===_.length?_.substr(0,7):_}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,n,o,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(n,o,s,c),_=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(_){var f=a.channels.toCss(_>>24&255,_>>16&255,_>>8&255);return this._config.colors.contrastCache.setCss(e,i,f),f}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var n="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return _;var o=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),f=this._workAttributeData.getFgColorMode(),d=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var v=u;u=d,d=v;var g=f;f=p,p=g}var y=this._getBackgroundColor(p,d,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var m=o?this._config.fontWeightBold:this._config.fontWeight,b=h?"italic":"";this._tmpCtx.font=b+" "+m+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,p,d,r,f,u,s,o),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(n,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;n--){for(i=0;i=0;i--){for(n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),n=r(381),o=function(){function e(e,t,r,i,n){this._container=e,this._alpha=i,this._colors=n,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=n.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=o},461:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var o=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,n){var o=e.call(this,t,"cursor",r,!0,i)||this;return o._onRequestRefreshRowsEvent=n,o._cell=new s.CellData,o._state={x:0,y:0,isFocused:!1,style:"",width:0},o._cursorRenderers={bar:o._renderBarCursor.bind(o),block:o._renderBlockCursor.bind(o),underline:o._renderUnderlineCursor.bind(o)},o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,n=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(n,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=e.getOption("cursorStyle");return o&&"block"!==o?this._cursorRenderers[o](e,n,i,this._cell):this._renderBlurCursor(e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===n&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(o.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var o=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,n){var o=e.call(this,t,"link",r,!0,i)||this;return n.linkifier.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),n.linkifier2.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier2.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),_=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=" ":a.textContent=o,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=""}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=n+"px",t.style.top=o+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData("text/plain"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,_)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,_)},c=this;null!==(i=o.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add("xterm-cursor-pointer")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),_=r(9312),f=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),m=r(1296),b=r(7399),C=r(8460),S=r(8437),w=r(5680),E=r(3230),A=r(4725),R=r(428),L=r(8934),x=r(6465),k=r(5114),T=r(8969),O=r(4774),D=r(4269),P="undefined"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=f,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(x.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.removeEventListener("mousemove",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener("mousemove",l),n.mousemove=l):(r.removeEventListener("mousemove",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener("wheel",s,{passive:!1}),n.wheel=s):(r.removeEventListener("wheel",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.addEventListener("mousemove",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,"wheel",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),o="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,n,o){for(var s=e,a=t,c="";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-o(s,i):t;var _=i,f=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var _=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(_-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new _(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new f(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),_=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),f=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),_=this._resolveForegroundRgba(i,r,s,a),f=c.rgba.ensureContrastRatio(u,_,this._optionsService.options.minimumContrastRatio);if(f){var d={css:c.channels.toCss(f>>24&255,f>>16&255,f>>8&255),rgba:f};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,_=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new f(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&"block"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=_;var f=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,"link",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),_=r(4725),f=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,_){var f=e.call(this)||this;f._colors=t,f._screenElement=r,f._bufferService=s,f._charSizeService=u,f._optionsService=_,f._id=v++,f._onRequestRedraw=new p.EventEmitter;var d=f._optionsService.options.allowTransparency;return f._renderLayers=[o.createInstance(a.TextRenderLayer,f._screenElement,0,f._colors,d,f._id),o.createInstance(c.SelectionRenderLayer,f._screenElement,1,f._colors,f._id),o.createInstance(h.LinkRenderLayer,f._screenElement,2,f._colors,f._id,i,n),o.createInstance(l.CursorRenderLayer,f._screenElement,3,f._colors,f._id,f._onRequestRedraw)],f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._devicePixelRatio=window.devicePixelRatio,f._updateDimensions(),f.onOptionsChanged(),f}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,"selection",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var _=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,_,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),_=r(2585),f=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,"text",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var _=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,_[0],_[1]),_[1]-_[0]),u=_[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,_.IBufferService),s(6,_.IOptionsService),s(7,f.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),_={css:"rgba(0, 0, 0, 0)",rgba:0};function f(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=f;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var n=t.createElement("canvas");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=f(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),_=r(8460),f=r(4774),d=r(9631),p="xterm-dom-renderer-owner-",v="xterm-fg-",g="xterm-bg-",y="xterm-focus",m=1,b=function(e){function t(t,r,i,n,o,s,c,l,h,u){var _=e.call(this)||this;return _._colors=t,_._element=r,_._screenElement=i,_._viewportElement=n,_._linkifier=o,_._linkifier2=s,_._charSizeService=l,_._optionsService=h,_._bufferService=u,_._terminalClass=m++,_._rowElements=[],_._rowContainer=document.createElement("div"),_._rowContainer.classList.add("xterm-rows"),_._rowContainer.style.lineHeight="normal",_._rowContainer.setAttribute("aria-hidden","true"),_._refreshRowElements(_._bufferService.cols,_._bufferService.rows),_._selectionContainer=document.createElement("div"),_._selectionContainer.classList.add("xterm-selection"),_._selectionContainer.setAttribute("aria-hidden","true"),_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._updateDimensions(),_._injectCss(),_._rowFactory=c.createInstance(a.DomRendererRowFactory,document,_._colors),_._element.classList.add(p+_._terminalClass),_._screenElement.appendChild(_._rowContainer),_._screenElement.appendChild(_._selectionContainer),_._linkifier.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_._linkifier2.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier2.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new _.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement("div");return n.style.height=i*this.dimensions.actualCellHeight+"px",n.style.top=e*this.dimensions.actualCellHeight+"px",n.style.left=t*this.dimensions.actualCellWidth+"px",n.style.width=this.dimensions.actualCellWidth*(r-t)+"px",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=b},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var _=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,_){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,_)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){m=!0;var S=p.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),b=S[1]-1,y=C.getWidth()}var w=this._document.createElement("span");if(y>1&&(w.style.width=h*y+"px"),m&&(w.style.display="inline",a>=g&&a<=b&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var E=C.getFgColor(),A=C.getFgColorMode(),R=C.getBgColor(),L=C.getBgColorMode(),x=!!C.isInverse();if(x){var k=E;E=R,R=k;var T=A;A=L,L=T}switch(A){case 16777216:case 33554432:C.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add("xterm-fg-"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,"color:#"+f(E.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||x&&w.classList.add("xterm-fg-"+o.INVERTED_DEFAULT_COLOR)}switch(L){case 16777216:case 33554432:w.classList.add("xterm-bg-"+R);break;case 50331648:this._addStyle(w,"background-color:#"+f(R.toString(16),"0",6));break;case 0:default:x&&w.classList.add("xterm-bg-"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=b}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function f(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData="",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var _=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),_=0;_1)for(u=this._getJoinedRanges(i,s,o,t,n),_=0;_{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),_=r(2585),f=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var _=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});_.observe(i),l.register({dispose:function(){return _.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,_.IOptionsService),s(4,f.ICharSizeService),s(5,_.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),_=r(2585),f=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,"g"),m=function(e){function t(t,r,i,n,o,s,a,u){var _=e.call(this)||this;return _._element=t,_._screenElement=r,_._linkifier=i,_._bufferService=n,_._coreService=o,_._mouseService=s,_._optionsService=a,_._renderService=u,_._dragScrollAmount=0,_._enabled=!0,_._workCell=new l.CellData,_._mouseDownTimeStamp=0,_._oldHasSelection=!1,_._oldSelectionStart=void 0,_._oldSelectionEnd=void 0,_._onLinuxMouseSelection=_.register(new h.EventEmitter),_._onRedrawRequest=_.register(new h.EventEmitter),_._onSelectionChange=_.register(new h.EventEmitter),_._onRequestScrollLines=_.register(new h.EventEmitter),_._mouseMoveListener=function(e){return _._onMouseMove(e)},_._mouseUpListener=function(e){return _._onMouseUp(e)},_._coreService.onUserInput((function(){_.hasSelection&&_.clearSelection()})),_._trimListener=_._bufferService.buffer.lines.onTrim((function(e){return _._onTrim(e)})),_.register(_._bufferService.buffers.onBufferActivate((function(e){return _._onBufferActivate(e)}))),_.enable(),_._model=new c.SelectionModel(_._bufferService),_._activeSelectionMode=0,_}return n(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=f.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,_=0,f=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(f+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(_+=g-1,a-=g-1),a--,d--}for(;p1&&(f+=y-1,c+=y-1),c++,p++}}c++;var m=a+l-h+_,b=Math.min(this._bufferService.cols,c-a+h+u-_-f);if(t||""!==s.slice(a,c).trim()){if(r&&0===m&&32!==o.getCodePoint(0)){var C=n.lines.get(e[1]-1);if(C&&o.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;m-=w,b+=w}}}if(i&&m+b===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(b+=A.length)}}return{start:m,length:b}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,_.IBufferService),s(4,_.ICoreService),s(5,u.IMouseService),s(6,_.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=m},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),_=r(8460),f=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),m=r(5981),b=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new _.EventEmitter,r._onData=new _.EventEmitter,r._onLineFeed=new _.EventEmitter,r._onResize=new _.EventEmitter,r._onScroll=new _.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(f.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(_.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(_.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(_.forwardEvent(r._coreService.onData,r._onData)),r.register(_.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new m.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new _.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!b&&(this._logService.warn("writeSync is unreliable and will be removed soon."),b=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle="",g._iconName="",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=_.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new f.EventEmitter,g._onRequestRefreshRows=new f.EventEmitter,g._onRequestReset=new f.EventEmitter,g._onRequestSyncScrollBar=new f.EventEmitter,g._onRequestWindowsOptionsReport=new f.EventEmitter,g._onA11yChar=new f.EventEmitter,g._onA11yTab=new f.EventEmitter,g._onCursorMove=new f.EventEmitter,g._onLineFeed=new f.EventEmitter,g._onScroll=new f.EventEmitter,g._onTitleChange=new f.EventEmitter,g._onAnsiColorChange=new f.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug("Unknown CSI code: ",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug("Unknown ESC code: ",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug("Unknown EXECUTE code: ",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),g._logService.debug("Unknown DCS code: ",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:"@"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:"A"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:"B"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:"C"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:"D"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:"E"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:"F"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:"G"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:"H"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:"I"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:"L"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:"M"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:"P"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:"S"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:"T"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:"X"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:"Z"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:"`"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:"a"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:"b"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:"c"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:"d"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:"e"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:"f"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:"g"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:"h"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:"l"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:"m"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:"n"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:"r"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:"s"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:"t"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:"u"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:"7"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:"8"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:"D"},(function(){return g.index()})),g._parser.registerEscHandler({final:"E"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:"H"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:"M"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:"="},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:">"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:"c"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:"n"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"o"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"|"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"}"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"~"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return g.selectDefaultCharset()}));var m=function(e){b._parser.registerEscHandler({intermediates:"(",final:e},(function(){return g.selectCharset("("+e)})),b._parser.registerEscHandler({intermediates:")",final:e},(function(){return g.selectCharset(")"+e)})),b._parser.registerEscHandler({intermediates:"*",final:e},(function(){return g.selectCharset("*"+e)})),b._parser.registerEscHandler({intermediates:"+",final:e},(function(){return g.selectCharset("+"+e)})),b._parser.registerEscHandler({intermediates:"-",final:e},(function(){return g.selectCharset("-"+e)})),b._parser.registerEscHandler({intermediates:".",final:e},(function(){return g.selectCharset("."+e)})),b._parser.registerEscHandler({intermediates:"/",final:e},(function(){return g.selectCharset("/"+e)}))},b=this;for(var C in a.CHARSETS)m(C);return g._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error("Parsing error: ",e),e})),g._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===f.getWidth(o.x-1)&&f.setCellFromCodePoint(o.x-1,0,1,_.fg,_.bg,_.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),f=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(f.insertCells(o.x,n,o.getNullCell(_),_),2===f.getWidth(c-1)&&f.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,_.fg,_.bg,_.extended)),f.setCellFromCodePoint(o.x++,i,n,_.fg,_.bg,_.extended),n>0)for(;--n;)f.setCellFromCodePoint(o.x++,0,0,_.fg,_.bg,_.extended)}else f.getWidth(o.x-1)?f.addCodepointToCell(o.x-1,i):f.addCodepointToCell(o.x-2,i)}r-t>0&&(f.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===f.getWidth(o.x)&&!f.hasContent(o.x)&&f.setCellFromCodePoint(o.x,0,1,_.fg,_.bg,_.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new m.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=_.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=_.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=_.DEFAULT_ATTR_DATA.fg,i.bg=_.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(b[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,n=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(n),t.isIpad="iPad"===n,t.isIphone="iPhone"===n,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(n),t.isLinux=n.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=f.length-1,m=f[y];0===m&&(m=f[--y]);for(var b=l.length-d-1,C=_;b>=0;){var S=Math.min(C,m);if(l[y].copyCellsFrom(l[b],C-S,m-S,S,!0),0==(m-=S)&&(m=f[--y]),0==(C-=S)){b--;var w=Math.max(b,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var A=[],R=[];for(v=0;v=0;v--)if(T&&T.start>x+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,A.push({index:x+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++k]}else this.lines.set(v,R[x--]);var P=0;for(v=A.length-1;v>=0;v--)A[v].index+=P,this.lines.onInsertEmitter.fire(A[v]),P+=A[v].amount;var M=Math.max(0,L+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new _(this,e,t,r,i,n)},e}();t.Buffer=u;var _=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=_},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o="";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(b>u||0===h[b].getTrimmedLength());b--)m++;m>0&&(s.push(a+h.length-m),s.push(m)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;in||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=n}}if(1!==e.final.length)throw new Error("final must be a single byte");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[_](this._params));_--)if(i instanceof Promise)return this._preserveStack(3,a,_,o,l),i;_<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var f=this._escHandlers[this._collect<<8|n],d=f?f.length-1:-1;d>=0&&!0!==(i=f[d]());d--)if(i instanceof Promise)return this._preserveStack(4,f,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),_=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),f=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(_),o}return n(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(_)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=f},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator("BufferService"),t.ICoreMouseService=n.createDecorator("CoreMouseService"),t.ICoreService=n.createDecorator("CoreService"),t.ICharsetService=n.createDecorator("CharsetService"),t.IDirtyRowService=n.createDecorator("DirtyRowService"),t.IInstantiationService=n.createDecorator("InstantiationService"),t.ILogService=n.createDecorator("LogService"),t.IOptionsService=n.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=n.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()},444:e=>{"use strict";var t=e.exports;const r=[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102],i={};for(var n=0;n65535)throw"Number cannot exceed 16 bits: "+e;return[e>>8,255&e]},pack_u32_le:function(e){var t=e/65536;return[255&e,(65535&e)>>8,255&t,t>>8]},unpack_u16_be:function(e){return(e[0]<<8)+e[1]},unpack_u32_le:function(e){return e[0]+(e[1]<<8)+(e[2]<<16)+16777216*e[3]},octets_to_hex:function(e){for(var t=[],i=0;i>4],r[15&e[i]]);return t},parse_hex_octets:function(e){for(var t=new Array(e.length/2),r=0;r{e.exports.Text={Encoder:"undefined"!=typeof TextEncoder?TextEncoder:class{encode(e){e=unescape(encodeURIComponent(e));for(var t=new Array(e.length),r=0;r{"use strict";const i=r(619);var n,o=e.exports;function s(e,t){return n||function(){n=new Array(256);for(var e=0;e<256;e++){for(var t=e<<8&65535,r=0;r<8;r++)0!=(32768&t)?(t<<=1,t^=4129):t<<=1;n[e]=65535&t}}(),n[t>>8&255]^(255&t)<<8^e}function a(e,t){if(e.join()!==t.join())throw new o.Error("crc",t,e)}Object.assign(o,r(595),r(444)),o.CRC={crc16:function(e){for(var t=e[0],r=1;r>>0)},verify16:function(e,t){return a(this.crc16(e),t)},verify32:function(e,t){try{a(this.crc32(e),t)}catch(t){throw t.input=e.slice(0),t}}}},80:(e,t,r)=>{"use strict";var i,n,o=e.exports;Object.assign(o,r(560));const s=o.ZMLIB.ZDLE;o.ZDLE=class e{constructor(e){this._config={},e&&this.set_escape_ctrl_chars(!!e.escape_ctrl_chars)}set_escape_ctrl_chars(e){if("boolean"!=typeof e)throw"need boolean!";e!==this._config.escape_ctrl_chars&&(this._config.escape_ctrl_chars=e,this._setup_zdle_table())}escapes_ctrl_chars(){return!!this._config.escape_ctrl_chars}encode(e){if(!this._zdle_table)throw"No ZDLE encode table configured!";var t=this._zdle_table,r=this._lastcode,o=new ArrayBuffer(2*e.length),a=new Uint8Array(o),c=this._config.escape_ctrl_chars,l=0;for(i=0;i=0;t--)e[t]===s&&e.splice(t,2,e[t+1]-64);return e}static splice(t,r,i){var n=0;r||(r=0);for(var o=r;o{"use strict";var t=e.exports;const r={aborted:"Session aborted",peer_aborted:"Peer aborted session",already_aborted:"Session already aborted",crc:function(e,t){return this.got=e.slice(0),this.expected=t.slice(0),"CRC check failed! (got: "+e.join()+"; expected: "+t.join()+")"},validation:function(e){return e}};function i(e){const t=r[e];switch(typeof t){case"string":return t;case"function":var i=[].slice.call(arguments).slice(1);return t.apply(this,i)}return null}t.Error=class extends Error{constructor(e){super();var t=i.apply(this,arguments);t?(this.type=e,this.message=t):this.message=e}}},547:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(444),r(80),r(560),r(724),r(595));const n="*".charCodeAt(0),o="A".charCodeAt(0),s="B".charCodeAt(0),a="C".charCodeAt(0),c=[13,10],l=c.slice(0).concat([i.ZMLIB.XON]),h=[n,n,i.ZMLIB.ZDLE,s],u=[n,i.ZMLIB.ZDLE,o],_=[n,i.ZMLIB.ZDLE,a];i.Header=class{static trim_leading_garbage(e){var t,r,o=[];e:for(;e.length&&!r;){var s=e.indexOf(n);if(-1===s){t=!0;break e}if(o.push.apply(o,e.splice(0,s)),e.length<2)break e;if(e[1]===n)if(e.length>8,0,r]}get_buffer_size(){return i.ENCODELIB.unpack_u16_be(this._bytes4.slice(0,2))||void 0}can_full_duplex(){return!!(this._bytes4[3]&d.CANFDX)}can_overlap_io(){return!!(this._bytes4[3]&d.CANOVIO)}can_break(){return!!(this._bytes4[3]&d.CANBRK)}can_fcs_32(){return!!(this._bytes4[3]&d.CANFC32)}escape_ctrl_chars(){return!!(this._bytes4[3]&d.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&d.ESC8)}}const v={ESCCTL:64,ESC8:128};class g extends i.Header{constructor(e,t){super();var r=0;if(e.forEach((function(e){r|=function(e){if(!v[e])throw"Invalid ZSINIT flag: "+e;return v[e]}(e)})),this._bytes4=[0,0,0,r],t){if(t.length>31)throw"Attn sequence must be <= 31 bytes";if(t.some((function(e){return e>255})))throw"Attn sequence ("+t+") must be <256";this._data=t.concat([0])}}escape_ctrl_chars(){return!!(this._bytes4[3]&v.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&v.ESC8)}}class y extends i.Header{constructor(e){super(),e&&(this._bytes4=e.slice())}}y.prototype._hex_header_ending=c;const m={extended:{sparse:64},transport:[void 0,"compress","encrypt","rle"],management:[void 0,"newer_or_longer","crc","append","clobber","newer","mtime_or_length","protect","rename"],conversion:[void 0,"binary","text","resume"]},b=["extended","transport","management","conversion"];class C extends i.Header{get_options(){var e={sparse:!!(64&this._bytes4[0])},t=this._bytes4.slice(0);return b.forEach((function(r,i){if(m[r]instanceof Array)"management"===r&&(e.skip_if_absent=!!(128&t[i]),t[i]&=31),e[r]=m[r][t[i]];else for(var n in m[r])e[n]=!!(t[i]&m[r][n]),e[n]&&(t[i]^=m[r][n]);!e[r]&&t[i]&&(e[r]="unknown:"+t[i])})),e}}class S extends i.Header{}class w extends i.Header{}class E extends i.Header{}class A extends i.Header{}E.prototype._hex_header_ending=c;class R extends i.Header{constructor(e){super(),this._bytes4=i.ENCODELIB.pack_u32_le(e)}get_offset(){return i.ENCODELIB.unpack_u32_le(this._bytes4)}}class L extends R{}class x extends R{}class k extends R{}const T=[[f,"ZRQINIT"],[p,"ZRINIT"],[g,"ZSINIT"],[y,"ZACK"],[C,"ZFILE"],[S,"ZSKIP"],void 0,[w,"ZABORT"],[E,"ZFIN"],[L,"ZRPOS"],[x,"ZDATA"],[k,"ZEOF"],[A,"ZFERR"],void 0,void 0,void 0,void 0,void 0,void 0,void 0];for(var O={},D=0;D11&&(t="Invalid hex header - no LF detected within 12 bytes!")}i.Header.parse_hex=F},560:e=>{"use strict";e.exports.ZMLIB={ZDLE:24,XON:17,XOFF:19,ABORT_SEQUENCE:[24,24,24,24,24],strip_ignored_bytes:function(e){for(var t=e.length-1;t>=0;t--)switch(e[t]){case 17:case 145:case 19:case 147:e.splice(t,1);continue}return e},find_subarray:function(e,t){var r,i=0;Date.now();e:for(;-1!==i&&-1!==(i=e.indexOf(t[0],i));){for(r=1;r{Object.assign(e.exports,r(963))},597:(e,t,r)=>{"use strict";var i=e.exports;function n(e){if(e.aborted())throw new i.Error("aborted")}window.Zmodem=i,Object.assign(i,r(357)),i.Browser={send_files:function(e,t,r){r||(r={});for(var i=[],o=0,s=t.length-1;s>=0;s--){var a=t[s];o+=a.size,i[s]={obj:a,name:a.name,size:a.size,mtime:new Date(a.lastModified),files_remaining:t.length-s,bytes_remaining:o}}var c=0;return function t(){var o=i[c];return o?(c++,e.send_offer(o).then((function(i){return r.on_offer_response&&r.on_offer_response(o.obj,i),void 0===i?t():new Promise((function(s){var a,c=new FileReader;c.onerror=function(e){throw console.error("file read error",e),"File read error: "+e},c.onprogress=function(t){t.target.result&&(a=new Uint8Array(t.target.result,i.get_offset()),n(e),i.send(a),r.on_progress&&r.on_progress(o.obj,i,a))},c.onload=function(c){a=new Uint8Array(c.target.result,i,a),n(e),i.end(a).then((function(){r.on_progress&&a.length&&r.on_progress(o.obj,i,a),r.on_file_complete&&r.on_file_complete(o.obj,i),s(t())}))},c.readAsArrayBuffer(o.obj)}))}))):Promise.resolve()}()},save_to_disk:function(e,t){var r=new Blob(e),i=URL.createObjectURL(r),n=document.createElement("a");n.style.display="none",n.href=i,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}}},963:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(560),r(246));const n=[42,42,24,66,48],o=["to_terminal","on_detect","on_retract","sender"];class s{constructor(e,t,r,i){this._confirmer=t,this._denier=r,this._is_valid=i,this._session_type=e}confirm(){return this._confirmer.apply(this,arguments)}deny(){return this._denier.apply(this,arguments)}is_valid(){return this._is_valid.apply(this,arguments)}get_session_role(){return this._session_type}}i.Sentry=class{constructor(e){if(!e)throw"Need options!";var t=this;o.forEach((function(r){if(!e[r])throw"Need “"+r+"”!";t["_"+r]=e[r]})),this._cache=[]}_after_session_end(){this._zsession=null}consume(e){if(e instanceof Array||(e=Array.prototype.slice.call(new Uint8Array(e))),this._zsession){var t=this._zsession;if(t.consume(e),!t.has_ended())return;e="receive"===t.type?t.get_trailing_bytes():[]}var r=this._parse(e),i=e;if(r){!!this._parsed_session&&(this._parsed_session.type===r.type&&(i=[]),this._on_retract()),this._parsed_session=r;var n=this;this._on_detect(new s(r.type,(function(){if(!this.is_valid())throw"Stale ZMODEM session!";return r.on("garbage",n._to_terminal),r.on("session_end",n._after_session_end.bind(n)),r.set_sender(n._sender),delete n._parsed_session,n._zsession=r}),this._send_abort.bind(this),(function(){return n._parsed_session===r})))}else{var o=this._parsed_session;this._parsed_session=null,o&&(1===i.length&&67===i[0]&&this._send_abort(),this._on_retract())}this._to_terminal(i)}get_confirmed_session(){return this._zsession||null}_send_abort(){this._sender(i.ZMLIB.ABORT_SEQUENCE)}_parse(e){var t=this._cache;for(t.push.apply(t,e);;){let e,r=i.ZMLIB.find_subarray(t,n);if(-1===r)break;t.splice(0,r);try{e=i.Session.parse(t)}catch(e){}if(!e)break;return 1===t.length&&t[0]===i.ZMLIB.XON&&t.shift(),t.length?null:e}return t.splice(21),null}}},246:(e,t,r)=>{"use strict";var i=e.exports;i.DEBUG=!1,Object.assign(i,r(444),r(956),r(80),r(560),r(547),r(270),r(792),r(595));const n=["CANFDX","CANOVIO","CANFC32"],o="spool_uint8array",s=[79,79],a=i.ZMLIB.ABORT_SEQUENCE;class c{constructor(){this._on_evt={},this._evt_once_index={}}_Add_event(e){this._on_evt[e]=[],this._evt_once_index[e]=[]}_get_evt_queue(e){if(!this._on_evt[e])throw"Bad event: "+e;return this._on_evt[e]}on(e,t){return this._get_evt_queue(e).push(t),this}off(e,t){var r=this._get_evt_queue(e);if(t){var i=r.indexOf(t);if(-1===i)throw"“"+t+"” is not in the “"+e+"” queue.";r.splice(i,1)}else r.pop();return this}_Happen(e){var t=this._get_evt_queue(e),r=Array.apply(null,arguments);r.shift();var i=this;return t.forEach((function(e){e.apply(i,r)})),t.length}}i.Session=class extends c{static parse(e){var t;try{t=i.Header.parse_hex(e)}catch(e){return}if(t)switch(t.NAME){case"ZRQINIT":return new i.Session.Receive;case"ZRINIT":return new i.Session.Send(t)}}set_sender(e){return this._sender=e,this}has_ended(){return this._has_ended()}consume(e){if(this._before_consume(e),this._aborted)throw new i.Error("already_aborted");e.length&&(this._strip_and_enqueue_input(e),this._check_for_abort_sequence(e)||this._consume_first())}aborted(){return!!this._aborted}constructor(){super(),this._config={},this._input_buffer=[],this._Add_event("receive"),this._Add_event("garbage"),this._Add_event("session_end")}get_role(){return this.type}_trim_leading_garbage_until_header(){var e=i.Header.trim_leading_garbage(this._input_buffer);e.length&&0===this._Happen("garbage",e)&&console.debug("Garbage: ",String.fromCharCode.apply(String,e),e)}_parse_and_consume_header(){this._trim_leading_garbage_until_header();var e=i.Header.parse(this._input_buffer);if(e)return i.DEBUG&&this._log_header("RECEIVED HEADER",e[0]),this._consume_header(e[0]),this._last_header_name=e[0].NAME,this._last_header_crc=e[1],e[0]}_log_header(e,t){console.debug(this.type,e,t.NAME,t._bytes4.join())}_consume_header(e){this._on_receive(e);var t=this._next_header_handler&&this._next_header_handler[e.NAME];if(!t)throw console.error("Unhandled header!",e,this._next_header_handler),new i.Error("Unhandled header: "+e.NAME);this._next_header_handler=null,t.call(this,e)}_check_for_abort_sequence(){var e=i.ZMLIB.find_subarray(this._input_buffer,a);if(-1!==e)throw this._input_buffer.splice(0,e+a.length),this._aborted=!0,this._on_session_end(),new i.Error("peer_aborted")}_send_header(e){if(!this._sender)throw"Need sender!";var t=Array.apply(null,arguments),r=this._create_header_bytes(t);i.DEBUG&&this._log_header("SENDING HEADER",r[1]),this._sender(r[0]),this._last_sent_header=r[1]}_create_header_bytes(e){var t=i.Header.build.apply(i.Header,e);return[t[this._get_header_formatter(e[0])](this._zencoder),t]}_strip_and_enqueue_input(e){i.ZMLIB.strip_ignored_bytes(e),this._input_buffer.push.apply(this._input_buffer,e)}abort(){this._sender(a.concat([8,8,8,8,8])),this._aborted=!0,this._sender=function(){throw new i.Error("already_aborted")},this._on_session_end()}_on_session_end(){this._Happen("session_end")}_on_receive(e){this._Happen("receive",e)}_before_consume(){}},i.Session.Receive=class extends i.Session{constructor(){super(),this._Add_event("offer"),this._Add_event("data_in"),this._Add_event("file_end")}_before_consume(e){if(this._bytes_after_OO)throw"PROTOCOL: Session is completed!";this._bytes_being_consumed=e}get_trailing_bytes(){if(this._aborted)return[];if(!this._bytes_after_OO)throw"PROTOCOL: Session is not completed!";return this._bytes_after_OO.slice(0)}_has_ended(){return this.aborted()||!!this._bytes_after_OO}_get_header_formatter(){return"to_hex"}_parse_and_consume_subpacket(){var e;e=16===this._last_header_crc?"parse16":"parse32";var t=i.Subpacket[e](this._input_buffer);return t&&(i.DEBUG&&console.debug(this.type,"RECEIVED SUBPACKET",t),this._consume_data(t),t.frame_end()&&(this._next_subpacket_handler=null)),t}_consume_first(){if(this._got_ZFIN){if(this._input_buffer.length<2)return;if(0===i.ZMLIB.find_subarray(this._input_buffer,s))return this._bytes_after_OO=(e=this._bytes_being_consumed.slice(0),0===i.ZMLIB.find_subarray(e,s)?e.splice(0,s.length):e[0]===s[s.length-1]&&e.splice(0,1),e),void this._on_session_end();throw"PROTOCOL: Only thing after ZFIN should be “OO” (79,79), not: "+this._input_buffer.join()}var e,t;do{t=this._next_subpacket_handler?this._parse_and_consume_subpacket():this._parse_and_consume_header()}while(t&&this._input_buffer.length)}_consume_data(e){if(this._on_receive(e),!this._next_subpacket_handler)throw"PROTOCOL: Received unexpected data packet after "+this._last_header_name+" header: "+e.get_payload().join();this._next_subpacket_handler.call(this,e)}_octets_to_string(e){return this._textdecoder||(this._textdecoder=new i.Text.Decoder),this._textdecoder.decode(new Uint8Array(e))}_consume_ZFILE_data(e,t){if(this._file_info)throw"PROTOCOL: second ZFILE data subpacket received";var r=t.get_payload(),i=r.indexOf(0),n=this._octets_to_string(r.slice(0,i)),o=this._octets_to_string(r.slice(1+i)).split(" "),s=o[1]&&parseInt(o[1],8)||void 0;s&&(s=new Date(1e3*s)),this._file_info={name:n,size:o[0]?parseInt(o[0],10):null,mtime:s||null,mode:o[2]&&parseInt(o[2],8)||null,serial:o[3]&&parseInt(o[3],10)||null,files_remaining:o[4]?parseInt(o[4],10):null,bytes_remaining:o[5]?parseInt(o[5],10):null};var a=new u(e.get_options(),this._file_info,this._accept.bind(this),this._skip.bind(this));this._current_transfer=a}_consume_ZDATA_data(e){if(!this._accepted_offer)throw"PROTOCOL: Received data without accepting!";if(!this._offset_ok)return console.warn("offset not ok!"),void _send_ZRPOS();this._file_offset+=e.get_payload().length,this._on_data_in(e),e.ack_expected()&&!e.frame_end()&&this._send_header("ZACK",i.ENCODELIB.pack_u32_le(this._file_offset))}_make_promise_for_between_files(){var e=this;return new Promise((function(t){var r={ZFILE:function(e){this._next_subpacket_handler=function(r){this._next_subpacket_handler=null,this._consume_ZFILE_data(e,r),this._Happen("offer",this._current_transfer),t(this._current_transfer)}},ZSINIT:function(t){e._next_subpacket_handler=function(t){e._next_subpacket_handler=null,e._consume_ZSINIT_data(t),e._send_header("ZACK"),e._next_header_handler=r}},ZFIN:function(){this._consume_ZFIN(),t()}};e._next_header_handler=r}))}_consume_ZSINIT_data(e){this._attn=e.get_payload()}start(){if(this._started)throw"Already started!";this._started=!0;var e=this._make_promise_for_between_files();return this._send_ZRINIT(),e}_accept(e){this._accepted_offer=!0,this._file_offset=e||0;var t=this,r=new Promise((function(e){t._next_header_handler={ZDATA:function(t){this._consume_ZDATA(t),this._next_subpacket_handler=this._consume_ZDATA_data,this._next_header_handler={ZEOF:function(t){this._consume_ZEOF(t),this._next_subpacket_handler=null,this._make_promise_for_between_files(),e(),this._send_ZRINIT()}}}}}));return this._send_ZRPOS(),r}_skip(){var e=this._make_promise_for_between_files();if(this._accepted_offer){if(!this._current_transfer)return;var t=function(){this._accepted_offer=!1,this._next_subpacket_handler=null,this._make_promise_for_between_files()}.bind(this);Object.assign(this._next_header_handler,{ZEOF:t,ZDATA:function(){t(),this._next_header_handler.ZEOF=t}.bind(this)})}return this._file_info=null,this._send_header("ZSKIP"),e}_send_ZRINIT(){this._send_header("ZRINIT",n)}_consume_ZFIN(){this._got_ZFIN=!0,this._send_header("ZFIN")}_consume_ZEOF(e){if(this._file_offset!==e.get_offset())throw"ZEOF offset mismatch; unimplemented (local: "+this._file_offset+"; ZEOF: "+e.get_offset()+")";this._on_file_end(),this._file_info=null,this._current_transfer=null}_consume_ZDATA(e){if(this._file_offset!==e.get_offset())throw"Error correction is unimplemented.";this._offset_ok=!0}_send_ZRPOS(){this._send_header("ZRPOS",this._file_offset)}_on_file_end(){this._Happen("file_end"),this._current_transfer&&(this._current_transfer._Happen("complete"),this._current_transfer=null)}_on_data_in(e){this._Happen("data_in",e),this._current_transfer&&this._current_transfer._Happen("input",e.get_payload())}},Object.assign(i.Session.Receive.prototype,{type:"receive"});var l={get_details:function(){return Object.assign({},this._file_info)},get_options:function(){return Object.assign({},this._zfile_opts)},get_offset:function(){return this._file_offset}};class h{constructor(e,t,r,i){this._file_info=e,this._file_offset=t||0,this._send=r,this._end=i}send(e){this._send(e),this._file_offset+=e.length}end(e){var t=this._end(e||[]);return e&&(this._file_offset+=e.length),t}}Object.assign(h.prototype,l);class u extends c{constructor(e,t,r,i){super(),this._zfile_opts=e,this._file_info=t,this._accept_func=r,this._skip_func=i,this._Add_event("input"),this._Add_event("complete"),this.on("input",this._input_handler)}_verify_not_skipped(){if(this._skipped)throw new i.Error("Already skipped!")}skip(){return this._verify_not_skipped(),this._skipped=!0,this._skip_func.apply(this,arguments)}accept(e){if(this._verify_not_skipped(),this._accepted)throw new i.Error("Already accepted!");switch(this._accepted=!0,e||(e={}),this._file_offset=e.offset||0,e.on_input){case null:case void 0:case"spool_array":case o:this._spool=[];break;default:if("function"!=typeof e.on_input)throw"Invalid “on_input”: "+e.on_input}return this._input_handler_mode=e.on_input||o,this._accept_func(this._file_offset).then(this._get_spool.bind(this))}_input_handler(e){if(this._file_offset+=e.length,"function"==typeof this._input_handler_mode)this._input_handler_mode(e);else{if(this._input_handler_mode===o)e=new Uint8Array(e);else if("spool_array"!==this._input_handler_mode)throw new i.Error("WTF?? _input_handler_mode = "+this._input_handler_mode);this._spool.push(e)}}_get_spool(){return this._spool}}Object.assign(u.prototype,l);const _={ZFILE:!0,ZDATA:!0};i.Session.Send=class extends i.Session{constructor(e){if(super(),!e)throw"Need first header!";if("ZRINIT"!==e.NAME)throw"First header should be ZRINIT, not "+e.NAME;this._last_header_name="ZRINIT",this._subpacket_encode_func="encode16",this._zencoder=new i.ZDLE,this._consume_ZRINIT(e),this._file_offset=0,this._start_keepalive_on_set_sender=!0}set_sender(e){return super.set_sender(e),this._start_keepalive_on_set_sender&&(this._start_keepalive_on_set_sender=!1,this._start_keepalive()),this}_get_header_formatter(e){return _[e]?"to_binary16":"to_hex"}_start_keepalive(){if(!this._keepalive_promise){var e=this;this._keepalive_promise=new Promise((function(t){e._keepalive_timeout=setTimeout(t,5e3)})).then((function(){e._next_header_handler={ZACK:function(){e._got_ZSINIT_ZACK=!0}},e._send_ZSINIT(),e._keepalive_promise=null,e._start_keepalive()}))}}_stop_keepalive(){this._keepalive_promise&&(clearTimeout(this._keepalive_timeout),this._keep_alive_promise=null)}_send_ZSINIT(){var e=[];this._zencoder.escapes_ctrl_chars()&&e.push("ESCCTL"),this._send_header_and_data(["ZSINIT",e],[0],"end_ack")}_consume_ZRINIT(e){if(this._last_ZRINIT=e,e.get_buffer_size())throw"Buffer size ("+e.get_buffer_size()+") is unsupported!";if(!e.can_full_duplex())throw"Half-duplex I/O is unsupported!";if(!e.can_overlap_io())throw"Non-overlap I/O is unsupported!";if(e.escape_8th_bit())throw"8-bit escaping is unsupported!";this._zencoder.set_escape_ctrl_chars(!0),e.escape_ctrl_chars()||console.debug("Peer didn’t request escape of all control characters. Will send ZSINIT to force recognition of escaped control characters.")}_ensure_receiver_escapes_ctrl_chars(){var e;if(this._last_ZRINIT.escape_ctrl_chars()||this._got_ZSINIT_ZACK)e=Promise.resolve();else{var t=this;e=new Promise((function(e){t._next_header_handler={ZACK:t=>{e()}},t._send_ZSINIT()}))}return e}_convert_params_to_offer_payload_array(e){var t=(e=i.Validation.offer_parameters(e)).name+"\0",r=[(e.size||0).toString(10),e.mtime?e.mtime.toString(8):"0",e.mode?(32768|e.mode).toString(8):"0","0"];return e.files_remaining&&(r.push(e.files_remaining),e.bytes_remaining&&r.push(e.bytes_remaining)),t+=r.join(" "),this._string_to_octets(t)}send_offer(e){if(i.DEBUG&&console.debug("SENDING OFFER",e),!e)throw"need file params!";if(this._sending_file)throw"Already sending file!";var t=this._convert_params_to_offer_payload_array(e);this._stop_keepalive();var r=this;function n(){r._next_header_handler={ZRPOS:function(e){i.DEBUG&&console.warn("Mid-transfer ZRPOS … implementation error?"),n()}}}return this._ensure_receiver_escapes_ctrl_chars().then((function(){var i=new Promise((function(t){r._next_header_handler={ZSKIP:function(){r._start_keepalive(),t()},ZRPOS:function(i){r._sending_file=!0,n(),t(new h(e,i.get_offset(),r._send_interim_file_piece.bind(r),r._end_file.bind(r)))}}}));return r._send_header_and_data(["ZFILE"],t,"end_ack"),delete r._sent_ZDATA,i}))}_send_header_and_data(e,t,r){var n=this._create_header_bytes(e),o=this._build_subpacket_bytes(t,r);n[0].push.apply(n[0],o),i.DEBUG&&(this._log_header("SENDING HEADER",n[1]),console.debug(this.type,"-- HEADER PAYLOAD:",r,o.length)),this._sender(n[0]),this._last_sent_header=n[1]}_build_subpacket_bytes(e,t){return i.Subpacket.build(e,t)[this._subpacket_encode_func](this._zencoder)}_build_and_send_subpacket(e,t){this._sender(this._build_subpacket_bytes(e,t))}_string_to_octets(e){this._textencoder||(this._textencoder=new i.Text.Encoder);var t=this._textencoder.encode(e);return Array.prototype.slice.call(t)}_send_interim_file_piece(e){return this._send_file_part(e,"no_end_no_ack"),Promise.resolve()}_ensure_we_are_sending(){if(!this._sending_file)throw"Not sending a file currently!"}_end_file(e){this._ensure_we_are_sending(),this._send_file_part(e,"end_no_ack");var t=this,r=new Promise((function(e){t._sending_file=!1,t._prepare_to_receive_ZRINIT(e)}));return this._send_header("ZEOF",this._file_offset),this._file_offset=0,r}_prepare_to_receive_ZRINIT(e){this._next_header_handler={ZRINIT:function(t){this._consume_ZRINIT(t),e&&e()}}}close(){var e="ZRINIT"===this._last_header_name;if(e||(e="ZSKIP"===this._last_header_name),e||(e="ZSINIT"===this._last_sent_header.name&&"ZACK"===this._last_header_name),!e)throw"Can’t close; last received header was “"+this._last_header_name+"”";var t=this,r=new Promise((function(e,r){t._next_header_handler={ZFIN:function(){t._sender(s),t._sent_OO=!0,t._on_session_end(),e()}}}));return this._send_header("ZFIN"),r}_has_ended(){return this.aborted()||!!this._sent_OO}_send_file_part(e,t){this._sent_ZDATA||(this._send_header("ZDATA",this._file_offset),this._sent_ZDATA=!0);for(var r=0,i=e.length;;){var n=Math.min(r+8192,i)-r,o=n+r>=i,s=e.slice(r,r+n);if(s instanceof Array||(s=Array.prototype.slice.call(s)),this._build_and_send_subpacket(s,o?t:"no_end_no_ack"),this._file_offset+=n,(r+=n)>=i)break}}_consume_first(){if(!this._parse_and_consume_header()&&"67"===this._input_buffer.join())throw"Receiver has fallen back to YMODEM."}_on_session_end(){this._stop_keepalive(),super._on_session_end()}},Object.assign(i.Session.Send.prototype,{type:"send"})},270:(e,t,r)=>{"use strict";var i,n=e.exports;Object.assign(n,r(724),r(80),r(560),r(595)),n.Subpacket=class e{static build(e,t){var r=i[t];if(!r)throw"No subpacket type “"+t+"” is defined! Try one of: "+Object.keys(i).join(", ");return new r(e)}encode16(e){return this._encode(e,n.CRC.crc16)}encode32(e){return this._encode(e,n.CRC.crc32)}get_payload(){return this._payload}static parse16(t){return e._parse(t,2)}static parse32(t){return e._parse(t,4)}constructor(e){this._payload=e}_encode(e,t){return e.encode(this._payload.slice(0)).concat([n.ZMLIB.ZDLE,this._frameend_num],e.encode(t(this._payload.concat(this._frameend_num))))}static _parse(e,t){for(var r,i,o={104:a,105:l,106:h,107:c},s=0;s{"use strict";var i=e.exports;Object.assign(i,r(595));const n=/\*\x18[AC]|\*\*\x18B/;function o(e,t){if(t<0)throw new i.Error("validation","“"+e+"” ("+t+") must be nonnegative.");if(t!==Math.floor(t))throw new i.Error("validation","“"+e+"” ("+t+") must be an integer.")}i.Validation={offer_parameters:function(e){if(!e.name)throw new i.Error("validation","Need “name”!");if("string"!=typeof e.name)throw new i.Error("validation","“name” ("+e.name+") must be a string!");if(e=Object.assign({},e),n.test(e.name)&&console.warn("The filename "+JSON.stringify(name)+" contains characters that look like a ZMODEM header. This could corrupt the ZMODEM session; consider renaming it so that the filename doesn’t contain control characters."),null!==e.serial&&void 0!==e.serial)throw new i.Error("validation","“serial” is meaningless.");if(e.serial=null,["size","mode","files_remaining","bytes_remaining"].forEach((function(t){var r;switch(typeof e[t]){case"object":r=null===e[t];break;case"undefined":e[t]=null,r=!0;break;case"number":o(t,e[t]),r=!0}if(!r)throw new i.Error("validation","“"+t+"” ("+e[t]+") must be null, undefined, or a number.")})),"number"==typeof e.mode&&(e.mode|=32768),0===e.files_remaining)throw new i.Error("validation","“files_remaining”, if given, must be positive.");var t;switch(typeof e.mtime){case"object":if(t=!0,e.mtime instanceof Date){var r=e.mtime;if(e.mtime=Math.floor(r.getTime()/1e3),e.mtime<0)throw new i.Error("validation","“mtime” ("+r+") must not be earlier than 1970.")}else null!==e.mtime&&(t=!1);break;case"undefined":e.mtime=null,t=!0;break;case"number":o("mtime",e.mtime),t=!0}if(!t)throw new i.Error("validation","“mtime” ("+e.mtime+") must be null, undefined, a Date, or a number.");return e}}},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0;var i=r(597);t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var n=function(){function e(e,t,r,n){var o=this;this.term=e,this.connectionFactory=t,this.args=r,this.authToken=n,this.reconnect=-1,this.bufSize=1024,this.sentry=new i.Sentry({to_terminal:function(e){return o.term.output(e)},on_detect:function(e){return o.zmodemDetect(e)},sender:function(e){return o.sendInput(e)},on_retract:function(e){return alert("never mind!")}})}return e.prototype.zmodemDetect=function(e){var t=this,r=e.confirm();"send"===r.type?this.zmodemSend(r):(r.on("offer",(function(e){return t.zmodemOffer(e)})),r.start())},e.prototype.zmodemSend=function(e){var t=this.getFileSendDialog();t.style.display="block";var r=document.getElementById("sendFileSelector");null!=r&&(r.onchange=function(r){i.Browser.send_files(e,r.target.files).then((function(){return e.close()})).catch((function(e){return console.log(e)})),t.style.display="none"})},e.prototype.zmodemOffer=function(e){var t=this.getFileAcceptanceDialog();t.style.display="block";var r=document.getElementById("filename");null!=r&&(r.textContent=e.get_details().name);var n=document.getElementById("filesize");null!=n&&(n.textContent=e.get_details().size);var o=document.getElementById("skipTransfer");null!=o&&(o.onclick=function(r){e.skip(),t.style.display="none"});var s=document.getElementById("acceptTransfer");null!=s&&(s.onclick=function(r){t.style.display="none",e.accept().then((function(t){i.Browser.save_to_disk(t,e.get_details().name)}))})},e.prototype.sendInput=function(e){var r,i=this.bufSize-1;r=Array.isArray(e)?String.fromCharCode.apply(null,e):e;for(var n=3*Math.floor(i/4),o=0;oIncoming file transfer: ( bytes)

Accept Decline',document.body.appendChild(e)),e},e.prototype.getFileSendDialog=function(){var e=document.getElementById("sendFileDialog");return null==e&&((e=document.createElement("div")).id="sendFileDialog",e.className="fileDialog",e.innerHTML='

Remote ready to receive files.

',document.body.appendChild(e)),e},e.prototype.open=function(){var e,r,i=this,n=this.connectionFactory.create();this.connection=n;var o=function(){n.onOpen((function(){var r=i.term.info();n.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var o=function(e,r){n.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(o),o(r.columns,r.rows),n.send("4base64"),i.term.onInput((function(e){i.sendInput(e)})),e=setInterval((function(){n.send(t.msgPing)}),3e4)})),n.onReceive((function(e){var r=e.slice(1);switch(e[0]){case t.msgOutput:i.sentry.consume(Uint8Array.from(atob(r),(function(e){return e.charCodeAt(0)})));break;case t.msgPong:break;case t.msgSetWindowTitle:i.term.setWindowTitle(r);break;case t.msgSetPreferences:var n=JSON.parse(r);i.term.setPreferences(n);break;case t.msgSetReconnect:var o=JSON.parse(r);console.log("Enabling reconnect: "+o+" seconds"),i.reconnect=o;break;case t.msgSetBufferSize:var s=JSON.parse(r);i.bufSize=s}})),n.onClose((function(){clearInterval(e),i.term.deactivate(),i.term.showMessage("Connection Closed",0),i.reconnect>0&&(r=setTimeout((function(){n=i.connectionFactory.create(),i.term.reset(),o()}),1e3*i.reconnect))})),n.open()};return o(),function(){clearTimeout(r),n.close()}},e}();t.WebTTY=n},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),n=r(881),o=r(962),s=r(445),a=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new n.FitAddon,this.term.loadAddon(new o.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()}))}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(e)},e.prototype.getMessage=function(){return this.message},e.prototype.showMessage=function(e,t){this.message.innerHTML=e,this.showMessageElem(t)},e.prototype.showMessageElem=function(e){var t=this;this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),e>0&&(this.messageTimer=setTimeout((function(){t.elem.removeChild(t.message)}),e))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=a}},t={};function r(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(()=>{"use strict";var e=r(949),t=r(818),i=r(69),n=document.getElementById("terminal");if(null!==n){var o;o=new e.Xterm(n);var s=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",a=window.location.search,c=new i.ConnectionFactory(s,t.protocols),l=new t.WebTTY(o,c,a,gotty_auth_token).open();window.addEventListener("unload",(function(){l(),o.close()}))}})()})(); //# sourceMappingURL=gotty.js.map \ No newline at end of file diff --git a/bindata/static/js/gotty.js.map b/bindata/static/js/gotty.js.map index d6dac52..166127d 100644 --- a/bindata/static/js/gotty.js.map +++ b/bindata/static/js/gotty.js.map @@ -1 +1 @@ -{"version":3,"sources":["webpack://gotty/./node_modules/crc-32/crc32.js","webpack://gotty/./node_modules/xterm-addon-fit/lib/xterm-addon-fit.js","webpack://gotty/./node_modules/xterm-addon-web-links/lib/xterm-addon-web-links.js","webpack://gotty/./node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js","webpack://gotty/./node_modules/xterm/lib/xterm.js","webpack://gotty/./node_modules/zmodem.js/src/encode.js","webpack://gotty/./node_modules/zmodem.js/src/text.js","webpack://gotty/./node_modules/zmodem.js/src/zcrc.js","webpack://gotty/./node_modules/zmodem.js/src/zdle.js","webpack://gotty/./node_modules/zmodem.js/src/zerror.js","webpack://gotty/./node_modules/zmodem.js/src/zheader.js","webpack://gotty/./node_modules/zmodem.js/src/zmlib.js","webpack://gotty/./node_modules/zmodem.js/src/zmodem.js","webpack://gotty/./node_modules/zmodem.js/src/zmodem_browser.js","webpack://gotty/./node_modules/zmodem.js/src/zsentry.js","webpack://gotty/./node_modules/zmodem.js/src/zsession.js","webpack://gotty/./node_modules/zmodem.js/src/zsubpacket.js","webpack://gotty/./node_modules/zmodem.js/src/zvalidation.js","webpack://gotty/./src/websocket.ts","webpack://gotty/./src/webtty.ts","webpack://gotty/./src/xterm.ts","webpack://gotty/webpack/bootstrap","webpack://gotty/./src/main.ts"],"names":["factory","CRC32","version","T0","c","table","Array","n","Int32Array","signed_crc_table","TT","T","v","out","subarray","slice","slice_by_16_tables","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","bstr","seed","C","i","L","length","charCodeAt","buf","B","str","d","DO_NOT_EXPORT_CRC","exports","self","module","e","775","t","Object","defineProperty","value","FitAddon","r","prototype","activate","this","_terminal","dispose","fit","proposeDimensions","_core","rows","cols","_renderService","clear","resize","element","parentElement","dimensions","actualCellWidth","actualCellHeight","window","getComputedStyle","parseInt","getPropertyValue","Math","max","o","a","viewport","scrollBarWidth","floor","l","call","m","enumerable","get","Symbol","toStringTag","__esModule","create","bind","default","hasOwnProperty","p","s","WebLinksAddon","RegExp","open","opener","location","href","console","warn","_handler","_options","_useLinkProvider","matchIndex","_linkProvider","registerLinkProvider","WebLinkProvider","_linkMatcherId","registerLinkMatcher","deregisterLinkMatcher","LinkComputer","_regex","provideLinks","computeLink","source","flags","_translateBufferLineToStringWithWrap","u","exec","f","log","indexOf","lastIndex","h","start","x","y","end","push","range","text","buffer","active","getLine","isWrapped","translateToString","substring","965","GlyphRenderer","Float32Array","BYTES_PER_ELEMENT","_","_colors","_gl","_dimensions","_activeBuffer","_vertices","count","attributes","attributesBuffers","selectionAttributes","throwIfFalsy","createProgram","_program","_projectionLocation","getUniformLocation","_resolutionLocation","_textureLocation","_vertexArrayObject","createVertexArray","bindVertexArray","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","enableVertexAttribArray","vertexAttribPointer","FLOAT","Uint8Array","ELEMENT_ARRAY_BUFFER","_attributesBuffer","vertexAttribDivisor","_atlasTexture","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","enable","BLEND","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","onResize","beginFrame","_atlas","updateCell","_updateCell","NULL_CELL_CODE","WHITESPACE_CELL_CODE","getRasterizedGlyphCombinedChar","getRasterizedGlyph","offset","scaledCharLeft","scaledCharTop","size","scaledCanvasWidth","scaledCanvasHeight","texturePositionClipSpace","sizeClipSpace","fill","updateSelection","selectionOpaque","rgba","selection","columnSelectMode","startCol","endCol","viewportCappedEndRow","viewportCappedStartRow","_updateSelectionRange","viewportStartRow","viewportEndRow","viewportY","RENDER_MODEL_INDICIES_PER_CELL","cells","RENDER_MODEL_FG_OFFSET","AttributeData","fg","bg","RENDER_MODEL_BG_OFFSET","getBgColorMode","_getColorFromAnsiIndex","getBgColor","g","toColorRGB","background","COMBINED_CHAR_BIT_MASK","getCell","getChars","ansi","Error","canvas","width","height","setColors","render","useProgram","lineLengths","set","STREAM_DRAW","hasCanvasChanged","uniform1i","activeTexture","TEXTURE0","cacheCanvas","generateMipmap","uniformMatrix4fv","PROJECTION_MATRIX","uniform2f","drawElementsInstanced","TRIANGLES","setAtlas","setDimensions","344","RectangleRenderer","_updateCachedColors","DYNAMIC_DRAW","_updateViewportRectangle","_bgFloat","_colorToFloat32Array","_selectionFloat","_addRectangleFloat","scaledCellWidth","scaledCellHeight","hasSelection","updateBackgrounds","_updateRectangle","foreground","expandFloat32Array","_addRectangle","310","RenderModel","Uint32Array","clearSelection","259","min","constructor","sliceFallback","795","WebglAddon","_preserveDrawingBuffer","_colorManager","colors","_renderer","WebglRenderer","setRenderer","_createRenderer","textureAtlas","configurable","clearTextureAtlas","clearCharAtlas","666","__extends","setPrototypeOf","__proto__","_model","_workCell","CellData","_onRequestRedraw","EventEmitter","_renderLayers","LinkRenderLayer","screenElement","CursorRenderLayer","scaledCharWidth","scaledCharHeight","canvasWidth","canvasHeight","_devicePixelRatio","devicePixelRatio","_updateDimensions","_canvas","document","createElement","antialias","depth","preserveDrawingBuffer","getContext","appendChild","_rectangleRenderer","_glyphRenderer","onCharSizeChanged","_isAttached","body","contains","event","forEach","removeChild","_charAtlas","reset","_refreshCharAtlas","onDevicePixelRatioChange","style","onBlur","onFocus","onSelectionChanged","_updateSelectionModel","fire","onCursorMove","onOptionsChanged","acquireCharAtlas","warmUp","clearTexture","_updateModel","registerCharacterJoiner","deregisterCharacterJoiner","renderRows","_charSizeService","onGridChanged","ydisp","lines","loadCell","getCode","ceil","getOption","round","Disposable","381","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","error","getShaderInfoLog","deleteShader","attachShader","VERTEX_SHADER","FRAGMENT_SHADER","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","713","removeTerminalFromCache","generateConfig","ownedBy","configEquals","config","atlas","splice","WebglCharAtlas","433","is256Color","css","cursor","cursorAccent","selectionTransparent","contrastCache","fontFamily","fontSize","fontWeight","fontWeightBold","allowTransparency","drawBoldTextInBrightColors","minimumContrastRatio","167","texturePosition","_config","_didWarmUp","_cacheMap","_cacheMapCombined","_currentRowY","_currentRowX","_currentRowHeight","_workBoundingBox","top","left","bottom","right","_workAttributeData","_cacheCtx","alpha","_tmpCanvas","_tmpCtx","_doWarmUp","_drawToCache","DEFAULT_COLOR","clearRect","_getBackgroundColor","_getForegroundCss","_getMinimumContrastCss","channels","toCss","substr","_resolveBackgroundRgba","_resolveForegroundRgba","getCss","ensureContrastRatio","setCss","String","fromCharCode","save","isInvisible","isBold","isInverse","isDim","isItalic","getFgColor","getFgColorMode","globalCompositeOperation","fillStyle","fillRect","font","textBaseline","globalAlpha","DIM_OPACITY","fillText","restore","R","getImageData","data","b","_findGlyphBoundingBox","w","_clipImageData","putImageData","Uint8ClampedArray","ImageData","toString","592","BaseRenderLayer","_container","_alpha","_scaledCharWidth","_scaledCharHeight","_scaledCellWidth","_scaledCellHeight","_scaledCharLeft","_scaledCharTop","classList","add","zIndex","_initCanvas","_ctx","_clearAll","_setTransparency","cloneNode","replaceChild","_fillCells","_fillBottomLineAtCells","_fillLeftLineAtCell","_strokeRectAtCell","lineWidth","strokeRect","_clearCells","_fillCharTrueColor","_getFont","_clipRow","beginPath","rect","clip","461","_onRequestRefreshRowsEvent","_cell","_state","isFocused","_cursorRenderers","bar","_renderBarCursor","block","_renderBlockCursor","underline","_renderUnderlineCursor","_clearCursor","_cursorBlinkStateManager","pause","cursorY","resume","_render","restartBlinkAnimation","isPaused","_coreService","isCursorInitialized","isCursorHidden","baseY","cursorX","content","_renderBlurCursor","getWidth","isCursorVisible","strokeStyle","_renderCallback","_restartInterval","_blinkStartTimeout","_blinkInterval","clearInterval","clearTimeout","_animationFrame","cancelAnimationFrame","_animationTimeRestarted","Date","now","requestAnimationFrame","setTimeout","setInterval","activeElement","textarea","hasFocus","733","linkifier","onShowLinkUnderline","_onShowLinkUnderline","onHideLinkUnderline","_onHideLinkUnderline","linkifier2","_clearCurrentLink","x1","y1","y2","x2","INVERTED_DEFAULT_COLOR","742","contrastRatio","toPaddedHex","rgb","color","toRgba","blend","isOpaque","toColor","opaque","toChannels","opacity","pow","relativeLuminance","relativeLuminance2","reduceLuminance","increaseLuminance","499","CHAR_ATLAS_CELL_SPACING","345","forwardEvent","_listeners","_disposed","_event","859","getDisposeArrayDisposable","disposeArray","_disposables","_isDisposed","register","unregister","455","concat","fillFallback","147","ExtendedAttrs","extended","fromColorRGB","clone","isUnderline","isBlink","isFgRGB","isBgRGB","isFgPalette","isBgPalette","isFgDefault","isBgDefault","isAttributeDefault","hasExtendedAttrs","updateExtended","isEmpty","getUnderlineColor","underlineColor","getUnderlineColorMode","isUnderlineColorRGB","isUnderlineColorPalette","isUnderlineColorDefault","getUnderlineStyle","underlineStyle","782","apply","arguments","combinedData","fromCharData","setFromCharData","isCombined","stringFromCodePoint","CHAR_DATA_ATTR_INDEX","CHAR_DATA_CHAR_INDEX","CHAR_DATA_WIDTH_INDEX","getAsCharData","855","WHITESPACE_CELL_WIDTH","WHITESPACE_CELL_CHAR","NULL_CELL_WIDTH","NULL_CELL_CHAR","CHAR_DATA_CODE_INDEX","DEFAULT_ATTR","133","Utf8ToUtf32","StringToUtf32","utf32ToString","_interim","decode","interim","4567","AccessibilityManager","_liveRegionLineCount","_charsToConsume","_charsToAnnounce","_accessibilityTreeRoot","_rowContainer","setAttribute","_rowElements","_createAccessibilityTreeNode","_topBoundaryFocusListener","_onBoundaryFocus","_bottomBoundaryFocusListener","addEventListener","_refreshRowsDimensions","_renderRowsDebouncer","RenderDebouncer","_renderRows","_refreshRows","_liveRegion","insertAdjacentElement","_onResize","onRender","onScroll","onA11yChar","_onChar","onLineFeed","onA11yTab","_onTab","onKey","_onKey","key","_clearLiveRegion","onDimensionsChange","_screenDprMonitor","ScreenDprMonitor","setListener","addDisposableDomListener","removeElementFromParent","target","getAttribute","relatedTarget","pop","shift","removeEventListener","unshift","scrollLines","focus","preventDefault","stopImmediatePropagation","children","tabIndex","_refreshRowDimensions","textContent","tooMuchOutput","isMac","parentNode","refresh","translateBufferLineToString","innerText","_announceCharacters","3614","replace","decPrivateModes","bracketedPasteMode","triggerDataEvent","getBoundingClientRect","clientX","clientY","rightClickHandler","moveTextAreaUnderMouseCursor","paste","handlePasteEvent","copyHandler","bracketTextForPaste","prepareTextForTerminal","clipboardData","setData","selectionText","stopPropagation","getData","rightClickSelect","select","4774","7239","ColorContrastCache","_color","_rgba","setColor","getColor","5680","ColorManager","DEFAULT_ANSI_COLORS","freeze","_litmusColor","createLinearGradient","_contrastCache","onOptionsChange","setTheme","_parseColor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","split","map","Number","9631","3656","3551","__decorate","getOwnPropertyDescriptor","Reflect","decorate","__param","MouseZone","Linkifier","_bufferService","_logService","_unicodeService","_linkMatchers","_nextLinkMatcherId","_onLinkTooltip","_rowsToLinkify","attachToDom","_element","_mouseZoneManager","linkifyRows","clearAll","_rowsTimeoutId","_linkifyRows","_timeBeforeLatency","iterator","hasNext","next","_doLinkifyRow","first","debug","id","regex","handler","validationCallback","hoverTooltipCallback","tooltipCallback","hoverLeaveCallback","leaveCallback","willLinkActivate","priority","_addLinkMatcherToList","stringIndexToBufferIndex","getFg","_addLink","getStringCellWidth","_createLinkHoverEvent","remove","IBufferService","ILogService","IUnicodeService","clickCallback","hoverCallback","6465","Linkifier2","_linkProviders","_linkCacheDisposables","_isMouseOut","_activeLine","_currentLink","_mouseService","_onMouseMove","_onClick","_lastMouseEvent","_positionFromMouseEvent","composedPath","_lastBufferCell","_onHover","_askForLink","_linkAtPosition","link","_activeProviderReplies","Map","_checkLinkProviderResult","_removeIntersectingLinks","Set","has","find","_handleNewLink","_linkLeave","state","decorations","pointerCursor","isHovered","_linkHover","defineProperties","toggle","_fireUnderlineEvent","onRenderedBufferChange","hover","_createLinkUnderlineEvent","leave","getCoords","9042","promptLabel","6954","MouseZoneManager","_screenElement","_selectionService","_optionsService","_zones","_areZonesActive","_lastHoverCoords","_initialSelectionLength","_onMouseDown","_mouseMoveListener","_mouseLeaveListener","_onMouseLeave","_clickListener","_deactivate","_activate","_currentZone","pageX","pageY","_findZoneEventAt","_tooltipTimeout","_onTooltip","options","linkTooltipHoverDuration","_getSelectionLength","IMouseService","ISelectionService","IOptionsService","6193","_rowCount","_rowStart","_rowEnd","_innerRefresh","5596","_currentDevicePixelRatio","_listener","clearListener","_outerListener","_updateDpr","_resolutionMediaMatchList","removeListener","matchMedia","addListener","3236","Terminal","S","E","k","A","O","D","P","M","browser","_keyDownHandled","_onCursorMove","_onRender","_onSelectionChange","_onTitleChange","_onBell","_onFocus","_onBlur","_onA11yCharEmitter","_onA11yTabEmitter","_setup","_instantiationService","createInstance","_inputHandler","onRequestBell","bell","onRequestRefreshRows","onRequestReset","onRequestWindowsOptionsReport","_reportWindowsOptions","onAnsiColorChange","_changeAnsiColor","onTitleChange","_afterResize","optionsService","colorIndex","onThemeChange","_customKeyEventHandler","write","buffers","preventScroll","_updateOptions","measure","syncScrollArea","screenReaderMode","_accessibilityManager","setupTabStops","_setTheme","theme","_onTextAreaFocus","sendFocus","C0","ESC","updateCursorStyle","_showCursor","blur","_onTextAreaBlur","_syncTextArea","isCursorInViewport","_compositionHelper","isComposing","ybase","lineHeight","_initGlobal","_bindKeys","isFirefox","button","rightClickSelectsWord","isLinux","_keyUp","_keyDown","_keyPress","compositionstart","compositionupdate","compositionend","updateCompositionElements","_queueLinkification","isConnected","_document","ownerDocument","dir","createDocumentFragment","_viewportElement","_viewportScrollArea","_helperContainer","CoreBrowserService","setService","ICoreBrowserService","CharSizeService","ICharSizeService","_theme","onOptionChange","_characterJoinerService","CharacterJoinerService","ICharacterJoinerService","RenderService","IRenderService","_compositionView","CompositionHelper","_soundService","SoundService","ISoundService","MouseService","Viewport","onRequestSyncScrollBar","SelectionService","onRequestScrollLines","amount","suppressScrollEvent","onSelectionChange","onRequestRedraw","onLinuxMouseSelection","_onScroll","onMouseDown","_coreMouseService","areMouseEventsActive","disable","bindMouse","rendererType","Renderer","DomRenderer","getRawByteCoords","overrideType","type","buttons","deltaY","triggerMouseEvent","col","row","action","ctrl","ctrlKey","alt","altKey","shiftKey","mouseup","wheel","mousedrag","mousemove","cancel","onProtocolChange","logLevel","explainEvents","passive","activeProtocol","shouldForceSelection","hasScrollback","getLinesScrolled","applicationCursorKeys","abs","onWheel","onTouchStart","onTouchMove","refreshRows","shouldColumnSelect","attachCustomKeyEventHandler","deregister","markers","addMarker","normal","setSelection","getSelection","getSelectionPosition","startColumn","selectionStart","startRow","endColumn","selectionEnd","endRow","selectAll","selectLines","keydown","scrollToBottom","evaluateKeyboardEvent","macOptionIsMeta","_isThirdLevelShift","ETX","CR","domEvent","metaKey","isWindows","keyCode","charCode","which","_soundBell","playBellSound","hasValidSize","getBlankLine","DEFAULT_ATTR_DATA","position","WindowsOptionsReportType","GET_WIN_SIZE_PIXELS","toFixed","GET_CELL_SIZE_PIXELS","cancelEvents","_visualBell","bellStyle","CoreTerminal","1680","_scrollLines","_scrollArea","_lastRecordedBufferLength","_lastRecordedViewportHeight","_lastRecordedBufferHeight","_lastTouchY","_lastScrollTop","_wheelPartialScroll","_refreshAnimationFrame","_ignoreNextScrollEvent","offsetWidth","backgroundColor","_refresh","offsetHeight","scrollTop","offsetParent","_bubbleScroll","cancelable","_getPixelsScrolled","_applyScrollModifier","deltaMode","WheelEvent","DOM_DELTA_LINE","DOM_DELTA_PAGE","DOM_DELTA_PIXEL","fastScrollModifier","fastScrollSensitivity","scrollSensitivity","touches","2950","_textarea","_isComposing","_isSendingComposition","_compositionPosition","_dataAlreadySent","_finalizeComposition","_handleAnyTextareaChanges","ICoreService","9806","getCoordsRelativeToElement","9504","moveToCellSequence","244","AddonManager","_addons","instance","loadAddon","isDisposed","_wrappedAddonDispose","4389","_addonManager","_checkProposedApi","allowProposedApi","onData","onBinary","onBell","_parser","_buffer","_verifyIntegers","registerMarker","scrollPages","scrollToTop","scrollToLine","writeUtf8","writeln","setOption","isNaN","init","getNullCell","_onBufferChange","_normal","_alternate","onBufferActivate","alternate","_line","registerCsiHandler","toArray","addCsiHandler","registerDcsHandler","addDcsHandler","registerEscHandler","addEscHandler","registerOscHandler","addOscHandler","unicodeService","versions","activeVersion","1546","_rendererId","_currentGlyphIdentifier","chars","code","bold","dim","italic","_drawChars","_getContrastColor","_drawUncachedChars","draw","join","2512","_coreBrowserService","cursorBlink","cursorStyle","cursorWidth","3700","GridCache","cache","5098","3525","_id","TextRenderLayer","SelectionRenderLayer","_runOperation","letterSpacing","IInstantiationService","1752","4149","_clearState","_didStateChange","_areCoordinatesEqual","9596","_characterWidth","_characterFont","_characterOverlapCache","_forEachCell","getJoinedCharacters","JoinedCellData","_isOverlapping","getCodePoint","_drawBackground","_drawForeground","measureText","9616","BaseCharAtlas","1420","DynamicCharAtlas","2040","8803","1906","NoneCharAtlas","getGlyphCacheKey","_drawToCacheCount","_glyphsWaitingOnBitmap","_bitmapCommitTimeout","_bitmap","_cacheCanvas","_width","_height","LRUMap","prealloc","_canCache","_drawFromCache","capacity","peek","index","_toCoordinateX","_toCoordinateY","drawImage","inBitmap","_getForegroundColor","_addGlyphToBitmap","isSafari","_generateBitmap","createImageBitmap","then","7001","_map","_head","_tail","_nodePool","_unlinkNode","prev","_appendNode","peekValue","1296","_linkifier","_linkifier2","_terminalClass","_refreshRowElements","_selectionContainer","_injectCss","_rowFactory","DomRendererRowFactory","_onLinkHover","_onLinkLeave","_themeStyleElement","_dimensionsStyleElement","overflow","_terminalSelector","BOLD_CLASS","ITALIC_CLASS","CURSOR_CLASS","CURSOR_STYLE_BLOCK_CLASS","CURSOR_BLINK_CLASS","CURSOR_STYLE_BAR_CLASS","CURSOR_STYLE_UNDERLINE_CLASS","_createSelectionElement","createRow","_setCellUnderline","textDecoration","3787","UNDERLINE_CLASS","DIM_CLASS","display","_applyMinimumContrast","_addStyle","456","SelectionModel","isSelectAllActive","selectionStartLength","areSelectionValuesReversed","onTrim","428","_onCharSizeChange","_measureStrategy","_parentElement","_result","_measureElement","4269","_characterJoiners","_nextCharacterJoinerId","getBg","getTrimmedLength","_getJoinedRanges","_mergeRanges","_stringRangesToCellRanges","getString","5114","getRootNode","8934","3230","_isPaused","_needsFullRefresh","_isNextRenderRedrawOnly","_needsSelectionRefresh","_canvasWidth","_canvasHeight","_selectionState","_onDimensionsChange","_onRefreshRequest","_renderDebouncer","_fullRefresh","onCharSizeChange","IntersectionObserver","_onIntersectionChange","threshold","observe","disconnect","isIntersecting","intersectionRatio","_fireOnCanvasResize","changeOptions","9312","_dragScrollAmount","_enabled","_mouseDownTimeStamp","_oldHasSelection","_oldSelectionStart","_oldSelectionEnd","_onLinuxMouseSelection","_onRedrawRequest","_onRequestScrollLines","_mouseUpListener","_onMouseUp","onUserInput","_trimListener","_onTrim","_onBufferActivate","_activeSelectionMode","_removeMouseDownListeners","finalSelectionStart","finalSelectionEnd","_isClickInSelection","_getMouseBufferCoords","_areCoordsInSelection","_selectWordAtCursor","currentLink","getRangeLength","_selectWordAt","_getMouseEventScrollAmount","macOptionClickForcesSelection","timeStamp","_onIncrementalClick","detail","_onSingleClick","_onDoubleClick","_onTripleClick","_addMouseDownListeners","_dragScrollIntervalTimer","_dragScroll","hasWidth","_selectLineAt","_selectToWordAt","_fireEventIfSelectionChanged","_fireOnSelectionChange","activeBuffer","_convertViewportColToCharacterIndex","_getWordAt","charAt","_isCharWordSeparator","trim","wordSeparator","getWrappedRangeForLine","last","4725","createDecorator","357","_audioContext","AudioContext","webkitAudioContext","audioContext","createBufferSource","decodeAudioData","_base64ToArrayBuffer","_removeMimeType","bellSound","connect","destination","atob","6349","CircularList","_maxLength","onDeleteEmitter","onInsertEmitter","onTrimEmitter","_array","_startIndex","_length","_getCyclicIndex","recycle","trimStart","shiftElements","1439","isArray","8969","_onBinary","_onData","_onLineFeed","InstantiationService","OptionsService","BufferService","LogService","CoreService","CoreMouseService","ICoreMouseService","_dirtyRowService","DirtyRowService","IDirtyRowService","UnicodeService","_charsetService","CharsetService","ICharsetService","InputHandler","markRangeDirty","scrollBottom","_writeBuffer","WriteBuffer","parse","_onScrollApi","_windowsMode","writeSync","LogLevelEnum","WARN","MINIMUM_COLS","MINIMUM_ROWS","scroll","windowsMode","_enableWindowsMode","updateWindowsModeWrappedState","final","8460","5435","setWinLines","restoreWin","minimizeWin","setWinPosition","setWinSizePixels","raiseWin","lowerWin","refreshWin","setWinSizeChars","maximizeWin","fullscreenWin","getWinState","getWinPosition","getWinSizePixels","getScreenSizePixels","getCellSizePixels","getWinSizeChars","getScreenSizeChars","getIconTitle","getWinTitle","pushTitle","popTitle","_data","hook","put","unhook","EscapeSequenceParser","_parseBuffer","_stringDecoder","_utf8Decoder","_windowTitle","_iconName","_windowTitleStack","_iconNameStack","_curAttrData","_eraseAttrDataInternal","_onRequestBell","_onRequestRefreshRows","_onRequestReset","_onRequestSyncScrollBar","_onRequestWindowsOptionsReport","_onA11yChar","_onA11yTab","_onAnsiColorChange","_parseStack","paused","cursorStartX","cursorStartY","decodedLength","setCsiHandlerFallback","identifier","identToString","params","setEscHandlerFallback","setExecuteHandlerFallback","setOscHandlerFallback","setDcsHandlerFallback","payload","setPrintHandler","print","insertChars","intermediates","scrollLeft","cursorUp","scrollRight","cursorDown","cursorForward","cursorBackward","cursorNextLine","cursorPrecedingLine","cursorCharAbsolute","cursorPosition","cursorForwardTab","eraseInDisplay","prefix","eraseInLine","insertLines","deleteLines","deleteChars","scrollUp","scrollDown","eraseChars","cursorBackwardTab","charPosAbsolute","hPositionRelative","repeatPrecedingCharacter","sendDeviceAttributesPrimary","sendDeviceAttributesSecondary","linePosAbsolute","vPositionRelative","hVPosition","tabClear","setMode","setModePrivate","resetMode","resetModePrivate","charAttributes","deviceStatus","deviceStatusPrivate","softReset","setCursorStyle","setScrollRegion","saveCursor","windowOptions","restoreCursor","insertColumns","deleteColumns","setExecuteHandler","BEL","LF","lineFeed","VT","FF","carriageReturn","BS","backspace","HT","tab","SO","shiftOut","SI","shiftIn","C1","IND","NEL","nextLine","HTS","tabSet","OscHandler","setTitle","setIconName","setAnsiColor","reverseIndex","keypadApplicationMode","keypadNumericMode","fullReset","setgLevel","selectDefaultCharset","selectCharset","CHARSETS","screenAlignmentPattern","setErrorHandler","_preserveStack","_logSlowResolvingAsync","Promise","race","catch","clearRange","charset","wraparound","modes","insertMode","markDirty","setCellFromCodePoint","wcwidth","_eraseAttrData","insertCells","addCodepointToCell","precedingCodepoint","hasContent","DcsHandler","convertEol","reverseWraparound","_restrictCursor","nextStop","origin","_setCursor","_moveCursor","tabs","prevStop","_eraseInBufferLine","replaceCells","_resetBufferLine","deleteCells","_is","termName","setgCharset","DEFAULT_CHARSET","applicationKeypad","activeEncoding","activateAltBuffer","activateNormalBuffer","_updateAttrColor","_extractColor","hasSubParams","getSubParams","_processUnderline","savedX","savedY","savedCurAttrData","savedCharset","_savedCharset","_parseAnsiColorChange","markAllDirty","844","6114","isIphone","isIpad","navigator","userAgent","platform","includes","test","8273","9282","3734","9092","BufferStringIterator","Buffer","MAX_BUFFER_SIZE","_hasScrollback","_nullCell","_whitespaceCell","_cols","_rows","_getCorrectBufferLength","getWhitespaceCell","BufferLine","maxLength","scrollback","fillViewportRows","_isReflowEnabled","_reflow","_reflowLarger","_reflowSmaller","reflowLargerGetLinesToRemove","reflowLargerCreateNewLayout","reflowLargerApplyNewLayout","layout","_reflowLargerAdjustViewport","countRemoved","reflowSmallerGetNewLineLengths","newLines","copyCellsFrom","getWrappedLineTrimmedLength","setCell","tabStopWidth","Marker","line","onInsert","onDelete","onDispose","_removeMarker","_trimRight","_endIndex","_startOverscan","_endOverscan","_current","8437","_combined","_extendedAttrs","keys","copyFrom","4841","4634","reduce","5295","BufferSet","_alt","inactiveBuffer","511","643","4863","_nextId","_onDispose","7116","j","q","z","Q","K","Y","Z","H","2584","NUL","SOH","STX","EOT","ENQ","ACK","DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM","SUB","FS","GS","RS","US","SP","DEL","PAD","HOP","BPH","NBH","SSA","ESA","HTJ","VTS","PLD","PLU","RI","SS2","SS3","DCS","PU1","PU2","STS","CCH","MW","SPA","EPA","SOS","SGCI","SCI","CSI","ST","OSC","PM","APC","7399","48","49","50","51","52","53","54","55","56","57","186","187","188","189","190","191","192","219","220","221","222","482","225","UnicodeV6","5981","queueMicrotask","resolve","_action","_callbacks","_pendingData","_bufferOffset","_isSyncWriting","_syncCalls","_innerWrite","5770","PAYLOAD_LIMIT","6351","DcsParser","_handlers","_active","_ident","_handlerFb","_stack","loopPosition","fallThrough","registerHandler","clearHandler","setHandlerFallback","Params","addParam","_params","_hitLimit","2015","VT500_TRANSITION_TABLE","TransitionTable","setDefault","addMany","_transitions","handlers","handlerPos","transition","chunkPos","initialState","currentState","_collect","_printHandlerFb","_executeHandlerFb","_csiHandlerFb","_escHandlerFb","_errorHandlerFb","_printHandler","_executeHandlers","_csiHandlers","_escHandlers","_oscParser","OscParser","_dcsParser","_errorHandler","_identifier","reverse","clearPrintHandler","clearEscHandler","clearExecuteHandler","clearCsiHandler","clearDcsHandler","clearOscHandler","clearErrorHandler","collect","abort","addSubParam","addDigit","6242","_start","_put","8742","maxSubParamsLength","_subParams","_subParamsLength","_subParamsIdx","Uint16Array","_rejectDigits","_rejectSubDigits","_digitIsSub","fromArray","getSubParamsAll","744","isUserScrolling","_cachedBlankLine","isFull","7994","glevel","_charsets","1753","NONE","events","restrict","X10","VT200","DRAG","ANY","DEFAULT","SGR","_protocols","_encodings","_activeProtocol","_activeEncoding","_onProtocolChange","_lastEvent","addProtocol","addEncoding","_compareEvents","triggerBinaryEvent","down","up","drag","move","6975","_onUserInput","_scrollToBottom","disableStdin","3730","_end","4348","__spreadArrays","ServiceCollection","_entries","_services","getService","getServiceDependencies","sort","name","7866","DEBUG","info","INFO","ERROR","off","OFF","_updateLogLevel","_evalLazyOptionalParams","_log","7302","DEFAULT_OPTIONS","DEFAULT_BELL_SOUND","altClickMovesCursor","_onOptionChange","_sanitizeAndValidateOption","8343","di$target","di$dependencies","serviceRegistry","2585","1480","_providers","_onChange","_activeProvider","Zmodem","HEX_DIGITS","HEX_OCTET_VALUE","hd","ENCODELIB","pack_u16_be","number","pack_u32_le","high_bytes","unpack_u16_be","bytes_arr","unpack_u32_le","octets","octets_to_hex","hex","parse_hex_octets","hex_octets","Text","Encoder","TextEncoder","unescape","encodeURIComponent","bytes","Decoder","TextDecoder","decodeURIComponent","escape","CRC32_MOD","_crctab","_updcrc","cp","crc","divident","currByte","crc_width","bit","_compute_crctab","__verify","expect","got","assign","CRC","crc16","octet_nums","crc32","verify16","verify32","err","input","encode_cur","encode_todo","ZDLE","ZMLIB","ZmodemZDLE","set_escape_ctrl_chars","escape_ctrl_chars","_setup_zdle_table","_zdle_table","zdle_table","last_code","_lastcode","arrbuf","ArrayBuffer","arrbuf_uint8","escctl_yn","arrbuf_i","trace","JSON","stringify","so_far","zsendline_tab","XOFF","XON","turbo_escape","TYPE_MESSAGE","aborted","peer_aborted","already_aborted","expected","validation","val","_generate_message","msg","args_after_type","msg_or_type","super","generated","message","ZPAD","ZBIN","ZHEX","ZBIN32","HEX_HEADER_CRLF","HEX_HEADER_CRLF_XON","HEX_HEADER_PREFIX","BINARY16_HEADER_PREFIX","BINARY32_HEADER_PREFIX","Header","ibuffer","discard_all","parser","garbage","TRIM_LOOP","first_ZPAD","_parse_hex","_parse_binary16","_parse_binary32","hdr","args","Ctr","FRAME_NAME_CREATOR","to_crc","_crc_bytes","_hex_header_ending","zencoder","_to_binary","_bytes4","crc_func","encode","TYPENUM","ZRQINIT_HEADER","ZRINIT_FLAG","CANFDX","CANOVIO","CANBRK","CANCRY","CANLZW","CANFC32","ESCCTL","ESC8","ZRINIT_HEADER","flags_arr","bufsize","flags_num","fl","_get_ZRINIT_flag_num","undefined","ZSINIT_FLAG","ZSINIT_HEADER","attn_seq_arr","_get_ZSINIT_flag_num","some","num","ZACK_HEADER","payload4","ZFILE_VALUES","sparse","transport","management","conversion","ZFILE_ORDER","ZFILE_HEADER","opts","bytes_copy","skip_if_absent","extkey","ZSKIP_HEADER","ZABORT_HEADER","ZFIN_HEADER","ZFERR_HEADER","ZOffsetHeader","ZRPOS_HEADER","ZDATA_HEADER","ZEOF_HEADER","FRAME_CLASS_TYPES","fc","NAME","CREATORS","_get_blank_header","typenum","creator","_get_blank_header_from_constructor","zdle_decoded","_parse_non_zdle_binary16","decoded","hdr_err","hex_bytes","lf_pos","preceding","parse_hex","ABORT_SEQUENCE","strip_ignored_bytes","find_subarray","haystack","needle","HAYSTACK","_check_aborted","session","Browser","send_files","files","batch","total_size","fobj","obj","mtime","lastModified","files_remaining","bytes_remaining","file_idx","promise_callback","cur_b","send_offer","xfer","on_offer_response","res","piece","reader","FileReader","onerror","onprogress","result","get_offset","send","on_progress","onload","on_file_complete","readAsArrayBuffer","save_to_disk","packets","blob","Blob","url","URL","createObjectURL","el","download","click","COMMON_ZM_HEX_START","SENTRY_CONSTRUCTOR_REQUIRED_ARGS","Detection","session_type","accepter","denier","checker","_confirmer","_denier","_is_valid","_session_type","Sentry","sentry","arg","_cache","_zsession","session_before_consume","consume","has_ended","get_trailing_bytes","new_session","_parse","to_terminal","_parsed_session","_on_retract","_on_detect","is_valid","on","_to_terminal","_after_session_end","set_sender","_sender","_send_abort","expired_session","array_like","zsession","common_hex_at","Session","ZRINIT_FLAGS","DEFAULT_RECEIVE_INPUT_MODE","OVER_AND_OUT","_Eventer","_on_evt","_evt_once_index","evt_name","todo","_get_evt_queue","queue","at","sess","cb","Receive","Send","sender_func","_has_ended","_before_consume","_aborted","_strip_and_enqueue_input","_check_for_abort_sequence","_consume_first","_input_buffer","_Add_event","trim_leading_garbage","_Happen","_trim_leading_garbage_until_header","new_header_and_crc","_log_header","_consume_header","_last_header_name","_last_header_crc","label","header","new_header","_on_receive","_next_header_handler","abort_at","_on_session_end","bytes_hdr","_create_header_bytes","_last_sent_header","name_and_args","build","_get_header_formatter","_zencoder","hdr_or_pkt","_bytes_after_OO","_bytes_being_consumed","parse_func","subpacket","Subpacket","_consume_data","frame_end","_next_subpacket_handler","_got_ZFIN","array","parsed","_parse_and_consume_subpacket","_parse_and_consume_header","get_payload","_textdecoder","_file_info","packet_payload","nul_at","fname","_octets_to_string","the_rest","mode","serial","Offer","get_options","_accept","_skip","_current_transfer","_accepted_offer","_offset_ok","_send_ZRPOS","_file_offset","_on_data_in","ack_expected","_send_header","between_files_handler","ZFILE","_consume_ZFILE_data","ZSINIT","spkt","_consume_ZSINIT_data","ZFIN","_consume_ZFIN","_attn","_started","ret","_make_promise_for_between_files","_send_ZRINIT","resolve_accept","ZDATA","_consume_ZDATA","_consume_ZDATA_data","ZEOF","_consume_ZEOF","bound_make_promise_for_between_files","_on_file_end","Transfer_Offer_Mixin","get_details","_zfile_opts","Transfer","file_info","send_func","end_func","_send","zfile_opts","accept_func","skip_func","_accept_func","_skip_func","_input_handler","_skipped","_verify_not_skipped","_accepted","on_input","_spool","_input_handler_mode","_get_spool","SENDER_BINARY_HEADER","zrinit_hdr","_subpacket_encode_func","_consume_ZRINIT","_start_keepalive_on_set_sender","func","_start_keepalive","_keepalive_promise","_keepalive_timeout","ZACK","_got_ZSINIT_ZACK","_send_ZSINIT","_keep_alive_promise","zsinit_flags","escapes_ctrl_chars","_send_header_and_data","_last_ZRINIT","get_buffer_size","can_full_duplex","can_overlap_io","escape_8th_bit","promise","subpacket_payload","Validation","offer_parameters","subpacket_space_pieces","_string_to_octets","_sending_file","payload_array","_convert_params_to_offer_payload_array","_stop_keepalive","zrpos_handler_setter_func","ZRPOS","_ensure_receiver_escapes_ctrl_chars","handler_setter_promise","ZSKIP","_send_interim_file_piece","_end_file","_sent_ZDATA","hdr_name_and_args","data_arr","frameend","data_bytes","_build_subpacket_bytes","string","_textencoder","uint8arr","bytes_obj","_send_file_part","_ensure_we_are_sending","_prepare_to_receive_ZRINIT","after_consume","ZRINIT","ok_to_close","rej","_sent_OO","final_packetend","obj_offset","bytes_count","chunk_size","at_end","chunk","_build_and_send_subpacket","SUBPACKET_BUILDER","ZmodemSubpacket","_encode","_payload","_frameend_num","crc_len","end_at","_frame_ends_lookup","104","ZEndNoAckSubpacket","105","ZNoEndNoAckSubpacket","106","ZNoEndAckSubpacket","107","ZEndAckSubpacket","zdle_at","frameend_num","zdle_encoded_payload","got_crc","ZEndSubpacketBase","ZNoEndSubpacketBase","end_no_ack","end_ack","no_end_no_ack","no_end_ack","LOOKS_LIKE_ZMODEM_HEADER","_validate_number","ok","mtime_ok","date_obj","getTime","protocols","Connection","ConnectionFactory","bare","WebSocket","close","isOpen","readyState","CONNECTING","OPEN","onOpen","callback","onopen","onReceive","onmessage","onClose","onclose","msgInputUnknown","msgInput","msgPing","msgResizeTerminal","msgUnknownOutput","msgOutput","msgPong","msgSetWindowTitle","msgSetPreferences","msgSetReconnect","msgSetBufferSize","term","connectionFactory","authToken","reconnect","bufSize","output","detection","zmodemDetect","sendInput","alert","confirm","zmodemSend","zmodemOffer","dialog","getFileSendDialog","selector","getElementById","onchange","getFileAcceptanceDialog","filenameElem","sizeElem","skipLink","onclick","ev","skip","acceptLink","accept","payloads","dataString","effectiveBufferSize","maxChunkSize","inputChunk","connection","btoa","className","innerHTML","pingTimer","reconnectTimeout","setup","termInfo","Arguments","AuthToken","resizeHandler","colmuns","columns","onInput","from","setWindowTitle","preferences","setPreferences","autoReconnect","deactivate","showMessage","WebTTY","elem","fitAddOn","messageTimeout","resizeListener","getMessage","timeout","showMessageElem","messageTimer","removeMessage","title","onDataHandler","onResizeHandler","Xterm","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","protocol","host","pathname","search","gotty_auth_token"],"mappings":"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AC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CA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","file":"gotty.js","sourcesContent":["/*!\n * crc-32 (https://npmjs.com/package/crc-32)\n * @license Apache-2.0\n * @version 1.2.1\n * ==crc-32/LICENSE==\n * Apache License\n * Version 2.0, January 2004\n * http://www.apache.org/licenses/\n * \n * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n * \n * 1. Definitions.\n * \n * \"License\" shall mean the terms and conditions for use, reproduction,\n * and distribution as defined by Sections 1 through 9 of this document.\n * \n * \"Licensor\" shall mean the copyright owner or entity authorized by\n * the copyright owner that is granting the License.\n * \n * \"Legal Entity\" shall mean the union of the acting entity and all\n * other entities that control, are controlled by, or are under common\n * control with that entity. For the purposes of this definition,\n * \"control\" means (i) the power, direct or indirect, to cause the\n * direction or management of such entity, whether by contract or\n * otherwise, or (ii) ownership of fifty percent (50%) or more of the\n * outstanding shares, or (iii) beneficial ownership of such entity.\n * \n * \"You\" (or \"Your\") shall mean an individual or Legal Entity\n * exercising permissions granted by this License.\n * \n * \"Source\" form shall mean the preferred form for making modifications,\n * including but not limited to software source code, documentation\n * source, and configuration files.\n * \n * \"Object\" form shall mean any form resulting from mechanical\n * transformation or translation of a Source form, including but\n * not limited to compiled object code, generated documentation,\n * and conversions to other media types.\n * \n * \"Work\" shall mean the work of authorship, whether in Source or\n * Object form, made available under the License, as indicated by a\n * copyright notice that is included in or attached to the work\n * (an example is provided in the Appendix below).\n * \n * \"Derivative Works\" shall mean any work, whether in Source or Object\n * form, that is based on (or derived from) the Work and for which the\n * editorial revisions, annotations, elaborations, or other modifications\n * represent, as a whole, an original work of authorship. For the purposes\n * of this License, Derivative Works shall not include works that remain\n * separable from, or merely link (or bind by name) to the interfaces of,\n * the Work and Derivative Works thereof.\n * \n * \"Contribution\" shall mean any work of authorship, including\n * the original version of the Work and any modifications or additions\n * to that Work or Derivative Works thereof, that is intentionally\n * submitted to Licensor for inclusion in the Work by the copyright owner\n * or by an individual or Legal Entity authorized to submit on behalf of\n * the copyright owner. For the purposes of this definition, \"submitted\"\n * means any form of electronic, verbal, or written communication sent\n * to the Licensor or its representatives, including but not limited to\n * communication on electronic mailing lists, source code control systems,\n * and issue tracking systems that are managed by, or on behalf of, the\n * Licensor for the purpose of discussing and improving the Work, but\n * excluding communication that is conspicuously marked or otherwise\n * designated in writing by the copyright owner as \"Not a Contribution.\"\n * \n * \"Contributor\" shall mean Licensor and any individual or Legal Entity\n * on behalf of whom a Contribution has been received by Licensor and\n * subsequently incorporated within the Work.\n * \n * 2. Grant of Copyright License. Subject to the terms and conditions of\n * this License, each Contributor hereby grants to You a perpetual,\n * worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n * copyright license to reproduce, prepare Derivative Works of,\n * publicly display, publicly perform, sublicense, and distribute the\n * Work and such Derivative Works in Source or Object form.\n * \n * 3. Grant of Patent License. Subject to the terms and conditions of\n * this License, each Contributor hereby grants to You a perpetual,\n * worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n * (except as stated in this section) patent license to make, have made,\n * use, offer to sell, sell, import, and otherwise transfer the Work,\n * where such license applies only to those patent claims licensable\n * by such Contributor that are necessarily infringed by their\n * Contribution(s) alone or by combination of their Contribution(s)\n * with the Work to which such Contribution(s) was submitted. If You\n * institute patent litigation against any entity (including a\n * cross-claim or counterclaim in a lawsuit) alleging that the Work\n * or a Contribution incorporated within the Work constitutes direct\n * or contributory patent infringement, then any patent licenses\n * granted to You under this License for that Work shall terminate\n * as of the date such litigation is filed.\n * \n * 4. Redistribution. You may reproduce and distribute copies of the\n * Work or Derivative Works thereof in any medium, with or without\n * modifications, and in Source or Object form, provided that You\n * meet the following conditions:\n * \n * (a) You must give any other recipients of the Work or\n * Derivative Works a copy of this License; and\n * \n * (b) You must cause any modified files to carry prominent notices\n * stating that You changed the files; and\n * \n * (c) You must retain, in the Source form of any Derivative Works\n * that You distribute, all copyright, patent, trademark, and\n * attribution notices from the Source form of the Work,\n * excluding those notices that do not pertain to any part of\n * the Derivative Works; and\n * \n * (d) If the Work includes a \"NOTICE\" text file as part of its\n * distribution, then any Derivative Works that You distribute must\n * include a readable copy of the attribution notices contained\n * within such NOTICE file, excluding those notices that do not\n * pertain to any part of the Derivative Works, in at least one\n * of the following places: within a NOTICE text file distributed\n * as part of the Derivative Works; within the Source form or\n * documentation, if provided along with the Derivative Works; or,\n * within a display generated by the Derivative Works, if and\n * wherever such third-party notices normally appear. The contents\n * of the NOTICE file are for informational purposes only and\n * do not modify the License. You may add Your own attribution\n * notices within Derivative Works that You distribute, alongside\n * or as an addendum to the NOTICE text from the Work, provided\n * that such additional attribution notices cannot be construed\n * as modifying the License.\n * \n * You may add Your own copyright statement to Your modifications and\n * may provide additional or different license terms and conditions\n * for use, reproduction, or distribution of Your modifications, or\n * for any such Derivative Works as a whole, provided Your use,\n * reproduction, and distribution of the Work otherwise complies with\n * the conditions stated in this License.\n * \n * 5. Submission of Contributions. Unless You explicitly state otherwise,\n * any Contribution intentionally submitted for inclusion in the Work\n * by You to the Licensor shall be under the terms and conditions of\n * this License, without any additional terms or conditions.\n * Notwithstanding the above, nothing herein shall supersede or modify\n * the terms of any separate license agreement you may have executed\n * with Licensor regarding such Contributions.\n * \n * 6. Trademarks. This License does not grant permission to use the trade\n * names, trademarks, service marks, or product names of the Licensor,\n * except as required for reasonable and customary use in describing the\n * origin of the Work and reproducing the content of the NOTICE file.\n * \n * 7. Disclaimer of Warranty. Unless required by applicable law or\n * agreed to in writing, Licensor provides the Work (and each\n * Contributor provides its Contributions) on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n * implied, including, without limitation, any warranties or conditions\n * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n * PARTICULAR PURPOSE. You are solely responsible for determining the\n * appropriateness of using or redistributing the Work and assume any\n * risks associated with Your exercise of permissions under this License.\n * \n * 8. Limitation of Liability. In no event and under no legal theory,\n * whether in tort (including negligence), contract, or otherwise,\n * unless required by applicable law (such as deliberate and grossly\n * negligent acts) or agreed to in writing, shall any Contributor be\n * liable to You for damages, including any direct, indirect, special,\n * incidental, or consequential damages of any character arising as a\n * result of this License or out of the use or inability to use the\n * Work (including but not limited to damages for loss of goodwill,\n * work stoppage, computer failure or malfunction, or any and all\n * other commercial damages or losses), even if such Contributor\n * has been advised of the possibility of such damages.\n * \n * 9. Accepting Warranty or Additional Liability. While redistributing\n * the Work or Derivative Works thereof, You may choose to offer,\n * and charge a fee for, acceptance of support, warranty, indemnity,\n * or other liability obligations and/or rights consistent with this\n * License. However, in accepting such obligations, You may act only\n * on Your own behalf and on Your sole responsibility, not on behalf\n * of any other Contributor, and only if You agree to indemnify,\n * defend, and hold each Contributor harmless for any liability\n * incurred by, or claims asserted against, such Contributor by reason\n * of your accepting any such warranty or additional liability.\n * \n * END OF TERMS AND CONDITIONS\n * \n * APPENDIX: How to apply the Apache License to your work.\n * \n * To apply the Apache License to your work, attach the following\n * boilerplate notice, with the fields enclosed by brackets \"{}\"\n * replaced with your own identifying information. (Don't include\n * the brackets!) The text should be enclosed in the appropriate\n * comment syntax for the file format. We also recommend that a\n * file or class name and description of purpose be included on the\n * same \"printed page\" as the copyright notice for easier\n * identification within third-party archives.\n * \n * Copyright (C) 2014-present SheetJS LLC\n * \n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n * http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */\n/* vim: set ts=2: */\n/*exported CRC32 */\nvar CRC32;\n(function (factory) {\n\t/*jshint ignore:start */\n\t/*eslint-disable */\n\tif(typeof DO_NOT_EXPORT_CRC === 'undefined') {\n\t\tif('object' === typeof exports) {\n\t\t\tfactory(exports);\n\t\t} else if ('function' === typeof define && define.amd) {\n\t\t\tdefine(function () {\n\t\t\t\tvar module = {};\n\t\t\t\tfactory(module);\n\t\t\t\treturn module;\n\t\t\t});\n\t\t} else {\n\t\t\tfactory(CRC32 = {});\n\t\t}\n\t} else {\n\t\tfactory(CRC32 = {});\n\t}\n\t/*eslint-enable */\n\t/*jshint ignore:end */\n}(function(CRC32) {\nCRC32.version = '1.2.1';\n/*global Int32Array */\nfunction signed_crc_table() {\n\tvar c = 0, table = new Array(256);\n\n\tfor(var n =0; n != 256; ++n){\n\t\tc = n;\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\ttable[n] = c;\n\t}\n\n\treturn typeof Int32Array !== 'undefined' ? new Int32Array(table) : table;\n}\n\nvar T0 = signed_crc_table();\nfunction slice_by_16_tables(T) {\n\tvar c = 0, v = 0, n = 0, table = typeof Int32Array !== 'undefined' ? new Int32Array(4096) : new Array(4096) ;\n\n\tfor(n = 0; n != 256; ++n) table[n] = T[n];\n\tfor(n = 0; n != 256; ++n) {\n\t\tv = T[n];\n\t\tfor(c = 256 + n; c < 4096; c += 256) v = table[c] = (v >>> 8) ^ T[v & 0xFF];\n\t}\n\tvar out = [];\n\tfor(n = 1; n != 16; ++n) out[n - 1] = typeof Int32Array !== 'undefined' ? table.subarray(n * 256, n * 256 + 256) : table.slice(n * 256, n * 256 + 256);\n\treturn out;\n}\nvar TT = slice_by_16_tables(T0);\nvar T1 = TT[0], T2 = TT[1], T3 = TT[2], T4 = TT[3], T5 = TT[4];\nvar T6 = TT[5], T7 = TT[6], T8 = TT[7], T9 = TT[8], Ta = TT[9];\nvar Tb = TT[10], Tc = TT[11], Td = TT[12], Te = TT[13], Tf = TT[14];\nfunction crc32_bstr(bstr, seed) {\n\tvar C = seed ^ -1;\n\tfor(var i = 0, L = bstr.length; i < L;) C = (C>>>8) ^ T0[(C^bstr.charCodeAt(i++))&0xFF];\n\treturn ~C;\n}\n\nfunction crc32_buf(B, seed) {\n\tvar C = seed ^ -1, L = B.length - 15, i = 0;\n\tfor(; i < L;) C =\n\t\tTf[B[i++] ^ (C & 255)] ^\n\t\tTe[B[i++] ^ ((C >> 8) & 255)] ^\n\t\tTd[B[i++] ^ ((C >> 16) & 255)] ^\n\t\tTc[B[i++] ^ (C >>> 24)] ^\n\t\tTb[B[i++]] ^ Ta[B[i++]] ^ T9[B[i++]] ^ T8[B[i++]] ^\n\t\tT7[B[i++]] ^ T6[B[i++]] ^ T5[B[i++]] ^ T4[B[i++]] ^\n\t\tT3[B[i++]] ^ T2[B[i++]] ^ T1[B[i++]] ^ T0[B[i++]];\n\tL += 15;\n\twhile(i < L) C = (C>>>8) ^ T0[(C^B[i++])&0xFF];\n\treturn ~C;\n}\n\nfunction crc32_str(str, seed) {\n\tvar C = seed ^ -1;\n\tfor(var i = 0, L = str.length, c = 0, d = 0; i < L;) {\n\t\tc = str.charCodeAt(i++);\n\t\tif(c < 0x80) {\n\t\t\tC = (C>>>8) ^ T0[(C^c)&0xFF];\n\t\t} else if(c < 0x800) {\n\t\t\tC = (C>>>8) ^ T0[(C ^ (192|((c>>6)&31)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(c&63)))&0xFF];\n\t\t} else if(c >= 0xD800 && c < 0xE000) {\n\t\t\tc = (c&1023)+64; d = str.charCodeAt(i++)&1023;\n\t\t\tC = (C>>>8) ^ T0[(C ^ (240|((c>>8)&7)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((c>>2)&63)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((d>>6)&15)|((c&3)<<4)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(d&63)))&0xFF];\n\t\t} else {\n\t\t\tC = (C>>>8) ^ T0[(C ^ (224|((c>>12)&15)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((c>>6)&63)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(c&63)))&0xFF];\n\t\t}\n\t}\n\treturn ~C;\n}\nCRC32.table = T0;\n// $FlowIgnore\nCRC32.bstr = crc32_bstr;\n// $FlowIgnore\nCRC32.buf = crc32_buf;\n// $FlowIgnore\nCRC32.str = crc32_str;\n}));\n","/*!\n * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit)\n * @license MIT\n * @version 0.5.0\n * ==xterm-addon-fit/LICENSE==\n * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.FitAddon=t():e.FitAddon=t()}(self,(function(){return(()=>{\"use strict\";var e={775:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue(\"height\")),i=Math.max(0,parseInt(t.getPropertyValue(\"width\"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue(\"padding-top\"))+parseInt(n.getPropertyValue(\"padding-bottom\"))),a=i-(parseInt(n.getPropertyValue(\"padding-right\"))+parseInt(n.getPropertyValue(\"padding-left\")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(a/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()}));\n//# sourceMappingURL=xterm-addon-fit.js.map","/*!\n * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links)\n * @license MIT\n * @version 0.4.0\n * ==xterm-addon-web-links/LICENSE==\n * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.WebLinksAddon=t():e.WebLinksAddon=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.WebLinksAddon=void 0;var r=n(1),i=new RegExp(\"(?:^|[^\\\\da-z\\\\.-]+)((https?:\\\\/\\\\/)((([\\\\da-z\\\\.-]+)\\\\.([a-z\\\\.]{2,6}))|((\\\\d{1,3}\\\\.){3}\\\\d{1,3})|(localhost))(:\\\\d{1,5})?((\\\\/[\\\\/\\\\w\\\\.\\\\-%~:+@]*)*([^:\\\"'\\\\s]))?(\\\\?[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?(#[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?)($|[^\\\\/\\\\w\\\\.\\\\-%]+)\");function o(e,t){var n=window.open();n?(n.opener=null,n.location.href=t):console.warn(\"Opening link blocked as opener could not be cleared\")}var a=function(){function e(e,t,n){void 0===e&&(e=o),void 0===t&&(t={}),void 0===n&&(n=!1),this._handler=e,this._options=t,this._useLinkProvider=n,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&\"registerLinkProvider\"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new r.WebLinkProvider(this._terminal,i,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(i,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var r=function(){function e(e,t,n){this._terminal=e,this._regex=t,this._handler=n}return e.prototype.provideLinks=function(e,t){t(i.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=r;var i=function(){function e(){}return e.computeLink=function(t,n,r,i){for(var o,a=new RegExp(n.source,(n.flags||\"\")+\"g\"),s=e._translateBufferLineToStringWithWrap(t-1,!1,r),u=s[0],d=s[1],l=-1,c=[];null!==(o=a.exec(u));){var f=o[1];if(!f){console.log(\"match found without corresponding matchIndex\");break}if(l=u.indexOf(f,l+1),a.lastIndex=l+f.length,l<0)break;for(var p=l+f.length,h=d+1;p>r.cols;)p-=r.cols,h++;var v={start:{x:l+1,y:d+1},end:{x:p,y:h}};c.push({range:v,text:f,activate:i})}return c},e._translateBufferLineToStringWithWrap=function(e,t,n){var r,i,o=\"\";do{if(!(s=n.buffer.active.getLine(e)))break;s.isWrapped&&e--,i=s.isWrapped}while(i);var a=e;do{var s,u=n.buffer.active.getLine(e+1);if(r=!!u&&u.isWrapped,!(s=n.buffer.active.getLine(e)))break;o+=s.translateToString(!r&&t).substring(0,n.cols),e++}while(r);return[o,a]},e}();t.LinkComputer=i}])}));\n//# sourceMappingURL=xterm-addon-web-links.js.map","/*!\n * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl)\n * @license MIT\n * @version 0.10.0\n * ==xterm-addon-webgl/LICENSE==\n * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.WebglAddon=e():t.WebglAddon=e()}(self,(function(){return(()=>{\"use strict\";var t={965:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.GlyphRenderer=void 0;var r=i(381),o=i(310),n=i(455),s=i(259),a=i(855),l=i(147),h=10,c=h*Float32Array.BYTES_PER_ELEMENT,_=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_unitquad;\\nlayout (location = 1) in vec2 a_cellpos;\\nlayout (location = 2) in vec2 a_offset;\\nlayout (location = 3) in vec2 a_size;\\nlayout (location = 4) in vec2 a_texcoord;\\nlayout (location = 5) in vec2 a_texsize;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec2 v_texcoord;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec2 v_texcoord;\\n\\nuniform sampler2D u_texture;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = texture(u_texture, v_texcoord);\\n}\"));this._program=s,this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._textureLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_texture\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),_=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,_),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,c,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,c,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,c,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,c,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,c,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=r.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return t.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},t.prototype.updateCell=function(t,e,i,r,o,n){this._updateCell(this._vertices.attributes,t,e,i,r,o,n)},t.prototype._updateCell=function(t,e,i,r,o,s,l){var c,_=(i*this._terminal.cols+e)*h;r!==a.NULL_CELL_CODE&&r!==a.WHITESPACE_CELL_CODE&&void 0!==r?this._atlas&&((c=l&&l.length>1?this._atlas.getRasterizedGlyphCombinedChar(l,o,s):this._atlas.getRasterizedGlyph(r,o,s))?(t[_]=-c.offset.x+this._dimensions.scaledCharLeft,t[_+1]=-c.offset.y+this._dimensions.scaledCharTop,t[_+2]=c.size.x/this._dimensions.scaledCanvasWidth,t[_+3]=c.size.y/this._dimensions.scaledCanvasHeight,t[_+4]=c.texturePositionClipSpace.x,t[_+5]=c.texturePositionClipSpace.y,t[_+6]=c.sizeClipSpace.x,t[_+7]=c.sizeClipSpace.y):n.fill(t,0,_,_+h-1-2)):n.fill(t,0,_,_+h-1-2)},t.prototype.updateSelection=function(t){var e=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var i=this._colors.selectionOpaque.rgba>>>8|50331648;if(t.selection.columnSelectMode)for(var r=t.selection.startCol,o=t.selection.endCol-r,n=t.selection.viewportCappedEndRow-t.selection.viewportCappedStartRow+1,a=t.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var g=l.AttributeData.toColorRGB(f.getBgColor());u|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;u|=v>>8&16711680|v>>8&65280|v>>8&255}u|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(h));var C=s.getCell(c).getChars();this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u,C)}else this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u)}},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._colors.ansi[t]},t.prototype.onResize=function(){var t=this._terminal,e=this._gl;e.viewport(0,0,e.canvas.width,e.canvas.height);var i=t.cols*t.rows*h;if(this._vertices.count!==i){this._vertices.count=i,this._vertices.attributes=new Float32Array(i);for(var r=0;r{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RectangleRenderer=void 0;var r=i(381),o=i(455),n=i(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_position;\\nlayout (location = 1) in vec2 a_size;\\nlayout (location = 2) in vec4 a_color;\\nlayout (location = 3) in vec2 a_unitquad;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec4 v_color;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_color = a_color;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec4 v_color;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = v_color;\\n}\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),c=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,c),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return t.prototype.render=function(){var t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,r.PROJECTION_MATRIX),t.uniform2f(this._resolutionLocation,t.canvas.width,t.canvas.height),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,this._vertices.count),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.selection,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,3)},t.prototype.onResize=function(){this._updateViewportRectangle()},t.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},t.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},t.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},t.prototype.updateSelection=function(t){var e=this._terminal;if(t.hasSelection)if(t.columnSelectMode){var i=t.startCol,r=t.endCol-i,n=t.viewportCappedEndRow-t.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,r*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{i=t.viewportStartRow===t.viewportCappedStartRow?t.startCol:0;var s=t.viewportCappedStartRow===t.viewportEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-i)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(t.viewportCappedEndRow-t.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(t.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,e.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),t.viewportCappedStartRow!==t.viewportCappedEndRow){var l=t.viewportEndRow===t.viewportCappedEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,16,0,t.viewportCappedEndRow*this._dimensions.scaledCellHeight,l*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},t.prototype.updateBackgrounds=function(t){for(var e=this._terminal,i=this._vertices,r=1,o=0;o>24&255)/255,d=(l>>16&255)/255,u=(l>>8&255)/255;this._addRectangle(t.attributes,e,h,c,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,_,d,u,1)},t.prototype._addRectangle=function(t,e,i,r,o,n,s,a,l,h){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s,t[e+5]=a,t[e+6]=l,t[e+7]=h},t.prototype._addRectangleFloat=function(t,e,i,r,o,n,s){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s[0],t[e+5]=s[1],t[e+6]=s[2],t[e+7]=s[3]},t.prototype._colorToFloat32Array=function(t){return new Float32Array([(t.rgba>>24&255)/255,(t.rgba>>16&255)/255,(t.rgba>>8&255)/255,(255&t.rgba)/255])},t}();e.RectangleRenderer=a},310:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RenderModel=e.COMBINED_CHAR_BIT_MASK=e.RENDER_MODEL_FG_OFFSET=e.RENDER_MODEL_BG_OFFSET=e.RENDER_MODEL_INDICIES_PER_CELL=void 0;var r=i(455);e.RENDER_MODEL_INDICIES_PER_CELL=3,e.RENDER_MODEL_BG_OFFSET=1,e.RENDER_MODEL_FG_OFFSET=2,e.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function t(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return t.prototype.resize=function(t,i){var r=t*i*e.RENDER_MODEL_INDICIES_PER_CELL;r!==this.cells.length&&(this.cells=new Uint32Array(r),this.lineLengths=new Uint32Array(i))},t.prototype.clear=function(){r.fill(this.cells,0,0),r.fill(this.lineLengths,0,0)},t.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},t}();e.RenderModel=o},259:(t,e)=>{function i(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length),e<0&&(e=(t.length+e)%t.length),i=i>=t.length?t.length:(t.length+i)%t.length,e=Math.min(e,i);for(var r=new t.constructor(i-e),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglAddon=void 0;var r=i(666),o=function(){function t(t){this._preserveDrawingBuffer=t}return t.prototype.activate=function(t){if(!t.element)throw new Error(\"Cannot activate WebglAddon before Terminal.open\");this._terminal=t;var e=t._core._renderService,i=t._core._colorManager.colors;this._renderer=new r.WebglRenderer(t,i,this._preserveDrawingBuffer),e.setRenderer(this._renderer)},t.prototype.dispose=function(){if(!this._terminal)throw new Error(\"Cannot dispose WebglAddon because it is activated\");var t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(t.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._renderer)||void 0===t?void 0:t.textureAtlas},enumerable:!1,configurable:!0}),t.prototype.clearTextureAtlas=function(){var t;null===(t=this._renderer)||void 0===t||t.clearCharAtlas()},t}();e.WebglAddon=o},666:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglRenderer=void 0;var n=i(965),s=i(733),a=i(461),l=i(713),h=i(344),c=i(310),_=i(859),d=i(855),u=i(345),f=i(782),p=function(t){function e(e,i,r){var o=t.call(this)||this;o._terminal=e,o._colors=i,o._model=new c.RenderModel,o._workCell=new f.CellData,o._onRequestRedraw=new u.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement(\"canvas\");var l={antialias:!1,depth:!1,preserveDrawingBuffer:r};if(o._gl=o._canvas.getContext(\"webgl2\",l),!o._gl)throw new Error(\"WebGL2 not supported \"+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new h.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(e,t),Object.defineProperty(e.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._renderLayers.forEach((function(t){return t.dispose()})),this._core.screenElement.removeChild(this._canvas),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._charAtlas)||void 0===t?void 0:t.cacheCanvas},enumerable:!1,configurable:!0}),e.prototype.setColors=function(t){var e=this;this._colors=t,this._renderLayers.forEach((function(t){t.setColors(e._terminal,e._colors),t.reset(e._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},e.prototype.onResize=function(t,e){var i=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(t){return t.resize(i._terminal,i.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+\"px\",this._canvas.style.height=this.dimensions.canvasHeight+\"px\",this._core.screenElement.style.width=this.dimensions.canvasWidth+\"px\",this._core.screenElement.style.height=this.dimensions.canvasHeight+\"px\",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},e.prototype.onBlur=function(){var t=this;this._renderLayers.forEach((function(e){return e.onBlur(t._terminal)}))},e.prototype.onFocus=function(){var t=this;this._renderLayers.forEach((function(e){return e.onFocus(t._terminal)}))},e.prototype.onSelectionChanged=function(t,e,i){var r=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(r._terminal,t,e,i)})),this._updateSelectionModel(t,e,i),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.onCursorMove=function(){var t=this;this._renderLayers.forEach((function(e){return e.onCursorMove(t._terminal)}))},e.prototype.onOptionsChanged=function(){var t=this;this._renderLayers.forEach((function(e){return e.onOptionsChanged(t._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},e.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var t=l.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!(\"getRasterizedGlyph\"in t))throw new Error(\"The webgl renderer only works with the webgl char atlas\");this._charAtlas=t,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},e.prototype.clearCharAtlas=function(){var t;null===(t=this._charAtlas)||void 0===t||t.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.clear=function(){var t=this;this._renderLayers.forEach((function(e){return e.reset(t._terminal)}))},e.prototype.registerCharacterJoiner=function(t){return-1},e.prototype.deregisterCharacterJoiner=function(t){return!1},e.prototype.renderRows=function(t,e){var i=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(r){return r.onGridChanged(i._terminal,t,e)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(t,e),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},e.prototype._updateModel=function(t,e){for(var i=this._core,r=t;r<=e;r++){var o=r+i.buffer.ydisp,n=i.buffer.lines.get(o);this._model.lineLengths[r]=0;for(var s=0;s1&&(l|=c.COMBINED_CHAR_BIT_MASK),this._model.cells[h]=l,this._model.cells[h+c.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[h+c.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,r,l,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},e.prototype._updateSelectionModel=function(t,e,i){void 0===i&&(i=!1);var r=this._terminal;if(!t||!e||t[0]===e[0]&&t[1]===e[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=t[1]-r.buffer.active.viewportY,n=e[1]-r.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,r.rows-1);if(s>=r.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=i,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=t[0],this._model.selection.endCol=e[0],this._rectangleRenderer.updateSelection(this._model.selection)},e.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption(\"lineHeight\")),this.dimensions.scaledCharTop=1===this._terminal.getOption(\"lineHeight\")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption(\"letterSpacing\")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption(\"letterSpacing\")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},e}(_.Disposable);e.WebglRenderer=p},381:(t,e)=>{function i(t,e,i){var o=r(t.createShader(e));if(t.shaderSource(o,i),t.compileShader(o),t.getShaderParameter(o,t.COMPILE_STATUS))return o;console.error(t.getShaderInfoLog(o)),t.deleteShader(o)}function r(t){if(!t)throw new Error(\"value must not be falsy\");return t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.throwIfFalsy=e.expandFloat32Array=e.createShader=e.createProgram=e.PROJECTION_MATRIX=void 0,e.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),e.createProgram=function(t,e,o){var n=r(t.createProgram());if(t.attachShader(n,r(i(t,t.VERTEX_SHADER,e))),t.attachShader(n,r(i(t,t.FRAGMENT_SHADER,o))),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS))return n;console.error(t.getProgramInfoLog(n)),t.deleteProgram(n)},e.createShader=i,e.expandFloat32Array=function(t,e){for(var i=Math.min(2*t.length,e),r=new Float32Array(i),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.removeTerminalFromCache=e.acquireCharAtlas=void 0;var r=i(433),o=i(167),n=[];e.acquireCharAtlas=function(t,e,i,s){for(var a=r.generateConfig(i,s,t,e),l=0;l=0){if(r.configEquals(c.config,a))return c.atlas;1===c.ownedBy.length?(c.atlas.dispose(),n.splice(l,1)):c.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(e,\"__esModule\",{value:!0}),e.is256Color=e.configEquals=e.generateConfig=void 0;var i={css:\"\",rgba:0};e.generateConfig=function(t,e,r,o){var n={foreground:o.foreground,background:o.background,cursor:i,cursorAccent:i,selectionTransparent:i,selectionOpaque:i,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:t,scaledCharHeight:e,fontFamily:r.getOption(\"fontFamily\"),fontSize:r.getOption(\"fontSize\"),fontWeight:r.getOption(\"fontWeight\"),fontWeightBold:r.getOption(\"fontWeightBold\"),allowTransparency:r.getOption(\"allowTransparency\"),drawBoldTextInBrightColors:r.getOption(\"drawBoldTextInBrightColors\"),minimumContrastRatio:r.getOption(\"minimumContrastRatio\"),colors:n}},e.configEquals=function(t,e){for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglCharAtlas=void 0;var r=i(499),o=i(855),n=i(381),s=i(147),a=i(742),l=1024,h=1024,c=Math.floor(819.2),_={css:\"rgba(0, 0, 0, 0)\",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},u=function(){function t(t,e){this._config=e,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=t.createElement(\"canvas\"),this.cacheCanvas.width=l,this.cacheCanvas.height=h,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext(\"2d\",{alpha:!0})),this._tmpCanvas=t.createElement(\"canvas\"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext(\"2d\",{alpha:this._config.allowTransparency}))}return t.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},t.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},t.prototype._doWarmUp=function(){for(var t,e,i=33;i<126;i++){var r=this._drawToCache(i,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[i]=((t={})[o.DEFAULT_COLOR]=((e={})[o.DEFAULT_COLOR]=r,e),t)}},t.prototype.beginFrame=function(){return this._currentRowY>c&&(this.clearTexture(),this.warmUp(),!0)},t.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,l,h),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},t.prototype.getRasterizedGlyphCombinedChar=function(t,e,i){var r,o=this._cacheMapCombined[t];o||(o={},this._cacheMapCombined[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype.getRasterizedGlyph=function(t,e,i){var r,o=this._cacheMap[t];o||(o={},this._cacheMap[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._config.colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._config.colors.ansi[t]},t.prototype._getBackgroundColor=function(t,e,i){if(this._config.allowTransparency)return _;switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e);case 50331648:var r=s.AttributeData.toColorRGB(e);return{rgba:e<<8,css:\"#\"+f(r[0])+f(r[1])+f(r[2])};case 0:default:return i?this._config.colors.foreground:this._config.colors.background}},t.prototype._getForegroundCss=function(t,e,i,r,o,n,l,h){var c=this._getMinimumContrastCss(t,e,i,r,o,n,l,h);if(c)return c;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&h&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var _=s.AttributeData.toColorRGB(n);return a.channels.toCss(_[0],_[1],_[2]);case 0:default:if(l){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},t.prototype._resolveBackgroundRgba=function(t,e,i){switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},t.prototype._resolveForegroundRgba=function(t,e,i,r){switch(t){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&r&&e<8&&(e+=8),this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},t.prototype._getMinimumContrastCss=function(t,e,i,r,o,n,s,l){if(1!==this._config.minimumContrastRatio){var h=this._config.colors.contrastCache.getCss(t,r);if(void 0!==h)return h||void 0;var c=this._resolveBackgroundRgba(e,i,s),_=this._resolveForegroundRgba(o,n,s,l),d=a.rgba.ensureContrastRatio(c,_,this._config.minimumContrastRatio);if(d){var u=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(t,r,u),u}this._config.colors.contrastCache.setCss(t,r,null)}},t.prototype._drawToCache=function(t,e,i){var o=\"number\"==typeof t?String.fromCharCode(t):t;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=e,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),c=!!this._workAttributeData.isItalic(),_=this._workAttributeData.getFgColor(),u=this._workAttributeData.getFgColorMode(),f=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var g=_;_=f,f=g;var v=u;u=p,p=v}var C=this._getBackgroundColor(p,f,s);this._tmpCtx.globalCompositeOperation=\"copy\",this._tmpCtx.fillStyle=C.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation=\"source-over\";var m=n?this._config.fontWeightBold:this._config.fontWeight,y=c?\"italic\":\"\";this._tmpCtx.font=y+\" \"+m+\" \"+this._config.fontSize*this._config.devicePixelRatio+\"px \"+this._config.fontFamily,this._tmpCtx.textBaseline=\"middle\",this._tmpCtx.fillStyle=this._getForegroundCss(e,p,f,i,u,_,s,n),a&&(this._tmpCtx.globalAlpha=r.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var R=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(t,e){for(var i=!0,r=e.rgba>>>24,o=e.rgba>>>16&255,n=e.rgba>>>8&255,s=0;sl&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),b.texturePosition.x=this._currentRowX,b.texturePosition.y=this._currentRowY,b.texturePositionClipSpace.x=this._currentRowX/l,b.texturePositionClipSpace.y=this._currentRowY/h,this._currentRowHeight=Math.max(this._currentRowHeight,b.size.y),this._currentRowX+=b.size.x,this._cacheCtx.putImageData(w,b.texturePosition.x,b.texturePosition.y),b},t.prototype._findGlyphBoundingBox=function(t,e){e.top=0;for(var i=!1,r=0;r=0;o--){for(r=0;r=0;r--){for(o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.BaseRenderLayer=void 0;var r=i(713),o=i(381),n=function(){function t(t,e,i,r,o){this._container=t,this._alpha=r,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+e+\"-layer\"),this._canvas.style.zIndex=i.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return t.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},t.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},t.prototype.onOptionsChanged=function(t){},t.prototype.onBlur=function(t){},t.prototype.onFocus=function(t){},t.prototype.onCursorMove=function(t){},t.prototype.onGridChanged=function(t,e,i){},t.prototype.onSelectionChanged=function(t,e,i,r){void 0===r&&(r=!1)},t.prototype.setColors=function(t,e){this._refreshCharAtlas(t,e)},t.prototype._setTransparency=function(t,e){if(e!==this._alpha){var i=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(t,this._colors),this.onGridChanged(t,0,t.rows-1)}},t.prototype._refreshCharAtlas=function(t,e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=r.acquireCharAtlas(t,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},t.prototype.resize=function(t,e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(t,this._colors)},t.prototype._fillCells=function(t,e,i,r){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight)},t.prototype._fillBottomLineAtCells=function(t,e,i){void 0===i&&(i=1),this._ctx.fillRect(t*this._scaledCellWidth,(e+1)*this._scaledCellHeight-window.devicePixelRatio-1,i*this._scaledCellWidth,window.devicePixelRatio)},t.prototype._fillLeftLineAtCell=function(t,e,i){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,window.devicePixelRatio*i,this._scaledCellHeight)},t.prototype._strokeRectAtCell=function(t,e,i,r){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(t*this._scaledCellWidth+window.devicePixelRatio/2,e*this._scaledCellHeight+window.devicePixelRatio/2,i*this._scaledCellWidth-window.devicePixelRatio,r*this._scaledCellHeight-window.devicePixelRatio)},t.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},t.prototype._clearCells=function(t,e,i,r){this._alpha?this._ctx.clearRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight))},t.prototype._fillCharTrueColor=function(t,e,i,r){this._ctx.font=this._getFont(t,!1,!1),this._ctx.textBaseline=\"middle\",this._clipRow(t,r),this._ctx.fillText(e.getChars(),i*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},t.prototype._clipRow=function(t,e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,t.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},t.prototype._getFont=function(t,e,i){return(i?\"italic\":\"\")+\" \"+(e?t.getOption(\"fontWeightBold\"):t.getOption(\"fontWeight\"))+\" \"+t.getOption(\"fontSize\")*window.devicePixelRatio+\"px \"+t.getOption(\"fontFamily\")},t}();e.BaseRenderLayer=n},461:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CursorRenderLayer=void 0;var n=i(592),s=i(782),a=600,l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"cursor\",i,!0,r)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:\"\",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},e.prototype.reset=function(t){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(t))},e.prototype.onBlur=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onFocus=function(t){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(t):this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onOptionsChanged=function(t){var e,i=this;t.getOption(\"cursorBlink\")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new h(t,(function(){i._render(t,!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onCursorMove=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype.onGridChanged=function(t,e,i){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(t,!1):this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype._render=function(t,e){if(t._core._coreService.isCursorInitialized&&!t._core._coreService.isCursorHidden){var i=t.buffer.active.baseY+t.buffer.active.cursorY,r=i-t.buffer.active.viewportY,o=Math.min(t.buffer.active.cursorX,t.cols-1);if(r<0||r>=t.rows)this._clearCursor();else if(t._core.buffer.lines.get(i).loadCell(o,this._cell),void 0!==this._cell.content){if(!c(t)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=t.getOption(\"cursorStyle\");return n&&\"block\"!==n?this._cursorRenderers[n](t,o,r,this._cell):this._renderBlurCursor(t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===r&&this._state.isFocused===c(t)&&this._state.style===t.getOption(\"cursorStyle\")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[t.getOption(\"cursorStyle\")||\"block\"](t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=t.getOption(\"cursorStyle\"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},e.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},e.prototype._renderBarCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,i,t.getOption(\"cursorWidth\")),this._ctx.restore()},e.prototype._renderBlockCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,i,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(t,r,e,i),this._ctx.restore()},e.prototype._renderUnderlineCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,i),this._ctx.restore()},e.prototype._renderBlurCursor=function(t,e,i,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,i,r.getWidth(),1),this._ctx.restore()},e}(n.BaseRenderLayer);e.CursorRenderLayer=l;var h=function(){function t(t,e){this._renderCallback=e,this.isCursorVisible=!0,c(t)&&this._restartInterval()}return Object.defineProperty(t.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.restartBlinkAnimation=function(t){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},t.prototype._restartInterval=function(t){var e=this;void 0===t&&(t=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);if(e._animationTimeRestarted=void 0,t>0)return void e._restartInterval(t)}e.isCursorVisible=!1,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0})),e._blinkInterval=window.setInterval((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);return e._animationTimeRestarted=void 0,void e._restartInterval(t)}e.isCursorVisible=!e.isCursorVisible,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))}),a)}),t)},t.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.resume=function(t){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(t)},t}();function c(t){return document.activeElement===t.textarea&&document.hasFocus()}},733:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.LinkRenderLayer=void 0;var n=i(592),s=i(499),a=i(433),l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"link\",i,!0,r)||this;return o.linkifier.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),o.linkifier2.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier2.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state=void 0},e.prototype.reset=function(t){this._clearCurrentLink()},e.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var t=this._state.y2-this._state.y1-1;t>0&&this._clearCells(0,this._state.y1+1,this._state.cols,t),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},e.prototype._onShowLinkUnderline=function(t){if(t.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==t.fg&&a.is256Color(t.fg)?this._ctx.fillStyle=this._colors.ansi[t.fg].css:this._ctx.fillStyle=this._colors.foreground.css,t.y1===t.y2)this._fillBottomLineAtCells(t.x1,t.y1,t.x2-t.x1);else{this._fillBottomLineAtCells(t.x1,t.y1,t.cols-t.x1);for(var e=t.y1+1;e{var i,r,o,n;function s(t){var e=t.toString(16);return e.length<2?\"0\"+e:e}function a(t,e){return t>>0}}(i=e.channels||(e.channels={})),(r=e.color||(e.color={})).blend=function(t,e){var r=(255&e.rgba)/255;if(1===r)return{css:e.css,rgba:e.rgba};var o=e.rgba>>24&255,n=e.rgba>>16&255,s=e.rgba>>8&255,a=t.rgba>>24&255,l=t.rgba>>16&255,h=t.rgba>>8&255,c=a+Math.round((o-a)*r),_=l+Math.round((n-l)*r),d=h+Math.round((s-h)*r);return{css:i.toCss(c,_,d),rgba:i.toRgba(c,_,d)}},r.isOpaque=function(t){return 255==(255&t.rgba)},r.ensureContrastRatio=function(t,e,i){var r=n.ensureContrastRatio(t.rgba,e.rgba,i);if(r)return n.toColor(r>>24&255,r>>16&255,r>>8&255)},r.opaque=function(t){var e=(255|t.rgba)>>>0,r=n.toChannels(e),o=r[0],s=r[1],a=r[2];return{css:i.toCss(o,s,a),rgba:e}},r.opacity=function(t,e){var r=Math.round(255*e),o=n.toChannels(t.rgba),s=o[0],a=o[1],l=o[2];return{css:i.toCss(s,a,l,r),rgba:i.toRgba(s,a,l,r)}},(e.css||(e.css={})).toColor=function(t){switch(t.length){case 7:return{css:t,rgba:(parseInt(t.slice(1),16)<<8|255)>>>0};case 9:return{css:t,rgba:parseInt(t.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(t){function e(t,e,i){var r=t/255,o=e/255,n=i/255;return.2126*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}t.relativeLuminance=function(t){return e(t>>16&255,t>>8&255,255&t)},t.relativeLuminance2=e}(o=e.rgb||(e.rgb={})),function(t){function e(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_0||h>0||c>0);)l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),c-=Math.max(0,Math.ceil(.1*c)),_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));return(l<<24|h<<16|c<<8|255)>>>0}function r(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_>>0}t.ensureContrastRatio=function(t,i,n){var s=o.relativeLuminance(t>>8),l=o.relativeLuminance(i>>8);if(a(s,l)>24&255,t>>16&255,t>>8&255,255&t]},t.toColor=function(t,e,r){return{css:i.toCss(t,e,r),rgba:i.toRgba(t,e,r)}}}(n=e.rgba||(e.rgba={})),e.toPaddedHex=s,e.contrastRatio=a},499:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.CHAR_ATLAS_CELL_SPACING=e.DIM_OPACITY=e.INVERTED_DEFAULT_COLOR=void 0,e.INVERTED_DEFAULT_COLOR=257,e.DIM_OPACITY=.5,e.CHAR_ATLAS_CELL_SPACING=1},345:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.forwardEvent=e.EventEmitter=void 0;var i=function(){function t(){this._listeners=[],this._disposed=!1}return Object.defineProperty(t.prototype,\"event\",{get:function(){var t=this;return this._event||(this._event=function(e){return t._listeners.push(e),{dispose:function(){if(!t._disposed)for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.getDisposeArrayDisposable=e.disposeArray=e.Disposable=void 0;var i=function(){function t(){this._disposables=[],this._isDisposed=!1}return t.prototype.dispose=function(){this._isDisposed=!0;for(var t=0,e=this._disposables;t{function i(t,e,i,r){if(void 0===i&&(i=0),void 0===r&&(r=t.length),i>=t.length)return t;i=(t.length+i)%t.length,r=r>=t.length?t.length:(t.length+r)%t.length;for(var o=i;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.ExtendedAttrs=e.AttributeData=void 0;var i=function(){function t(){this.fg=0,this.bg=0,this.extended=new r}return t.toColorRGB=function(t){return[t>>>16&255,t>>>8&255,255&t]},t.fromColorRGB=function(t){return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},t.prototype.clone=function(){var e=new t;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e},t.prototype.isInverse=function(){return 67108864&this.fg},t.prototype.isBold=function(){return 134217728&this.fg},t.prototype.isUnderline=function(){return 268435456&this.fg},t.prototype.isBlink=function(){return 536870912&this.fg},t.prototype.isInvisible=function(){return 1073741824&this.fg},t.prototype.isItalic=function(){return 67108864&this.bg},t.prototype.isDim=function(){return 134217728&this.bg},t.prototype.getFgColorMode=function(){return 50331648&this.fg},t.prototype.getBgColorMode=function(){return 50331648&this.bg},t.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},t.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},t.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},t.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},t.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},t.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},t.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},t.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},t.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},t.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},t.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},t.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},t.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},t.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},t.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},t.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},t.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},t}();e.AttributeData=i;var r=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=-1),this.underlineStyle=t,this.underlineColor=e}return t.prototype.clone=function(){return new t(this.underlineStyle,this.underlineColor)},t.prototype.isEmpty=function(){return 0===this.underlineStyle},t}();e.ExtendedAttrs=r},782:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CellData=void 0;var n=i(133),s=i(855),a=i(147),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.content=0,e.fg=0,e.bg=0,e.extended=new a.ExtendedAttrs,e.combinedData=\"\",e}return o(e,t),e.fromCharData=function(t){var i=new e;return i.setFromCharData(t),i},e.prototype.isCombined=function(){return 2097152&this.content},e.prototype.getWidth=function(){return this.content>>22},e.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):\"\"},e.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},e.prototype.setFromCharData=function(t){this.fg=t[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var e=!1;if(t[s.CHAR_DATA_CHAR_INDEX].length>2)e=!0;else if(2===t[s.CHAR_DATA_CHAR_INDEX].length){var i=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){var r=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=r&&r<=57343?this.content=1024*(i-55296)+r-56320+65536|t[s.CHAR_DATA_WIDTH_INDEX]<<22:e=!0}else e=!0}else this.content=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[s.CHAR_DATA_WIDTH_INDEX]<<22;e&&(this.combinedData=t[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|t[s.CHAR_DATA_WIDTH_INDEX]<<22)},e.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},e}(a.AttributeData);e.CellData=l},855:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WHITESPACE_CELL_CODE=e.WHITESPACE_CELL_WIDTH=e.WHITESPACE_CELL_CHAR=e.NULL_CELL_CODE=e.NULL_CELL_WIDTH=e.NULL_CELL_CHAR=e.CHAR_DATA_CODE_INDEX=e.CHAR_DATA_WIDTH_INDEX=e.CHAR_DATA_CHAR_INDEX=e.CHAR_DATA_ATTR_INDEX=e.DEFAULT_ATTR=e.DEFAULT_COLOR=void 0,e.DEFAULT_COLOR=256,e.DEFAULT_ATTR=256|e.DEFAULT_COLOR<<9,e.CHAR_DATA_ATTR_INDEX=0,e.CHAR_DATA_CHAR_INDEX=1,e.CHAR_DATA_WIDTH_INDEX=2,e.CHAR_DATA_CODE_INDEX=3,e.NULL_CELL_CHAR=\"\",e.NULL_CELL_WIDTH=1,e.NULL_CELL_CODE=0,e.WHITESPACE_CELL_CHAR=\" \",e.WHITESPACE_CELL_WIDTH=1,e.WHITESPACE_CELL_CODE=32},133:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.Utf8ToUtf32=e.StringToUtf32=e.utf32ToString=e.stringFromCodePoint=void 0,e.stringFromCodePoint=function(t){return t>65535?(t-=65536,String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)},e.utf32ToString=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length);for(var r=\"\",o=e;o65535?(n-=65536,r+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):r+=String.fromCharCode(n)}return r};var i=function(){function t(){this._interim=0}return t.prototype.clear=function(){this._interim=0},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r=0,o=0;this._interim&&(56320<=(a=t.charCodeAt(o++))&&a<=57343?e[r++]=1024*(this._interim-55296)+a-56320+65536:(e[r++]=this._interim,e[r++]=a),this._interim=0);for(var n=o;n=i)return this._interim=s,r;var a;56320<=(a=t.charCodeAt(n))&&a<=57343?e[r++]=1024*(s-55296)+a-56320+65536:(e[r++]=s,e[r++]=a)}else 65279!==s&&(e[r++]=s)}return r},t}();e.StringToUtf32=i;var r=function(){function t(){this.interim=new Uint8Array(3)}return t.prototype.clear=function(){this.interim.fill(0)},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r,o,n,s,a=0,l=0,h=0;if(this.interim[0]){var c=!1,_=this.interim[0];_&=192==(224&_)?31:224==(240&_)?15:7;for(var d=0,u=void 0;(u=63&this.interim[++d])&&d<4;)_<<=6,_|=u;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=f-d;h=i)return 0;if(128!=(192&(u=t[h++]))){h--,c=!0;break}this.interim[d++]=u,_<<=6,_|=63&u}c||(2===f?_<128?h--:e[a++]=_:3===f?_<2048||_>=55296&&_<=57343||65279===_||(e[a++]=_):_<65536||_>1114111||(e[a++]=_)),this.interim.fill(0)}for(var g=i-4,v=h;v=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if((l=(31&r)<<6|63&o)<128){v--;continue}e[a++]=l}else if(224==(240&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if((l=(15&r)<<12|(63&o)<<6|63&n)<2048||l>=55296&&l<=57343||65279===l)continue;e[a++]=l}else if(240==(248&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=t[v++]))){v--;continue}if((l=(7&r)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||l>1114111)continue;e[a++]=l}}return a},t}();e.Utf8ToUtf32=r}},e={};return function i(r){if(e[r])return e[r].exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,i),o.exports}(795)})()}));\n//# sourceMappingURL=xterm-addon-webgl.js.map","/*!\n * xterm (https://npmjs.com/package/xterm)\n * @license MIT\n * @version 4.12.0\n * ==xterm/LICENSE==\n * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)\n * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var r=t();for(var i in r)(\"object\"==typeof exports?exports:e)[i]=r[i]}}(self,(function(){return(()=>{\"use strict\";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce=\"\",i._accessibilityTreeRoot=document.createElement(\"div\"),i._accessibilityTreeRoot.classList.add(\"xterm-accessibility\"),i._rowContainer=document.createElement(\"div\"),i._rowContainer.setAttribute(\"role\",\"list\"),i._rowContainer.classList.add(\"xterm-accessibility-tree\"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(\"focus\",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement(\"div\");return e.setAttribute(\"role\",\"listitem\"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,\"\\n\"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent=\"\",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=\" \":a.textContent=o,a.setAttribute(\"aria-posinset\",s),a.setAttribute(\"aria-setsize\",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\\r?\\n/g,\"\\r\")}function i(e,t){return t?\"\u001b[200~\"+e+\"\u001b[201~\":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=\"\"}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width=\"20px\",t.style.height=\"20px\",t.style.left=n+\"px\",t.style.top=o+\"px\",t.style.zIndex=\"1000\",t.focus()}Object.defineProperty(t,\"__esModule\",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData(\"text/plain\",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData(\"text/plain\"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?\"0\"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor(\"#ffffff\"),s=i.css.toColor(\"#000000\"),a=i.css.toColor(\"#ffffff\"),c=i.css.toColor(\"#000000\"),l={css:\"rgba(255, 255, 255, 0.3)\",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor(\"#2e3436\"),i.css.toColor(\"#cc0000\"),i.css.toColor(\"#4e9a06\"),i.css.toColor(\"#c4a000\"),i.css.toColor(\"#3465a4\"),i.css.toColor(\"#75507b\"),i.css.toColor(\"#06989a\"),i.css.toColor(\"#d3d7cf\"),i.css.toColor(\"#555753\"),i.css.toColor(\"#ef2929\"),i.css.toColor(\"#8ae234\"),i.css.toColor(\"#fce94f\"),i.css.toColor(\"#729fcf\"),i.css.toColor(\"#ad7fa8\"),i.css.toColor(\"#34e2e2\"),i.css.toColor(\"#eeeeec\")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement(\"canvas\");h.width=1,h.height=1;var u=h.getContext(\"2d\");if(!u)throw new Error(\"Could not get rendering context\");this._ctx=u,this._ctx.globalCompositeOperation=\"copy\",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){\"minimumContrastRatio\"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,\"string\"!=typeof this._ctx.fillStyle)return console.warn(\"Color: \"+e+\" is invalid using fallback \"+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn(\"Color: \"+e+\" is using transparency, but allowTransparency is false. Using fallback \"+t.css+\".\"),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(\",\").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLinkTooltip\",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&\"break\"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn(\"Opening link blocked as opener could not be cleared\")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add(\"xterm-cursor-pointer\")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove(\"xterm-cursor-pointer\"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,\"currentLink\",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,\"mouseleave\",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,\"mousemove\",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,\"click\",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle(\"xterm-cursor-pointer\",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(\"xterm-cursor-pointer\")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(\"xterm-cursor-pointer\")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel=\"Terminal input\",t.tooMuchOutput=\"Too much output to announce, navigate to rows manually to read\"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,\"mousedown\",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener(\"mousemove\",this._mouseMoveListener),this._element.addEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.addEventListener(\"click\",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener(\"mousemove\",this._mouseMoveListener),this._element.removeEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.removeEventListener(\"click\",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia(\"screen and (resolution: \"+window.devicePixelRatio+\"dppx)\"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),b=r(1296),S=r(7399),m=r(8460),C=r(8437),w=r(5680),E=r(3230),L=r(4725),k=r(428),A=r(8934),R=r(6465),x=r(5114),T=r(8969),O=r(4774),D=r(4269),P=\"undefined\"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new m.EventEmitter,r._onKey=new m.EventEmitter,r._onRender=new m.EventEmitter,r._onSelectionChange=new m.EventEmitter,r._onTitleChange=new m.EventEmitter,r._onBell=new m.EventEmitter,r._onFocus=new m.EventEmitter,r._onBlur=new m.EventEmitter,r._onA11yCharEmitter=new m.EventEmitter,r._onA11yTabEmitter=new m.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(R.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(m.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(m.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(m.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(m.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,\"options\",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onKey\",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRender\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBell\",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onFocus\",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBlur\",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.removeEventListener(\"mousemove\",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?(\"debug\"===e.optionsService.options.logLevel&&e._logService.debug(\"Binding to mouse events:\",e._coreMouseService.explainEvents(t)),e.element.classList.add(\"enable-mouse-events\"),e._selectionService.disable()):(e._logService.debug(\"Unbinding from mouse events.\"),e.element.classList.remove(\"enable-mouse-events\"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener(\"mousemove\",l),n.mousemove=l):(r.removeEventListener(\"mousemove\",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener(\"wheel\",s,{passive:!1}),n.wheel=s):(r.removeEventListener(\"wheel\",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener(\"mousemove\",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,\"mousedown\",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.addEventListener(\"mousemove\",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,\"wheel\",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?\"O\":\"[\")+(t.deltaY<0?\"A\":\"B\"),o=\"\",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,\"scroll\",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+\"px\")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return\"alt\"===r&&t.altKey||\"ctrl\"===r&&t.ctrlKey||\"shift\"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=\"\"}return Object.defineProperty(e.prototype,\"isComposing\",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent=\"\",this._dataAlreadySent=\"\",this._compositionView.classList.add(\"active\")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove(\"active\"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){if(t._isSendingComposition){t._isSendingComposition=!1;var e;r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0)}}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,\"\");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+\"px\",this._compositionView.style.top=n+\"px\",this._compositionView.style.height=i+\"px\",this._compositionView.style.lineHeight=i+\"px\",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+\"px\";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+\"px\",this._textarea.style.top=n+\"px\",this._textarea.style.width=Math.max(s.width,1)+\"px\",this._textarea.style.height=Math.max(s.height,1)+\"px\",this._textarea.style.lineHeight=s.height+\"px\"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?\"A\":\"B\"}function a(e,t,r,i,n,o){for(var s=e,a=t,c=\"\";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?\"O\":\"[\";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r=\"\",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?\"D\":\"C\",l(Math.abs(h-e),c(s,i));s=u>t?\"D\":\"C\";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error(\"You must set the allowProposedApi option to true to use proposed API\")},Object.defineProperty(e.prototype,\"onCursorMove\",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLineFeed\",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onSelectionChange\",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onData\",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBinary\",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTitleChange\",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBell\",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onScroll\",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onKey\",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onRender\",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onResize\",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"element\",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parser\",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"unicode\",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"textarea\",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rows\",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"cols\",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"buffer\",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"markers\",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write(\"\\r\\n\",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,\"strings\",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,\"versions\",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:\"\",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+t+\"-layer\"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline=\"ideographic\",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline=\"ideographic\",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getBgColor()).join(\",\")+\")\";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getFgColor()).join(\",\")+\")\";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?\"italic\":\"\")+\" \"+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+\" \"+this._optionsService.options.fontSize*window.devicePixelRatio+\"px \"+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,\"cursor\",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:\"\",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&\"block\"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||\"block\"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,\"link\",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error(\"value must not be falsy\");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,\"selection\",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,\"text\",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont=\"\",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,\"__esModule\",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:\"rgba(0, 0, 0, 0)\",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement(\"canvas\"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext(\"2d\",{alpha:!0}));var n=t.createElement(\"canvas\");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext(\"2d\",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,\"__esModule\",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p=\"xterm-dom-renderer-owner-\",v=\"xterm-fg-\",g=\"xterm-bg-\",y=\"xterm-focus\",b=1,S=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=b++,f._rowElements=[],f._rowContainer=document.createElement(\"div\"),f._rowContainer.classList.add(\"xterm-rows\"),f._rowContainer.style.lineHeight=\"normal\",f._rowContainer.setAttribute(\"aria-hidden\",\"true\"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement(\"div\"),f._selectionContainer.classList.add(\"xterm-selection\"),f._selectionContainer.setAttribute(\"aria-hidden\",\"true\"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement(\"div\");return n.style.height=i*this.dimensions.actualCellHeight+\"px\",n.style.top=e*this.dimensions.actualCellHeight+\"px\",n.style.left=t*this.dimensions.actualCellWidth+\"px\",n.style.width=this.dimensions.actualCellWidth*(r-t)+\"px\",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=S},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS=\"xterm-bold\",t.DIM_CLASS=\"xterm-dim\",t.ITALIC_CLASS=\"xterm-italic\",t.UNDERLINE_CLASS=\"xterm-underline\",t.CURSOR_CLASS=\"xterm-cursor\",t.CURSOR_BLINK_CLASS=\"xterm-cursor-blink\",t.CURSOR_STYLE_BLOCK_CLASS=\"xterm-cursor-block\",t.CURSOR_STYLE_BAR_CLASS=\"xterm-cursor-bar\",t.CURSOR_STYLE_UNDERLINE_CLASS=\"xterm-cursor-underline\";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){b=!0;var C=p.shift();m=new u.JoinedCellData(this._workCell,e.translateToString(!0,C[0],C[1]),C[1]-C[0]),S=C[1]-1,y=m.getWidth()}var w=this._document.createElement(\"span\");if(y>1&&(w.style.width=h*y+\"px\"),b&&(w.style.display=\"inline\",a>=g&&a<=S&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case\"bar\":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case\"underline\":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}m.isBold()&&w.classList.add(t.BOLD_CLASS),m.isItalic()&&w.classList.add(t.ITALIC_CLASS),m.isDim()&&w.classList.add(t.DIM_CLASS),m.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),m.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=m.getChars()||s.WHITESPACE_CELL_CHAR;var E=m.getFgColor(),L=m.getFgColorMode(),k=m.getBgColor(),A=m.getBgColorMode(),R=!!m.isInverse();if(R){var x=E;E=k,k=x;var T=L;L=A,A=T}switch(L){case 16777216:case 33554432:m.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add(\"xterm-fg-\"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,\"color:#\"+_(E.toString(16),\"0\",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||R&&w.classList.add(\"xterm-fg-\"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:w.classList.add(\"xterm-bg-\"+k);break;case 50331648:this._addStyle(w,\"background-color:#\"+_(k.toString(16),\"0\",6));break;case 0:default:R&&w.classList.add(\"xterm-bg-\"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=S}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,\"color:\"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute(\"style\",\"\"+(e.getAttribute(\"style\")||\"\")+t+\";\")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,\"finalSelectionStart\",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"finalSelectionEnd\",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,\"hasValidSize\",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onCharSizeChange\",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement(\"span\"),this._measureElement.classList.add(\"xterm-char-measure-element\"),this._measureElement.textContent=\"W\",this._measureElement.setAttribute(\"aria-hidden\",\"true\"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+\"px\";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData=\"\",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error(\"not implemented\")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,\"isFocused\",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,\"resize\",(function(){return l.onDevicePixelRatioChange()}))),\"IntersectionObserver\"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,\"onDimensionsChange\",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRenderedBufferChange\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRefreshRequest\",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dimensions\",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,\"g\"),b=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,\"onLinuxMouseSelection\",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestScrollLines\",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,\"selectionStart\",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionEnd\",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasSelection\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionText\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return\"\";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return\"\";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y,\" \")})).join(a.isWindows?\"\\r\\n\":\"\\n\")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(\"mouseup\",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(\"mouseup\",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption(\"altClickMovesCursor\")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(\" \"===s.charAt(a)){for(;a>0&&\" \"===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var b=a+l-h+f,S=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||\"\"!==s.slice(a,c).trim()){if(r&&0===b&&32!==o.getCodePoint(0)){var m=n.lines.get(e[1]-1);if(m&&o.isWrapped&&32!==m.getCodePoint(this._bufferService.cols-1)){var C=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(C){var w=this._bufferService.cols-C.start;b-=w,S+=w}}}if(i&&b+S===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(S+=L.length)}}return{start:b,length:S}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=b},4725:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator(\"CharSizeService\"),t.ICoreBrowserService=i.createDecorator(\"CoreBrowserService\"),t.IMouseService=i.createDecorator(\"MouseService\"),t.IRenderService=i.createDecorator(\"RenderService\"),t.ISelectionService=i.createDecorator(\"SelectionService\"),t.ISoundService=i.createDecorator(\"SoundService\"),t.ICharacterJoinerService=i.createDecorator(\"CharacterJoinerService\")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,\"audioContext\",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn(\"Web Audio API is not supported by this browser. Consider upgrading to the latest version\"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,\"onDelete\",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onInsert\",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTrim\",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxLength\",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error(\"start argument out of range\");if(e+r<0)throw new Error(\"Cannot shift elements in list beyond index 0\");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),\"object\"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),b=r(5981),S=!1,m=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new b.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"cols\",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rows\",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"buffers\",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!S&&(this._logService.warn(\"writeSync is unreliable and will be removed soon.\"),S=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case\"scrollback\":this.buffers.resize(this.cols,this.rows);break;case\"windowsMode\":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:\"H\"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,\"event\",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]=\"GET_WIN_SIZE_PIXELS\",e[e.GET_CELL_SIZE_PIXELS=1]=\"GET_CELL_SIZE_PIXELS\"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'\"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0\"q'+s.C0.ESC+\"\\\\\");break;case'\"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1\"p'+s.C0.ESC+\"\\\\\");break;case\"r\":var r=this._bufferService.buffer.scrollTop+1+\";\"+(this._bufferService.buffer.scrollBottom+1)+\"r\";this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+r+s.C0.ESC+\"\\\\\");break;case\"m\":this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r0m\"+s.C0.ESC+\"\\\\\");break;case\" q\":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+i+\" q\"+s.C0.ESC+\"\\\\\");break;default:this._logService.debug(\"Unknown DCS $q %s\",t),this._coreService.triggerDataEvent(s.C0.ESC+\"P0$r\"+s.C0.ESC+\"\\\\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle=\"\",g._iconName=\"\",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug(\"Unknown CSI code: \",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug(\"Unknown ESC code: \",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug(\"Unknown EXECUTE code: \",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug(\"Unknown OSC code: \",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){\"HOOK\"===t&&(r=r.toArray()),g._logService.debug(\"Unknown DCS code: \",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:\"@\"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"@\"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:\"A\"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"A\"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:\"B\"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:\"C\"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:\"D\"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:\"E\"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:\"F\"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:\"G\"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:\"H\"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:\"I\"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:\"L\"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:\"M\"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:\"P\"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:\"S\"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:\"T\"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:\"X\"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:\"Z\"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:\"`\"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:\"a\"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:\"b\"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:\"c\"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:\">\",final:\"c\"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:\"d\"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:\"e\"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:\"f\"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:\"g\"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:\"h\"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"h\"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:\"l\"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"l\"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:\"m\"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:\"n\"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"n\"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:\"!\",final:\"p\"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"q\"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:\"r\"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:\"s\"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:\"t\"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:\"u\"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"}\"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"~\"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:\"7\"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:\"8\"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:\"D\"},(function(){return g.index()})),g._parser.registerEscHandler({final:\"E\"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:\"H\"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:\"M\"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:\"=\"},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:\">\"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:\"c\"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:\"n\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"o\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"|\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"}\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"~\"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:\"%\",final:\"@\"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:\"%\",final:\"G\"},(function(){return g.selectDefaultCharset()}));var b=function(e){S._parser.registerEscHandler({intermediates:\"(\",final:e},(function(){return g.selectCharset(\"(\"+e)})),S._parser.registerEscHandler({intermediates:\")\",final:e},(function(){return g.selectCharset(\")\"+e)})),S._parser.registerEscHandler({intermediates:\"*\",final:e},(function(){return g.selectCharset(\"*\"+e)})),S._parser.registerEscHandler({intermediates:\"+\",final:e},(function(){return g.selectCharset(\"+\"+e)})),S._parser.registerEscHandler({intermediates:\"-\",final:e},(function(){return g.selectCharset(\"-\"+e)})),S._parser.registerEscHandler({intermediates:\".\",final:e},(function(){return g.selectCharset(\".\"+e)})),S._parser.registerEscHandler({intermediates:\"/\",final:e},(function(){return g.selectCharset(\"/\"+e)}))},S=this;for(var m in a.CHARSETS)b(m);return g._parser.registerEscHandler({intermediates:\"#\",final:\"8\"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error(\"Parsing error: \",e),e})),g._parser.registerDcsHandler({intermediates:\"$\",final:\"q\"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,\"onRequestBell\",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRefreshRows\",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestReset\",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestSyncScrollBar\",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestWindowsOptionsReport\",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onAnsiColorChange\",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t(\"#SLOW_TIMEOUT\")}),5e3)}))]).catch((function(e){if(\"#SLOW_TIMEOUT\"!==e)throw e;console.warn(\"async parser handler taking longer than 5000 ms\")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>m&&(s=this._parseStack.position+m)}if(this._logService.debug(\"parsing data\",e),this._parseBuffer.lengthm)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return\"t\"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!C(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new b.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is(\"xterm\")||this._is(\"rxvt-unicode\")||this._is(\"screen\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[?1;2c\"):this._is(\"linux\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[?6c\")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is(\"xterm\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>0;276;0c\"):this._is(\"rxvt-unicode\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>85;95;0c\"):this._is(\"linux\")?this._coreService.triggerDataEvent(e.params[0]+\"c\"):this._is(\"screen\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[>83;40003;0c\")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+\"\").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug(\"Unknown SGR attribute: %d.\",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+\"[0n\");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[\"+t+\";\"+r+\"R\")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[?\"+t+\";\"+r+\"R\")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle=\"block\";break;case 3:case 4:this._optionsService.options.cursorStyle=\"underline\";break;case 5:case 6:this._optionsService.options.cursorStyle=\"bar\"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!C(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+\"[8;\"+this._bufferService.rows+\";\"+this._bufferService.cols+\"t\");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\\d+);rgb:([\\da-f]{2})\\/([\\da-f]{2})\\/([\\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn(\"Expected format ;rgb:// but got data: \"+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug(\"Serial port requested application keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug(\"Switching back to normal keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):(\"/\"===e[0]||this._charsetService.setgCharset(S[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|\"E\".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r=\"undefined\"==typeof navigator,i=r?\"node\":navigator.userAgent,n=r?\"node\":navigator.platform;t.isFirefox=i.includes(\"Firefox\"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=[\"Macintosh\",\"MacIntel\",\"MacPPC\",\"Mac68K\"].includes(n),t.isIpad=\"iPad\"===n,t.isIphone=\"iPhone\"===n,t.isWindows=[\"Windows\",\"Win16\",\"Win32\",\"WinCE\"].includes(n),t.isLinux=n.indexOf(\"Linux\")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,\"hasScrollback\",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isCursorInViewport\",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,b=_[y];0===b&&(b=_[--y]);for(var S=l.length-d-1,m=f;S>=0;){var C=Math.min(m,b);if(l[y].copyCellsFrom(l[S],m-C,b-C,C,!0),0==(b-=C)&&(b=_[--y]),0==(m-=C)){S--;var w=Math.max(S,0);m=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var L=[],k=[];for(v=0;v=0;v--)if(T&&T.start>R+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,L.push({index:R+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++x]}else this.lines.set(v,k[R--]);var P=0;for(v=L.length-1;v>=0;v--)L[v].index+=P,this.lines.onInsertEmitter.fire(L[v]),P+=L[v].amount;var M=Math.max(0,A+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t=\"\",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):\"\"},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o=\"\";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error(\"Buffer range end (\"+e.end.x+\", \"+e.end.y+\") cannot be before start (\"+e.start.x+\", \"+e.start.y+\")\");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(S>u||0===h[S].getTrimmedLength());S--)b++;b>0&&(s.push(a+h.length-b),s.push(b)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,\"onBufferActivate\",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,\"alt\",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"active\",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"normal\",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData=\"\",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):\"\"},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR=\"\",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=\" \",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onDispose\",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={\"`\":\"◆\",a:\"▒\",b:\"␉\",c:\"␌\",d:\"␍\",e:\"␊\",f:\"°\",g:\"±\",h:\"␤\",i:\"␋\",j:\"┘\",k:\"┐\",l:\"┌\",m:\"└\",n:\"┼\",o:\"⎺\",p:\"⎻\",q:\"─\",r:\"⎼\",s:\"⎽\",t:\"├\",u:\"┤\",v:\"┴\",w:\"┬\",x:\"│\",y:\"≤\",z:\"≥\",\"{\":\"π\",\"|\":\"≠\",\"}\":\"£\",\"~\":\"·\"},t.CHARSETS.A={\"#\":\"£\"},t.CHARSETS.B=void 0,t.CHARSETS[4]={\"#\":\"£\",\"@\":\"¾\",\"[\":\"ij\",\"\\\\\":\"½\",\"]\":\"|\",\"{\":\"¨\",\"|\":\"f\",\"}\":\"¼\",\"~\":\"´\"},t.CHARSETS.C=t.CHARSETS[5]={\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.R={\"#\":\"£\",\"@\":\"à\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"§\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"¨\"},t.CHARSETS.Q={\"@\":\"à\",\"[\":\"â\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",\"`\":\"ô\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"û\"},t.CHARSETS.K={\"@\":\"§\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Ü\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"ß\"},t.CHARSETS.Y={\"#\":\"£\",\"@\":\"§\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"é\",\"`\":\"ù\",\"{\":\"à\",\"|\":\"ò\",\"}\":\"è\",\"~\":\"ì\"},t.CHARSETS.E=t.CHARSETS[6]={\"@\":\"Ä\",\"[\":\"Æ\",\"\\\\\":\"Ø\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"ä\",\"{\":\"æ\",\"|\":\"ø\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.Z={\"#\":\"£\",\"@\":\"§\",\"[\":\"¡\",\"\\\\\":\"Ñ\",\"]\":\"¿\",\"{\":\"°\",\"|\":\"ñ\",\"}\":\"ç\"},t.CHARSETS.H=t.CHARSETS[7]={\"@\":\"É\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS[\"=\"]={\"#\":\"ù\",\"@\":\"à\",\"[\":\"é\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",_:\"è\",\"`\":\"ô\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"û\"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,\"__esModule\",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL=\"\\0\",i.SOH=\"\u0001\",i.STX=\"\u0002\",i.ETX=\"\u0003\",i.EOT=\"\u0004\",i.ENQ=\"\u0005\",i.ACK=\"\u0006\",i.BEL=\"\u0007\",i.BS=\"\\b\",i.HT=\"\\t\",i.LF=\"\\n\",i.VT=\"\\v\",i.FF=\"\\f\",i.CR=\"\\r\",i.SO=\"\u000e\",i.SI=\"\u000f\",i.DLE=\"\u0010\",i.DC1=\"\u0011\",i.DC2=\"\u0012\",i.DC3=\"\u0013\",i.DC4=\"\u0014\",i.NAK=\"\u0015\",i.SYN=\"\u0016\",i.ETB=\"\u0017\",i.CAN=\"\u0018\",i.EM=\"\u0019\",i.SUB=\"\u001a\",i.ESC=\"\u001b\",i.FS=\"\u001c\",i.GS=\"\u001d\",i.RS=\"\u001e\",i.US=\"\u001f\",i.SP=\" \",i.DEL=\"\",(r=t.C1||(t.C1={})).PAD=\"€\",r.HOP=\"\",r.BPH=\"‚\",r.NBH=\"ƒ\",r.IND=\"„\",r.NEL=\"…\",r.SSA=\"†\",r.ESA=\"‡\",r.HTS=\"ˆ\",r.HTJ=\"‰\",r.VTS=\"Š\",r.PLD=\"‹\",r.PLU=\"Œ\",r.RI=\"\",r.SS2=\"Ž\",r.SS3=\"\",r.DCS=\"\",r.PU1=\"‘\",r.PU2=\"’\",r.STS=\"“\",r.CCH=\"”\",r.MW=\"•\",r.SPA=\"–\",r.EPA=\"—\",r.SOS=\"˜\",r.SGCI=\"™\",r.SCI=\"š\",r.CSI=\"›\",r.ST=\"œ\",r.OSC=\"\",r.PM=\"ž\",r.APC=\"Ÿ\"},7399:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:[\"0\",\")\"],49:[\"1\",\"!\"],50:[\"2\",\"@\"],51:[\"3\",\"#\"],52:[\"4\",\"$\"],53:[\"5\",\"%\"],54:[\"6\",\"^\"],55:[\"7\",\"&\"],56:[\"8\",\"*\"],57:[\"9\",\"(\"],186:[\";\",\":\"],187:[\"=\",\"+\"],188:[\",\",\"<\"],189:[\"-\",\"_\"],190:[\".\",\">\"],191:[\"/\",\"?\"],192:[\"`\",\"~\"],219:[\"[\",\"{\"],220:[\"\\\\\",\"|\"],221:[\"]\",\"}\"],222:[\"'\",'\"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:\"UIKeyInputUpArrow\"===e.key?s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\":\"UIKeyInputLeftArrow\"===e.key?s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\":\"UIKeyInputRightArrow\"===e.key?s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\":\"UIKeyInputDownArrow\"===e.key&&(s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+\"[Z\";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"D\",s.key===i.C0.ESC+\"[1;3D\"&&(s.key=i.C0.ESC+(r?\"b\":\"[1;5D\"))):s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"C\",s.key===i.C0.ESC+\"[1;3C\"&&(s.key=i.C0.ESC+(r?\"f\":\"[1;5C\"))):s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"A\",r||s.key!==i.C0.ESC+\"[1;3A\"||(s.key=i.C0.ESC+\"[1;5A\")):s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"B\",r||s.key!==i.C0.ESC+\"[1;3B\"||(s.key=i.C0.ESC+\"[1;5B\")):s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+\"[2~\");break;case 46:s.key=a?i.C0.ESC+\"[3;\"+(a+1)+\"~\":i.C0.ESC+\"[3~\";break;case 36:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"H\":t?i.C0.ESC+\"OH\":i.C0.ESC+\"[H\";break;case 35:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"F\":t?i.C0.ESC+\"OF\":i.C0.ESC+\"[F\";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+\"[5~\";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+\"[6~\";break;case 112:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"P\":i.C0.ESC+\"OP\";break;case 113:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"Q\":i.C0.ESC+\"OQ\";break;case 114:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"R\":i.C0.ESC+\"OR\";break;case 115:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"S\":i.C0.ESC+\"OS\";break;case 116:s.key=a?i.C0.ESC+\"[15;\"+(a+1)+\"~\":i.C0.ESC+\"[15~\";break;case 117:s.key=a?i.C0.ESC+\"[17;\"+(a+1)+\"~\":i.C0.ESC+\"[17~\";break;case 118:s.key=a?i.C0.ESC+\"[18;\"+(a+1)+\"~\":i.C0.ESC+\"[18~\";break;case 119:s.key=a?i.C0.ESC+\"[19;\"+(a+1)+\"~\":i.C0.ESC+\"[19~\";break;case 120:s.key=a?i.C0.ESC+\"[20;\"+(a+1)+\"~\":i.C0.ESC+\"[20~\";break;case 121:s.key=a?i.C0.ESC+\"[21;\"+(a+1)+\"~\":i.C0.ESC+\"[21~\";break;case 122:s.key=a?i.C0.ESC+\"[23;\"+(a+1)+\"~\":i.C0.ESC+\"[23~\";break;case 123:s.key=a?i.C0.ESC+\"[24;\"+(a+1)+\"~\":i.C0.ESC+\"[24~\";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&\"_\"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i=\"\",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version=\"6\",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WriteBuffer=void 0;var r=\"undefined\"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error(\"write data discarded, use flow control to avoid losing data\");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,\"HOOK\",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,\"PUT\",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,\"UNHOOK\",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data=\"\",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data=\"\",t._hitLimit=!1,e}));return this._params=c,this._data=\"\",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error(\"only one byte as prefix supported\");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error(\"prefix must be in range 0x3c .. 0x3f\")}if(e.intermediates){if(e.intermediates.length>2)throw new Error(\"only two bytes as intermediates are supported\");for(var i=0;in||n>47)throw new Error(\"intermediate must be in range 0x20 .. 0x2f\");r<<=8,r|=n}}if(1!==e.final.length)throw new Error(\"final must be a single byte\");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error(\"final must be in range \"+t[0]+\" .. \"+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join(\"\")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error(\"improper continuation due to previous async handler, giving up parsing\");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,\"START\")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,\"PUT\",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,\"END\",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data=\"\",this._hitLimit=!1}return e.prototype.start=function(){this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data=\"\",t._hitLimit=!1,e}));return this._data=\"\",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error(\"maxSubParamsLength must not be greater than 256\");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"buffer\",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?\"\":\"\u001b[M\"+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?\"m\":\"M\";return\"\u001b[<\"+c(e,!0)+\";\"+e.col+\";\"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol=\"\",this._activeEncoding=\"\",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&(\"DEFAULT\"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onUserInput\",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,\"start\",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"end\",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error(\"[createInstance] First service dependency of \"+e.name+\" at position \"+(u+1)+\" conflicts with \"+t.length+\" static arguments\");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND=\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:\"block\",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:\"none\",drawBoldTextInBrightColors:!0,fastScrollModifier:\"alt\",fastScrollSensitivity:5,fontFamily:\"courier-new, courier, monospace\",fontSize:15,fontWeight:\"normal\",fontWeightBold:\"bold\",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:\"info\",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:\"canvas\",windowOptions:{},windowsMode:!1,wordSeparator:\" ()[]{}',\\\"`\",altClickMovesCursor:!0,convertEol:!1,termName:\"xterm\",cancelEvents:!1});var s=[\"normal\",\"bold\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],a=[\"cols\",\"rows\"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error(\"@IServiceName-decorator can only be used to decorate a parameter\");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator(\"BufferService\"),t.ICoreMouseService=n.createDecorator(\"CoreMouseService\"),t.ICoreService=n.createDecorator(\"CoreService\"),t.ICharsetService=n.createDecorator(\"CharsetService\"),t.IDirtyRowService=n.createDecorator(\"DirtyRowService\"),t.IInstantiationService=n.createDecorator(\"InstantiationService\"),t.ILogService=n.createDecorator(\"LogService\"),t.IOptionsService=n.createDecorator(\"OptionsService\"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]=\"DEBUG\",i[i.INFO=1]=\"INFO\",i[i.WARN=2]=\"WARN\",i[i.ERROR=3]=\"ERROR\",i[i.OFF=4]=\"OFF\",t.IUnicodeService=n.createDecorator(\"UnicodeService\")},1480:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active=\"\",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,\"onChange\",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"versions\",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version \"'+e+'\"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()}));\n//# sourceMappingURL=xterm.js.map","\"use strict\";\n\nvar Zmodem = module.exports;\n\nconst HEX_DIGITS = [ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 97, 98, 99, 100, 101, 102 ];\n\nconst HEX_OCTET_VALUE = {};\nfor (var hd=0; hd 0xffff) throw( \"Number cannot exceed 16 bits: \" + number )\n\n return [ number >> 8, number & 0xff ];\n },\n\n /**\n * Return an array with the given number as 4 little-endian bytes.\n *\n * @param {number} number - The number to encode.\n *\n * @returns {number[]} The octet values.\n */\n pack_u32_le: function pack_u32_le(number) {\n //Can’t bit-shift because that runs into JS’s bit-shift problem.\n //(See _updcrc32() for an example.)\n var high_bytes = number / 65536; //fraction is ok\n\n //a little-endian 4-byte sequence\n return [\n number & 0xff,\n (number & 65535) >> 8,\n high_bytes & 0xff,\n high_bytes >> 8,\n ];\n },\n\n /**\n * The inverse of pack_u16_be() - i.e., take in 2 octet values\n * and parse them as an unsigned, 2-byte big-endian number.\n *\n * @param {number[]} octets - The octet values (2 of them).\n *\n * @returns {number} The decoded number.\n */\n unpack_u16_be: function unpack_u16_be(bytes_arr) {\n return (bytes_arr[0] << 8) + bytes_arr[1];\n },\n\n /**\n * The inverse of pack_u32_le() - i.e., take in a 4-byte sequence\n * and parse it as an unsigned, 4-byte little-endian number.\n *\n * @param {number[]} octets - The octet values (4 of them).\n *\n * @returns {number} The decoded number.\n */\n unpack_u32_le: function unpack_u32_le(octets) {\n // … (254 << 24 is -33554432, according to JavaScript)\n return octets[0] + (octets[1] << 8) + (octets[2] << 16) + (octets[3] * 16777216);\n },\n\n /**\n * Encode a series of octet values to be the octet values that\n * correspond to the ASCII hex characters for each octet. The\n * returned array is suitable for use as binary data.\n *\n * For example:\n *\n * Original Hex Returned\n * 254 fe 102, 101\n * 12 0c 48, 99\n * 129 81 56, 49\n *\n * @param {number[]} octets - The original octet values.\n *\n * @returns {number[]} The octet values that correspond to an ASCII\n * representation of the given octets.\n */\n octets_to_hex: function octets_to_hex(octets) {\n var hex = [];\n for (var o=0; o> 4 ],\n HEX_DIGITS[ octets[o] & 0x0f ]\n );\n }\n\n return hex;\n },\n\n /**\n * The inverse of octets_to_hex(): takes an array\n * of hex octet pairs and returns their octet values.\n *\n * @param {number[]} hex_octets - The hex octet values.\n *\n * @returns {number[]} The parsed octet values.\n */\n parse_hex_octets: function parse_hex_octets(hex_octets) {\n var octets = new Array(hex_octets.length / 2);\n\n for (var i=0; i> 8) & 255)]\n ^ ((255 & crc) << 8)\n ^ cp\n );\n}\n\nfunction __verify(expect, got) {\n var err;\n\n if ( expect.join() !== got.join() ) {\n throw new Zmodem.Error(\"crc\", got, expect);\n }\n}\n\n//TODO: use external implementation(s)\nZmodem.CRC = {\n\n //https://www.lammertbies.nl/comm/info/crc-calculation.html\n //CRC-CCITT (XModem)\n\n /**\n * Deduce a given set of octet values’ CRC16, as per the CRC16\n * variant that ZMODEM uses (CRC-CCITT/XModem).\n *\n * @param {Array} octets - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @returns {Array} crc - The CRC, expressed as an array of octet values.\n */\n crc16: function crc16(octet_nums) {\n var crc = octet_nums[0];\n for (var b=1; b>> 0 //bit-shift to get unsigned\n );\n },\n\n /**\n * Verify a given set of octet values’ CRC16.\n * An exception is thrown on failure.\n *\n * @param {Array} bytes_arr - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {Array} crc - The CRC to check against, expressed as\n * an array of octet values.\n */\n verify16: function verify16(bytes_arr, got) {\n return __verify( this.crc16(bytes_arr), got );\n },\n\n /**\n * Verify a given set of octet values’ CRC32.\n * An exception is thrown on failure.\n *\n * @param {Array} bytes_arr - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {Array} crc - The CRC to check against, expressed as\n * an array of octet values.\n */\n verify32: function verify32(bytes_arr, crc) {\n try {\n __verify( this.crc32(bytes_arr), crc );\n }\n catch(err) {\n err.input = bytes_arr.slice(0);\n throw err;\n }\n },\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zmlib\")\n);\n\n//encode() variables - declare them here so we don’t\n//create them in the function.\nvar encode_cur, encode_todo;\n\nconst ZDLE = Zmodem.ZMLIB.ZDLE;\n\n/**\n * Class that handles ZDLE encoding and decoding.\n * Encoding is subject to a given configuration--specifically, whether\n * we want to escape all control characters. Decoding is static; however\n * a given string is encoded we can always decode it.\n */\nZmodem.ZDLE = class ZmodemZDLE {\n /**\n * Create a ZDLE encoder.\n *\n * @param {object} [config] - The initial configuration.\n * @param {object} config.escape_ctrl_chars - Whether the ZDLE encoder\n * should escape control characters.\n */\n constructor(config) {\n this._config = {};\n if (config) {\n this.set_escape_ctrl_chars(!!config.escape_ctrl_chars);\n }\n }\n\n /**\n * Enable or disable control-character escaping.\n * You should probably enable this for sender sessions.\n *\n * @param {boolean} value - Whether to enable (true) or disable (false).\n */\n set_escape_ctrl_chars(value) {\n if (typeof value !== \"boolean\") throw \"need boolean!\";\n\n if (value !== this._config.escape_ctrl_chars) {\n this._config.escape_ctrl_chars = value;\n this._setup_zdle_table();\n }\n }\n\n /**\n * Whether or not control-character escaping is enabled.\n *\n * @return {boolean} Whether the escaping is on (true) or off (false).\n */\n escapes_ctrl_chars() {\n return !!this._config.escape_ctrl_chars;\n }\n\n //I don’t know of any Zmodem implementations that use ZESC8\n //(“escape_8th_bit”)??\n\n /*\n ZMODEM software escapes ZDLE, 020, 0220, 021, 0221, 023, and 0223. If\n preceded by 0100 or 0300 (@), 015 and 0215 are also escaped to protect the\n Telenet command escape CR-@-CR.\n */\n\n /**\n * Encode an array of octet values and return it.\n * This will mutate the given array.\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {number[]} The passed-in array, transformed. This is the\n * same object that is passed in.\n */\n encode(octets) {\n //NB: Performance matters here!\n\n if (!this._zdle_table) throw \"No ZDLE encode table configured!\";\n\n var zdle_table = this._zdle_table;\n\n var last_code = this._lastcode;\n\n var arrbuf = new ArrayBuffer( 2 * octets.length );\n var arrbuf_uint8 = new Uint8Array(arrbuf);\n\n var escctl_yn = this._config.escape_ctrl_chars;\n\n var arrbuf_i = 0;\n\n for (encode_cur=0; encode_cur=0; o--) {\n if (octets[o] === ZDLE) {\n octets.splice( o, 2, octets[o+1] - 64 );\n }\n }\n\n return octets;\n }\n\n /**\n * Remove, ZDLE-decode, and return bytes from the passed-in array.\n * If the requested number of ZDLE-encoded bytes isn’t available,\n * then the passed-in array is unmodified (and the return is undefined).\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @param {number} offset - The number of (undecoded) bytes to skip\n * at the beginning of the “octets” array.\n *\n * @param {number} count - The number of bytes (octet values) to return.\n *\n * @returns {number[]|undefined} An array with the requested number of\n * decoded octet values, or undefined if that number of decoded\n * octets isn’t available (given the passed-in offset).\n */\n static splice(octets, offset, count) {\n var so_far = 0;\n\n if (!offset) offset = 0;\n\n for (var i = offset; i> 8,\n 0,\n flags_num,\n ];\n }\n\n //undefined if nonstop I/O is allowed\n get_buffer_size() {\n return Zmodem.ENCODELIB.unpack_u16_be( this._bytes4.slice(0, 2) ) || undefined;\n }\n\n //Unimplemented:\n // can_decrypt\n // can_decompress\n\n //----------------------------------------------------------------------\n //function names taken from Jacques Mattheij’s implementation,\n //as used in syncterm.\n\n can_full_duplex() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANFDX );\n }\n\n can_overlap_io() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANOVIO );\n }\n\n can_break() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANBRK );\n }\n\n can_fcs_32() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANFC32 );\n }\n\n escape_ctrl_chars() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.ESCCTL );\n }\n\n //Is this used? I don’t see it used in lrzsz or syncterm\n //Looks like it was a “foreseen” feature that Forsberg\n //never implemented. (The need for it went away, maybe?)\n escape_8th_bit() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.ESC8 );\n }\n};\n\n//----------------------------------------------------------------------\n\n//Since context makes clear what’s going on, we use these\n//rather than the T-prefixed constants in the specification.\nconst ZSINIT_FLAG = {\n ESCCTL: 0x40, // Transmitter will escape ctl chars\n ESC8: 0x80, // Transmitter will escape 8th bit\n};\n\nfunction _get_ZSINIT_flag_num(fl) {\n if (!ZSINIT_FLAG[fl]) {\n throw(\"Invalid ZSINIT flag: \" + fl);\n }\n return ZSINIT_FLAG[fl];\n}\n\nclass ZSINIT_HEADER extends Zmodem.Header {\n constructor( flags_arr, attn_seq_arr ) {\n super();\n var flags_num = 0;\n\n flags_arr.forEach( function(fl) {\n flags_num |= _get_ZSINIT_flag_num(fl);\n } );\n\n this._bytes4 = [ 0, 0, 0, flags_num ];\n\n if (attn_seq_arr) {\n if (attn_seq_arr.length > 31) {\n throw(\"Attn sequence must be <= 31 bytes\");\n }\n if (attn_seq_arr.some( function(num) { return num > 255 } )) {\n throw(\"Attn sequence (\" + attn_seq_arr + \") must be <256\");\n }\n this._data = attn_seq_arr.concat([0]);\n }\n }\n\n escape_ctrl_chars() {\n return !!( this._bytes4[3] & ZSINIT_FLAG.ESCCTL );\n }\n\n //Is this used? I don’t see it used in lrzsz or syncterm\n escape_8th_bit() {\n return !!( this._bytes4[3] & ZSINIT_FLAG.ESC8 );\n }\n}\n\n//Thus far it doesn’t seem we really need this header except to respond\n//to ZSINIT, which doesn’t require a payload.\nclass ZACK_HEADER extends Zmodem.Header {\n constructor(payload4) {\n super();\n\n if (payload4) {\n this._bytes4 = payload4.slice();\n }\n }\n}\nZACK_HEADER.prototype._hex_header_ending = HEX_HEADER_CRLF;\n\n//----------------------------------------------------------------------\n\nconst ZFILE_VALUES = {\n\n //ZF3 (i.e., first byte)\n extended: {\n sparse: 0x40, //ZXSPARS\n },\n\n //ZF2\n transport: [\n undefined,\n \"compress\", //ZTLZW\n \"encrypt\", //ZTCRYPT\n \"rle\", //ZTRLE\n ],\n\n //ZF1\n management: [\n undefined,\n \"newer_or_longer\", //ZF1_ZMNEWL\n \"crc\", //ZF1_ZMCRC\n \"append\", //ZF1_ZMAPND\n \"clobber\", //ZF1_ZMCLOB\n \"newer\", //ZF1_ZMNEW\n \"mtime_or_length\", //ZF1_ZMNEW\n \"protect\", //ZF1_ZMPROT\n \"rename\", //ZF1_ZMPROT\n ],\n\n //ZF0 (i.e., last byte)\n conversion: [\n undefined,\n \"binary\", //ZCBIN\n \"text\", //ZCNL\n \"resume\", //ZCRESUM\n ],\n};\n\nconst ZFILE_ORDER = [\"extended\", \"transport\", \"management\", \"conversion\"];\n\nconst ZMSKNOLOC = 0x80,\n MANAGEMENT_MASK = 0x1f,\n ZXSPARS = 0x40\n;\n\nclass ZFILE_HEADER extends Zmodem.Header {\n\n //TODO: allow options on instantiation\n get_options() {\n var opts = {\n sparse: !!(this._bytes4[0] & ZXSPARS),\n };\n\n var bytes_copy = this._bytes4.slice(0);\n\n ZFILE_ORDER.forEach( function(key, i) {\n if (ZFILE_VALUES[key] instanceof Array) {\n if (key === \"management\") {\n opts.skip_if_absent = !!(bytes_copy[i] & ZMSKNOLOC);\n bytes_copy[i] &= MANAGEMENT_MASK;\n }\n\n opts[key] = ZFILE_VALUES[key][ bytes_copy[i] ];\n }\n else {\n for (var extkey in ZFILE_VALUES[key]) {\n opts[extkey] = !!(bytes_copy[i] & ZFILE_VALUES[key][extkey]);\n if (opts[extkey]) {\n bytes_copy[i] ^= ZFILE_VALUES[key][extkey]\n }\n }\n }\n\n if (!opts[key] && bytes_copy[i]) {\n opts[key] = \"unknown:\" + bytes_copy[i];\n }\n } );\n\n return opts;\n }\n}\n\n//----------------------------------------------------------------------\n\n//Empty headers - in addition to ZRQINIT\nclass ZSKIP_HEADER extends Zmodem.Header {}\n//No need for ZNAK\nclass ZABORT_HEADER extends Zmodem.Header {}\nclass ZFIN_HEADER extends Zmodem.Header {}\nclass ZFERR_HEADER extends Zmodem.Header {}\n\nZFIN_HEADER.prototype._hex_header_ending = HEX_HEADER_CRLF;\n\nclass ZOffsetHeader extends Zmodem.Header {\n constructor(offset) {\n super();\n this._bytes4 = Zmodem.ENCODELIB.pack_u32_le(offset);\n }\n\n get_offset() {\n return Zmodem.ENCODELIB.unpack_u32_le(this._bytes4);\n }\n}\n\nclass ZRPOS_HEADER extends ZOffsetHeader {};\nclass ZDATA_HEADER extends ZOffsetHeader {};\nclass ZEOF_HEADER extends ZOffsetHeader {};\n\n//As request, receiver creates.\n/* UNIMPLEMENTED FOR NOW\nclass ZCRC_HEADER extends ZHeader {\n constructor(crc_le_bytes) {\n super();\n if (crc_le_bytes) { //response, sender creates\n this._bytes4 = crc_le_bytes;\n }\n }\n}\n*/\n\n//No ZCHALLENGE implementation\n\n//class ZCOMPL_HEADER extends ZHeader {}\n//class ZCAN_HEADER extends Zmodem.Header {}\n\n//As described, this header represents an information disclosure.\n//It could be interpreted, I suppose, merely as “this is how much space\n//I have FOR YOU.”\n//TODO: implement if needed/requested\n//class ZFREECNT_HEADER extends ZmodemHeader {}\n\n//----------------------------------------------------------------------\n\nconst FRAME_CLASS_TYPES = [\n [ ZRQINIT_HEADER, \"ZRQINIT\" ],\n [ ZRINIT_HEADER, \"ZRINIT\" ],\n [ ZSINIT_HEADER, \"ZSINIT\" ],\n [ ZACK_HEADER, \"ZACK\" ],\n [ ZFILE_HEADER, \"ZFILE\" ],\n [ ZSKIP_HEADER, \"ZSKIP\" ],\n undefined, // [ ZNAK_HEADER, \"ZNAK\" ],\n [ ZABORT_HEADER, \"ZABORT\" ],\n [ ZFIN_HEADER, \"ZFIN\" ],\n [ ZRPOS_HEADER, \"ZRPOS\" ],\n [ ZDATA_HEADER, \"ZDATA\" ],\n [ ZEOF_HEADER, \"ZEOF\" ],\n [ ZFERR_HEADER, \"ZFERR\" ], //see note\n undefined, //[ ZCRC_HEADER, \"ZCRC\" ],\n undefined, //[ ZCHALLENGE_HEADER, \"ZCHALLENGE\" ],\n undefined, //[ ZCOMPL_HEADER, \"ZCOMPL\" ],\n undefined, //[ ZCAN_HEADER, \"ZCAN\" ],\n undefined, //[ ZFREECNT_HEADER, \"ZFREECNT\" ],\n undefined, //[ ZCOMMAND_HEADER, \"ZCOMMAND\" ],\n undefined, //[ ZSTDERR_HEADER, \"ZSTDERR\" ],\n];\n\n/*\nZFERR is described as “error in reading or writing file”. It’s really\nnot a good idea from a security angle for the endpoint to expose this\ninformation. We should parse this and handle it as ZABORT but never send it.\n\nLikewise with ZFREECNT: the sender shouldn’t ask how much space is left\non the other box; rather, the receiver should decide what to do with the\nfile size as the sender reports it.\n*/\n\nvar FRAME_NAME_CREATOR = {};\n\nfor (var fc=0; fc 11) {\n hdr_err = \"Invalid hex header - no LF detected within 12 bytes!\";\n }\n\n //incomplete header\n return;\n }\n else {\n hex_bytes = bytes_arr.splice( 0, lf_pos );\n\n //Trim off the LF\n bytes_arr.shift();\n\n if ( hex_bytes.length === 19 ) {\n\n //NB: The spec says CR but seems to treat high-bit variants\n //of control characters the same as the regulars; should we\n //also allow 0x8d?\n var preceding = hex_bytes.pop();\n if ( preceding !== 0x0d && preceding !== 0x8d ) {\n hdr_err = \"Invalid hex header: (CR/)LF doesn’t have CR!\";\n }\n }\n else if ( hex_bytes.length !== 18 ) {\n hdr_err = \"Invalid hex header: invalid number of bytes before LF!\";\n }\n }\n\n if (hdr_err) {\n hdr_err += \" (\" + hex_bytes.length + \" bytes: \" + hex_bytes.join() + \")\";\n throw hdr_err;\n }\n\n hex_bytes.splice(0, 4);\n\n //Should be 7 bytes ultimately:\n // 1 for typenum\n // 4 for header data\n // 2 for CRC\n var octets = Zmodem.ENCODELIB.parse_hex_octets(hex_bytes);\n\n return _parse_non_zdle_binary16(octets);\n}\n\nZmodem.Header.parse_hex = _parse_hex;\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nconst\n ZDLE = 0x18,\n XON = 0x11,\n XOFF = 0x13,\n XON_HIGH = 0x80 | XON,\n XOFF_HIGH = 0x80 | XOFF,\n CAN = 0x18 //NB: same character as ZDLE\n;\n\n/**\n * Tools and constants that are useful for ZMODEM.\n *\n * @exports ZMLIB\n */\nZmodem.ZMLIB = {\n\n /**\n * @property {number} The ZDLE constant, which ZMODEM uses for escaping\n */\n ZDLE: ZDLE,\n\n /**\n * @property {number} XON - ASCII XON\n */\n XON: XON,\n\n /**\n * @property {number} XOFF - ASCII XOFF\n */\n XOFF: XOFF,\n\n /**\n * @property {number[]} ABORT_SEQUENCE - ZMODEM’s abort sequence\n */\n ABORT_SEQUENCE: [ CAN, CAN, CAN, CAN, CAN ],\n\n /**\n * Remove octet values from the given array that ZMODEM always ignores.\n * This will mutate the given array.\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {number[]} The passed-in array. This is the same object that is\n * passed in.\n */\n strip_ignored_bytes: function strip_ignored_bytes(octets) {\n for (var o=octets.length-1; o>=0; o--) {\n switch (octets[o]) {\n case XON:\n case XON_HIGH:\n case XOFF:\n case XOFF_HIGH:\n octets.splice(o, 1);\n continue;\n }\n }\n\n return octets;\n },\n\n /**\n * Like Array.prototype.indexOf, but searches for a subarray\n * rather than just a particular value.\n *\n * @param {Array} haystack - The array to search, i.e., the bigger.\n *\n * @param {Array} needle - The array whose values to find,\n * i.e., the smaller.\n *\n * @returns {number} The position in “haystack” where “needle”\n * first appears—or, -1 if “needle” doesn’t appear anywhere\n * in “haystack”.\n */\n find_subarray: function find_subarray(haystack, needle) {\n var h=0, n;\n\n var start = Date.now();\n\n HAYSTACK:\n while (h !== -1) {\n h = haystack.indexOf( needle[0], h );\n if (h === -1) break HAYSTACK;\n\n for (n=1; n=0; f--) {\n var fobj = files[f];\n total_size += fobj.size;\n batch[f] = {\n obj: fobj,\n name: fobj.name,\n size: fobj.size,\n mtime: new Date(fobj.lastModified),\n files_remaining: files.length - f,\n bytes_remaining: total_size,\n };\n }\n\n var file_idx = 0;\n function promise_callback() {\n var cur_b = batch[file_idx];\n\n if (!cur_b) {\n return Promise.resolve(); //batch done!\n }\n\n file_idx++;\n\n return session.send_offer(cur_b).then( function after_send_offer(xfer) {\n if (options.on_offer_response) {\n options.on_offer_response(cur_b.obj, xfer);\n }\n\n if (xfer === undefined) {\n return promise_callback(); //skipped\n }\n\n return new Promise( function(res) {\n var reader = new FileReader();\n\n //This really shouldn’t happen … so let’s\n //blow up if it does.\n reader.onerror = function reader_onerror(e) {\n console.error(\"file read error\", e);\n throw(\"File read error: \" + e);\n };\n\n var piece;\n reader.onprogress = function reader_onprogress(e) {\n\n //Some browsers (e.g., Chrome) give partial returns,\n //while others (e.g., Firefox) don’t.\n if (e.target.result) {\n piece = new Uint8Array(e.target.result, xfer.get_offset())\n\n _check_aborted(session);\n\n xfer.send(piece);\n\n if (options.on_progress) {\n options.on_progress(cur_b.obj, xfer, piece);\n }\n }\n };\n\n reader.onload = function reader_onload(e) {\n piece = new Uint8Array(e.target.result, xfer, piece)\n\n _check_aborted(session);\n\n xfer.end(piece).then( function() {\n if (options.on_progress && piece.length) {\n options.on_progress(cur_b.obj, xfer, piece);\n }\n\n if (options.on_file_complete) {\n options.on_file_complete(cur_b.obj, xfer);\n }\n\n //Resolve the current file-send promise with\n //another promise. That promise resolves immediately\n //if we’re done, or with another file-send promise\n //if there’s more to send.\n res( promise_callback() );\n } );\n };\n\n reader.readAsArrayBuffer(cur_b.obj);\n } );\n } );\n }\n\n return promise_callback();\n },\n\n /**\n * Prompt a user to save the given packets as a file by injecting an\n * `` element (with `display: none` styling) into the page and\n * calling the element’s `click()`\n * method. The element is removed immediately after.\n *\n * @param {Array} packets - Same as the first argument to [Blob’s constructor](https://developer.mozilla.org/en-US/docs/Web/API/Blob).\n * @param {string} name - The name to give the file.\n */\n save_to_disk: function save_to_disk(packets, name) {\n var blob = new Blob(packets);\n var url = URL.createObjectURL(blob);\n\n var el = document.createElement(\"a\");\n el.style.display = \"none\";\n el.href = url;\n el.download = name;\n document.body.appendChild(el);\n\n //It seems like a security problem that this actually works;\n //I’d think there would need to be some confirmation before\n //a browser could save arbitrarily many bytes onto the disk.\n //But, hey.\n el.click();\n\n document.body.removeChild(el);\n },\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zmlib\"),\n require(\"./zsession\")\n);\n\nconst\n MIN_ZM_HEX_START_LENGTH = 20,\n MAX_ZM_HEX_START_LENGTH = 21,\n\n // **, ZDLE, 'B0'\n //ZRQINIT’s next byte will be '0'; ZRINIT’s will be '1'.\n COMMON_ZM_HEX_START = [ 42, 42, 24, 66, 48 ],\n\n SENTRY_CONSTRUCTOR_REQUIRED_ARGS = [\n \"to_terminal\",\n \"on_detect\",\n \"on_retract\",\n \"sender\",\n ],\n\n ASTERISK = 42\n;\n\n/**\n * An instance of this object is passed to the Sentry’s on_detect\n * callback each time the Sentry object sees what looks like the\n * start of a ZMODEM session.\n *\n * Note that it is possible for a detection to be “retracted”\n * if the Sentry consumes bytes afterward that are not ZMODEM.\n * When this happens, the Sentry’s `retract` event will fire,\n * after which the Detection object is no longer usable.\n */\nclass Detection {\n\n /**\n * Not called directly.\n */\n constructor(session_type, accepter, denier, checker) {\n\n //confirm() - user confirms that ZMODEM is desired\n this._confirmer = accepter;\n\n //deny() - user declines ZMODEM; send abort sequence\n //\n //TODO: It might be ideal to forgo the session “peaceably”,\n //i.e., such that the peer doesn’t end in error. That’s\n //possible if we’re the sender, we accept the session,\n //then we just send a close(), but it doesn’t seem to be\n //possible for a receiver. Thus, let’s just leave it so\n //it’s at least consistent (and simpler, too).\n this._denier = denier;\n\n this._is_valid = checker;\n\n this._session_type = session_type;\n }\n\n /**\n * Confirm that the detected ZMODEM sequence indicates the\n * start of a ZMODEM session.\n *\n * @return {Session} The ZMODEM Session object (i.e., either a\n * Send or Receive instance).\n */\n confirm() {\n return this._confirmer.apply(this, arguments);\n }\n\n /**\n * Tell the Sentry that the detected bytes sequence is\n * **NOT** intended to be the start of a ZMODEM session.\n */\n deny() {\n return this._denier.apply(this, arguments);\n }\n\n /**\n * Tells whether the Detection is still valid; i.e., whether\n * the Sentry has `consume()`d bytes that invalidate the\n * Detection.\n *\n * @returns {boolean} Whether the Detection is valid.\n */\n is_valid() {\n return this._is_valid.apply(this, arguments);\n }\n\n /**\n * Gives the session’s role.\n *\n * @returns {string} One of:\n * - `receive`\n * - `send`\n */\n get_session_role() { return this._session_type }\n}\n\n/**\n * Class that parses an input stream for the beginning of a\n * ZMODEM session. We look for the tell-tale signs\n * of a ZMODEM transfer and allow the client to determine whether\n * it’s really ZMODEM or not.\n *\n * This is the “mother” class for zmodem.js;\n * all other class instances are created, directly or indirectly,\n * by an instance of this class.\n *\n * This logic is not unlikely to need tweaking, and it can never\n * be fully bulletproof; if it could be bulletproof it would be\n * simpler since there wouldn’t need to be the .confirm()/.deny()\n * step.\n *\n * One thing you could do to make things a bit simpler *is* just\n * to make that assumption for your users--i.e., to .confirm()\n * Detection objects automatically. That’ll be one less step\n * for the user, but an unaccustomed user might find that a bit\n * confusing. It’s also then possible to have a “false positive”:\n * a text stream that contains a ZMODEM initialization string but\n * isn’t, in fact, meant to start a ZMODEM session.\n *\n * Workflow:\n * - parse all input with .consume(). As long as nothing looks\n * like ZMODEM, all the traffic will go to to_terminal().\n *\n * - when a “tell-tale” sequence of bytes arrives, we create a\n * Detection object and pass it to the “on_detect” handler.\n *\n * - Either .confirm() or .deny() with the Detection object.\n * This is the user’s chance to say, “yeah, I know those\n * bytes look like ZMODEM, but they’re not. So back off!”\n *\n * If you .confirm(), the Session object is returned, and\n * further input that goes to the Sentry’s .consume() will\n * go to the (now-active) Session object.\n *\n * - Sometimes additional traffic arrives that makes it apparent\n * that no ZMODEM session is intended to start; in this case,\n * the Sentry marks the Detection as “stale” and calls the\n * `on_retract` handler. Any attempt from here to .confirm()\n * on the Detection object will prompt an exception.\n *\n * (This “retraction” behavior will only happen prior to\n * .confirm() or .deny() being called on the Detection object.\n * Beyond that point, either the Session has to deal with the\n * “garbage”, or it’s back to the terminal anyway.\n *\n * - Once the Session object is done, the Sentry will again send\n * all traffic to to_terminal().\n */\nZmodem.Sentry = class ZmodemSentry {\n\n /**\n * Invoked directly. Creates a new Sentry that inspects all\n * traffic before it goes to the terminal.\n *\n * @param {Object} options - The Sentry parameters\n *\n * @param {Function} options.to_terminal - Handler that sends\n * traffic to the terminal object. Receives an iterable object\n * (e.g., an Array) that contains octet numbers.\n *\n * @param {Function} options.on_detect - Handler for new\n * detection events. Receives a new Detection object.\n *\n * @param {Function} options.on_retract - Handler for retraction\n * events. Receives no input.\n *\n * @param {Function} options.sender - Handler that sends traffic to\n * the peer. If, for example, your application uses WebSocket to talk\n * to the peer, use this to send data to the WebSocket instance.\n */\n constructor(options) {\n if (!options) throw \"Need options!\";\n\n var sentry = this;\n SENTRY_CONSTRUCTOR_REQUIRED_ARGS.forEach( function(arg) {\n if (!options[arg]) {\n throw \"Need “\" + arg + \"”!\";\n }\n sentry[\"_\" + arg] = options[arg];\n } );\n\n this._cache = [];\n }\n\n _after_session_end() {\n this._zsession = null;\n }\n\n /**\n * “Consumes” a piece of input:\n *\n * - If there is no active or pending ZMODEM session, the text is\n * all output. (This is regardless of whether we’ve got a new\n * Detection.)\n *\n * - If there is no active ZMODEM session and the input **ends** with\n * a ZRINIT or ZRQINIT, then a new Detection object is created,\n * and it is passed to the “on_detect” function.\n * If there was another pending Detection object, it is retracted.\n *\n * - If there is no active ZMODEM session and the input does NOT end\n * with a ZRINIT or ZRQINIT, then any pending Detection object is\n * retracted.\n *\n * - If there is an active ZMODEM session, the input is passed to it.\n * Any non-ZMODEM data (i.e., “garbage”) parsed from the input\n * is sent to output.\n * If the ZMODEM session ends, any post-ZMODEM part of the input\n * is sent to output.\n *\n * @param {number[] | ArrayBuffer} input - Octets to parse as input.\n */\n consume(input) {\n if (!(input instanceof Array)) {\n input = Array.prototype.slice.call( new Uint8Array(input) );\n }\n\n if (this._zsession) {\n var session_before_consume = this._zsession;\n\n session_before_consume.consume(input);\n\n if (session_before_consume.has_ended()) {\n if (session_before_consume.type === \"receive\") {\n input = session_before_consume.get_trailing_bytes();\n }\n else {\n input = [];\n }\n }\n else return;\n }\n\n var new_session = this._parse(input);\n var to_terminal = input;\n\n if (new_session) {\n let replacement_detect = !!this._parsed_session;\n\n if (replacement_detect) {\n //no terminal output if the new session is of the\n //same type as the old\n if (this._parsed_session.type === new_session.type) {\n to_terminal = [];\n }\n\n this._on_retract();\n }\n\n this._parsed_session = new_session;\n\n var sentry = this;\n\n function checker() {\n return sentry._parsed_session === new_session;\n }\n\n //This runs with the Sentry object as the context.\n function accepter() {\n if (!this.is_valid()) {\n throw \"Stale ZMODEM session!\";\n }\n\n new_session.on(\"garbage\", sentry._to_terminal);\n\n new_session.on(\n \"session_end\",\n sentry._after_session_end.bind(sentry)\n );\n\n new_session.set_sender(sentry._sender);\n\n delete sentry._parsed_session;\n\n return sentry._zsession = new_session;\n };\n\n function denier() {\n if (!this.is_valid()) return;\n };\n\n this._on_detect( new Detection(\n new_session.type,\n accepter,\n this._send_abort.bind(this),\n checker\n ) );\n }\n else {\n /*\n if (this._parsed_session) {\n this._session_stale_because = 'Non-ZMODEM output received after ZMODEM initialization.';\n }\n */\n\n var expired_session = this._parsed_session;\n\n this._parsed_session = null;\n\n if (expired_session) {\n\n //If we got a single “C” after parsing a session,\n //that means our peer is trying to downgrade to YMODEM.\n //That won’t work, so we just send the ABORT_SEQUENCE\n //right away.\n if (to_terminal.length === 1 && to_terminal[0] === 67) {\n this._send_abort();\n }\n\n this._on_retract();\n }\n }\n\n this._to_terminal(to_terminal);\n }\n\n /**\n * @return {Session|null} The sentry’s current Session object, or\n * null if there is none.\n */\n get_confirmed_session() {\n return this._zsession || null;\n }\n\n _send_abort() {\n this._sender( Zmodem.ZMLIB.ABORT_SEQUENCE );\n }\n\n /**\n * Parse an input stream and decide how much of it goes to the\n * terminal or to a new Session object.\n *\n * This will accommodate input strings that are fragmented\n * across calls to this function; e.g., if you send the first\n * two bytes at the end of one parse() call then send the rest\n * at the beginning of the next, parse() will recognize it as\n * the beginning of a ZMODEM session.\n *\n * In order to keep from blocking any actual useful data to the\n * terminal in real-time, this will send on the initial\n * ZRINIT/ZRQINIT bytes to the terminal. They’re meant to go to the\n * terminal anyway, so that should be fine.\n *\n * @private\n *\n * @param {Array|Uint8Array} array_like - The input bytes.\n * Each member should be a number between 0 and 255 (inclusive).\n *\n * @return {Array} A two-member list:\n * 0) the bytes that should be printed on the terminal\n * 1) the created Session object (if any)\n */\n _parse(array_like) {\n var cache = this._cache;\n\n cache.push.apply( cache, array_like );\n\n while (true) {\n let common_hex_at = Zmodem.ZMLIB.find_subarray( cache, COMMON_ZM_HEX_START );\n if (-1 === common_hex_at) break;\n\n let before_common_hex = cache.splice(0, common_hex_at);\n let zsession;\n try {\n zsession = Zmodem.Session.parse(cache);\n } catch(err) { //ignore errors\n //console.log(err);\n }\n\n if (!zsession) break;\n\n //Don’t need to parse the trailing XON.\n if ((cache.length === 1) && (cache[0] === Zmodem.ZMLIB.XON)) {\n cache.shift();\n }\n\n //If there are still bytes in the cache,\n //then we don’t have a ZMODEM session. This logic depends\n //on the sender only sending one initial header.\n return cache.length ? null : zsession;\n }\n\n cache.splice( MAX_ZM_HEX_START_LENGTH );\n\n return null;\n }\n}\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\n/**\n * This is where the protocol-level logic lives: the interaction of ZMODEM\n * headers and subpackets. The logic here is not unlikely to need tweaking\n * as little edge cases crop up.\n */\n\nZmodem.DEBUG = true;\n\nObject.assign(\n Zmodem,\n require(\"./encode\"),\n require(\"./text\"),\n require(\"./zdle\"),\n require(\"./zmlib\"),\n require(\"./zheader\"),\n require(\"./zsubpacket\"),\n require(\"./zvalidation\"),\n require(\"./zerror\")\n);\n\nconst\n //pertinent to this module\n KEEPALIVE_INTERVAL = 5000,\n\n //We ourselves don’t need ESCCTL, so we don’t send it;\n //however, we always expect to receive it in ZRINIT.\n //See _ensure_receiver_escapes_ctrl_chars() for more details.\n ZRINIT_FLAGS = [\n \"CANFDX\", //full duplex\n \"CANOVIO\", //overlap I/O\n\n //lsz has a buffer overflow bug that shows itself when:\n //\n // - 16-bit CRC is used, and\n // - lsz receives the abort sequence while sending a file\n //\n //To avoid this, we just tell lsz to use 32-bit CRC\n //even though there is otherwise no reason. This ensures that\n //unfixed lsz versions will avoid the buffer overflow.\n \"CANFC32\",\n ],\n\n //We do this because some WebSocket shell servers\n //(e.g., xterm.js’s demo server) enable the IEXTEN termios flag,\n //which bars 0x0f and 0x16 from reaching the shell process,\n //which results in transmission errors.\n FORCE_ESCAPE_CTRL_CHARS = true,\n\n DEFAULT_RECEIVE_INPUT_MODE = \"spool_uint8array\",\n\n //pertinent to ZMODEM\n MAX_CHUNK_LENGTH = 8192, //1 KiB officially, but lrzsz allows 8192\n BS = 0x8,\n OVER_AND_OUT = [ 79, 79 ],\n ABORT_SEQUENCE = Zmodem.ZMLIB.ABORT_SEQUENCE\n;\n\n/**\n * A base class for objects that have events.\n *\n * @private\n */\nclass _Eventer {\n\n /**\n * Not called directly.\n */\n constructor() {\n this._on_evt = {};\n this._evt_once_index = {};\n }\n\n _Add_event(evt_name) {\n this._on_evt[evt_name] = [];\n this._evt_once_index[evt_name] = [];\n }\n\n _get_evt_queue(evt_name) {\n if (!this._on_evt[evt_name]) {\n throw( \"Bad event: \" + evt_name );\n }\n\n return this._on_evt[evt_name];\n }\n\n /**\n * Register a callback for a given event.\n *\n * @param {string} evt_name - The name of the event.\n *\n * @param {Function} todo - The function to execute when the event happens.\n */\n on(evt_name, todo) {\n var queue = this._get_evt_queue(evt_name);\n\n queue.push(todo);\n\n return this;\n }\n\n /**\n * Unregister a callback for a given event.\n *\n * @param {string} evt_name - The name of the event.\n *\n * @param {Function} [todo] - The function to execute when the event\n * happens. If not given, the last event registered for the event\n * is unregistered.\n */\n off(evt_name, todo) {\n var queue = this._get_evt_queue(evt_name);\n\n if (todo) {\n var at = queue.indexOf(todo);\n if (at === -1) {\n throw(\"“\" + todo + \"” is not in the “\" + evt_name + \"” queue.\");\n }\n queue.splice(at, 1);\n }\n else {\n queue.pop();\n }\n\n return this;\n }\n\n _Happen(evt_name /*, arg0, arg1, .. */) {\n var queue = this._get_evt_queue(evt_name); //might as well validate\n\n //console.info(\"EVENT\", this, arguments);\n\n var args = Array.apply(null, arguments);\n args.shift();\n\n var sess = this;\n\n queue.forEach( function(cb) { cb.apply(sess, args) } );\n\n return queue.length;\n }\n}\n\n/**\n * The Session classes handle the protocol-level logic.\n * These shield the user from dealing with headers and subpackets.\n * This is a base class with functionality common to both Receive\n * and Send subclasses.\n *\n * @extends _Eventer\n*/\nZmodem.Session = class ZmodemSession extends _Eventer {\n\n /**\n * Parse out a hex header from the given array.\n * If there’s a ZRQINIT or ZRINIT at the beginning,\n * we’ll return it. If the input isn’t a header,\n * for whatever reason, we return undefined.\n *\n * @param {number[]} octets - The bytes to parse.\n *\n * @return {Session|undefined} A Session object if the beginning\n * of a session was parsable in “octets”; otherwise undefined.\n */\n static parse( octets ) {\n\n //Will need to trap errors.\n var hdr;\n try {\n hdr = Zmodem.Header.parse_hex(octets);\n }\n catch(e) { //Don’t report since we aren’t in session\n\n //debug\n //console.warn(\"No hex header: \", e);\n\n return;\n }\n\n if (!hdr) return;\n\n switch (hdr.NAME) {\n case \"ZRQINIT\":\n //throw if ZCOMMAND\n return new Zmodem.Session.Receive();\n case \"ZRINIT\":\n return new Zmodem.Session.Send(hdr);\n }\n\n //console.warn(\"Invalid first Zmodem header\", hdr);\n }\n\n /**\n * Sets the sender function that a Session object will use.\n *\n * @param {Function} sender_func - The function to call.\n * It will receive an Array with the relevant octets.\n *\n * @return {Session} The session object (for chaining).\n */\n set_sender(sender_func) {\n this._sender = sender_func;\n return this;\n }\n\n /**\n * Whether the current Session has ended.\n *\n * @returns {boolean} The ended state.\n */\n has_ended() { return this._has_ended() }\n\n /**\n * Consumes an array of octets as ZMODEM session input.\n *\n * @param {number[]} octets - The input octets.\n */\n consume(octets) {\n this._before_consume(octets);\n\n if (this._aborted) throw new Zmodem.Error('already_aborted');\n\n if (!octets.length) return;\n\n this._strip_and_enqueue_input(octets);\n\n if (!this._check_for_abort_sequence(octets)) {\n this._consume_first();\n }\n\n return;\n }\n\n /**\n * Whether the current Session has been `abort()`ed.\n *\n * @returns {boolean} The aborted state.\n */\n aborted() { return !!this._aborted }\n\n /**\n * Not called directly.\n */\n constructor() {\n super();\n //if (!sender_func) throw \"Need sender!\";\n\n //this._first_header = first_header;\n //this._sender = sender_func;\n this._config = {};\n\n //this._input = new ZInput();\n\n this._input_buffer = [];\n\n //This is mostly for debugging.\n this._Add_event(\"receive\");\n this._Add_event(\"garbage\");\n this._Add_event(\"session_end\");\n }\n\n /**\n * Returns the Session object’s role.\n *\n * @returns {string} One of:\n * - `receive`\n * - `send`\n */\n get_role() { return this.type }\n\n _trim_leading_garbage_until_header() {\n var garbage = Zmodem.Header.trim_leading_garbage(this._input_buffer);\n\n if (garbage.length) {\n if (this._Happen(\"garbage\", garbage) === 0) {\n console.debug(\n \"Garbage: \",\n String.fromCharCode.apply(String, garbage),\n garbage\n );\n }\n }\n }\n\n _parse_and_consume_header() {\n this._trim_leading_garbage_until_header();\n\n var new_header_and_crc = Zmodem.Header.parse(this._input_buffer);\n if (!new_header_and_crc) return;\n\n if (Zmodem.DEBUG) {\n this._log_header( \"RECEIVED HEADER\", new_header_and_crc[0] );\n }\n\n this._consume_header(new_header_and_crc[0]);\n\n this._last_header_name = new_header_and_crc[0].NAME;\n this._last_header_crc = new_header_and_crc[1];\n\n return new_header_and_crc[0];\n }\n\n _log_header(label, header) {\n console.debug(this.type, label, header.NAME, header._bytes4.join());\n }\n\n _consume_header(new_header) {\n this._on_receive(new_header);\n\n var handler = this._next_header_handler && this._next_header_handler[ new_header.NAME ];\n if (!handler) {\n console.error(\"Unhandled header!\", new_header, this._next_header_handler);\n throw new Zmodem.Error( \"Unhandled header: \" + new_header.NAME );\n }\n\n this._next_header_handler = null;\n\n handler.call(this, new_header);\n }\n\n //TODO: strip out the abort sequence\n _check_for_abort_sequence() {\n var abort_at = Zmodem.ZMLIB.find_subarray( this._input_buffer, ABORT_SEQUENCE );\n\n if (abort_at !== -1) {\n\n //TODO: expose this to caller\n this._input_buffer.splice( 0, abort_at + ABORT_SEQUENCE.length );\n\n this._aborted = true;\n\n //TODO compare response here to lrzsz.\n this._on_session_end();\n\n //We shouldn’t ever expect to receive an abort. Even if we\n //have sent an abort ourselves, the Sentry should have stopped\n //directing input to this Session object.\n //if (this._expect_abort) {\n // return true;\n //}\n\n throw new Zmodem.Error(\"peer_aborted\");\n }\n }\n\n _send_header(name /*, args */) {\n if (!this._sender) throw \"Need sender!\";\n\n var args = Array.apply( null, arguments );\n\n var bytes_hdr = this._create_header_bytes(args);\n\n if (Zmodem.DEBUG) {\n this._log_header( \"SENDING HEADER\", bytes_hdr[1] );\n }\n\n this._sender(bytes_hdr[0]);\n\n this._last_sent_header = bytes_hdr[1];\n }\n\n _create_header_bytes(name_and_args) {\n\n var hdr = Zmodem.Header.build.apply( Zmodem.Header, name_and_args );\n\n var formatter = this._get_header_formatter(name_and_args[0]);\n\n return [\n hdr[formatter](this._zencoder),\n hdr\n ];\n }\n\n _strip_and_enqueue_input(input) {\n Zmodem.ZMLIB.strip_ignored_bytes(input);\n\n //It’s possible that “input” is empty at this point.\n //It doesn’t seem to hurt anything to keep processing, though.\n\n this._input_buffer.push.apply( this._input_buffer, input );\n }\n\n /**\n * **STOP!** You probably want to `skip()` an Offer rather than\n * `abort()`. See below.\n *\n * Abort the current session by sending the ZMODEM abort sequence.\n * This function will cause the Session object to refuse to send\n * any further data.\n *\n * Zmodem.Sentry is configured to send all output to the terminal\n * after a session’s `abort()`. That could result in lots of\n * ZMODEM garble being sent to the JavaScript terminal, which you\n * probably don’t want.\n *\n * `skip()` on an Offer is better because Session will continue to\n * discard data until we reach either another file or the\n * sender-initiated end of the ZMODEM session. So no ZMODEM garble,\n * and the session will end successfully.\n *\n * The behavior of `abort()` is subject to change since it’s not\n * very useful as currently implemented.\n */\n abort() {\n\n //this._expect_abort = true;\n\n //From Forsberg:\n //\n //The Cancel sequence consists of eight CAN characters\n //and ten backspace characters. ZMODEM only requires five\n //Cancel characters; the other three are \"insurance\".\n //The trailing backspace characters attempt to erase\n //the effects of the CAN characters if they are\n //received by a command interpreter.\n //\n //FG: Since we assume our connection is reliable, there’s\n //no reason to send more than 5 CANs.\n this._sender(\n ABORT_SEQUENCE.concat([ BS, BS, BS, BS, BS ])\n );\n\n this._aborted = true;\n this._sender = function() {\n throw new Zmodem.Error('already_aborted');\n };\n\n this._on_session_end();\n\n return;\n }\n\n //----------------------------------------------------------------------\n _on_session_end() {\n this._Happen(\"session_end\");\n }\n\n _on_receive(hdr_or_pkt) {\n this._Happen(\"receive\", hdr_or_pkt);\n }\n\n _before_consume() {}\n}\n\nfunction _trim_OO(array) {\n if (0 === Zmodem.ZMLIB.find_subarray(array, OVER_AND_OUT)) {\n array.splice(0, OVER_AND_OUT.length);\n }\n\n //TODO: This assumes OVER_AND_OUT is 2 bytes long. No biggie, but.\n else if ( array[0] === OVER_AND_OUT[ OVER_AND_OUT.length - 1 ] ) {\n array.splice(0, 1);\n }\n\n return array;\n}\n\n/** A class for ZMODEM receive sessions.\n *\n * @extends Session\n */\nZmodem.Session.Receive = class ZmodemReceiveSession extends Zmodem.Session {\n //We only get 1 file at a time, so on each consume() either\n //continue state for the current file or start a new one.\n\n /**\n * Not called directly.\n */\n constructor() {\n super();\n\n this._Add_event(\"offer\");\n this._Add_event(\"data_in\");\n this._Add_event(\"file_end\");\n }\n\n /**\n * Consume input bytes from the sender.\n *\n * @private\n * @param {number[]} octets - The bytes to consume.\n */\n _before_consume(octets) {\n if (this._bytes_after_OO) {\n throw \"PROTOCOL: Session is completed!\";\n }\n\n //Put this here so that our logic later on has access to the\n //input string and can populate _bytes_after_OO when the\n //session ends.\n this._bytes_being_consumed = octets;\n }\n\n /**\n * Return any bytes that have been `consume()`d but\n * came after the end of the ZMODEM session.\n *\n * @returns {number[]} The trailing bytes.\n */\n get_trailing_bytes() {\n if (this._aborted) return [];\n\n if (!this._bytes_after_OO) {\n throw \"PROTOCOL: Session is not completed!\";\n }\n\n return this._bytes_after_OO.slice(0);\n }\n\n _has_ended() { return this.aborted() || !!this._bytes_after_OO }\n\n //Receiver always sends hex headers.\n _get_header_formatter() { return \"to_hex\" }\n\n _parse_and_consume_subpacket() {\n var parse_func;\n if (this._last_header_crc === 16) {\n parse_func = \"parse16\";\n }\n else {\n parse_func = \"parse32\";\n }\n\n var subpacket = Zmodem.Subpacket[parse_func](this._input_buffer);\n\n if (subpacket) {\n if (Zmodem.DEBUG) {\n console.debug(this.type, \"RECEIVED SUBPACKET\", subpacket);\n }\n\n this._consume_data(subpacket);\n\n //What state are we in if the subpacket indicates frame end\n //but we haven’t gotten ZEOF yet? Can anything other than ZEOF\n //follow after a ZDATA?\n if (subpacket.frame_end()) {\n this._next_subpacket_handler = null;\n }\n }\n\n return subpacket;\n }\n\n _consume_first() {\n if (this._got_ZFIN) {\n if (this._input_buffer.length < 2) return;\n\n //if it’s OO, then set this._bytes_after_OO\n if (Zmodem.ZMLIB.find_subarray(this._input_buffer, OVER_AND_OUT) === 0) {\n\n //This doubles as an indication that the session has ended.\n //We need to set this right away so that handlers like\n //\"session_end\" will have access to it.\n this._bytes_after_OO = _trim_OO(this._bytes_being_consumed.slice(0));\n this._on_session_end();\n\n return;\n }\n else {\n throw( \"PROTOCOL: Only thing after ZFIN should be “OO” (79,79), not: \" + this._input_buffer.join() );\n }\n }\n\n var parsed;\n do {\n if (this._next_subpacket_handler) {\n parsed = this._parse_and_consume_subpacket();\n }\n else {\n parsed = this._parse_and_consume_header();\n }\n } while (parsed && this._input_buffer.length);\n }\n\n _consume_data(subpacket) {\n this._on_receive(subpacket);\n\n if (!this._next_subpacket_handler) {\n throw( \"PROTOCOL: Received unexpected data packet after \" + this._last_header_name + \" header: \" + subpacket.get_payload().join() );\n }\n\n this._next_subpacket_handler.call(this, subpacket);\n }\n\n _octets_to_string(octets) {\n if (!this._textdecoder) {\n this._textdecoder = new Zmodem.Text.Decoder();\n }\n\n return this._textdecoder.decode( new Uint8Array(octets) );\n }\n\n _consume_ZFILE_data(hdr, subpacket) {\n if (this._file_info) {\n throw \"PROTOCOL: second ZFILE data subpacket received\";\n }\n\n var packet_payload = subpacket.get_payload();\n var nul_at = packet_payload.indexOf(0);\n\n //\n var fname = this._octets_to_string( packet_payload.slice(0, nul_at) );\n var the_rest = this._octets_to_string( packet_payload.slice( 1 + nul_at ) ).split(\" \");\n\n var mtime = the_rest[1] && parseInt( the_rest[1], 8 ) || undefined;\n if (mtime) {\n mtime = new Date(mtime * 1000);\n }\n\n this._file_info = {\n name: fname,\n size: the_rest[0] ? parseInt( the_rest[0], 10 ) : null,\n mtime: mtime || null,\n mode: the_rest[2] && parseInt( the_rest[2], 8 ) || null,\n serial: the_rest[3] && parseInt( the_rest[3], 10 ) || null,\n\n files_remaining: the_rest[4] ? parseInt( the_rest[4], 10 ) : null,\n bytes_remaining: the_rest[5] ? parseInt( the_rest[5], 10 ) : null,\n };\n\n //console.log(\"ZFILE\", hdr);\n\n var xfer = new Offer(\n hdr.get_options(),\n this._file_info,\n this._accept.bind(this),\n this._skip.bind(this)\n );\n this._current_transfer = xfer;\n\n //this._Happen(\"offer\", xfer);\n }\n\n _consume_ZDATA_data(subpacket) {\n if (!this._accepted_offer) {\n throw \"PROTOCOL: Received data without accepting!\";\n }\n\n //TODO: Probably should include some sort of preventive against\n //infinite loop here: if the peer hasn’t sent us what we want after,\n //say, 10 ZRPOS headers then we should send ZABORT and just end.\n if (!this._offset_ok) {\n console.warn(\"offset not ok!\");\n _send_ZRPOS();\n return;\n }\n\n this._file_offset += subpacket.get_payload().length;\n this._on_data_in(subpacket);\n\n /*\n console.warn(\"received error from data_in callback; retrying\", e);\n throw \"unimplemented\";\n */\n\n if (subpacket.ack_expected() && !subpacket.frame_end()) {\n this._send_header( \"ZACK\", Zmodem.ENCODELIB.pack_u32_le(this._file_offset) );\n }\n }\n\n _make_promise_for_between_files() {\n var sess = this;\n\n return new Promise( function(res) {\n var between_files_handler = {\n ZFILE: function(hdr) {\n this._next_subpacket_handler = function(subpacket) {\n this._next_subpacket_handler = null;\n this._consume_ZFILE_data(hdr, subpacket);\n this._Happen(\"offer\", this._current_transfer);\n res(this._current_transfer);\n };\n },\n\n //We use this as a keep-alive. Maybe other\n //implementations do, too?\n ZSINIT: function(hdr) {\n //The content of this header doesn’t affect us\n //since all it does is tell us details of how\n //the sender will ZDLE-encode binary data. Our\n //ZDLE parser doesn’t need to know in advance.\n\n sess._next_subpacket_handler = function(spkt) {\n sess._next_subpacket_handler = null;\n sess._consume_ZSINIT_data(spkt);\n sess._send_header('ZACK');\n sess._next_header_handler = between_files_handler;\n };\n },\n\n ZFIN: function() {\n this._consume_ZFIN();\n res();\n },\n };\n\n sess._next_header_handler = between_files_handler;\n } );\n }\n\n _consume_ZSINIT_data(spkt) {\n\n //TODO: Should this be used when we signal a cancellation?\n this._attn = spkt.get_payload();\n }\n\n /**\n * Start the ZMODEM session by signaling to the sender that\n * we are ready for the first file offer.\n *\n * @returns {Promise} A promise that resolves with an Offer object\n * or, if the sender closes the session immediately without offering\n * anything, nothing.\n */\n start() {\n if (this._started) throw \"Already started!\";\n this._started = true;\n\n var ret = this._make_promise_for_between_files();\n\n this._send_ZRINIT();\n\n return ret;\n }\n\n //Returns a promise that’s fulfilled when the file\n //transfer is done.\n //\n // That ZEOF promise return is another promise that’s\n // fulfilled when we get either ZFIN or another ZFILE.\n _accept(offset) {\n this._accepted_offer = true;\n this._file_offset = offset || 0;\n\n var sess = this;\n\n var ret = new Promise( function(resolve_accept) {\n var last_ZDATA;\n\n sess._next_header_handler = {\n ZDATA: function on_ZDATA(hdr) {\n this._consume_ZDATA(hdr);\n\n this._next_subpacket_handler = this._consume_ZDATA_data;\n\n this._next_header_handler = {\n ZEOF: function on_ZEOF(hdr) {\n\n // Do this first to verify the ZEOF.\n // This also fires the “file_end” event.\n this._consume_ZEOF(hdr);\n\n this._next_subpacket_handler = null;\n\n // We don’t care about this promise.\n // Prior to v0.1.8 we did because we called\n // resolve_accept() at the resolution of this\n // promise, but that was a bad idea and was\n // never documented, so 0.1.8 changed it.\n this._make_promise_for_between_files();\n\n resolve_accept();\n\n this._send_ZRINIT();\n },\n };\n },\n };\n } );\n\n this._send_ZRPOS();\n\n return ret;\n }\n\n _skip() {\n var ret = this._make_promise_for_between_files();\n\n if (this._accepted_offer) {\n // There’s a race condition where we might attempt to\n // skip() an in-progress transfer near its end but actually\n // the skip() will fire after the transfer is complete.\n // While there might be ways to prevent this, they likely\n // would require extra work on the part of implementations.\n //\n // It seems far simpler just to make this function a no-op\n // in these cases.\n if (!this._current_transfer) return;\n\n //For cancel of an in-progress transfer from lsz,\n //it’s necessary to avoid this buffer overflow bug:\n //\n // https://github.com/gooselinux/lrzsz/blob/master/lrzsz-0.12.20.patch\n //\n //… which we do by asking for CRC32 from lsz.\n\n //We might or might not have consumed ZDATA.\n //The sender also might or might not send a ZEOF before it\n //parses the ZSKIP. Thus, we want to ignore the following:\n //\n // - ZDATA\n // - ZDATA then ZEOF\n // - ZEOF\n //\n //… and just look for the next between-file header.\n\n var bound_make_promise_for_between_files = function() {\n\n //Once this happens we fail on any received data packet.\n //So it needs not to happen until we’ve received a header.\n this._accepted_offer = false;\n this._next_subpacket_handler = null;\n\n this._make_promise_for_between_files();\n }.bind(this);\n\n Object.assign(\n this._next_header_handler,\n {\n ZEOF: bound_make_promise_for_between_files,\n ZDATA: function() {\n bound_make_promise_for_between_files();\n this._next_header_handler.ZEOF = bound_make_promise_for_between_files;\n }.bind(this),\n }\n );\n }\n\n //this._accepted_offer = false;\n\n this._file_info = null;\n\n this._send_header( \"ZSKIP\" );\n\n return ret;\n }\n\n _send_ZRINIT() {\n this._send_header( \"ZRINIT\", ZRINIT_FLAGS );\n }\n\n _consume_ZFIN() {\n this._got_ZFIN = true;\n this._send_header( \"ZFIN\" );\n }\n\n _consume_ZEOF(header) {\n if (this._file_offset !== header.get_offset()) {\n throw( \"ZEOF offset mismatch; unimplemented (local: \" + this._file_offset + \"; ZEOF: \" + header.get_offset() + \")\" );\n }\n\n this._on_file_end();\n\n //Preserve these two so that file_end callbacks\n //will have the right information.\n this._file_info = null;\n this._current_transfer = null;\n }\n\n _consume_ZDATA(header) {\n if ( this._file_offset === header.get_offset() ) {\n this._offset_ok = true;\n }\n else {\n throw \"Error correction is unimplemented.\";\n }\n }\n\n _send_ZRPOS() {\n this._send_header( \"ZRPOS\", this._file_offset );\n }\n\n //----------------------------------------------------------------------\n //events\n\n _on_file_end() {\n this._Happen(\"file_end\");\n\n if (this._current_transfer) {\n this._current_transfer._Happen(\"complete\");\n this._current_transfer = null;\n }\n }\n\n _on_data_in(subpacket) {\n this._Happen(\"data_in\", subpacket);\n\n if (this._current_transfer) {\n this._current_transfer._Happen(\"input\", subpacket.get_payload());\n }\n }\n}\n\nObject.assign(\n Zmodem.Session.Receive.prototype,\n {\n type: \"receive\",\n }\n);\n\n//----------------------------------------------------------------------\n\n/**\n * @typedef {Object} FileDetails\n *\n * @property {string} name - The name of the file.\n *\n * @property {number} [size] - The file size, in bytes.\n *\n * @property {number} [mode] - The file mode (e.g., 0100644).\n *\n * @property {Date|number} [mtime] - The file’s modification time.\n * When expressed as a number, the unit is epoch seconds.\n *\n * @property {number} [files_remaining] - Inclusive of the current file,\n * so this value is never less than 1.\n *\n * @property {number} [bytes_remaining] - Inclusive of the current file.\n */\n\n/**\n * Common methods for Transfer and Offer objects.\n *\n * @mixin\n */\nvar Transfer_Offer_Mixin = {\n /**\n * Returns the file details object.\n * @returns {FileDetails} `mtime` is a Date.\n */\n get_details: function get_details() {\n return Object.assign( {}, this._file_info );\n },\n\n /**\n * Returns a parse of the ZFILE header’s payload.\n *\n * @returns {Object} Members are:\n *\n * - `conversion` (string | undefined)\n * - `management` (string | undefined)\n * - `transfer` (string | undefined)\n * - `sparse` (boolean)\n */\n get_options: function get_options() {\n return Object.assign( {}, this._zfile_opts );\n },\n\n /**\n * Returns the offset based on the last transferred chunk.\n * @returns {number} The file offset (i.e., number of bytes after\n * the start of the file).\n */\n get_offset: function get_offset() {\n return this._file_offset;\n },\n};\n\n/**\n * A class to represent a sender’s interaction with a single file\n * transfer within a batch. When a receiver accepts an offer, the\n * Session instantiates this class and passes the instance as the\n * promise resolution from send_offer().\n *\n * @mixes Transfer_Offer_Mixin\n */\nclass Transfer {\n\n /**\n * Not called directly.\n */\n constructor(file_info, offset, send_func, end_func) {\n this._file_info = file_info;\n this._file_offset = offset || 0;\n\n this._send = send_func;\n this._end = end_func;\n }\n\n /**\n * Send a (non-terminal) piece of the file.\n *\n * @param { number[] | Uint8Array } array_like - The bytes to send.\n */\n send(array_like) {\n this._send(array_like);\n this._file_offset += array_like.length;\n }\n\n /**\n * Complete the file transfer.\n *\n * @param { number[] | Uint8Array } [array_like] - The last bytes to send.\n *\n * @return { Promise } Resolves when the receiver has indicated\n * acceptance of the end of the file transfer.\n */\n end(array_like) {\n var ret = this._end(array_like || []);\n if (array_like) this._file_offset += array_like.length;\n return ret;\n }\n}\nObject.assign( Transfer.prototype, Transfer_Offer_Mixin );\n\n/**\n * A class to represent a receiver’s interaction with a single file\n * transfer offer within a batch. There is functionality here to\n * skip or accept offered files and either to spool the packet\n * payloads or to handle them yourself.\n *\n * @mixes Transfer_Offer_Mixin\n */\nclass Offer extends _Eventer {\n\n /**\n * Not called directly.\n */\n constructor(zfile_opts, file_info, accept_func, skip_func) {\n super();\n\n this._zfile_opts = zfile_opts;\n this._file_info = file_info;\n\n this._accept_func = accept_func;\n this._skip_func = skip_func;\n\n this._Add_event(\"input\");\n this._Add_event(\"complete\");\n\n //Register this first so that application handlers receive\n //the updated offset.\n this.on(\"input\", this._input_handler);\n }\n\n _verify_not_skipped() {\n if (this._skipped) {\n throw new Zmodem.Error(\"Already skipped!\");\n }\n }\n\n /**\n * Tell the sender that you don’t want the offered file.\n *\n * You can send this in lieu of `accept()` or after it, e.g.,\n * if you find that the transfer is taking too long. Note that,\n * if you `skip()` after you `accept()`, you’ll likely have to\n * wait for buffers to clear out.\n *\n */\n skip() {\n this._verify_not_skipped();\n this._skipped = true;\n\n return this._skip_func.apply(this, arguments);\n }\n\n /**\n * Tell the sender to send the offered file.\n *\n * @param {Object} [opts] - Can be:\n * @param {string} [opts.oninput=spool_uint8array] - Can be:\n *\n * - `spool_uint8array`: Stores the ZMODEM\n * packet payloads as Uint8Array instances.\n * This makes for an easy transition to a Blob,\n * which JavaScript can use to save the file to disk.\n *\n * - `spool_array`: Stores the ZMODEM packet payloads\n * as Array instances. Each value is an octet value.\n *\n * - (function): A handler that receives each payload\n * as it arrives. The Offer object does not store\n * the payloads internally when thus configured.\n *\n * @return { Promise } Resolves when the file is fully received.\n * If the Offer has been spooling\n * the packet payloads, the promise resolves with an Array\n * that contains those payloads.\n */\n accept(opts) {\n this._verify_not_skipped();\n\n if (this._accepted) {\n throw new Zmodem.Error(\"Already accepted!\");\n }\n this._accepted = true;\n\n if (!opts) opts = {};\n\n this._file_offset = opts.offset || 0;\n\n switch (opts.on_input) {\n case null:\n case undefined:\n case \"spool_array\":\n case DEFAULT_RECEIVE_INPUT_MODE: //default\n this._spool = [];\n break;\n default:\n if (typeof opts.on_input !== \"function\") {\n throw \"Invalid “on_input”: \" + opts.on_input;\n }\n }\n\n this._input_handler_mode = opts.on_input || DEFAULT_RECEIVE_INPUT_MODE;\n\n return this._accept_func(this._file_offset).then( this._get_spool.bind(this) );\n }\n\n _input_handler(payload) {\n this._file_offset += payload.length;\n\n if (typeof this._input_handler_mode === \"function\") {\n this._input_handler_mode(payload);\n }\n else {\n if (this._input_handler_mode === DEFAULT_RECEIVE_INPUT_MODE) {\n payload = new Uint8Array(payload);\n }\n\n //sanity\n else if (this._input_handler_mode !== \"spool_array\") {\n throw new Zmodem.Error(\"WTF?? _input_handler_mode = \" + this._input_handler_mode);\n }\n\n this._spool.push(payload);\n }\n }\n\n _get_spool() {\n return this._spool;\n }\n}\nObject.assign( Offer.prototype, Transfer_Offer_Mixin );\n\n//Curious that ZSINIT isn’t here … but, lsz sends it as hex.\nconst SENDER_BINARY_HEADER = {\n ZFILE: true,\n ZDATA: true,\n};\n\n/**\n * A class that encapsulates behavior for a ZMODEM sender.\n *\n * @extends Session\n */\nZmodem.Session.Send = class ZmodemSendSession extends Zmodem.Session {\n\n /**\n * Not called directly.\n */\n constructor(zrinit_hdr) {\n super();\n\n if (!zrinit_hdr) {\n throw \"Need first header!\";\n }\n else if (zrinit_hdr.NAME !== \"ZRINIT\") {\n throw(\"First header should be ZRINIT, not \" + zrinit_hdr.NAME);\n }\n\n this._last_header_name = 'ZRINIT';\n\n //We don’t need to send crc32. Even if the other side can grok it,\n //there’s no point to sending it since, for now, we assume we’re\n //on a reliable connection, e.g., TCP. Ideally we’d just forgo\n //CRC checks completely, but ZMODEM doesn’t allow that.\n //\n //If we *were* to start using crc32, we’d update this every time\n //we send a header.\n this._subpacket_encode_func = 'encode16';\n\n this._zencoder = new Zmodem.ZDLE();\n\n this._consume_ZRINIT(zrinit_hdr);\n\n this._file_offset = 0;\n\n var zrqinit_count = 0;\n\n this._start_keepalive_on_set_sender = true;\n\n //lrzsz will send ZRINIT until it gets an offer. (keep-alive?)\n //It sends 4 additional ones after the initial ZRINIT and, if\n //no response is received, starts sending “C” (0x43, 67) as if to\n //try to downgrade to XMODEM or YMODEM.\n //var sess = this;\n //this._prepare_to_receive_ZRINIT( function keep_alive() {\n // sess._prepare_to_receive_ZRINIT(keep_alive);\n //} );\n\n //queue up the ZSINIT flag to send -- but seems useless??\n\n /*\n Object.assign(\n this._on_evt,\n {\n file_received: [],\n },\n };\n */\n }\n\n /**\n * Sets the sender function. The first time this is called,\n * it will also initiate a keepalive using ZSINIT until the\n * first file is sent.\n *\n * @param {Function} func - The function to call.\n * It will receive an Array with the relevant octets.\n *\n * @return {Session} The session object (for chaining).\n */\n set_sender(func) {\n super.set_sender(func);\n\n if (this._start_keepalive_on_set_sender) {\n this._start_keepalive_on_set_sender = false;\n this._start_keepalive();\n }\n\n return this;\n }\n\n //7.3.3 .. The sender also uses hex headers when they are\n //not followed by binary data subpackets.\n //\n //FG: … or when the header is ZSINIT? That’s what lrzsz does, anyway.\n //Then it sends a single NUL byte as the payload to an end_ack subpacket.\n _get_header_formatter(name) {\n return SENDER_BINARY_HEADER[name] ? \"to_binary16\" : \"to_hex\";\n }\n\n //In order to keep lrzsz from timing out, we send ZSINIT every 5 seconds.\n //Maybe make this configurable?\n _start_keepalive() {\n //if (this._keepalive_promise) throw \"Keep-alive already started!\";\n if (!this._keepalive_promise) {\n var sess = this;\n\n this._keepalive_promise = new Promise(function(resolve) {\n //console.log(\"SETTING KEEPALIVE TIMEOUT\");\n sess._keepalive_timeout = setTimeout(resolve, KEEPALIVE_INTERVAL);\n }).then( function() {\n sess._next_header_handler = {\n ZACK: function() {\n\n //We’re going to need to ensure that the\n //receiver is ready for all control characters\n //to be escaped. If we’ve already sent a ZSINIT\n //and gotten a response, then we know that that\n //work is already done later on when we actually\n //send an offer.\n sess._got_ZSINIT_ZACK = true;\n },\n };\n sess._send_ZSINIT();\n\n sess._keepalive_promise = null;\n sess._start_keepalive();\n });\n }\n }\n\n _stop_keepalive() {\n if (this._keepalive_promise) {\n //console.log(\"STOPPING KEEPALIVE\");\n clearTimeout(this._keepalive_timeout);\n this._keep_alive_promise = null;\n }\n }\n\n _send_ZSINIT() {\n //See note at _ensure_receiver_escapes_ctrl_chars()\n //for why we have to pass ESCCTL.\n\n var zsinit_flags = [];\n if (this._zencoder.escapes_ctrl_chars()) {\n zsinit_flags.push(\"ESCCTL\");\n }\n\n this._send_header_and_data(\n [\"ZSINIT\", zsinit_flags],\n [0],\n \"end_ack\"\n );\n }\n\n _consume_ZRINIT(hdr) {\n this._last_ZRINIT = hdr;\n\n if (hdr.get_buffer_size()) {\n throw( \"Buffer size (\" + hdr.get_buffer_size() + \") is unsupported!\" );\n }\n\n if (!hdr.can_full_duplex()) {\n throw( \"Half-duplex I/O is unsupported!\" );\n }\n\n if (!hdr.can_overlap_io()) {\n throw( \"Non-overlap I/O is unsupported!\" );\n }\n\n if (hdr.escape_8th_bit()) {\n throw( \"8-bit escaping is unsupported!\" );\n }\n\n if (FORCE_ESCAPE_CTRL_CHARS) {\n this._zencoder.set_escape_ctrl_chars(true);\n if (!hdr.escape_ctrl_chars()) {\n console.debug(\"Peer didn’t request escape of all control characters. Will send ZSINIT to force recognition of escaped control characters.\");\n }\n }\n else {\n this._zencoder.set_escape_ctrl_chars(hdr.escape_ctrl_chars());\n }\n }\n\n //https://stackoverflow.com/questions/23155939/missing-0xf-and-0x16-when-binary-data-through-virtual-serial-port-pair-created-b\n //^^ Because of that, we always escape control characters.\n //The alternative would be that lrz would never receive those\n //two bytes from zmodem.js.\n _ensure_receiver_escapes_ctrl_chars() {\n var promise;\n\n var needs_ZSINIT = !this._last_ZRINIT.escape_ctrl_chars() && !this._got_ZSINIT_ZACK;\n\n if (needs_ZSINIT) {\n var sess = this;\n promise = new Promise( function(res) {\n sess._next_header_handler = {\n ZACK: (hdr) => {\n res();\n },\n };\n sess._send_ZSINIT();\n } );\n }\n else {\n promise = Promise.resolve();\n }\n\n return promise;\n }\n\n _convert_params_to_offer_payload_array(params) {\n params = Zmodem.Validation.offer_parameters(params);\n\n var subpacket_payload = params.name + \"\\x00\";\n\n var subpacket_space_pieces = [\n (params.size || 0).toString(10),\n params.mtime ? params.mtime.toString(8) : \"0\",\n params.mode ? (0x8000 | params.mode).toString(8) : \"0\",\n \"0\", //serial\n ];\n\n if (params.files_remaining) {\n subpacket_space_pieces.push( params.files_remaining );\n\n if (params.bytes_remaining) {\n subpacket_space_pieces.push( params.bytes_remaining );\n }\n }\n\n subpacket_payload += subpacket_space_pieces.join(\" \");\n return this._string_to_octets(subpacket_payload);\n }\n\n /**\n * Send an offer to the receiver.\n *\n * @param {FileDetails} params - All about the file you want to transfer.\n *\n * @returns {Promise} If the receiver accepts the offer, then the\n * resolution is a Transfer object; otherwise the resolution is\n * undefined.\n */\n send_offer(params) {\n if (Zmodem.DEBUG) {\n console.debug(\"SENDING OFFER\", params);\n }\n\n if (!params) throw \"need file params!\";\n\n if (this._sending_file) throw \"Already sending file!\";\n\n var payload_array = this._convert_params_to_offer_payload_array(params);\n\n this._stop_keepalive();\n\n var sess = this;\n\n function zrpos_handler_setter_func() {\n sess._next_header_handler = {\n\n // The receiver may send ZRPOS in at least two cases:\n //\n // 1) A malformed subpacket arrived, so we need to\n // “rewind” a bit and continue from the receiver’s\n // last-successful location in the file.\n //\n // 2) The receiver hasn’t gotten any data for a bit,\n // so it sends ZRPOS as a “ping”.\n //\n // Case #1 shouldn’t happen since zmodem.js requires a\n // reliable transport. Case #2, though, can happen due\n // to either normal network congestion or errors in\n // implementation. In either case, there’s nothing for\n // us to do but to ignore the ZRPOS, with an optional\n // warning.\n //\n ZRPOS: function(hdr) {\n if (Zmodem.DEBUG) {\n console.warn(\"Mid-transfer ZRPOS … implementation error?\");\n }\n\n zrpos_handler_setter_func();\n },\n };\n };\n\n var doer_func = function() {\n\n //return Promise object that is fulfilled when the ZRPOS or ZSKIP arrives.\n //The promise value is the byte offset, or undefined for ZSKIP.\n //If ZRPOS arrives, then send ZDATA(0) and set this._sending_file.\n var handler_setter_promise = new Promise( function(res) {\n sess._next_header_handler = {\n ZSKIP: function() {\n sess._start_keepalive();\n res();\n },\n ZRPOS: function(hdr) {\n sess._sending_file = true;\n\n zrpos_handler_setter_func();\n\n res(\n new Transfer(\n params,\n hdr.get_offset(),\n sess._send_interim_file_piece.bind(sess),\n sess._end_file.bind(sess)\n )\n );\n },\n };\n } );\n\n sess._send_header_and_data( [\"ZFILE\"], payload_array, \"end_ack\" );\n\n delete sess._sent_ZDATA;\n\n return handler_setter_promise;\n };\n\n if (FORCE_ESCAPE_CTRL_CHARS) {\n return this._ensure_receiver_escapes_ctrl_chars().then(doer_func);\n }\n\n return doer_func();\n }\n\n _send_header_and_data( hdr_name_and_args, data_arr, frameend ) {\n var bytes_hdr = this._create_header_bytes(hdr_name_and_args);\n\n var data_bytes = this._build_subpacket_bytes(data_arr, frameend);\n\n bytes_hdr[0].push.apply( bytes_hdr[0], data_bytes );\n\n if (Zmodem.DEBUG) {\n this._log_header( \"SENDING HEADER\", bytes_hdr[1] );\n console.debug( this.type, \"-- HEADER PAYLOAD:\", frameend, data_bytes.length );\n }\n\n this._sender( bytes_hdr[0] );\n\n this._last_sent_header = bytes_hdr[1];\n }\n\n _build_subpacket_bytes( bytes_arr, frameend ) {\n var subpacket = Zmodem.Subpacket.build(bytes_arr, frameend);\n\n return subpacket[this._subpacket_encode_func]( this._zencoder );\n }\n\n _build_and_send_subpacket( bytes_arr, frameend ) {\n this._sender( this._build_subpacket_bytes(bytes_arr, frameend) );\n }\n\n _string_to_octets(string) {\n if (!this._textencoder) {\n this._textencoder = new Zmodem.Text.Encoder();\n }\n\n var uint8arr = this._textencoder.encode(string);\n return Array.prototype.slice.call(uint8arr);\n }\n\n /*\n Potential future support for responding to ZRPOS:\n send_file_offset(offset) {\n }\n */\n\n /*\n Sending logic works thus:\n - ASSUME the receiver can overlap I/O (CANOVIO)\n (so fail if !CANFDX || !CANOVIO)\n - Sender opens the firehose … all ZCRCG (!end/!ack)\n until the end, when we send a ZCRCE (end/!ack)\n NB: try 8k/32k/64k chunk sizes? Looks like there’s\n no need to change the packet otherwise.\n */\n //TODO: Put this on a Transfer object similar to what Receive uses?\n _send_interim_file_piece(bytes_obj) {\n\n //We don’t ask the receiver to confirm because there’s no need.\n this._send_file_part(bytes_obj, \"no_end_no_ack\");\n\n //This pattern will allow\n //error-correction without buffering the entire stream in JS.\n //For now the promise is always resolved, but in the future we\n //can make it only resolve once we’ve gotten acknowledgement.\n return Promise.resolve();\n }\n\n _ensure_we_are_sending() {\n if (!this._sending_file) throw \"Not sending a file currently!\";\n }\n\n //This resolves once we receive ZEOF.\n _end_file(bytes_obj) {\n this._ensure_we_are_sending();\n\n //Is the frame-end-ness of this last packet redundant\n //with the ZEOF packet?? - No. It signals the receiver that\n //the next thing to expect is a header, not a packet.\n\n //no-ack, following lrzsz’s example\n this._send_file_part(bytes_obj, \"end_no_ack\");\n\n var sess = this;\n\n //Register this before we send ZEOF in case of local round-trip.\n //(Basically just for synchronous testing, but.)\n var ret = new Promise( function(res) {\n //console.log(\"UNSETTING SENDING FLAG\");\n sess._sending_file = false;\n sess._prepare_to_receive_ZRINIT(res);\n } );\n\n this._send_header( \"ZEOF\", this._file_offset );\n\n this._file_offset = 0;\n\n return ret;\n }\n\n //Called at the beginning of our session\n //and also when we’re done sending a file.\n _prepare_to_receive_ZRINIT(after_consume) {\n this._next_header_handler = {\n ZRINIT: function(hdr) {\n this._consume_ZRINIT(hdr);\n if (after_consume) after_consume();\n },\n };\n }\n\n /**\n * Signal to the receiver that the ZMODEM session is wrapping up.\n *\n * @returns {Promise} Resolves when the receiver has responded to\n * our signal that the session is over.\n */\n close() {\n var ok_to_close = (this._last_header_name === \"ZRINIT\")\n if (!ok_to_close) {\n ok_to_close = (this._last_header_name === \"ZSKIP\");\n }\n if (!ok_to_close) {\n ok_to_close = (this._last_sent_header.name === \"ZSINIT\") && (this._last_header_name === \"ZACK\");\n }\n\n if (!ok_to_close) {\n throw( \"Can’t close; last received header was “\" + this._last_header_name + \"”\" );\n }\n\n var sess = this;\n\n var ret = new Promise( function(res, rej) {\n sess._next_header_handler = {\n ZFIN: function() {\n sess._sender( OVER_AND_OUT );\n sess._sent_OO = true;\n sess._on_session_end();\n res();\n },\n };\n } );\n\n this._send_header(\"ZFIN\");\n\n return ret;\n }\n\n _has_ended() {\n return this.aborted() || !!this._sent_OO;\n }\n\n _send_file_part(bytes_obj, final_packetend) {\n if (!this._sent_ZDATA) {\n this._send_header( \"ZDATA\", this._file_offset );\n this._sent_ZDATA = true;\n }\n\n var obj_offset = 0;\n\n var bytes_count = bytes_obj.length;\n\n //We have to go through at least once in event of an\n //empty buffer, e.g., an empty end_file.\n while (true) {\n var chunk_size = Math.min(obj_offset + MAX_CHUNK_LENGTH, bytes_count) - obj_offset;\n\n var at_end = (chunk_size + obj_offset) >= bytes_count;\n\n var chunk = bytes_obj.slice( obj_offset, obj_offset + chunk_size );\n if (!(chunk instanceof Array)) {\n chunk = Array.prototype.slice.call(chunk);\n }\n\n this._build_and_send_subpacket(\n chunk,\n at_end ? final_packetend : \"no_end_no_ack\"\n );\n\n this._file_offset += chunk_size;\n obj_offset += chunk_size;\n\n if (obj_offset >= bytes_count) break;\n }\n }\n\n _consume_first() {\n if (!this._parse_and_consume_header()) {\n\n //When the ZMODEM receive program starts, it immediately sends\n //a ZRINIT header to initiate ZMODEM file transfers, or a\n //ZCHALLENGE header to verify the sending program. The receive\n //program resends its header at response time (default 10 second)\n //intervals for a suitable period of time (40 seconds total)\n //before falling back to YMODEM protocol.\n if (this._input_buffer.join() === \"67\") {\n throw \"Receiver has fallen back to YMODEM.\";\n }\n }\n }\n\n _on_session_end() {\n this._stop_keepalive();\n super._on_session_end();\n }\n}\n\nObject.assign(\n Zmodem.Session.Send.prototype,\n {\n type: \"send\",\n }\n);\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zcrc\"),\n require(\"./zdle\"),\n require(\"./zmlib\"),\n require(\"./zerror\")\n);\n\nconst\n ZCRCE = 0x68, // 'h', 104, frame ends, header packet follows\n ZCRCG = 0x69, // 'i', 105, frame continues nonstop\n ZCRCQ = 0x6a, // 'j', 106, frame continues, ZACK expected\n ZCRCW = 0x6b // 'k', 107, frame ends, ZACK expected\n;\n\nvar SUBPACKET_BUILDER;\n\n/** Class that represents a ZMODEM data subpacket. */\nZmodem.Subpacket = class ZmodemSubpacket {\n\n /**\n * Build a Subpacket subclass given a payload and frame end string.\n *\n * @param {Array} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {string} frameend - One of:\n * - `no_end_no_ack`\n * - `end_no_ack`\n * - `no_end_ack` (unused currently)\n * - `end_ack`\n *\n * @returns {Subpacket} An instance of the appropriate Subpacket subclass.\n */\n static build(octets, frameend) {\n\n //TODO: make this better\n var Ctr = SUBPACKET_BUILDER[frameend];\n if (!Ctr) {\n throw(\"No subpacket type “\" + frameend + \"” is defined! Try one of: \" + Object.keys(SUBPACKET_BUILDER).join(\", \"));\n }\n\n return new Ctr(octets);\n }\n\n /**\n * Return the octet values array that represents the object\n * encoded with a 16-bit CRC.\n *\n * @param {ZDLE} zencoder - A ZDLE instance to use for ZDLE encoding.\n *\n * @returns {number[]} An array of octet values suitable for sending\n * as binary data.\n */\n encode16(zencoder) {\n return this._encode( zencoder, Zmodem.CRC.crc16 );\n }\n\n /**\n * Return the octet values array that represents the object\n * encoded with a 32-bit CRC.\n *\n * @param {ZDLE} zencoder - A ZDLE instance to use for ZDLE encoding.\n *\n * @returns {number[]} An array of octet values suitable for sending\n * as binary data.\n */\n encode32(zencoder) {\n return this._encode( zencoder, Zmodem.CRC.crc32 );\n }\n\n /**\n * Return the subpacket payload’s octet values.\n *\n * NOTE: For speed, this returns the actual data in the subpacket;\n * if you mutate this return value, you alter the Subpacket object\n * internals. This is OK if you won’t need the Subpacket anymore, but\n * just be careful.\n *\n * @returns {number[]} The subpacket’s payload, represented as an\n * array of octet values. **DO NOT ALTER THIS ARRAY** unless you\n * no longer need the Subpacket.\n */\n get_payload() { return this._payload }\n\n /**\n * Parse out a Subpacket object from a given array of octet values,\n * assuming a 16-bit CRC.\n *\n * An exception is thrown if the given bytes are definitively invalid\n * as subpacket values with 16-bit CRC.\n *\n * @param {number[]} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {Subpacket|undefined} An instance of the appropriate Subpacket\n * subclass, or undefined if not enough octet values are given\n * to determine whether there is a valid subpacket here or not.\n */\n static parse16(octets) {\n return ZmodemSubpacket._parse(octets, 2);\n }\n\n //parse32 test:\n //[102, 105, 108, 101, 110, 97, 109, 101, 119, 105, 116, 104, 115, 112, 97, 99, 101, 115, 0, 49, 55, 49, 51, 49, 52, 50, 52, 51, 50, 49, 55, 50, 49, 48, 48, 54, 52, 52, 48, 49, 49, 55, 0, 43, 8, 63, 115, 23, 17]\n\n /**\n * Same as parse16(), but assuming a 32-bit CRC.\n *\n * @param {number[]} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {Subpacket|undefined} An instance of the appropriate Subpacket\n * subclass, or undefined if not enough octet values are given\n * to determine whether there is a valid subpacket here or not.\n */\n static parse32(octets) {\n return ZmodemSubpacket._parse(octets, 4);\n }\n\n /**\n * Not used directly.\n */\n constructor(payload) {\n this._payload = payload;\n }\n\n _encode(zencoder, crc_func) {\n return zencoder.encode( this._payload.slice(0) ).concat(\n [ Zmodem.ZMLIB.ZDLE, this._frameend_num ],\n zencoder.encode( crc_func( this._payload.concat(this._frameend_num) ) )\n );\n }\n\n //Because of ZDLE encoding, we’ll never see any of the frame-end octets\n //in a stream except as the ends of data payloads.\n static _parse(bytes_arr, crc_len) {\n\n var end_at;\n var creator;\n\n //These have to be written in decimal since they’re lookup keys.\n var _frame_ends_lookup = {\n 104: ZEndNoAckSubpacket,\n 105: ZNoEndNoAckSubpacket,\n 106: ZNoEndAckSubpacket,\n 107: ZEndAckSubpacket,\n };\n\n var zdle_at = 0;\n while (zdle_at < bytes_arr.length) {\n zdle_at = bytes_arr.indexOf( Zmodem.ZMLIB.ZDLE, zdle_at );\n if (zdle_at === -1) return;\n\n var after_zdle = bytes_arr[ zdle_at + 1 ];\n creator = _frame_ends_lookup[ after_zdle ];\n if (creator) {\n end_at = zdle_at + 1;\n break;\n }\n\n zdle_at++;\n }\n\n if (!creator) return;\n\n var frameend_num = bytes_arr[end_at];\n\n //sanity check\n if (bytes_arr[end_at - 1] !== Zmodem.ZMLIB.ZDLE) {\n throw( \"Byte before frame end should be ZDLE, not \" + bytes_arr[end_at - 1] );\n }\n\n var zdle_encoded_payload = bytes_arr.splice( 0, end_at - 1 );\n\n var got_crc = Zmodem.ZDLE.splice( bytes_arr, 2, crc_len );\n if (!got_crc) {\n //got payload but no CRC yet .. should be rare!\n\n //We have to put the ZDLE-encoded payload back before returning.\n bytes_arr.unshift.apply(bytes_arr, zdle_encoded_payload);\n\n return;\n }\n\n var payload = Zmodem.ZDLE.decode(zdle_encoded_payload);\n\n //We really shouldn’t need to do this, but just for good measure.\n //I suppose it’s conceivable this may run over UDP or something?\n Zmodem.CRC[ (crc_len === 2) ? \"verify16\" : \"verify32\" ](\n payload.concat( [frameend_num] ),\n got_crc\n );\n\n return new creator(payload, got_crc);\n }\n}\n\nclass ZEndSubpacketBase extends Zmodem.Subpacket {\n frame_end() { return true }\n}\nclass ZNoEndSubpacketBase extends Zmodem.Subpacket {\n frame_end() { return false }\n}\n\n//Used for end-of-file.\nclass ZEndNoAckSubpacket extends ZEndSubpacketBase {\n ack_expected() { return false }\n}\nZEndNoAckSubpacket.prototype._frameend_num = ZCRCE;\n\n//Used for ZFILE and ZSINIT payloads.\nclass ZEndAckSubpacket extends ZEndSubpacketBase {\n ack_expected() { return true }\n}\nZEndAckSubpacket.prototype._frameend_num = ZCRCW;\n\n//Used for ZDATA, prior to end-of-file.\nclass ZNoEndNoAckSubpacket extends ZNoEndSubpacketBase {\n ack_expected() { return false }\n}\nZNoEndNoAckSubpacket.prototype._frameend_num = ZCRCG;\n\n//only used if receiver can full-duplex\nclass ZNoEndAckSubpacket extends ZNoEndSubpacketBase {\n ack_expected() { return true }\n}\nZNoEndAckSubpacket.prototype._frameend_num = ZCRCQ;\n\nSUBPACKET_BUILDER = {\n end_no_ack: ZEndNoAckSubpacket,\n end_ack: ZEndAckSubpacket,\n no_end_no_ack: ZNoEndNoAckSubpacket,\n no_end_ack: ZNoEndAckSubpacket,\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zerror\")\n);\n\nconst LOOKS_LIKE_ZMODEM_HEADER = /\\*\\x18[AC]|\\*\\*\\x18B/;\n\nfunction _validate_number(key, value) {\n if (value < 0) {\n throw new Zmodem.Error(\"validation\", \"“\" + key + \"” (\" + value + \") must be nonnegative.\");\n }\n\n if (value !== Math.floor(value)) {\n throw new Zmodem.Error(\"validation\", \"“\" + key + \"” (\" + value + \") must be an integer.\");\n }\n}\n\n/** Validation logic for zmodem.js\n *\n * @exports Validation\n */\nZmodem.Validation = {\n\n /**\n * Validates and normalizes a set of parameters for an offer to send.\n * NOTE: This returns “mtime” as epoch seconds, not a Date. This is\n * inconsistent with the get_details() method in Session, but it’s\n * more useful for sending over the wire.\n *\n * @param {FileDetails} params - The file details. Some fairly trivial\n * variances from the specification are allowed.\n *\n * @return {FileDetails} The parameters that should be sent. `mtime`\n * will be a Date rather than a number.\n */\n offer_parameters: function offer_parameters(params) {\n if (!params.name) {\n throw new Zmodem.Error(\"validation\", \"Need “name”!\");\n }\n\n if (typeof params.name !== \"string\") {\n throw new Zmodem.Error(\"validation\", \"“name” (\" + params.name + \") must be a string!\");\n }\n\n //So that we can override values as is useful\n //without affecting the passed-in object.\n params = Object.assign({}, params);\n\n if (LOOKS_LIKE_ZMODEM_HEADER.test(params.name)) {\n console.warn(\"The filename \" + JSON.stringify(name) + \" contains characters that look like a ZMODEM header. This could corrupt the ZMODEM session; consider renaming it so that the filename doesn’t contain control characters.\");\n }\n\n if (params.serial !== null && params.serial !== undefined) {\n throw new Zmodem.Error(\"validation\", \"“serial” is meaningless.\");\n }\n\n params.serial = null;\n\n [\"size\", \"mode\", \"files_remaining\", \"bytes_remaining\"].forEach(\n function(k) {\n var ok;\n switch (typeof params[k]) {\n case \"object\":\n ok = (params[k] === null);\n break;\n case \"undefined\":\n params[k] = null;\n ok = true;\n break;\n case \"number\":\n _validate_number(k, params[k]);\n\n ok = true;\n break;\n }\n\n if (!ok) {\n throw new Zmodem.Error(\"validation\", \"“\" + k + \"” (\" + params[k] + \") must be null, undefined, or a number.\");\n }\n }\n );\n\n if (typeof params.mode === \"number\") {\n params.mode |= 0x8000;\n }\n\n if (params.files_remaining === 0) {\n throw new Zmodem.Error(\"validation\", \"“files_remaining”, if given, must be positive.\");\n }\n\n var mtime_ok;\n switch (typeof params.mtime) {\n case \"object\":\n mtime_ok = true;\n\n if (params.mtime instanceof Date) {\n\n var date_obj = params.mtime;\n params.mtime = Math.floor( date_obj.getTime() / 1000 );\n if (params.mtime < 0) {\n throw new Zmodem.Error(\"validation\", \"“mtime” (\" + date_obj + \") must not be earlier than 1970.\");\n }\n }\n else if (params.mtime !== null) {\n mtime_ok = false;\n }\n\n break;\n\n case \"undefined\":\n params.mtime = null;\n mtime_ok = true;\n break;\n case \"number\":\n _validate_number(\"mtime\", params.mtime);\n mtime_ok = true;\n break;\n }\n\n if (!mtime_ok) {\n throw new Zmodem.Error(\"validation\", \"“mtime” (\" + params.mtime + \") must be null, undefined, a Date, or a number.\");\n }\n\n return params;\n },\n};\n","export class ConnectionFactory {\n url: string;\n protocols: string[];\n\n constructor(url: string, protocols: string[]) {\n this.url = url;\n this.protocols = protocols;\n };\n\n create(): Connection {\n return new Connection(this.url, this.protocols);\n };\n}\n\nexport class Connection {\n bare: WebSocket;\n\n\n constructor(url: string, protocols: string[]) {\n this.bare = new WebSocket(url, protocols);\n }\n\n open() {\n // nothing todo for websocket\n };\n\n close() {\n this.bare.close();\n };\n\n send(data: string) {\n this.bare.send(data);\n };\n\n isOpen(): boolean {\n if (this.bare.readyState == WebSocket.CONNECTING ||\n this.bare.readyState == WebSocket.OPEN) {\n return true\n }\n return false\n }\n\n onOpen(callback: () => void) {\n this.bare.onopen = (event) => {\n callback();\n }\n };\n\n onReceive(callback: (data: string) => void) {\n this.bare.onmessage = (event) => {\n callback(event.data);\n }\n };\n\n onClose(callback: () => void) {\n this.bare.onclose = (event) => {\n callback();\n };\n };\n}\n","import * as Zmodem from 'zmodem.js/src/zmodem_browser';\n\nexport const protocols = [\"webtty\"];\n\nexport const msgInputUnknown = '0';\nexport const msgInput = '1';\nexport const msgPing = '2';\nexport const msgResizeTerminal = '3';\n\nexport const msgUnknownOutput = '0';\nexport const msgOutput = '1';\nexport const msgPong = '2';\nexport const msgSetWindowTitle = '3';\nexport const msgSetPreferences = '4';\nexport const msgSetReconnect = '5';\nexport const msgSetBufferSize = '6';\n\n\nexport interface Terminal {\n info(): { columns: number, rows: number };\n output(data: string): void;\n showMessage(message: string, timeout: number): void;\n getMessage(): HTMLElement;\n removeMessage(): void;\n setWindowTitle(title: string): void;\n setPreferences(value: object): void;\n onInput(callback: (input: string) => void): void;\n onResize(callback: (colmuns: number, rows: number) => void): void;\n reset(): void;\n deactivate(): void;\n close(): void;\n}\n\nexport interface Connection {\n open(): void;\n close(): void;\n send(data: string): void;\n isOpen(): boolean;\n onOpen(callback: () => void): void;\n onReceive(callback: (data: string) => void): void;\n onClose(callback: () => void): void;\n}\n\nexport interface ConnectionFactory {\n create(): Connection;\n}\n\n\nexport class WebTTY {\n term: Terminal;\n connectionFactory: ConnectionFactory;\n connection: Connection;\n args: string;\n authToken: string;\n reconnect: number;\n bufSize: number;\n sentry: Zmodem.Sentry;\n\n constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) {\n this.term = term;\n this.connectionFactory = connectionFactory;\n this.args = args;\n this.authToken = authToken;\n this.reconnect = -1;\n this.bufSize = 1024;\n\n this.sentry = new Zmodem.Sentry({\n 'to_terminal': (d: any) => this.term.output(d),\n 'on_detect': (detection: Zmodem.Detection) => this.zmodemDetect(detection),\n 'sender': (x: Uint8Array) => this.sendInput(x),\n 'on_retract': (x: any) => alert(\"never mind!\"),\n })\n };\n\n private zmodemDetect(detection: Zmodem.Detection) {\n var zsession = detection.confirm();\n\n if (zsession.type === \"send\") {\n this.zmodemSend(zsession);\n }\n else {\n zsession.on(\"offer\", (xfer: any) => this.zmodemOffer(xfer));\n zsession.start();\n }\n }\n\n private zmodemSend(zsession: any) {\n let dialog = this.getFileSendDialog();\n dialog.style.display = 'block';\n\n let selector = document.getElementById(\"sendFileSelector\");\n if (selector != null) {\n selector.onchange = (event) => {\n Zmodem.Browser.send_files(zsession, (event.target as HTMLInputElement).files)\n .then(() => zsession.close())\n .catch(e => console.log(e));\n dialog.style.display = 'none';\n };\n }\n }\n\n private zmodemOffer(xfer: Zmodem.Offer) {\n var dialog = this.getFileAcceptanceDialog();\n dialog.style.display = 'block';\n\n var filenameElem = document.getElementById(\"filename\");\n if (filenameElem != null) {\n filenameElem.textContent = xfer.get_details().name;\n }\n var sizeElem = document.getElementById(\"filesize\");\n if (sizeElem != null) {\n sizeElem.textContent = xfer.get_details().size;\n }\n var skipLink = document.getElementById(\"skipTransfer\");\n if (skipLink != null) {\n skipLink.onclick = (ev) => {\n xfer.skip();\n dialog.style.display = 'none';\n }\n }\n\n var acceptLink = document.getElementById(\"acceptTransfer\");\n if (acceptLink != null) {\n acceptLink.onclick = (ev) => {\n dialog.style.display = 'none';\n xfer.accept().then((payloads: any) => {\n //Now you need some mechanism to save the file.\n //An example of how you can do this in a browser:\n Zmodem.Browser.save_to_disk(\n payloads,\n xfer.get_details().name\n );\n });\n }\n }\n }\n\n private sendInput(input: string | Uint8Array) {\n let effectiveBufferSize = this.bufSize - 1;\n let dataString: string\n\n if (Array.isArray(input)) {\n dataString = String.fromCharCode.apply(null, input);\n } else {\n dataString = (input as string);\n }\n\n // Account for base64 encoding\n let maxChunkSize = Math.floor(effectiveBufferSize / 4)*3;\n\n for (let i = 0; i < Math.ceil(dataString.length / maxChunkSize); i++) {\n let inputChunk = dataString.substring(i * effectiveBufferSize, Math.min((i + 1) * effectiveBufferSize, dataString.length))\n this.connection.send(msgInput + btoa(inputChunk));\n }\n }\n\n getFileAcceptanceDialog(): HTMLElement {\n let dialog = document.getElementById(\"acceptFileDialog\");\n if (dialog == null) {\n dialog = document.createElement(\"div\");\n dialog.id = 'acceptFileDialog';\n dialog.className = 'fileDialog';\n dialog.innerHTML = '

Incoming file transfer: ( bytes)

Accept Decline';\n document.body.appendChild(dialog);\n }\n return dialog;\n }\n\n getFileSendDialog(): HTMLElement {\n let dialog = document.getElementById(\"sendFileDialog\");\n if (dialog == null) {\n dialog = document.createElement(\"div\");\n dialog.id = 'sendFileDialog';\n dialog.className = 'fileDialog';\n dialog.innerHTML = '

Remote ready to receive files.

';\n document.body.appendChild(dialog);\n }\n return dialog;\n }\n\n open() {\n let connection = this.connectionFactory.create();\n let pingTimer: NodeJS.Timeout;\n let reconnectTimeout: NodeJS.Timeout;\n this.connection = connection;\n\n const setup = () => {\n connection.onOpen(() => {\n const termInfo = this.term.info();\n\n connection.send(JSON.stringify(\n {\n Arguments: this.args,\n AuthToken: this.authToken,\n }\n ));\n\n\n const resizeHandler = (colmuns: number, rows: number) => {\n connection.send(\n msgResizeTerminal + JSON.stringify(\n {\n columns: colmuns,\n rows: rows\n }\n )\n );\n };\n\n this.term.onResize(resizeHandler);\n resizeHandler(termInfo.columns, termInfo.rows);\n\n this.term.onInput(\n (input: string) => {\n this.sendInput(input);\n }\n );\n\n pingTimer = setInterval(() => {\n connection.send(msgPing)\n }, 30 * 1000);\n\n });\n\n connection.onReceive((data) => {\n const payload = data.slice(1);\n switch (data[0]) {\n case msgOutput:\n this.sentry.consume(Uint8Array.from(atob(payload), c => c.charCodeAt(0)));\n break;\n case msgPong:\n break;\n case msgSetWindowTitle:\n this.term.setWindowTitle(payload);\n break;\n case msgSetPreferences:\n const preferences = JSON.parse(payload);\n this.term.setPreferences(preferences);\n break;\n case msgSetReconnect:\n const autoReconnect = JSON.parse(payload);\n console.log(\"Enabling reconnect: \" + autoReconnect + \" seconds\")\n this.reconnect = autoReconnect;\n break;\n case msgSetBufferSize:\n const bufSize = JSON.parse(payload);\n this.bufSize = bufSize;\n break;\n }\n });\n\n connection.onClose(() => {\n clearInterval(pingTimer);\n this.term.deactivate();\n this.term.showMessage(\"Connection Closed\", 0);\n if (this.reconnect > 0) {\n reconnectTimeout = setTimeout(() => {\n connection = this.connectionFactory.create();\n this.term.reset();\n setup();\n }, this.reconnect * 1000);\n }\n });\n\n connection.open();\n }\n\n setup();\n return () => {\n clearTimeout(reconnectTimeout);\n connection.close();\n }\n };\n};\n","import { Terminal, IDisposable } from \"xterm\";\nimport { FitAddon } from 'xterm-addon-fit';\nimport { WebLinksAddon } from 'xterm-addon-web-links';\nimport { WebglAddon } from 'xterm-addon-webgl';\n\nexport class Xterm {\n elem: HTMLElement;\n term: Terminal;\n resizeListener: () => void;\n\n message: HTMLElement;\n messageTimeout: number;\n messageTimer: NodeJS.Timeout;\n onResizeHandler: IDisposable;\n onDataHandler: IDisposable;\n fitAddOn: FitAddon;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n this.term = new Terminal();\n this.fitAddOn = new FitAddon();\n this.term.loadAddon(new WebLinksAddon());\n this.term.loadAddon(this.fitAddOn);\n\n this.message = elem.ownerDocument.createElement(\"div\");\n this.message.className = \"xterm-overlay\";\n this.messageTimeout = 2000;\n\n this.resizeListener = () => {\n this.fitAddOn.fit();\n this.term.scrollToBottom();\n this.showMessage(String(this.term.cols) + \"x\" + String(this.term.rows), this.messageTimeout);\n };\n\n this.term.open(elem);\n this.term.focus();\n this.resizeListener();\n window.addEventListener(\"resize\", () => { this.resizeListener(); });\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.term.cols, rows: this.term.rows };\n };\n\n output(data: string) {\n this.term.write(data);\n };\n\n getMessage(): HTMLElement {\n return this.message;\n }\n\n showMessage(message: string, timeout: number) {\n this.message.innerHTML = message;\n this.showMessageElem(timeout);\n }\n\n showMessageElem(timeout: number) {\n this.elem.appendChild(this.message);\n\n if (this.messageTimer) {\n clearTimeout(this.messageTimer);\n }\n if (timeout > 0) {\n this.messageTimer = setTimeout(() => {\n this.elem.removeChild(this.message);\n }, timeout);\n }\n };\n\n removeMessage(): void {\n if (this.message.parentNode == this.elem) {\n this.elem.removeChild(this.message);\n }\n }\n\n setWindowTitle(title: string) {\n document.title = title;\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key == \"EnableWebGL\" && key) {\n this.term.loadAddon(new WebglAddon());\n } else if (key == \"font-size\") {\n this.term.setOption(\"fontSize\", value[key])\n } else if (key == \"font-family\") {\n this.term.setOption(\"fontFamily\", value[key])\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.onDataHandler = this.term.onData((data) => {\n callback(data);\n });\n\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.onResizeHandler = this.term.onResize(() => {\n callback(this.term.cols, this.term.rows);\n });\n };\n\n deactivate(): void {\n this.onDataHandler.dispose();\n this.onResizeHandler.dispose();\n this.term.blur();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.clear();\n }\n\n close(): void {\n window.removeEventListener(\"resize\", this.resizeListener);\n this.term.dispose();\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { Xterm } from \"./xterm\";\nimport { Terminal, WebTTY, protocols } from \"./webtty\";\nimport { ConnectionFactory } from \"./websocket\";\n\n// @TODO remove these\ndeclare var gotty_auth_token: string;\ndeclare var gotty_term: string;\n\nconst elem = document.getElementById(\"terminal\")\n\nif (elem !== null) {\n var term: Terminal;\n term = new Xterm(elem);\n\n const httpsEnabled = window.location.protocol == \"https:\";\n const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws';\n const args = window.location.search;\n const factory = new ConnectionFactory(url, protocols);\n const wt = new WebTTY(term, factory, args, gotty_auth_token);\n const closer = wt.open();\n\n window.addEventListener(\"unload\", () => {\n closer();\n term.close();\n });\n};\n"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack://gotty/./node_modules/crc-32/crc32.js","webpack://gotty/./node_modules/xterm-addon-fit/lib/xterm-addon-fit.js","webpack://gotty/./node_modules/xterm-addon-web-links/lib/xterm-addon-web-links.js","webpack://gotty/./node_modules/xterm-addon-webgl/lib/xterm-addon-webgl.js","webpack://gotty/./node_modules/xterm/lib/xterm.js","webpack://gotty/./node_modules/zmodem.js/src/encode.js","webpack://gotty/./node_modules/zmodem.js/src/text.js","webpack://gotty/./node_modules/zmodem.js/src/zcrc.js","webpack://gotty/./node_modules/zmodem.js/src/zdle.js","webpack://gotty/./node_modules/zmodem.js/src/zerror.js","webpack://gotty/./node_modules/zmodem.js/src/zheader.js","webpack://gotty/./node_modules/zmodem.js/src/zmlib.js","webpack://gotty/./node_modules/zmodem.js/src/zmodem.js","webpack://gotty/./node_modules/zmodem.js/src/zmodem_browser.js","webpack://gotty/./node_modules/zmodem.js/src/zsentry.js","webpack://gotty/./node_modules/zmodem.js/src/zsession.js","webpack://gotty/./node_modules/zmodem.js/src/zsubpacket.js","webpack://gotty/./node_modules/zmodem.js/src/zvalidation.js","webpack://gotty/./src/websocket.ts","webpack://gotty/./src/webtty.ts","webpack://gotty/./src/xterm.ts","webpack://gotty/webpack/bootstrap","webpack://gotty/./src/main.ts"],"names":["factory","CRC32","version","T0","c","table","Array","n","Int32Array","signed_crc_table","TT","T","v","out","subarray","slice","slice_by_16_tables","T1","T2","T3","T4","T5","T6","T7","T8","T9","Ta","Tb","Tc","Td","Te","Tf","bstr","seed","C","i","L","length","charCodeAt","buf","B","str","d","DO_NOT_EXPORT_CRC","exports","self","module","e","775","t","Object","defineProperty","value","FitAddon","r","prototype","activate","this","_terminal","dispose","fit","proposeDimensions","_core","rows","cols","_renderService","clear","resize","element","parentElement","dimensions","actualCellWidth","actualCellHeight","window","getComputedStyle","parseInt","getPropertyValue","Math","max","o","a","viewport","scrollBarWidth","floor","l","call","m","enumerable","get","Symbol","toStringTag","__esModule","create","bind","default","hasOwnProperty","p","s","WebLinksAddon","RegExp","open","opener","location","href","console","warn","_handler","_options","_useLinkProvider","matchIndex","_linkProvider","registerLinkProvider","WebLinkProvider","_linkMatcherId","registerLinkMatcher","deregisterLinkMatcher","LinkComputer","_regex","provideLinks","computeLink","source","flags","_translateBufferLineToStringWithWrap","u","exec","f","log","indexOf","lastIndex","h","start","x","y","end","push","range","text","buffer","active","getLine","isWrapped","translateToString","substring","965","GlyphRenderer","Float32Array","BYTES_PER_ELEMENT","_","_colors","_gl","_dimensions","_activeBuffer","_vertices","count","attributes","attributesBuffers","selectionAttributes","throwIfFalsy","createProgram","_program","_projectionLocation","getUniformLocation","_resolutionLocation","_textureLocation","_vertexArrayObject","createVertexArray","bindVertexArray","createBuffer","bindBuffer","ARRAY_BUFFER","bufferData","STATIC_DRAW","enableVertexAttribArray","vertexAttribPointer","FLOAT","Uint8Array","ELEMENT_ARRAY_BUFFER","_attributesBuffer","vertexAttribDivisor","_atlasTexture","createTexture","bindTexture","TEXTURE_2D","texImage2D","RGBA","UNSIGNED_BYTE","texParameteri","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","enable","BLEND","blendFunc","SRC_ALPHA","ONE_MINUS_SRC_ALPHA","onResize","beginFrame","_atlas","updateCell","_updateCell","NULL_CELL_CODE","WHITESPACE_CELL_CODE","getRasterizedGlyphCombinedChar","getRasterizedGlyph","offset","scaledCharLeft","scaledCharTop","size","scaledCanvasWidth","scaledCanvasHeight","texturePositionClipSpace","sizeClipSpace","fill","updateSelection","selectionOpaque","rgba","selection","columnSelectMode","startCol","endCol","viewportCappedEndRow","viewportCappedStartRow","_updateSelectionRange","viewportStartRow","viewportEndRow","viewportY","RENDER_MODEL_INDICIES_PER_CELL","cells","RENDER_MODEL_FG_OFFSET","AttributeData","fg","bg","RENDER_MODEL_BG_OFFSET","getBgColorMode","_getColorFromAnsiIndex","getBgColor","g","toColorRGB","background","COMBINED_CHAR_BIT_MASK","getCell","getChars","ansi","Error","canvas","width","height","setColors","render","useProgram","lineLengths","set","STREAM_DRAW","hasCanvasChanged","uniform1i","activeTexture","TEXTURE0","cacheCanvas","generateMipmap","uniformMatrix4fv","PROJECTION_MATRIX","uniform2f","drawElementsInstanced","TRIANGLES","setAtlas","setDimensions","344","RectangleRenderer","_updateCachedColors","DYNAMIC_DRAW","_updateViewportRectangle","_bgFloat","_colorToFloat32Array","_selectionFloat","_addRectangleFloat","scaledCellWidth","scaledCellHeight","hasSelection","updateBackgrounds","_updateRectangle","foreground","expandFloat32Array","_addRectangle","310","RenderModel","Uint32Array","clearSelection","259","min","constructor","sliceFallback","795","WebglAddon","_preserveDrawingBuffer","_colorManager","colors","_renderer","WebglRenderer","setRenderer","_createRenderer","textureAtlas","configurable","clearTextureAtlas","clearCharAtlas","666","__extends","setPrototypeOf","__proto__","_model","_workCell","CellData","_onRequestRedraw","EventEmitter","_renderLayers","LinkRenderLayer","screenElement","CursorRenderLayer","scaledCharWidth","scaledCharHeight","canvasWidth","canvasHeight","_devicePixelRatio","devicePixelRatio","_updateDimensions","_canvas","document","createElement","antialias","depth","preserveDrawingBuffer","getContext","appendChild","_rectangleRenderer","_glyphRenderer","onCharSizeChanged","_isAttached","body","contains","event","forEach","removeChild","_charAtlas","reset","_refreshCharAtlas","onDevicePixelRatioChange","style","onBlur","onFocus","onSelectionChanged","_updateSelectionModel","fire","onCursorMove","onOptionsChanged","acquireCharAtlas","warmUp","clearTexture","_updateModel","registerCharacterJoiner","deregisterCharacterJoiner","renderRows","_charSizeService","onGridChanged","ydisp","lines","loadCell","getCode","ceil","getOption","round","Disposable","381","createShader","shaderSource","compileShader","getShaderParameter","COMPILE_STATUS","error","getShaderInfoLog","deleteShader","attachShader","VERTEX_SHADER","FRAGMENT_SHADER","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","deleteProgram","713","removeTerminalFromCache","generateConfig","ownedBy","configEquals","config","atlas","splice","WebglCharAtlas","433","is256Color","css","cursor","cursorAccent","selectionTransparent","contrastCache","fontFamily","fontSize","fontWeight","fontWeightBold","allowTransparency","drawBoldTextInBrightColors","minimumContrastRatio","167","texturePosition","_config","_didWarmUp","_cacheMap","_cacheMapCombined","_currentRowY","_currentRowX","_currentRowHeight","_workBoundingBox","top","left","bottom","right","_workAttributeData","_cacheCtx","alpha","_tmpCanvas","_tmpCtx","_doWarmUp","_drawToCache","DEFAULT_COLOR","clearRect","_getBackgroundColor","_getForegroundCss","_getMinimumContrastCss","channels","toCss","substr","_resolveBackgroundRgba","_resolveForegroundRgba","getCss","ensureContrastRatio","setCss","String","fromCharCode","save","isInvisible","isBold","isInverse","isDim","isItalic","getFgColor","getFgColorMode","globalCompositeOperation","fillStyle","fillRect","font","textBaseline","globalAlpha","DIM_OPACITY","fillText","restore","R","getImageData","data","b","_findGlyphBoundingBox","w","_clipImageData","putImageData","Uint8ClampedArray","ImageData","toString","592","BaseRenderLayer","_container","_alpha","_scaledCharWidth","_scaledCharHeight","_scaledCellWidth","_scaledCellHeight","_scaledCharLeft","_scaledCharTop","classList","add","zIndex","_initCanvas","_ctx","_clearAll","_setTransparency","cloneNode","replaceChild","_fillCells","_fillBottomLineAtCells","_fillLeftLineAtCell","_strokeRectAtCell","lineWidth","strokeRect","_clearCells","_fillCharTrueColor","_getFont","_clipRow","beginPath","rect","clip","461","_onRequestRefreshRowsEvent","_cell","_state","isFocused","_cursorRenderers","bar","_renderBarCursor","block","_renderBlockCursor","underline","_renderUnderlineCursor","_clearCursor","_cursorBlinkStateManager","pause","cursorY","resume","_render","restartBlinkAnimation","isPaused","_coreService","isCursorInitialized","isCursorHidden","baseY","cursorX","content","_renderBlurCursor","getWidth","isCursorVisible","strokeStyle","_renderCallback","_restartInterval","_blinkStartTimeout","_blinkInterval","clearInterval","clearTimeout","_animationFrame","cancelAnimationFrame","_animationTimeRestarted","Date","now","requestAnimationFrame","setTimeout","setInterval","activeElement","textarea","hasFocus","733","linkifier","onShowLinkUnderline","_onShowLinkUnderline","onHideLinkUnderline","_onHideLinkUnderline","linkifier2","_clearCurrentLink","x1","y1","y2","x2","INVERTED_DEFAULT_COLOR","742","contrastRatio","toPaddedHex","rgb","color","toRgba","blend","isOpaque","toColor","opaque","toChannels","opacity","pow","relativeLuminance","relativeLuminance2","reduceLuminance","increaseLuminance","499","CHAR_ATLAS_CELL_SPACING","345","forwardEvent","_listeners","_disposed","_event","859","getDisposeArrayDisposable","disposeArray","_disposables","_isDisposed","register","unregister","455","concat","fillFallback","147","ExtendedAttrs","extended","fromColorRGB","clone","isUnderline","isBlink","isFgRGB","isBgRGB","isFgPalette","isBgPalette","isFgDefault","isBgDefault","isAttributeDefault","hasExtendedAttrs","updateExtended","isEmpty","getUnderlineColor","underlineColor","getUnderlineColorMode","isUnderlineColorRGB","isUnderlineColorPalette","isUnderlineColorDefault","getUnderlineStyle","underlineStyle","782","apply","arguments","combinedData","fromCharData","setFromCharData","isCombined","stringFromCodePoint","CHAR_DATA_ATTR_INDEX","CHAR_DATA_CHAR_INDEX","CHAR_DATA_WIDTH_INDEX","getAsCharData","855","WHITESPACE_CELL_WIDTH","WHITESPACE_CELL_CHAR","NULL_CELL_WIDTH","NULL_CELL_CHAR","CHAR_DATA_CODE_INDEX","DEFAULT_ATTR","133","Utf8ToUtf32","StringToUtf32","utf32ToString","_interim","decode","interim","4567","AccessibilityManager","_liveRegionLineCount","_charsToConsume","_charsToAnnounce","_accessibilityTreeRoot","_rowContainer","setAttribute","_rowElements","_createAccessibilityTreeNode","_topBoundaryFocusListener","_onBoundaryFocus","_bottomBoundaryFocusListener","addEventListener","_refreshRowsDimensions","_renderRowsDebouncer","RenderDebouncer","_renderRows","_refreshRows","_liveRegion","insertAdjacentElement","_onResize","onRender","onScroll","onA11yChar","_onChar","onLineFeed","onA11yTab","_onTab","onKey","_onKey","key","_clearLiveRegion","onDimensionsChange","_screenDprMonitor","ScreenDprMonitor","setListener","addDisposableDomListener","removeElementFromParent","target","getAttribute","relatedTarget","pop","shift","removeEventListener","unshift","scrollLines","focus","preventDefault","stopImmediatePropagation","children","tabIndex","_refreshRowDimensions","textContent","tooMuchOutput","isMac","parentNode","refresh","translateBufferLineToString","innerText","_announceCharacters","3614","replace","decPrivateModes","bracketedPasteMode","triggerDataEvent","getBoundingClientRect","clientX","clientY","rightClickHandler","moveTextAreaUnderMouseCursor","paste","handlePasteEvent","copyHandler","bracketTextForPaste","prepareTextForTerminal","clipboardData","setData","selectionText","stopPropagation","getData","rightClickSelect","select","4774","7239","ColorContrastCache","_color","_rgba","setColor","getColor","5680","ColorManager","DEFAULT_ANSI_COLORS","freeze","_litmusColor","createLinearGradient","_contrastCache","onOptionsChange","setTheme","_parseColor","black","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","split","map","Number","9631","3656","3551","__decorate","getOwnPropertyDescriptor","Reflect","decorate","__param","MouseZone","Linkifier","_bufferService","_logService","_unicodeService","_linkMatchers","_nextLinkMatcherId","_onLinkTooltip","_rowsToLinkify","attachToDom","_element","_mouseZoneManager","linkifyRows","clearAll","_rowsTimeoutId","_linkifyRows","_timeBeforeLatency","iterator","hasNext","next","_doLinkifyRow","first","debug","id","regex","handler","validationCallback","hoverTooltipCallback","tooltipCallback","hoverLeaveCallback","leaveCallback","willLinkActivate","priority","_addLinkMatcherToList","stringIndexToBufferIndex","getFg","_addLink","getStringCellWidth","_createLinkHoverEvent","remove","IBufferService","ILogService","IUnicodeService","clickCallback","hoverCallback","6465","Linkifier2","_linkProviders","_linkCacheDisposables","_isMouseOut","_activeLine","_currentLink","_mouseService","_onMouseMove","_onClick","_lastMouseEvent","_positionFromMouseEvent","composedPath","_lastBufferCell","_onHover","_askForLink","_linkAtPosition","link","_activeProviderReplies","Map","_checkLinkProviderResult","_removeIntersectingLinks","Set","has","find","_handleNewLink","_linkLeave","state","decorations","pointerCursor","isHovered","_linkHover","defineProperties","toggle","_fireUnderlineEvent","onRenderedBufferChange","hover","_createLinkUnderlineEvent","leave","getCoords","9042","promptLabel","6954","MouseZoneManager","_screenElement","_selectionService","_optionsService","_zones","_areZonesActive","_lastHoverCoords","_initialSelectionLength","_onMouseDown","_mouseMoveListener","_mouseLeaveListener","_onMouseLeave","_clickListener","_deactivate","_activate","_currentZone","pageX","pageY","_findZoneEventAt","_tooltipTimeout","_onTooltip","options","linkTooltipHoverDuration","_getSelectionLength","IMouseService","ISelectionService","IOptionsService","6193","_rowCount","_rowStart","_rowEnd","_innerRefresh","5596","_currentDevicePixelRatio","_listener","clearListener","_outerListener","_updateDpr","_resolutionMediaMatchList","removeListener","matchMedia","addListener","3236","Terminal","S","E","k","A","O","D","P","M","browser","_keyDownHandled","_onCursorMove","_onRender","_onSelectionChange","_onTitleChange","_onBell","_onFocus","_onBlur","_onA11yCharEmitter","_onA11yTabEmitter","_setup","_instantiationService","createInstance","_inputHandler","onRequestBell","bell","onRequestRefreshRows","onRequestReset","onRequestWindowsOptionsReport","_reportWindowsOptions","onAnsiColorChange","_changeAnsiColor","onTitleChange","_afterResize","optionsService","colorIndex","onThemeChange","_customKeyEventHandler","write","buffers","preventScroll","_updateOptions","measure","syncScrollArea","screenReaderMode","_accessibilityManager","setupTabStops","_setTheme","theme","_onTextAreaFocus","sendFocus","C0","ESC","updateCursorStyle","_showCursor","blur","_onTextAreaBlur","_syncTextArea","isCursorInViewport","_compositionHelper","isComposing","ybase","lineHeight","_initGlobal","_bindKeys","isFirefox","button","rightClickSelectsWord","isLinux","_keyUp","_keyDown","_keyPress","compositionstart","compositionupdate","compositionend","updateCompositionElements","_queueLinkification","isConnected","_document","ownerDocument","dir","createDocumentFragment","_viewportElement","_viewportScrollArea","_helperContainer","CoreBrowserService","setService","ICoreBrowserService","CharSizeService","ICharSizeService","_theme","onOptionChange","_characterJoinerService","CharacterJoinerService","ICharacterJoinerService","RenderService","IRenderService","_compositionView","CompositionHelper","_soundService","SoundService","ISoundService","MouseService","Viewport","onRequestSyncScrollBar","SelectionService","onRequestScrollLines","amount","suppressScrollEvent","onSelectionChange","onRequestRedraw","onLinuxMouseSelection","_onScroll","onMouseDown","_coreMouseService","areMouseEventsActive","disable","bindMouse","rendererType","Renderer","DomRenderer","getRawByteCoords","overrideType","type","buttons","deltaY","triggerMouseEvent","col","row","action","ctrl","ctrlKey","alt","altKey","shiftKey","mouseup","wheel","mousedrag","mousemove","cancel","onProtocolChange","logLevel","explainEvents","passive","activeProtocol","shouldForceSelection","hasScrollback","getLinesScrolled","applicationCursorKeys","abs","onWheel","onTouchStart","onTouchMove","refreshRows","shouldColumnSelect","attachCustomKeyEventHandler","deregister","markers","addMarker","normal","setSelection","getSelection","getSelectionPosition","startColumn","selectionStart","startRow","endColumn","selectionEnd","endRow","selectAll","selectLines","keydown","scrollToBottom","evaluateKeyboardEvent","macOptionIsMeta","_isThirdLevelShift","ETX","CR","domEvent","metaKey","isWindows","keyCode","charCode","which","_soundBell","playBellSound","hasValidSize","getBlankLine","DEFAULT_ATTR_DATA","position","WindowsOptionsReportType","GET_WIN_SIZE_PIXELS","toFixed","GET_CELL_SIZE_PIXELS","cancelEvents","_visualBell","bellStyle","CoreTerminal","1680","_scrollLines","_scrollArea","_lastRecordedBufferLength","_lastRecordedViewportHeight","_lastRecordedBufferHeight","_lastTouchY","_lastScrollTop","_wheelPartialScroll","_refreshAnimationFrame","_ignoreNextScrollEvent","offsetWidth","backgroundColor","_refresh","offsetHeight","scrollTop","offsetParent","_bubbleScroll","cancelable","_getPixelsScrolled","_applyScrollModifier","deltaMode","WheelEvent","DOM_DELTA_LINE","DOM_DELTA_PAGE","DOM_DELTA_PIXEL","fastScrollModifier","fastScrollSensitivity","scrollSensitivity","touches","2950","_textarea","_isComposing","_isSendingComposition","_compositionPosition","_dataAlreadySent","_finalizeComposition","_handleAnyTextareaChanges","ICoreService","9806","getCoordsRelativeToElement","9504","moveToCellSequence","244","AddonManager","_addons","instance","loadAddon","isDisposed","_wrappedAddonDispose","4389","_addonManager","_checkProposedApi","allowProposedApi","onData","onBinary","onBell","_parser","_buffer","_verifyIntegers","registerMarker","scrollPages","scrollToTop","scrollToLine","writeUtf8","writeln","setOption","isNaN","init","getNullCell","_onBufferChange","_normal","_alternate","onBufferActivate","alternate","_line","registerCsiHandler","toArray","addCsiHandler","registerDcsHandler","addDcsHandler","registerEscHandler","addEscHandler","registerOscHandler","addOscHandler","unicodeService","versions","activeVersion","1546","_rendererId","_currentGlyphIdentifier","chars","code","bold","dim","italic","_drawChars","_getContrastColor","_drawUncachedChars","draw","join","2512","_coreBrowserService","cursorBlink","cursorStyle","cursorWidth","3700","GridCache","cache","5098","3525","_id","TextRenderLayer","SelectionRenderLayer","_runOperation","letterSpacing","IInstantiationService","1752","4149","_clearState","_didStateChange","_areCoordinatesEqual","9596","_characterWidth","_characterFont","_characterOverlapCache","_forEachCell","getJoinedCharacters","JoinedCellData","_isOverlapping","getCodePoint","_drawBackground","_drawForeground","measureText","9616","BaseCharAtlas","1420","DynamicCharAtlas","2040","8803","1906","NoneCharAtlas","getGlyphCacheKey","_drawToCacheCount","_glyphsWaitingOnBitmap","_bitmapCommitTimeout","_bitmap","_cacheCanvas","_width","_height","LRUMap","prealloc","_canCache","_drawFromCache","capacity","peek","index","_toCoordinateX","_toCoordinateY","drawImage","inBitmap","_getForegroundColor","_addGlyphToBitmap","isSafari","_generateBitmap","createImageBitmap","then","7001","_map","_head","_tail","_nodePool","_unlinkNode","prev","_appendNode","peekValue","1296","_linkifier","_linkifier2","_terminalClass","_refreshRowElements","_selectionContainer","_injectCss","_rowFactory","DomRendererRowFactory","_onLinkHover","_onLinkLeave","_themeStyleElement","_dimensionsStyleElement","overflow","_terminalSelector","BOLD_CLASS","ITALIC_CLASS","CURSOR_CLASS","CURSOR_STYLE_BLOCK_CLASS","CURSOR_BLINK_CLASS","CURSOR_STYLE_BAR_CLASS","CURSOR_STYLE_UNDERLINE_CLASS","_createSelectionElement","createRow","_setCellUnderline","textDecoration","3787","UNDERLINE_CLASS","DIM_CLASS","display","_applyMinimumContrast","_addStyle","456","SelectionModel","isSelectAllActive","selectionStartLength","areSelectionValuesReversed","onTrim","428","_onCharSizeChange","_measureStrategy","_parentElement","_result","_measureElement","4269","_characterJoiners","_nextCharacterJoinerId","getBg","getTrimmedLength","_getJoinedRanges","_mergeRanges","_stringRangesToCellRanges","getString","5114","getRootNode","8934","3230","_isPaused","_needsFullRefresh","_isNextRenderRedrawOnly","_needsSelectionRefresh","_canvasWidth","_canvasHeight","_selectionState","_onDimensionsChange","_onRefreshRequest","_renderDebouncer","_fullRefresh","onCharSizeChange","IntersectionObserver","_onIntersectionChange","threshold","observe","disconnect","isIntersecting","intersectionRatio","_fireOnCanvasResize","changeOptions","9312","_dragScrollAmount","_enabled","_mouseDownTimeStamp","_oldHasSelection","_oldSelectionStart","_oldSelectionEnd","_onLinuxMouseSelection","_onRedrawRequest","_onRequestScrollLines","_mouseUpListener","_onMouseUp","onUserInput","_trimListener","_onTrim","_onBufferActivate","_activeSelectionMode","_removeMouseDownListeners","finalSelectionStart","finalSelectionEnd","_isClickInSelection","_getMouseBufferCoords","_areCoordsInSelection","_selectWordAtCursor","currentLink","getRangeLength","_selectWordAt","_getMouseEventScrollAmount","macOptionClickForcesSelection","timeStamp","_onIncrementalClick","detail","_onSingleClick","_onDoubleClick","_onTripleClick","_addMouseDownListeners","_dragScrollIntervalTimer","_dragScroll","hasWidth","_selectLineAt","_selectToWordAt","_fireEventIfSelectionChanged","_fireOnSelectionChange","activeBuffer","_convertViewportColToCharacterIndex","_getWordAt","charAt","_isCharWordSeparator","trim","wordSeparator","getWrappedRangeForLine","last","4725","createDecorator","357","_audioContext","AudioContext","webkitAudioContext","audioContext","createBufferSource","decodeAudioData","_base64ToArrayBuffer","_removeMimeType","bellSound","connect","destination","atob","6349","CircularList","_maxLength","onDeleteEmitter","onInsertEmitter","onTrimEmitter","_array","_startIndex","_length","_getCyclicIndex","recycle","trimStart","shiftElements","1439","isArray","8969","_onBinary","_onData","_onLineFeed","InstantiationService","OptionsService","BufferService","LogService","CoreService","CoreMouseService","ICoreMouseService","_dirtyRowService","DirtyRowService","IDirtyRowService","UnicodeService","_charsetService","CharsetService","ICharsetService","InputHandler","markRangeDirty","scrollBottom","_writeBuffer","WriteBuffer","parse","_onScrollApi","_windowsMode","writeSync","LogLevelEnum","WARN","MINIMUM_COLS","MINIMUM_ROWS","scroll","windowsMode","_enableWindowsMode","updateWindowsModeWrappedState","final","8460","5435","setWinLines","restoreWin","minimizeWin","setWinPosition","setWinSizePixels","raiseWin","lowerWin","refreshWin","setWinSizeChars","maximizeWin","fullscreenWin","getWinState","getWinPosition","getWinSizePixels","getScreenSizePixels","getCellSizePixels","getWinSizeChars","getScreenSizeChars","getIconTitle","getWinTitle","pushTitle","popTitle","_data","hook","put","unhook","EscapeSequenceParser","_parseBuffer","_stringDecoder","_utf8Decoder","_windowTitle","_iconName","_windowTitleStack","_iconNameStack","_curAttrData","_eraseAttrDataInternal","_onRequestBell","_onRequestRefreshRows","_onRequestReset","_onRequestSyncScrollBar","_onRequestWindowsOptionsReport","_onA11yChar","_onA11yTab","_onAnsiColorChange","_parseStack","paused","cursorStartX","cursorStartY","decodedLength","setCsiHandlerFallback","identifier","identToString","params","setEscHandlerFallback","setExecuteHandlerFallback","setOscHandlerFallback","setDcsHandlerFallback","payload","setPrintHandler","print","insertChars","intermediates","scrollLeft","cursorUp","scrollRight","cursorDown","cursorForward","cursorBackward","cursorNextLine","cursorPrecedingLine","cursorCharAbsolute","cursorPosition","cursorForwardTab","eraseInDisplay","prefix","eraseInLine","insertLines","deleteLines","deleteChars","scrollUp","scrollDown","eraseChars","cursorBackwardTab","charPosAbsolute","hPositionRelative","repeatPrecedingCharacter","sendDeviceAttributesPrimary","sendDeviceAttributesSecondary","linePosAbsolute","vPositionRelative","hVPosition","tabClear","setMode","setModePrivate","resetMode","resetModePrivate","charAttributes","deviceStatus","deviceStatusPrivate","softReset","setCursorStyle","setScrollRegion","saveCursor","windowOptions","restoreCursor","insertColumns","deleteColumns","setExecuteHandler","BEL","LF","lineFeed","VT","FF","carriageReturn","BS","backspace","HT","tab","SO","shiftOut","SI","shiftIn","C1","IND","NEL","nextLine","HTS","tabSet","OscHandler","setTitle","setIconName","setAnsiColor","reverseIndex","keypadApplicationMode","keypadNumericMode","fullReset","setgLevel","selectDefaultCharset","selectCharset","CHARSETS","screenAlignmentPattern","setErrorHandler","_preserveStack","_logSlowResolvingAsync","Promise","race","catch","clearRange","charset","wraparound","modes","insertMode","markDirty","setCellFromCodePoint","wcwidth","_eraseAttrData","insertCells","addCodepointToCell","precedingCodepoint","hasContent","DcsHandler","convertEol","reverseWraparound","_restrictCursor","nextStop","origin","_setCursor","_moveCursor","tabs","prevStop","_eraseInBufferLine","replaceCells","_resetBufferLine","deleteCells","_is","termName","setgCharset","DEFAULT_CHARSET","applicationKeypad","activeEncoding","activateAltBuffer","activateNormalBuffer","_updateAttrColor","_extractColor","hasSubParams","getSubParams","_processUnderline","savedX","savedY","savedCurAttrData","savedCharset","_savedCharset","_parseAnsiColorChange","markAllDirty","844","6114","isIphone","isIpad","navigator","userAgent","platform","includes","test","8273","9282","3734","9092","BufferStringIterator","Buffer","MAX_BUFFER_SIZE","_hasScrollback","_nullCell","_whitespaceCell","_cols","_rows","_getCorrectBufferLength","getWhitespaceCell","BufferLine","maxLength","scrollback","fillViewportRows","_isReflowEnabled","_reflow","_reflowLarger","_reflowSmaller","reflowLargerGetLinesToRemove","reflowLargerCreateNewLayout","reflowLargerApplyNewLayout","layout","_reflowLargerAdjustViewport","countRemoved","reflowSmallerGetNewLineLengths","newLines","copyCellsFrom","getWrappedLineTrimmedLength","setCell","tabStopWidth","Marker","line","onInsert","onDelete","onDispose","_removeMarker","_trimRight","_endIndex","_startOverscan","_endOverscan","_current","8437","_combined","_extendedAttrs","keys","copyFrom","4841","4634","reduce","5295","BufferSet","_alt","inactiveBuffer","511","643","4863","_nextId","_onDispose","7116","j","q","z","Q","K","Y","Z","H","2584","NUL","SOH","STX","EOT","ENQ","ACK","DLE","DC1","DC2","DC3","DC4","NAK","SYN","ETB","CAN","EM","SUB","FS","GS","RS","US","SP","DEL","PAD","HOP","BPH","NBH","SSA","ESA","HTJ","VTS","PLD","PLU","RI","SS2","SS3","DCS","PU1","PU2","STS","CCH","MW","SPA","EPA","SOS","SGCI","SCI","CSI","ST","OSC","PM","APC","7399","48","49","50","51","52","53","54","55","56","57","186","187","188","189","190","191","192","219","220","221","222","482","225","UnicodeV6","5981","queueMicrotask","resolve","_action","_callbacks","_pendingData","_bufferOffset","_isSyncWriting","_syncCalls","_innerWrite","5770","PAYLOAD_LIMIT","6351","DcsParser","_handlers","_active","_ident","_handlerFb","_stack","loopPosition","fallThrough","registerHandler","clearHandler","setHandlerFallback","Params","addParam","_params","_hitLimit","2015","VT500_TRANSITION_TABLE","TransitionTable","setDefault","addMany","_transitions","handlers","handlerPos","transition","chunkPos","initialState","currentState","_collect","_printHandlerFb","_executeHandlerFb","_csiHandlerFb","_escHandlerFb","_errorHandlerFb","_printHandler","_executeHandlers","_csiHandlers","_escHandlers","_oscParser","OscParser","_dcsParser","_errorHandler","_identifier","reverse","clearPrintHandler","clearEscHandler","clearExecuteHandler","clearCsiHandler","clearDcsHandler","clearOscHandler","clearErrorHandler","collect","abort","addSubParam","addDigit","6242","_start","_put","8742","maxSubParamsLength","_subParams","_subParamsLength","_subParamsIdx","Uint16Array","_rejectDigits","_rejectSubDigits","_digitIsSub","fromArray","getSubParamsAll","744","isUserScrolling","_cachedBlankLine","isFull","7994","glevel","_charsets","1753","NONE","events","restrict","X10","VT200","DRAG","ANY","DEFAULT","SGR","_protocols","_encodings","_activeProtocol","_activeEncoding","_onProtocolChange","_lastEvent","addProtocol","addEncoding","_compareEvents","triggerBinaryEvent","down","up","drag","move","6975","_onUserInput","_scrollToBottom","disableStdin","3730","_end","4348","__spreadArrays","ServiceCollection","_entries","_services","getService","getServiceDependencies","sort","name","7866","DEBUG","info","INFO","ERROR","off","OFF","_updateLogLevel","_evalLazyOptionalParams","_log","7302","DEFAULT_OPTIONS","DEFAULT_BELL_SOUND","altClickMovesCursor","_onOptionChange","_sanitizeAndValidateOption","8343","di$target","di$dependencies","serviceRegistry","2585","1480","_providers","_onChange","_activeProvider","Zmodem","HEX_DIGITS","HEX_OCTET_VALUE","hd","ENCODELIB","pack_u16_be","number","pack_u32_le","high_bytes","unpack_u16_be","bytes_arr","unpack_u32_le","octets","octets_to_hex","hex","parse_hex_octets","hex_octets","Text","Encoder","TextEncoder","unescape","encodeURIComponent","bytes","Decoder","TextDecoder","decodeURIComponent","escape","CRC32_MOD","_crctab","_updcrc","cp","crc","divident","currByte","crc_width","bit","_compute_crctab","__verify","expect","got","assign","CRC","crc16","octet_nums","crc32","verify16","verify32","err","input","encode_cur","encode_todo","ZDLE","ZMLIB","ZmodemZDLE","set_escape_ctrl_chars","escape_ctrl_chars","_setup_zdle_table","_zdle_table","zdle_table","last_code","_lastcode","arrbuf","ArrayBuffer","arrbuf_uint8","escctl_yn","arrbuf_i","trace","JSON","stringify","so_far","zsendline_tab","XOFF","XON","turbo_escape","TYPE_MESSAGE","aborted","peer_aborted","already_aborted","expected","validation","val","_generate_message","msg","args_after_type","msg_or_type","super","generated","message","ZPAD","ZBIN","ZHEX","ZBIN32","HEX_HEADER_CRLF","HEX_HEADER_CRLF_XON","HEX_HEADER_PREFIX","BINARY16_HEADER_PREFIX","BINARY32_HEADER_PREFIX","Header","ibuffer","discard_all","parser","garbage","TRIM_LOOP","first_ZPAD","_parse_hex","_parse_binary16","_parse_binary32","hdr","args","Ctr","FRAME_NAME_CREATOR","to_crc","_crc_bytes","_hex_header_ending","zencoder","_to_binary","_bytes4","crc_func","encode","TYPENUM","ZRQINIT_HEADER","ZRINIT_FLAG","CANFDX","CANOVIO","CANBRK","CANCRY","CANLZW","CANFC32","ESCCTL","ESC8","ZRINIT_HEADER","flags_arr","bufsize","flags_num","fl","_get_ZRINIT_flag_num","undefined","ZSINIT_FLAG","ZSINIT_HEADER","attn_seq_arr","_get_ZSINIT_flag_num","some","num","ZACK_HEADER","payload4","ZFILE_VALUES","sparse","transport","management","conversion","ZFILE_ORDER","ZFILE_HEADER","opts","bytes_copy","skip_if_absent","extkey","ZSKIP_HEADER","ZABORT_HEADER","ZFIN_HEADER","ZFERR_HEADER","ZOffsetHeader","ZRPOS_HEADER","ZDATA_HEADER","ZEOF_HEADER","FRAME_CLASS_TYPES","fc","NAME","CREATORS","_get_blank_header","typenum","creator","_get_blank_header_from_constructor","zdle_decoded","_parse_non_zdle_binary16","decoded","hdr_err","hex_bytes","lf_pos","preceding","parse_hex","ABORT_SEQUENCE","strip_ignored_bytes","find_subarray","haystack","needle","HAYSTACK","_check_aborted","session","Browser","send_files","files","batch","total_size","fobj","obj","mtime","lastModified","files_remaining","bytes_remaining","file_idx","promise_callback","cur_b","send_offer","xfer","on_offer_response","res","piece","reader","FileReader","onerror","onprogress","result","get_offset","send","on_progress","onload","on_file_complete","readAsArrayBuffer","save_to_disk","packets","blob","Blob","url","URL","createObjectURL","el","download","click","COMMON_ZM_HEX_START","SENTRY_CONSTRUCTOR_REQUIRED_ARGS","Detection","session_type","accepter","denier","checker","_confirmer","_denier","_is_valid","_session_type","Sentry","sentry","arg","_cache","_zsession","session_before_consume","consume","has_ended","get_trailing_bytes","new_session","_parse","to_terminal","_parsed_session","_on_retract","_on_detect","is_valid","on","_to_terminal","_after_session_end","set_sender","_sender","_send_abort","expired_session","array_like","zsession","common_hex_at","Session","ZRINIT_FLAGS","DEFAULT_RECEIVE_INPUT_MODE","OVER_AND_OUT","_Eventer","_on_evt","_evt_once_index","evt_name","todo","_get_evt_queue","queue","at","sess","cb","Receive","Send","sender_func","_has_ended","_before_consume","_aborted","_strip_and_enqueue_input","_check_for_abort_sequence","_consume_first","_input_buffer","_Add_event","trim_leading_garbage","_Happen","_trim_leading_garbage_until_header","new_header_and_crc","_log_header","_consume_header","_last_header_name","_last_header_crc","label","header","new_header","_on_receive","_next_header_handler","abort_at","_on_session_end","bytes_hdr","_create_header_bytes","_last_sent_header","name_and_args","build","_get_header_formatter","_zencoder","hdr_or_pkt","_bytes_after_OO","_bytes_being_consumed","parse_func","subpacket","Subpacket","_consume_data","frame_end","_next_subpacket_handler","_got_ZFIN","array","parsed","_parse_and_consume_subpacket","_parse_and_consume_header","get_payload","_textdecoder","_file_info","packet_payload","nul_at","fname","_octets_to_string","the_rest","mode","serial","Offer","get_options","_accept","_skip","_current_transfer","_accepted_offer","_offset_ok","_send_ZRPOS","_file_offset","_on_data_in","ack_expected","_send_header","between_files_handler","ZFILE","_consume_ZFILE_data","ZSINIT","spkt","_consume_ZSINIT_data","ZFIN","_consume_ZFIN","_attn","_started","ret","_make_promise_for_between_files","_send_ZRINIT","resolve_accept","ZDATA","_consume_ZDATA","_consume_ZDATA_data","ZEOF","_consume_ZEOF","bound_make_promise_for_between_files","_on_file_end","Transfer_Offer_Mixin","get_details","_zfile_opts","Transfer","file_info","send_func","end_func","_send","zfile_opts","accept_func","skip_func","_accept_func","_skip_func","_input_handler","_skipped","_verify_not_skipped","_accepted","on_input","_spool","_input_handler_mode","_get_spool","SENDER_BINARY_HEADER","zrinit_hdr","_subpacket_encode_func","_consume_ZRINIT","_start_keepalive_on_set_sender","func","_start_keepalive","_keepalive_promise","_keepalive_timeout","ZACK","_got_ZSINIT_ZACK","_send_ZSINIT","_keep_alive_promise","zsinit_flags","escapes_ctrl_chars","_send_header_and_data","_last_ZRINIT","get_buffer_size","can_full_duplex","can_overlap_io","escape_8th_bit","promise","subpacket_payload","Validation","offer_parameters","subpacket_space_pieces","_string_to_octets","_sending_file","payload_array","_convert_params_to_offer_payload_array","_stop_keepalive","zrpos_handler_setter_func","ZRPOS","_ensure_receiver_escapes_ctrl_chars","handler_setter_promise","ZSKIP","_send_interim_file_piece","_end_file","_sent_ZDATA","hdr_name_and_args","data_arr","frameend","data_bytes","_build_subpacket_bytes","string","_textencoder","uint8arr","bytes_obj","_send_file_part","_ensure_we_are_sending","_prepare_to_receive_ZRINIT","after_consume","ZRINIT","ok_to_close","rej","_sent_OO","final_packetend","obj_offset","bytes_count","chunk_size","at_end","chunk","_build_and_send_subpacket","SUBPACKET_BUILDER","ZmodemSubpacket","_encode","_payload","_frameend_num","crc_len","end_at","_frame_ends_lookup","104","ZEndNoAckSubpacket","105","ZNoEndNoAckSubpacket","106","ZNoEndAckSubpacket","107","ZEndAckSubpacket","zdle_at","frameend_num","zdle_encoded_payload","got_crc","ZEndSubpacketBase","ZNoEndSubpacketBase","end_no_ack","end_ack","no_end_no_ack","no_end_ack","LOOKS_LIKE_ZMODEM_HEADER","_validate_number","ok","mtime_ok","date_obj","getTime","protocols","Connection","ConnectionFactory","bare","WebSocket","close","isOpen","readyState","CONNECTING","OPEN","onOpen","callback","onopen","onReceive","onmessage","onClose","onclose","msgInputUnknown","msgInput","msgPing","msgResizeTerminal","msgUnknownOutput","msgOutput","msgPong","msgSetWindowTitle","msgSetPreferences","msgSetReconnect","msgSetBufferSize","term","connectionFactory","authToken","reconnect","bufSize","output","detection","zmodemDetect","sendInput","alert","confirm","zmodemSend","zmodemOffer","dialog","getFileSendDialog","selector","getElementById","onchange","getFileAcceptanceDialog","filenameElem","sizeElem","skipLink","onclick","ev","skip","acceptLink","accept","payloads","dataString","effectiveBufferSize","maxChunkSize","inputChunk","connection","btoa","className","innerHTML","pingTimer","reconnectTimeout","setup","termInfo","Arguments","AuthToken","resizeHandler","colmuns","columns","onInput","from","setWindowTitle","preferences","setPreferences","autoReconnect","deactivate","showMessage","WebTTY","elem","fitAddOn","messageTimeout","resizeListener","getMessage","timeout","showMessageElem","messageTimer","removeMessage","title","onDataHandler","onResizeHandler","Xterm","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","protocol","host","pathname","search","gotty_auth_token"],"mappings":"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AC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CAAC,KAAK,MAAM,CA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","file":"gotty.js","sourcesContent":["/*!\n * crc-32 (https://npmjs.com/package/crc-32)\n * @license Apache-2.0\n * @version 1.2.1\n * ==crc-32/LICENSE==\n * Apache License\n * Version 2.0, January 2004\n * http://www.apache.org/licenses/\n * \n * TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION\n * \n * 1. Definitions.\n * \n * \"License\" shall mean the terms and conditions for use, reproduction,\n * and distribution as defined by Sections 1 through 9 of this document.\n * \n * \"Licensor\" shall mean the copyright owner or entity authorized by\n * the copyright owner that is granting the License.\n * \n * \"Legal Entity\" shall mean the union of the acting entity and all\n * other entities that control, are controlled by, or are under common\n * control with that entity. For the purposes of this definition,\n * \"control\" means (i) the power, direct or indirect, to cause the\n * direction or management of such entity, whether by contract or\n * otherwise, or (ii) ownership of fifty percent (50%) or more of the\n * outstanding shares, or (iii) beneficial ownership of such entity.\n * \n * \"You\" (or \"Your\") shall mean an individual or Legal Entity\n * exercising permissions granted by this License.\n * \n * \"Source\" form shall mean the preferred form for making modifications,\n * including but not limited to software source code, documentation\n * source, and configuration files.\n * \n * \"Object\" form shall mean any form resulting from mechanical\n * transformation or translation of a Source form, including but\n * not limited to compiled object code, generated documentation,\n * and conversions to other media types.\n * \n * \"Work\" shall mean the work of authorship, whether in Source or\n * Object form, made available under the License, as indicated by a\n * copyright notice that is included in or attached to the work\n * (an example is provided in the Appendix below).\n * \n * \"Derivative Works\" shall mean any work, whether in Source or Object\n * form, that is based on (or derived from) the Work and for which the\n * editorial revisions, annotations, elaborations, or other modifications\n * represent, as a whole, an original work of authorship. For the purposes\n * of this License, Derivative Works shall not include works that remain\n * separable from, or merely link (or bind by name) to the interfaces of,\n * the Work and Derivative Works thereof.\n * \n * \"Contribution\" shall mean any work of authorship, including\n * the original version of the Work and any modifications or additions\n * to that Work or Derivative Works thereof, that is intentionally\n * submitted to Licensor for inclusion in the Work by the copyright owner\n * or by an individual or Legal Entity authorized to submit on behalf of\n * the copyright owner. For the purposes of this definition, \"submitted\"\n * means any form of electronic, verbal, or written communication sent\n * to the Licensor or its representatives, including but not limited to\n * communication on electronic mailing lists, source code control systems,\n * and issue tracking systems that are managed by, or on behalf of, the\n * Licensor for the purpose of discussing and improving the Work, but\n * excluding communication that is conspicuously marked or otherwise\n * designated in writing by the copyright owner as \"Not a Contribution.\"\n * \n * \"Contributor\" shall mean Licensor and any individual or Legal Entity\n * on behalf of whom a Contribution has been received by Licensor and\n * subsequently incorporated within the Work.\n * \n * 2. Grant of Copyright License. Subject to the terms and conditions of\n * this License, each Contributor hereby grants to You a perpetual,\n * worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n * copyright license to reproduce, prepare Derivative Works of,\n * publicly display, publicly perform, sublicense, and distribute the\n * Work and such Derivative Works in Source or Object form.\n * \n * 3. Grant of Patent License. Subject to the terms and conditions of\n * this License, each Contributor hereby grants to You a perpetual,\n * worldwide, non-exclusive, no-charge, royalty-free, irrevocable\n * (except as stated in this section) patent license to make, have made,\n * use, offer to sell, sell, import, and otherwise transfer the Work,\n * where such license applies only to those patent claims licensable\n * by such Contributor that are necessarily infringed by their\n * Contribution(s) alone or by combination of their Contribution(s)\n * with the Work to which such Contribution(s) was submitted. If You\n * institute patent litigation against any entity (including a\n * cross-claim or counterclaim in a lawsuit) alleging that the Work\n * or a Contribution incorporated within the Work constitutes direct\n * or contributory patent infringement, then any patent licenses\n * granted to You under this License for that Work shall terminate\n * as of the date such litigation is filed.\n * \n * 4. Redistribution. You may reproduce and distribute copies of the\n * Work or Derivative Works thereof in any medium, with or without\n * modifications, and in Source or Object form, provided that You\n * meet the following conditions:\n * \n * (a) You must give any other recipients of the Work or\n * Derivative Works a copy of this License; and\n * \n * (b) You must cause any modified files to carry prominent notices\n * stating that You changed the files; and\n * \n * (c) You must retain, in the Source form of any Derivative Works\n * that You distribute, all copyright, patent, trademark, and\n * attribution notices from the Source form of the Work,\n * excluding those notices that do not pertain to any part of\n * the Derivative Works; and\n * \n * (d) If the Work includes a \"NOTICE\" text file as part of its\n * distribution, then any Derivative Works that You distribute must\n * include a readable copy of the attribution notices contained\n * within such NOTICE file, excluding those notices that do not\n * pertain to any part of the Derivative Works, in at least one\n * of the following places: within a NOTICE text file distributed\n * as part of the Derivative Works; within the Source form or\n * documentation, if provided along with the Derivative Works; or,\n * within a display generated by the Derivative Works, if and\n * wherever such third-party notices normally appear. The contents\n * of the NOTICE file are for informational purposes only and\n * do not modify the License. You may add Your own attribution\n * notices within Derivative Works that You distribute, alongside\n * or as an addendum to the NOTICE text from the Work, provided\n * that such additional attribution notices cannot be construed\n * as modifying the License.\n * \n * You may add Your own copyright statement to Your modifications and\n * may provide additional or different license terms and conditions\n * for use, reproduction, or distribution of Your modifications, or\n * for any such Derivative Works as a whole, provided Your use,\n * reproduction, and distribution of the Work otherwise complies with\n * the conditions stated in this License.\n * \n * 5. Submission of Contributions. Unless You explicitly state otherwise,\n * any Contribution intentionally submitted for inclusion in the Work\n * by You to the Licensor shall be under the terms and conditions of\n * this License, without any additional terms or conditions.\n * Notwithstanding the above, nothing herein shall supersede or modify\n * the terms of any separate license agreement you may have executed\n * with Licensor regarding such Contributions.\n * \n * 6. Trademarks. This License does not grant permission to use the trade\n * names, trademarks, service marks, or product names of the Licensor,\n * except as required for reasonable and customary use in describing the\n * origin of the Work and reproducing the content of the NOTICE file.\n * \n * 7. Disclaimer of Warranty. Unless required by applicable law or\n * agreed to in writing, Licensor provides the Work (and each\n * Contributor provides its Contributions) on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or\n * implied, including, without limitation, any warranties or conditions\n * of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A\n * PARTICULAR PURPOSE. You are solely responsible for determining the\n * appropriateness of using or redistributing the Work and assume any\n * risks associated with Your exercise of permissions under this License.\n * \n * 8. Limitation of Liability. In no event and under no legal theory,\n * whether in tort (including negligence), contract, or otherwise,\n * unless required by applicable law (such as deliberate and grossly\n * negligent acts) or agreed to in writing, shall any Contributor be\n * liable to You for damages, including any direct, indirect, special,\n * incidental, or consequential damages of any character arising as a\n * result of this License or out of the use or inability to use the\n * Work (including but not limited to damages for loss of goodwill,\n * work stoppage, computer failure or malfunction, or any and all\n * other commercial damages or losses), even if such Contributor\n * has been advised of the possibility of such damages.\n * \n * 9. Accepting Warranty or Additional Liability. While redistributing\n * the Work or Derivative Works thereof, You may choose to offer,\n * and charge a fee for, acceptance of support, warranty, indemnity,\n * or other liability obligations and/or rights consistent with this\n * License. However, in accepting such obligations, You may act only\n * on Your own behalf and on Your sole responsibility, not on behalf\n * of any other Contributor, and only if You agree to indemnify,\n * defend, and hold each Contributor harmless for any liability\n * incurred by, or claims asserted against, such Contributor by reason\n * of your accepting any such warranty or additional liability.\n * \n * END OF TERMS AND CONDITIONS\n * \n * APPENDIX: How to apply the Apache License to your work.\n * \n * To apply the Apache License to your work, attach the following\n * boilerplate notice, with the fields enclosed by brackets \"{}\"\n * replaced with your own identifying information. (Don't include\n * the brackets!) The text should be enclosed in the appropriate\n * comment syntax for the file format. We also recommend that a\n * file or class name and description of purpose be included on the\n * same \"printed page\" as the copyright notice for easier\n * identification within third-party archives.\n * \n * Copyright (C) 2014-present SheetJS LLC\n * \n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n * \n * http://www.apache.org/licenses/LICENSE-2.0\n * \n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/*! crc32.js (C) 2014-present SheetJS -- http://sheetjs.com */\n/* vim: set ts=2: */\n/*exported CRC32 */\nvar CRC32;\n(function (factory) {\n\t/*jshint ignore:start */\n\t/*eslint-disable */\n\tif(typeof DO_NOT_EXPORT_CRC === 'undefined') {\n\t\tif('object' === typeof exports) {\n\t\t\tfactory(exports);\n\t\t} else if ('function' === typeof define && define.amd) {\n\t\t\tdefine(function () {\n\t\t\t\tvar module = {};\n\t\t\t\tfactory(module);\n\t\t\t\treturn module;\n\t\t\t});\n\t\t} else {\n\t\t\tfactory(CRC32 = {});\n\t\t}\n\t} else {\n\t\tfactory(CRC32 = {});\n\t}\n\t/*eslint-enable */\n\t/*jshint ignore:end */\n}(function(CRC32) {\nCRC32.version = '1.2.1';\n/*global Int32Array */\nfunction signed_crc_table() {\n\tvar c = 0, table = new Array(256);\n\n\tfor(var n =0; n != 256; ++n){\n\t\tc = n;\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\tc = ((c&1) ? (-306674912 ^ (c >>> 1)) : (c >>> 1));\n\t\ttable[n] = c;\n\t}\n\n\treturn typeof Int32Array !== 'undefined' ? new Int32Array(table) : table;\n}\n\nvar T0 = signed_crc_table();\nfunction slice_by_16_tables(T) {\n\tvar c = 0, v = 0, n = 0, table = typeof Int32Array !== 'undefined' ? new Int32Array(4096) : new Array(4096) ;\n\n\tfor(n = 0; n != 256; ++n) table[n] = T[n];\n\tfor(n = 0; n != 256; ++n) {\n\t\tv = T[n];\n\t\tfor(c = 256 + n; c < 4096; c += 256) v = table[c] = (v >>> 8) ^ T[v & 0xFF];\n\t}\n\tvar out = [];\n\tfor(n = 1; n != 16; ++n) out[n - 1] = typeof Int32Array !== 'undefined' ? table.subarray(n * 256, n * 256 + 256) : table.slice(n * 256, n * 256 + 256);\n\treturn out;\n}\nvar TT = slice_by_16_tables(T0);\nvar T1 = TT[0], T2 = TT[1], T3 = TT[2], T4 = TT[3], T5 = TT[4];\nvar T6 = TT[5], T7 = TT[6], T8 = TT[7], T9 = TT[8], Ta = TT[9];\nvar Tb = TT[10], Tc = TT[11], Td = TT[12], Te = TT[13], Tf = TT[14];\nfunction crc32_bstr(bstr, seed) {\n\tvar C = seed ^ -1;\n\tfor(var i = 0, L = bstr.length; i < L;) C = (C>>>8) ^ T0[(C^bstr.charCodeAt(i++))&0xFF];\n\treturn ~C;\n}\n\nfunction crc32_buf(B, seed) {\n\tvar C = seed ^ -1, L = B.length - 15, i = 0;\n\tfor(; i < L;) C =\n\t\tTf[B[i++] ^ (C & 255)] ^\n\t\tTe[B[i++] ^ ((C >> 8) & 255)] ^\n\t\tTd[B[i++] ^ ((C >> 16) & 255)] ^\n\t\tTc[B[i++] ^ (C >>> 24)] ^\n\t\tTb[B[i++]] ^ Ta[B[i++]] ^ T9[B[i++]] ^ T8[B[i++]] ^\n\t\tT7[B[i++]] ^ T6[B[i++]] ^ T5[B[i++]] ^ T4[B[i++]] ^\n\t\tT3[B[i++]] ^ T2[B[i++]] ^ T1[B[i++]] ^ T0[B[i++]];\n\tL += 15;\n\twhile(i < L) C = (C>>>8) ^ T0[(C^B[i++])&0xFF];\n\treturn ~C;\n}\n\nfunction crc32_str(str, seed) {\n\tvar C = seed ^ -1;\n\tfor(var i = 0, L = str.length, c = 0, d = 0; i < L;) {\n\t\tc = str.charCodeAt(i++);\n\t\tif(c < 0x80) {\n\t\t\tC = (C>>>8) ^ T0[(C^c)&0xFF];\n\t\t} else if(c < 0x800) {\n\t\t\tC = (C>>>8) ^ T0[(C ^ (192|((c>>6)&31)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(c&63)))&0xFF];\n\t\t} else if(c >= 0xD800 && c < 0xE000) {\n\t\t\tc = (c&1023)+64; d = str.charCodeAt(i++)&1023;\n\t\t\tC = (C>>>8) ^ T0[(C ^ (240|((c>>8)&7)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((c>>2)&63)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((d>>6)&15)|((c&3)<<4)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(d&63)))&0xFF];\n\t\t} else {\n\t\t\tC = (C>>>8) ^ T0[(C ^ (224|((c>>12)&15)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|((c>>6)&63)))&0xFF];\n\t\t\tC = (C>>>8) ^ T0[(C ^ (128|(c&63)))&0xFF];\n\t\t}\n\t}\n\treturn ~C;\n}\nCRC32.table = T0;\n// $FlowIgnore\nCRC32.bstr = crc32_bstr;\n// $FlowIgnore\nCRC32.buf = crc32_buf;\n// $FlowIgnore\nCRC32.str = crc32_str;\n}));\n","/*!\n * xterm-addon-fit (https://npmjs.com/package/xterm-addon-fit)\n * @license MIT\n * @version 0.5.0\n * ==xterm-addon-fit/LICENSE==\n * Copyright (c) 2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.FitAddon=t():e.FitAddon=t()}(self,(function(){return(()=>{\"use strict\";var e={775:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue(\"height\")),i=Math.max(0,parseInt(t.getPropertyValue(\"width\"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue(\"padding-top\"))+parseInt(n.getPropertyValue(\"padding-bottom\"))),a=i-(parseInt(n.getPropertyValue(\"padding-right\"))+parseInt(n.getPropertyValue(\"padding-left\")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(a/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()}));\n//# sourceMappingURL=xterm-addon-fit.js.map","/*!\n * xterm-addon-web-links (https://npmjs.com/package/xterm-addon-web-links)\n * @license MIT\n * @version 0.4.0\n * ==xterm-addon-web-links/LICENSE==\n * Copyright (c) 2017, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.WebLinksAddon=t():e.WebLinksAddon=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"\",n(n.s=0)}([function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.WebLinksAddon=void 0;var r=n(1),i=new RegExp(\"(?:^|[^\\\\da-z\\\\.-]+)((https?:\\\\/\\\\/)((([\\\\da-z\\\\.-]+)\\\\.([a-z\\\\.]{2,6}))|((\\\\d{1,3}\\\\.){3}\\\\d{1,3})|(localhost))(:\\\\d{1,5})?((\\\\/[\\\\/\\\\w\\\\.\\\\-%~:+@]*)*([^:\\\"'\\\\s]))?(\\\\?[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?(#[0-9\\\\w\\\\[\\\\]\\\\(\\\\)\\\\/\\\\?\\\\!#@$%&'*+,:;~\\\\=\\\\.\\\\-]*)?)($|[^\\\\/\\\\w\\\\.\\\\-%]+)\");function o(e,t){var n=window.open();n?(n.opener=null,n.location.href=t):console.warn(\"Opening link blocked as opener could not be cleared\")}var a=function(){function e(e,t,n){void 0===e&&(e=o),void 0===t&&(t={}),void 0===n&&(n=!1),this._handler=e,this._options=t,this._useLinkProvider=n,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&\"registerLinkProvider\"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new r.WebLinkProvider(this._terminal,i,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(i,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=a},function(e,t,n){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var r=function(){function e(e,t,n){this._terminal=e,this._regex=t,this._handler=n}return e.prototype.provideLinks=function(e,t){t(i.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=r;var i=function(){function e(){}return e.computeLink=function(t,n,r,i){for(var o,a=new RegExp(n.source,(n.flags||\"\")+\"g\"),s=e._translateBufferLineToStringWithWrap(t-1,!1,r),u=s[0],d=s[1],l=-1,c=[];null!==(o=a.exec(u));){var f=o[1];if(!f){console.log(\"match found without corresponding matchIndex\");break}if(l=u.indexOf(f,l+1),a.lastIndex=l+f.length,l<0)break;for(var p=l+f.length,h=d+1;p>r.cols;)p-=r.cols,h++;var v={start:{x:l+1,y:d+1},end:{x:p,y:h}};c.push({range:v,text:f,activate:i})}return c},e._translateBufferLineToStringWithWrap=function(e,t,n){var r,i,o=\"\";do{if(!(s=n.buffer.active.getLine(e)))break;s.isWrapped&&e--,i=s.isWrapped}while(i);var a=e;do{var s,u=n.buffer.active.getLine(e+1);if(r=!!u&&u.isWrapped,!(s=n.buffer.active.getLine(e)))break;o+=s.translateToString(!r&&t).substring(0,n.cols),e++}while(r);return[o,a]},e}();t.LinkComputer=i}])}));\n//# sourceMappingURL=xterm-addon-web-links.js.map","/*!\n * xterm-addon-webgl (https://npmjs.com/package/xterm-addon-webgl)\n * @license MIT\n * @version 0.10.0\n * ==xterm-addon-webgl/LICENSE==\n * Copyright (c) 2018, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.WebglAddon=e():t.WebglAddon=e()}(self,(function(){return(()=>{\"use strict\";var t={965:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.GlyphRenderer=void 0;var r=i(381),o=i(310),n=i(455),s=i(259),a=i(855),l=i(147),h=10,c=h*Float32Array.BYTES_PER_ELEMENT,_=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var n=this._gl,s=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_unitquad;\\nlayout (location = 1) in vec2 a_cellpos;\\nlayout (location = 2) in vec2 a_offset;\\nlayout (location = 3) in vec2 a_size;\\nlayout (location = 4) in vec2 a_texcoord;\\nlayout (location = 5) in vec2 a_texsize;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec2 v_texcoord;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec2 v_texcoord;\\n\\nuniform sampler2D u_texture;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = texture(u_texture, v_texcoord);\\n}\"));this._program=s,this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._textureLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_texture\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),_=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,_),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,2,n.FLOAT,!1,c,0),n.vertexAttribDivisor(2,1),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,n.FLOAT,!1,c,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(3,1),n.enableVertexAttribArray(4),n.vertexAttribPointer(4,2,n.FLOAT,!1,c,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(4,1),n.enableVertexAttribArray(5),n.vertexAttribPointer(5,2,n.FLOAT,!1,c,6*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(5,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,c,8*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),this._atlasTexture=r.throwIfFalsy(n.createTexture()),n.bindTexture(n.TEXTURE_2D,this._atlasTexture),n.texImage2D(n.TEXTURE_2D,0,n.RGBA,1,1,0,n.RGBA,n.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_S,n.CLAMP_TO_EDGE),n.texParameteri(n.TEXTURE_2D,n.TEXTURE_WRAP_T,n.CLAMP_TO_EDGE),n.enable(n.BLEND),n.blendFunc(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA),this.onResize()}return t.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},t.prototype.updateCell=function(t,e,i,r,o,n){this._updateCell(this._vertices.attributes,t,e,i,r,o,n)},t.prototype._updateCell=function(t,e,i,r,o,s,l){var c,_=(i*this._terminal.cols+e)*h;r!==a.NULL_CELL_CODE&&r!==a.WHITESPACE_CELL_CODE&&void 0!==r?this._atlas&&((c=l&&l.length>1?this._atlas.getRasterizedGlyphCombinedChar(l,o,s):this._atlas.getRasterizedGlyph(r,o,s))?(t[_]=-c.offset.x+this._dimensions.scaledCharLeft,t[_+1]=-c.offset.y+this._dimensions.scaledCharTop,t[_+2]=c.size.x/this._dimensions.scaledCanvasWidth,t[_+3]=c.size.y/this._dimensions.scaledCanvasHeight,t[_+4]=c.texturePositionClipSpace.x,t[_+5]=c.texturePositionClipSpace.y,t[_+6]=c.sizeClipSpace.x,t[_+7]=c.sizeClipSpace.y):n.fill(t,0,_,_+h-1-2)):n.fill(t,0,_,_+h-1-2)},t.prototype.updateSelection=function(t){var e=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var i=this._colors.selectionOpaque.rgba>>>8|50331648;if(t.selection.columnSelectMode)for(var r=t.selection.startCol,o=t.selection.endCol-r,n=t.selection.viewportCappedEndRow-t.selection.viewportCappedStartRow+1,a=t.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var g=l.AttributeData.toColorRGB(f.getBgColor());u|=g[0]<<16|g[1]<<8|g[2]<<0;case 0:default:var v=this._colors.background.rgba;u|=v>>8&16711680|v>>8&65280|v>>8&255}u|=50331648}if(d&o.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(h));var C=s.getCell(c).getChars();this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u,C)}else this._updateCell(this._vertices.selectionAttributes,c,i,r.cells[_],n,u)}},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._colors.ansi[t]},t.prototype.onResize=function(){var t=this._terminal,e=this._gl;e.viewport(0,0,e.canvas.width,e.canvas.height);var i=t.cols*t.rows*h;if(this._vertices.count!==i){this._vertices.count=i,this._vertices.attributes=new Float32Array(i);for(var r=0;r{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RectangleRenderer=void 0;var r=i(381),o=i(455),n=i(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function t(t,e,i,o){this._terminal=t,this._colors=e,this._gl=i,this._dimensions=o,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var n=this._gl;this._program=r.throwIfFalsy(r.createProgram(n,\"#version 300 es\\nlayout (location = 0) in vec2 a_position;\\nlayout (location = 1) in vec2 a_size;\\nlayout (location = 2) in vec4 a_color;\\nlayout (location = 3) in vec2 a_unitquad;\\n\\nuniform mat4 u_projection;\\nuniform vec2 u_resolution;\\n\\nout vec4 v_color;\\n\\nvoid main() {\\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\\n v_color = a_color;\\n}\",\"#version 300 es\\nprecision lowp float;\\n\\nin vec4 v_color;\\n\\nout vec4 outColor;\\n\\nvoid main() {\\n outColor = v_color;\\n}\")),this._resolutionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_resolution\")),this._projectionLocation=r.throwIfFalsy(n.getUniformLocation(this._program,\"u_projection\")),this._vertexArrayObject=n.createVertexArray(),n.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),l=n.createBuffer();n.bindBuffer(n.ARRAY_BUFFER,l),n.bufferData(n.ARRAY_BUFFER,a,n.STATIC_DRAW),n.enableVertexAttribArray(3),n.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var h=new Uint8Array([0,1,3,0,2,3]),c=n.createBuffer();n.bindBuffer(n.ELEMENT_ARRAY_BUFFER,c),n.bufferData(n.ELEMENT_ARRAY_BUFFER,h,n.STATIC_DRAW),this._attributesBuffer=r.throwIfFalsy(n.createBuffer()),n.bindBuffer(n.ARRAY_BUFFER,this._attributesBuffer),n.enableVertexAttribArray(0),n.vertexAttribPointer(0,2,n.FLOAT,!1,s,0),n.vertexAttribDivisor(0,1),n.enableVertexAttribArray(1),n.vertexAttribPointer(1,2,n.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(1,1),n.enableVertexAttribArray(2),n.vertexAttribPointer(2,4,n.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),n.vertexAttribDivisor(2,1),this._updateCachedColors()}return t.prototype.render=function(){var t=this._gl;t.useProgram(this._program),t.bindVertexArray(this._vertexArrayObject),t.uniformMatrix4fv(this._projectionLocation,!1,r.PROJECTION_MATRIX),t.uniform2f(this._resolutionLocation,t.canvas.width,t.canvas.height),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.attributes,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,this._vertices.count),t.bindBuffer(t.ARRAY_BUFFER,this._attributesBuffer),t.bufferData(t.ARRAY_BUFFER,this._vertices.selection,t.DYNAMIC_DRAW),t.drawElementsInstanced(this._gl.TRIANGLES,6,t.UNSIGNED_BYTE,0,3)},t.prototype.onResize=function(){this._updateViewportRectangle()},t.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},t.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},t.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},t.prototype.updateSelection=function(t){var e=this._terminal;if(t.hasSelection)if(t.columnSelectMode){var i=t.startCol,r=t.endCol-i,n=t.viewportCappedEndRow-t.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,r*this._dimensions.scaledCellWidth,n*this._dimensions.scaledCellHeight,this._selectionFloat),o.fill(this._vertices.selection,0,8)}else{i=t.viewportStartRow===t.viewportCappedStartRow?t.startCol:0;var s=t.viewportCappedStartRow===t.viewportEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,0,i*this._dimensions.scaledCellWidth,t.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-i)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(t.viewportCappedEndRow-t.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(t.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,e.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),t.viewportCappedStartRow!==t.viewportCappedEndRow){var l=t.viewportEndRow===t.viewportCappedEndRow?t.endCol:e.cols;this._addRectangleFloat(this._vertices.selection,16,0,t.viewportCappedEndRow*this._dimensions.scaledCellHeight,l*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else o.fill(this._vertices.selection,0,16)}else o.fill(this._vertices.selection,0,0)},t.prototype.updateBackgrounds=function(t){for(var e=this._terminal,i=this._vertices,r=1,o=0;o>24&255)/255,d=(l>>16&255)/255,u=(l>>8&255)/255;this._addRectangle(t.attributes,e,h,c,(s-n)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,_,d,u,1)},t.prototype._addRectangle=function(t,e,i,r,o,n,s,a,l,h){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s,t[e+5]=a,t[e+6]=l,t[e+7]=h},t.prototype._addRectangleFloat=function(t,e,i,r,o,n,s){t[e]=i,t[e+1]=r,t[e+2]=o,t[e+3]=n,t[e+4]=s[0],t[e+5]=s[1],t[e+6]=s[2],t[e+7]=s[3]},t.prototype._colorToFloat32Array=function(t){return new Float32Array([(t.rgba>>24&255)/255,(t.rgba>>16&255)/255,(t.rgba>>8&255)/255,(255&t.rgba)/255])},t}();e.RectangleRenderer=a},310:(t,e,i)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.RenderModel=e.COMBINED_CHAR_BIT_MASK=e.RENDER_MODEL_FG_OFFSET=e.RENDER_MODEL_BG_OFFSET=e.RENDER_MODEL_INDICIES_PER_CELL=void 0;var r=i(455);e.RENDER_MODEL_INDICIES_PER_CELL=3,e.RENDER_MODEL_BG_OFFSET=1,e.RENDER_MODEL_FG_OFFSET=2,e.COMBINED_CHAR_BIT_MASK=2147483648;var o=function(){function t(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return t.prototype.resize=function(t,i){var r=t*i*e.RENDER_MODEL_INDICIES_PER_CELL;r!==this.cells.length&&(this.cells=new Uint32Array(r),this.lineLengths=new Uint32Array(i))},t.prototype.clear=function(){r.fill(this.cells,0,0),r.fill(this.lineLengths,0,0)},t.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},t}();e.RenderModel=o},259:(t,e)=>{function i(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length),e<0&&(e=(t.length+e)%t.length),i=i>=t.length?t.length:(t.length+i)%t.length,e=Math.min(e,i);for(var r=new t.constructor(i-e),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglAddon=void 0;var r=i(666),o=function(){function t(t){this._preserveDrawingBuffer=t}return t.prototype.activate=function(t){if(!t.element)throw new Error(\"Cannot activate WebglAddon before Terminal.open\");this._terminal=t;var e=t._core._renderService,i=t._core._colorManager.colors;this._renderer=new r.WebglRenderer(t,i,this._preserveDrawingBuffer),e.setRenderer(this._renderer)},t.prototype.dispose=function(){if(!this._terminal)throw new Error(\"Cannot dispose WebglAddon because it is activated\");var t=this._terminal._core._renderService;t.setRenderer(this._terminal._core._createRenderer()),t.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(t.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._renderer)||void 0===t?void 0:t.textureAtlas},enumerable:!1,configurable:!0}),t.prototype.clearTextureAtlas=function(){var t;null===(t=this._renderer)||void 0===t||t.clearCharAtlas()},t}();e.WebglAddon=o},666:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglRenderer=void 0;var n=i(965),s=i(733),a=i(461),l=i(713),h=i(344),c=i(310),_=i(859),d=i(855),u=i(345),f=i(782),p=function(t){function e(e,i,r){var o=t.call(this)||this;o._terminal=e,o._colors=i,o._model=new c.RenderModel,o._workCell=new f.CellData,o._onRequestRedraw=new u.EventEmitter,o._core=o._terminal._core,o._renderLayers=[new s.LinkRenderLayer(o._core.screenElement,2,o._colors,o._core),new a.CursorRenderLayer(o._core.screenElement,3,o._colors,o._onRequestRedraw)],o.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},o._devicePixelRatio=window.devicePixelRatio,o._updateDimensions(),o._canvas=document.createElement(\"canvas\");var l={antialias:!1,depth:!1,preserveDrawingBuffer:r};if(o._gl=o._canvas.getContext(\"webgl2\",l),!o._gl)throw new Error(\"WebGL2 not supported \"+o._gl);return o._core.screenElement.appendChild(o._canvas),o._rectangleRenderer=new h.RectangleRenderer(o._terminal,o._colors,o._gl,o.dimensions),o._glyphRenderer=new n.GlyphRenderer(o._terminal,o._colors,o._gl,o.dimensions),o.onCharSizeChanged(),o._isAttached=document.body.contains(o._core.screenElement),o}return o(e,t),Object.defineProperty(e.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._renderLayers.forEach((function(t){return t.dispose()})),this._core.screenElement.removeChild(this._canvas),t.prototype.dispose.call(this)},Object.defineProperty(e.prototype,\"textureAtlas\",{get:function(){var t;return null===(t=this._charAtlas)||void 0===t?void 0:t.cacheCanvas},enumerable:!1,configurable:!0}),e.prototype.setColors=function(t){var e=this;this._colors=t,this._renderLayers.forEach((function(t){t.setColors(e._terminal,e._colors),t.reset(e._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},e.prototype.onResize=function(t,e){var i=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(t){return t.resize(i._terminal,i.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+\"px\",this._canvas.style.height=this.dimensions.canvasHeight+\"px\",this._core.screenElement.style.width=this.dimensions.canvasWidth+\"px\",this._core.screenElement.style.height=this.dimensions.canvasHeight+\"px\",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},e.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},e.prototype.onBlur=function(){var t=this;this._renderLayers.forEach((function(e){return e.onBlur(t._terminal)}))},e.prototype.onFocus=function(){var t=this;this._renderLayers.forEach((function(e){return e.onFocus(t._terminal)}))},e.prototype.onSelectionChanged=function(t,e,i){var r=this;this._renderLayers.forEach((function(o){return o.onSelectionChanged(r._terminal,t,e,i)})),this._updateSelectionModel(t,e,i),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.onCursorMove=function(){var t=this;this._renderLayers.forEach((function(e){return e.onCursorMove(t._terminal)}))},e.prototype.onOptionsChanged=function(){var t=this;this._renderLayers.forEach((function(e){return e.onOptionsChanged(t._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},e.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var t=l.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!(\"getRasterizedGlyph\"in t))throw new Error(\"The webgl renderer only works with the webgl char atlas\");this._charAtlas=t,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},e.prototype.clearCharAtlas=function(){var t;null===(t=this._charAtlas)||void 0===t||t.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},e.prototype.clear=function(){var t=this;this._renderLayers.forEach((function(e){return e.reset(t._terminal)}))},e.prototype.registerCharacterJoiner=function(t){return-1},e.prototype.deregisterCharacterJoiner=function(t){return!1},e.prototype.renderRows=function(t,e){var i=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(r){return r.onGridChanged(i._terminal,t,e)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(t,e),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},e.prototype._updateModel=function(t,e){for(var i=this._core,r=t;r<=e;r++){var o=r+i.buffer.ydisp,n=i.buffer.lines.get(o);this._model.lineLengths[r]=0;for(var s=0;s1&&(l|=c.COMBINED_CHAR_BIT_MASK),this._model.cells[h]=l,this._model.cells[h+c.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[h+c.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,r,l,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},e.prototype._updateSelectionModel=function(t,e,i){void 0===i&&(i=!1);var r=this._terminal;if(!t||!e||t[0]===e[0]&&t[1]===e[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var o=t[1]-r.buffer.active.viewportY,n=e[1]-r.buffer.active.viewportY,s=Math.max(o,0),a=Math.min(n,r.rows-1);if(s>=r.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=i,this._model.selection.viewportStartRow=o,this._model.selection.viewportEndRow=n,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=t[0],this._model.selection.endCol=e[0],this._rectangleRenderer.updateSelection(this._model.selection)},e.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption(\"lineHeight\")),this.dimensions.scaledCharTop=1===this._terminal.getOption(\"lineHeight\")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption(\"letterSpacing\")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption(\"letterSpacing\")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},e}(_.Disposable);e.WebglRenderer=p},381:(t,e)=>{function i(t,e,i){var o=r(t.createShader(e));if(t.shaderSource(o,i),t.compileShader(o),t.getShaderParameter(o,t.COMPILE_STATUS))return o;console.error(t.getShaderInfoLog(o)),t.deleteShader(o)}function r(t){if(!t)throw new Error(\"value must not be falsy\");return t}Object.defineProperty(e,\"__esModule\",{value:!0}),e.throwIfFalsy=e.expandFloat32Array=e.createShader=e.createProgram=e.PROJECTION_MATRIX=void 0,e.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),e.createProgram=function(t,e,o){var n=r(t.createProgram());if(t.attachShader(n,r(i(t,t.VERTEX_SHADER,e))),t.attachShader(n,r(i(t,t.FRAGMENT_SHADER,o))),t.linkProgram(n),t.getProgramParameter(n,t.LINK_STATUS))return n;console.error(t.getProgramInfoLog(n)),t.deleteProgram(n)},e.createShader=i,e.expandFloat32Array=function(t,e){for(var i=Math.min(2*t.length,e),r=new Float32Array(i),o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.removeTerminalFromCache=e.acquireCharAtlas=void 0;var r=i(433),o=i(167),n=[];e.acquireCharAtlas=function(t,e,i,s){for(var a=r.generateConfig(i,s,t,e),l=0;l=0){if(r.configEquals(c.config,a))return c.atlas;1===c.ownedBy.length?(c.atlas.dispose(),n.splice(l,1)):c.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(e,\"__esModule\",{value:!0}),e.is256Color=e.configEquals=e.generateConfig=void 0;var i={css:\"\",rgba:0};e.generateConfig=function(t,e,r,o){var n={foreground:o.foreground,background:o.background,cursor:i,cursorAccent:i,selectionTransparent:i,selectionOpaque:i,ansi:o.ansi.slice(),contrastCache:o.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:t,scaledCharHeight:e,fontFamily:r.getOption(\"fontFamily\"),fontSize:r.getOption(\"fontSize\"),fontWeight:r.getOption(\"fontWeight\"),fontWeightBold:r.getOption(\"fontWeightBold\"),allowTransparency:r.getOption(\"allowTransparency\"),drawBoldTextInBrightColors:r.getOption(\"drawBoldTextInBrightColors\"),minimumContrastRatio:r.getOption(\"minimumContrastRatio\"),colors:n}},e.configEquals=function(t,e){for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WebglCharAtlas=void 0;var r=i(499),o=i(855),n=i(381),s=i(147),a=i(742),l=1024,h=1024,c=Math.floor(819.2),_={css:\"rgba(0, 0, 0, 0)\",rgba:0},d={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},u=function(){function t(t,e){this._config=e,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=t.createElement(\"canvas\"),this.cacheCanvas.width=l,this.cacheCanvas.height=h,this._cacheCtx=n.throwIfFalsy(this.cacheCanvas.getContext(\"2d\",{alpha:!0})),this._tmpCanvas=t.createElement(\"canvas\"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=n.throwIfFalsy(this._tmpCanvas.getContext(\"2d\",{alpha:this._config.allowTransparency}))}return t.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},t.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},t.prototype._doWarmUp=function(){for(var t,e,i=33;i<126;i++){var r=this._drawToCache(i,o.DEFAULT_COLOR,o.DEFAULT_COLOR);this._cacheMap[i]=((t={})[o.DEFAULT_COLOR]=((e={})[o.DEFAULT_COLOR]=r,e),t)}},t.prototype.beginFrame=function(){return this._currentRowY>c&&(this.clearTexture(),this.warmUp(),!0)},t.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,l,h),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},t.prototype.getRasterizedGlyphCombinedChar=function(t,e,i){var r,o=this._cacheMapCombined[t];o||(o={},this._cacheMapCombined[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype.getRasterizedGlyph=function(t,e,i){var r,o=this._cacheMap[t];o||(o={},this._cacheMap[t]=o);var n=o[e];return n&&(r=n[i]),r||(r=this._drawToCache(t,e,i),o[e]||(o[e]={}),o[e][i]=r),r},t.prototype._getColorFromAnsiIndex=function(t){if(t>=this._config.colors.ansi.length)throw new Error(\"No color found for idx \"+t);return this._config.colors.ansi[t]},t.prototype._getBackgroundColor=function(t,e,i){if(this._config.allowTransparency)return _;switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e);case 50331648:var r=s.AttributeData.toColorRGB(e);return{rgba:e<<8,css:\"#\"+f(r[0])+f(r[1])+f(r[2])};case 0:default:return i?this._config.colors.foreground:this._config.colors.background}},t.prototype._getForegroundCss=function(t,e,i,r,o,n,l,h){var c=this._getMinimumContrastCss(t,e,i,r,o,n,l,h);if(c)return c;switch(o){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&h&&n<8&&(n+=8),this._getColorFromAnsiIndex(n).css;case 50331648:var _=s.AttributeData.toColorRGB(n);return a.channels.toCss(_[0],_[1],_[2]);case 0:default:if(l){var d=this._config.colors.background.css;return 9===d.length?d.substr(0,7):d}return this._config.colors.foreground.css}},t.prototype._resolveBackgroundRgba=function(t,e,i){switch(t){case 16777216:case 33554432:return this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},t.prototype._resolveForegroundRgba=function(t,e,i,r){switch(t){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&r&&e<8&&(e+=8),this._getColorFromAnsiIndex(e).rgba;case 50331648:return e<<8;case 0:default:return i?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},t.prototype._getMinimumContrastCss=function(t,e,i,r,o,n,s,l){if(1!==this._config.minimumContrastRatio){var h=this._config.colors.contrastCache.getCss(t,r);if(void 0!==h)return h||void 0;var c=this._resolveBackgroundRgba(e,i,s),_=this._resolveForegroundRgba(o,n,s,l),d=a.rgba.ensureContrastRatio(c,_,this._config.minimumContrastRatio);if(d){var u=a.channels.toCss(d>>24&255,d>>16&255,d>>8&255);return this._config.colors.contrastCache.setCss(t,r,u),u}this._config.colors.contrastCache.setCss(t,r,null)}},t.prototype._drawToCache=function(t,e,i){var o=\"number\"==typeof t?String.fromCharCode(t):t;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=i,this._workAttributeData.bg=e,this._workAttributeData.isInvisible())return d;var n=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),c=!!this._workAttributeData.isItalic(),_=this._workAttributeData.getFgColor(),u=this._workAttributeData.getFgColorMode(),f=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var g=_;_=f,f=g;var v=u;u=p,p=v}var C=this._getBackgroundColor(p,f,s);this._tmpCtx.globalCompositeOperation=\"copy\",this._tmpCtx.fillStyle=C.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation=\"source-over\";var m=n?this._config.fontWeightBold:this._config.fontWeight,y=c?\"italic\":\"\";this._tmpCtx.font=y+\" \"+m+\" \"+this._config.fontSize*this._config.devicePixelRatio+\"px \"+this._config.fontFamily,this._tmpCtx.textBaseline=\"middle\",this._tmpCtx.fillStyle=this._getForegroundCss(e,p,f,i,u,_,s,n),a&&(this._tmpCtx.globalAlpha=r.DIM_OPACITY),this._tmpCtx.fillText(o,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var R=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(t,e){for(var i=!0,r=e.rgba>>>24,o=e.rgba>>>16&255,n=e.rgba>>>8&255,s=0;sl&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),b.texturePosition.x=this._currentRowX,b.texturePosition.y=this._currentRowY,b.texturePositionClipSpace.x=this._currentRowX/l,b.texturePositionClipSpace.y=this._currentRowY/h,this._currentRowHeight=Math.max(this._currentRowHeight,b.size.y),this._currentRowX+=b.size.x,this._cacheCtx.putImageData(w,b.texturePosition.x,b.texturePosition.y),b},t.prototype._findGlyphBoundingBox=function(t,e){e.top=0;for(var i=!1,r=0;r=0;o--){for(r=0;r=0;r--){for(o=0;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.BaseRenderLayer=void 0;var r=i(713),o=i(381),n=function(){function t(t,e,i,r,o){this._container=t,this._alpha=r,this._colors=o,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+e+\"-layer\"),this._canvas.style.zIndex=i.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return t.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},t.prototype._initCanvas=function(){this._ctx=o.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},t.prototype.onOptionsChanged=function(t){},t.prototype.onBlur=function(t){},t.prototype.onFocus=function(t){},t.prototype.onCursorMove=function(t){},t.prototype.onGridChanged=function(t,e,i){},t.prototype.onSelectionChanged=function(t,e,i,r){void 0===r&&(r=!1)},t.prototype.setColors=function(t,e){this._refreshCharAtlas(t,e)},t.prototype._setTransparency=function(t,e){if(e!==this._alpha){var i=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,i),this._refreshCharAtlas(t,this._colors),this.onGridChanged(t,0,t.rows-1)}},t.prototype._refreshCharAtlas=function(t,e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=r.acquireCharAtlas(t,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},t.prototype.resize=function(t,e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(t,this._colors)},t.prototype._fillCells=function(t,e,i,r){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight)},t.prototype._fillBottomLineAtCells=function(t,e,i){void 0===i&&(i=1),this._ctx.fillRect(t*this._scaledCellWidth,(e+1)*this._scaledCellHeight-window.devicePixelRatio-1,i*this._scaledCellWidth,window.devicePixelRatio)},t.prototype._fillLeftLineAtCell=function(t,e,i){this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,window.devicePixelRatio*i,this._scaledCellHeight)},t.prototype._strokeRectAtCell=function(t,e,i,r){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(t*this._scaledCellWidth+window.devicePixelRatio/2,e*this._scaledCellHeight+window.devicePixelRatio/2,i*this._scaledCellWidth-window.devicePixelRatio,r*this._scaledCellHeight-window.devicePixelRatio)},t.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},t.prototype._clearCells=function(t,e,i,r){this._alpha?this._ctx.clearRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(t*this._scaledCellWidth,e*this._scaledCellHeight,i*this._scaledCellWidth,r*this._scaledCellHeight))},t.prototype._fillCharTrueColor=function(t,e,i,r){this._ctx.font=this._getFont(t,!1,!1),this._ctx.textBaseline=\"middle\",this._clipRow(t,r),this._ctx.fillText(e.getChars(),i*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},t.prototype._clipRow=function(t,e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,t.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},t.prototype._getFont=function(t,e,i){return(i?\"italic\":\"\")+\" \"+(e?t.getOption(\"fontWeightBold\"):t.getOption(\"fontWeight\"))+\" \"+t.getOption(\"fontSize\")*window.devicePixelRatio+\"px \"+t.getOption(\"fontFamily\")},t}();e.BaseRenderLayer=n},461:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CursorRenderLayer=void 0;var n=i(592),s=i(782),a=600,l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"cursor\",i,!0,r)||this;return n._onRequestRefreshRowsEvent=o,n._cell=new s.CellData,n._state={x:0,y:0,isFocused:!1,style:\"\",width:0},n._cursorRenderers={bar:n._renderBarCursor.bind(n),block:n._renderBlockCursor.bind(n),underline:n._renderUnderlineCursor.bind(n)},n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},e.prototype.reset=function(t){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(t))},e.prototype.onBlur=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onFocus=function(t){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(t):this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onOptionsChanged=function(t){var e,i=this;t.getOption(\"cursorBlink\")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new h(t,(function(){i._render(t,!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:t.buffer.active.cursorY,end:t.buffer.active.cursorY})},e.prototype.onCursorMove=function(t){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype.onGridChanged=function(t,e,i){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(t,!1):this._cursorBlinkStateManager.restartBlinkAnimation(t)},e.prototype._render=function(t,e){if(t._core._coreService.isCursorInitialized&&!t._core._coreService.isCursorHidden){var i=t.buffer.active.baseY+t.buffer.active.cursorY,r=i-t.buffer.active.viewportY,o=Math.min(t.buffer.active.cursorX,t.cols-1);if(r<0||r>=t.rows)this._clearCursor();else if(t._core.buffer.lines.get(i).loadCell(o,this._cell),void 0!==this._cell.content){if(!c(t)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=t.getOption(\"cursorStyle\");return n&&\"block\"!==n?this._cursorRenderers[n](t,o,r,this._cell):this._renderBlurCursor(t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===o&&this._state.y===r&&this._state.isFocused===c(t)&&this._state.style===t.getOption(\"cursorStyle\")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[t.getOption(\"cursorStyle\")||\"block\"](t,o,r,this._cell),this._ctx.restore(),this._state.x=o,this._state.y=r,this._state.isFocused=!1,this._state.style=t.getOption(\"cursorStyle\"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},e.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},e.prototype._renderBarCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,i,t.getOption(\"cursorWidth\")),this._ctx.restore()},e.prototype._renderBlockCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,i,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(t,r,e,i),this._ctx.restore()},e.prototype._renderUnderlineCursor=function(t,e,i,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,i),this._ctx.restore()},e.prototype._renderBlurCursor=function(t,e,i,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,i,r.getWidth(),1),this._ctx.restore()},e}(n.BaseRenderLayer);e.CursorRenderLayer=l;var h=function(){function t(t,e){this._renderCallback=e,this.isCursorVisible=!0,c(t)&&this._restartInterval()}return Object.defineProperty(t.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.restartBlinkAnimation=function(t){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},t.prototype._restartInterval=function(t){var e=this;void 0===t&&(t=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);if(e._animationTimeRestarted=void 0,t>0)return void e._restartInterval(t)}e.isCursorVisible=!1,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0})),e._blinkInterval=window.setInterval((function(){if(e._animationTimeRestarted){var t=a-(Date.now()-e._animationTimeRestarted);return e._animationTimeRestarted=void 0,void e._restartInterval(t)}e.isCursorVisible=!e.isCursorVisible,e._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))}),a)}),t)},t.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},t.prototype.resume=function(t){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(t)},t}();function c(t){return document.activeElement===t.textarea&&document.hasFocus()}},733:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.LinkRenderLayer=void 0;var n=i(592),s=i(499),a=i(433),l=function(t){function e(e,i,r,o){var n=t.call(this,e,\"link\",i,!0,r)||this;return o.linkifier.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),o.linkifier2.onShowLinkUnderline((function(t){return n._onShowLinkUnderline(t)})),o.linkifier2.onHideLinkUnderline((function(t){return n._onHideLinkUnderline(t)})),n}return o(e,t),e.prototype.resize=function(e,i){t.prototype.resize.call(this,e,i),this._state=void 0},e.prototype.reset=function(t){this._clearCurrentLink()},e.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var t=this._state.y2-this._state.y1-1;t>0&&this._clearCells(0,this._state.y1+1,this._state.cols,t),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},e.prototype._onShowLinkUnderline=function(t){if(t.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==t.fg&&a.is256Color(t.fg)?this._ctx.fillStyle=this._colors.ansi[t.fg].css:this._ctx.fillStyle=this._colors.foreground.css,t.y1===t.y2)this._fillBottomLineAtCells(t.x1,t.y1,t.x2-t.x1);else{this._fillBottomLineAtCells(t.x1,t.y1,t.cols-t.x1);for(var e=t.y1+1;e{var i,r,o,n;function s(t){var e=t.toString(16);return e.length<2?\"0\"+e:e}function a(t,e){return t>>0}}(i=e.channels||(e.channels={})),(r=e.color||(e.color={})).blend=function(t,e){var r=(255&e.rgba)/255;if(1===r)return{css:e.css,rgba:e.rgba};var o=e.rgba>>24&255,n=e.rgba>>16&255,s=e.rgba>>8&255,a=t.rgba>>24&255,l=t.rgba>>16&255,h=t.rgba>>8&255,c=a+Math.round((o-a)*r),_=l+Math.round((n-l)*r),d=h+Math.round((s-h)*r);return{css:i.toCss(c,_,d),rgba:i.toRgba(c,_,d)}},r.isOpaque=function(t){return 255==(255&t.rgba)},r.ensureContrastRatio=function(t,e,i){var r=n.ensureContrastRatio(t.rgba,e.rgba,i);if(r)return n.toColor(r>>24&255,r>>16&255,r>>8&255)},r.opaque=function(t){var e=(255|t.rgba)>>>0,r=n.toChannels(e),o=r[0],s=r[1],a=r[2];return{css:i.toCss(o,s,a),rgba:e}},r.opacity=function(t,e){var r=Math.round(255*e),o=n.toChannels(t.rgba),s=o[0],a=o[1],l=o[2];return{css:i.toCss(s,a,l,r),rgba:i.toRgba(s,a,l,r)}},(e.css||(e.css={})).toColor=function(t){switch(t.length){case 7:return{css:t,rgba:(parseInt(t.slice(1),16)<<8|255)>>>0};case 9:return{css:t,rgba:parseInt(t.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(t){function e(t,e,i){var r=t/255,o=e/255,n=i/255;return.2126*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.7152*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))+.0722*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))}t.relativeLuminance=function(t){return e(t>>16&255,t>>8&255,255&t)},t.relativeLuminance2=e}(o=e.rgb||(e.rgb={})),function(t){function e(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_0||h>0||c>0);)l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),c-=Math.max(0,Math.ceil(.1*c)),_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));return(l<<24|h<<16|c<<8|255)>>>0}function r(t,e,i){for(var r=t>>24&255,n=t>>16&255,s=t>>8&255,l=e>>24&255,h=e>>16&255,c=e>>8&255,_=a(o.relativeLuminance2(l,c,h),o.relativeLuminance2(r,n,s));_>>0}t.ensureContrastRatio=function(t,i,n){var s=o.relativeLuminance(t>>8),l=o.relativeLuminance(i>>8);if(a(s,l)>24&255,t>>16&255,t>>8&255,255&t]},t.toColor=function(t,e,r){return{css:i.toCss(t,e,r),rgba:i.toRgba(t,e,r)}}}(n=e.rgba||(e.rgba={})),e.toPaddedHex=s,e.contrastRatio=a},499:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.CHAR_ATLAS_CELL_SPACING=e.DIM_OPACITY=e.INVERTED_DEFAULT_COLOR=void 0,e.INVERTED_DEFAULT_COLOR=257,e.DIM_OPACITY=.5,e.CHAR_ATLAS_CELL_SPACING=1},345:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.forwardEvent=e.EventEmitter=void 0;var i=function(){function t(){this._listeners=[],this._disposed=!1}return Object.defineProperty(t.prototype,\"event\",{get:function(){var t=this;return this._event||(this._event=function(e){return t._listeners.push(e),{dispose:function(){if(!t._disposed)for(var i=0;i{Object.defineProperty(e,\"__esModule\",{value:!0}),e.getDisposeArrayDisposable=e.disposeArray=e.Disposable=void 0;var i=function(){function t(){this._disposables=[],this._isDisposed=!1}return t.prototype.dispose=function(){this._isDisposed=!0;for(var t=0,e=this._disposables;t{function i(t,e,i,r){if(void 0===i&&(i=0),void 0===r&&(r=t.length),i>=t.length)return t;i=(t.length+i)%t.length,r=r>=t.length?t.length:(t.length+r)%t.length;for(var o=i;o{Object.defineProperty(e,\"__esModule\",{value:!0}),e.ExtendedAttrs=e.AttributeData=void 0;var i=function(){function t(){this.fg=0,this.bg=0,this.extended=new r}return t.toColorRGB=function(t){return[t>>>16&255,t>>>8&255,255&t]},t.fromColorRGB=function(t){return(255&t[0])<<16|(255&t[1])<<8|255&t[2]},t.prototype.clone=function(){var e=new t;return e.fg=this.fg,e.bg=this.bg,e.extended=this.extended.clone(),e},t.prototype.isInverse=function(){return 67108864&this.fg},t.prototype.isBold=function(){return 134217728&this.fg},t.prototype.isUnderline=function(){return 268435456&this.fg},t.prototype.isBlink=function(){return 536870912&this.fg},t.prototype.isInvisible=function(){return 1073741824&this.fg},t.prototype.isItalic=function(){return 67108864&this.bg},t.prototype.isDim=function(){return 134217728&this.bg},t.prototype.getFgColorMode=function(){return 50331648&this.fg},t.prototype.getBgColorMode=function(){return 50331648&this.bg},t.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},t.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},t.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},t.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},t.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},t.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},t.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},t.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},t.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},t.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},t.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},t.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},t.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},t.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},t.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},t.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},t.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},t}();e.AttributeData=i;var r=function(){function t(t,e){void 0===t&&(t=0),void 0===e&&(e=-1),this.underlineStyle=t,this.underlineColor=e}return t.prototype.clone=function(){return new t(this.underlineStyle,this.underlineColor)},t.prototype.isEmpty=function(){return 0===this.underlineStyle},t}();e.ExtendedAttrs=r},782:function(t,e,i){var r,o=this&&this.__extends||(r=function(t,e){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&(t[i]=e[i])})(t,e)},function(t,e){function i(){this.constructor=t}r(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)});Object.defineProperty(e,\"__esModule\",{value:!0}),e.CellData=void 0;var n=i(133),s=i(855),a=i(147),l=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.content=0,e.fg=0,e.bg=0,e.extended=new a.ExtendedAttrs,e.combinedData=\"\",e}return o(e,t),e.fromCharData=function(t){var i=new e;return i.setFromCharData(t),i},e.prototype.isCombined=function(){return 2097152&this.content},e.prototype.getWidth=function(){return this.content>>22},e.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?n.stringFromCodePoint(2097151&this.content):\"\"},e.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},e.prototype.setFromCharData=function(t){this.fg=t[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var e=!1;if(t[s.CHAR_DATA_CHAR_INDEX].length>2)e=!0;else if(2===t[s.CHAR_DATA_CHAR_INDEX].length){var i=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=i&&i<=56319){var r=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=r&&r<=57343?this.content=1024*(i-55296)+r-56320+65536|t[s.CHAR_DATA_WIDTH_INDEX]<<22:e=!0}else e=!0}else this.content=t[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[s.CHAR_DATA_WIDTH_INDEX]<<22;e&&(this.combinedData=t[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|t[s.CHAR_DATA_WIDTH_INDEX]<<22)},e.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},e}(a.AttributeData);e.CellData=l},855:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.WHITESPACE_CELL_CODE=e.WHITESPACE_CELL_WIDTH=e.WHITESPACE_CELL_CHAR=e.NULL_CELL_CODE=e.NULL_CELL_WIDTH=e.NULL_CELL_CHAR=e.CHAR_DATA_CODE_INDEX=e.CHAR_DATA_WIDTH_INDEX=e.CHAR_DATA_CHAR_INDEX=e.CHAR_DATA_ATTR_INDEX=e.DEFAULT_ATTR=e.DEFAULT_COLOR=void 0,e.DEFAULT_COLOR=256,e.DEFAULT_ATTR=256|e.DEFAULT_COLOR<<9,e.CHAR_DATA_ATTR_INDEX=0,e.CHAR_DATA_CHAR_INDEX=1,e.CHAR_DATA_WIDTH_INDEX=2,e.CHAR_DATA_CODE_INDEX=3,e.NULL_CELL_CHAR=\"\",e.NULL_CELL_WIDTH=1,e.NULL_CELL_CODE=0,e.WHITESPACE_CELL_CHAR=\" \",e.WHITESPACE_CELL_WIDTH=1,e.WHITESPACE_CELL_CODE=32},133:(t,e)=>{Object.defineProperty(e,\"__esModule\",{value:!0}),e.Utf8ToUtf32=e.StringToUtf32=e.utf32ToString=e.stringFromCodePoint=void 0,e.stringFromCodePoint=function(t){return t>65535?(t-=65536,String.fromCharCode(55296+(t>>10))+String.fromCharCode(t%1024+56320)):String.fromCharCode(t)},e.utf32ToString=function(t,e,i){void 0===e&&(e=0),void 0===i&&(i=t.length);for(var r=\"\",o=e;o65535?(n-=65536,r+=String.fromCharCode(55296+(n>>10))+String.fromCharCode(n%1024+56320)):r+=String.fromCharCode(n)}return r};var i=function(){function t(){this._interim=0}return t.prototype.clear=function(){this._interim=0},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r=0,o=0;this._interim&&(56320<=(a=t.charCodeAt(o++))&&a<=57343?e[r++]=1024*(this._interim-55296)+a-56320+65536:(e[r++]=this._interim,e[r++]=a),this._interim=0);for(var n=o;n=i)return this._interim=s,r;var a;56320<=(a=t.charCodeAt(n))&&a<=57343?e[r++]=1024*(s-55296)+a-56320+65536:(e[r++]=s,e[r++]=a)}else 65279!==s&&(e[r++]=s)}return r},t}();e.StringToUtf32=i;var r=function(){function t(){this.interim=new Uint8Array(3)}return t.prototype.clear=function(){this.interim.fill(0)},t.prototype.decode=function(t,e){var i=t.length;if(!i)return 0;var r,o,n,s,a=0,l=0,h=0;if(this.interim[0]){var c=!1,_=this.interim[0];_&=192==(224&_)?31:224==(240&_)?15:7;for(var d=0,u=void 0;(u=63&this.interim[++d])&&d<4;)_<<=6,_|=u;for(var f=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=f-d;h=i)return 0;if(128!=(192&(u=t[h++]))){h--,c=!0;break}this.interim[d++]=u,_<<=6,_|=63&u}c||(2===f?_<128?h--:e[a++]=_:3===f?_<2048||_>=55296&&_<=57343||65279===_||(e[a++]=_):_<65536||_>1114111||(e[a++]=_)),this.interim.fill(0)}for(var g=i-4,v=h;v=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if((l=(31&r)<<6|63&o)<128){v--;continue}e[a++]=l}else if(224==(240&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if((l=(15&r)<<12|(63&o)<<6|63&n)<2048||l>=55296&&l<=57343||65279===l)continue;e[a++]=l}else if(240==(248&r)){if(v>=i)return this.interim[0]=r,a;if(128!=(192&(o=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,a;if(128!=(192&(n=t[v++]))){v--;continue}if(v>=i)return this.interim[0]=r,this.interim[1]=o,this.interim[2]=n,a;if(128!=(192&(s=t[v++]))){v--;continue}if((l=(7&r)<<18|(63&o)<<12|(63&n)<<6|63&s)<65536||l>1114111)continue;e[a++]=l}}return a},t}();e.Utf8ToUtf32=r}},e={};return function i(r){if(e[r])return e[r].exports;var o=e[r]={exports:{}};return t[r].call(o.exports,o,o.exports,i),o.exports}(795)})()}));\n//# sourceMappingURL=xterm-addon-webgl.js.map","/*!\n * xterm (https://npmjs.com/package/xterm)\n * @license MIT\n * @version 4.12.0\n * ==xterm/LICENSE==\n * Copyright (c) 2017-2019, The xterm.js authors (https://github.com/xtermjs/xterm.js)\n * Copyright (c) 2014-2016, SourceLair Private Company (https://www.sourcelair.com)\n * Copyright (c) 2012-2013, Christopher Jeffrey (https://github.com/chjj/)\n * \n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n * \n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n * \n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n * THE SOFTWARE.\n */\n!function(e,t){if(\"object\"==typeof exports&&\"object\"==typeof module)module.exports=t();else if(\"function\"==typeof define&&define.amd)define([],t);else{var r=t();for(var i in r)(\"object\"==typeof exports?exports:e)[i]=r[i]}}(self,(function(){return(()=>{\"use strict\";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),f=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce=\"\",i._accessibilityTreeRoot=document.createElement(\"div\"),i._accessibilityTreeRoot.classList.add(\"xterm-accessibility\"),i._rowContainer=document.createElement(\"div\"),i._rowContainer.setAttribute(\"role\",\"list\"),i._rowContainer.classList.add(\"xterm-accessibility-tree\"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(\"focus\",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement(\"div\");return e.setAttribute(\"role\",\"listitem\"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,\"\\n\"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent=\"\",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=\" \":a.textContent=o,a.setAttribute(\"aria-posinset\",s),a.setAttribute(\"aria-setsize\",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\\r?\\n/g,\"\\r\")}function i(e,t){return t?\"\u001b[200~\"+e+\"\u001b[201~\":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=\"\"}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width=\"20px\",t.style.height=\"20px\",t.style.left=n+\"px\",t.style.top=o+\"px\",t.style.zIndex=\"1000\",t.focus()}Object.defineProperty(t,\"__esModule\",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData(\"text/plain\",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData(\"text/plain\"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?\"0\"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),f=l+Math.round((s-l)*i);return{css:r.toCss(h,u,f),rgba:r.toRgba(h,u,f)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error(\"css.toColor: Unsupported css format\")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor(\"#ffffff\"),s=i.css.toColor(\"#000000\"),a=i.css.toColor(\"#ffffff\"),c=i.css.toColor(\"#000000\"),l={css:\"rgba(255, 255, 255, 0.3)\",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor(\"#2e3436\"),i.css.toColor(\"#cc0000\"),i.css.toColor(\"#4e9a06\"),i.css.toColor(\"#c4a000\"),i.css.toColor(\"#3465a4\"),i.css.toColor(\"#75507b\"),i.css.toColor(\"#06989a\"),i.css.toColor(\"#d3d7cf\"),i.css.toColor(\"#555753\"),i.css.toColor(\"#ef2929\"),i.css.toColor(\"#8ae234\"),i.css.toColor(\"#fce94f\"),i.css.toColor(\"#729fcf\"),i.css.toColor(\"#ad7fa8\"),i.css.toColor(\"#34e2e2\"),i.css.toColor(\"#eeeeec\")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement(\"canvas\");h.width=1,h.height=1;var u=h.getContext(\"2d\");if(!u)throw new Error(\"Could not get rendering context\");this._ctx=u,this._ctx.globalCompositeOperation=\"copy\",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){\"minimumContrastRatio\"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,\"string\"!=typeof this._ctx.fillStyle)return console.warn(\"Color: \"+e+\" is invalid using fallback \"+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn(\"Color: \"+e+\" is using transparency, but allowTransparency is false. Using fallback \"+t.css+\".\"),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(\",\").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLinkTooltip\",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,f)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,f)},c=this;null!==(i=o.exec(t))&&\"break\"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn(\"Opening link blocked as opener could not be cleared\")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add(\"xterm-cursor-pointer\")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove(\"xterm-cursor-pointer\"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,\"currentLink\",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onShowLinkUnderline\",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onHideLinkUnderline\",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,\"mouseleave\",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,\"mousemove\",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,\"click\",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle(\"xterm-cursor-pointer\",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(\"xterm-cursor-pointer\")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(\"xterm-cursor-pointer\")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel=\"Terminal input\",t.tooMuchOutput=\"Too much output to announce, navigate to rows manually to read\"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,\"mousedown\",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener(\"mousemove\",this._mouseMoveListener),this._element.addEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.addEventListener(\"click\",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener(\"mousemove\",this._mouseMoveListener),this._element.removeEventListener(\"mouseleave\",this._mouseLeaveListener),this._element.removeEventListener(\"click\",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia(\"screen and (resolution: \"+window.devicePixelRatio+\"dppx)\"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),f=r(9312),_=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),b=r(1296),S=r(7399),m=r(8460),C=r(8437),w=r(5680),E=r(3230),L=r(4725),k=r(428),A=r(8934),R=r(6465),x=r(5114),T=r(8969),O=r(4774),D=r(4269),P=\"undefined\"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=_,r._keyDownHandled=!1,r._onCursorMove=new m.EventEmitter,r._onKey=new m.EventEmitter,r._onRender=new m.EventEmitter,r._onSelectionChange=new m.EventEmitter,r._onTitleChange=new m.EventEmitter,r._onBell=new m.EventEmitter,r._onFocus=new m.EventEmitter,r._onBlur=new m.EventEmitter,r._onA11yCharEmitter=new m.EventEmitter,r._onA11yTabEmitter=new m.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(R.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(m.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(m.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(m.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(m.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,\"options\",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onKey\",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRender\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBell\",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onFocus\",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBlur\",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.removeEventListener(\"mousemove\",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?(\"debug\"===e.optionsService.options.logLevel&&e._logService.debug(\"Binding to mouse events:\",e._coreMouseService.explainEvents(t)),e.element.classList.add(\"enable-mouse-events\"),e._selectionService.disable()):(e._logService.debug(\"Unbinding from mouse events.\"),e.element.classList.remove(\"enable-mouse-events\"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener(\"mousemove\",l),n.mousemove=l):(r.removeEventListener(\"mousemove\",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener(\"wheel\",s,{passive:!1}),n.wheel=s):(r.removeEventListener(\"wheel\",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener(\"mouseup\",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener(\"mousemove\",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,\"mousedown\",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener(\"mouseup\",n.mouseup),n.mousedrag&&e._document.addEventListener(\"mousemove\",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,\"wheel\",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?\"O\":\"[\")+(t.deltaY<0?\"A\":\"B\"),o=\"\",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,\"scroll\",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+\"px\")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return\"alt\"===r&&t.altKey||\"ctrl\"===r&&t.ctrlKey||\"shift\"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=\"\"}return Object.defineProperty(e.prototype,\"isComposing\",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent=\"\",this._dataAlreadySent=\"\",this._compositionView.classList.add(\"active\")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove(\"active\"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){if(t._isSendingComposition){t._isSendingComposition=!1;var e;r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0)}}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,\"\");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+\"px\",this._compositionView.style.top=n+\"px\",this._compositionView.style.height=i+\"px\",this._compositionView.style.lineHeight=i+\"px\",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+\"px\";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+\"px\",this._textarea.style.top=n+\"px\",this._textarea.style.width=Math.max(s.width,1)+\"px\",this._textarea.style.height=Math.max(s.height,1)+\"px\",this._textarea.style.lineHeight=s.height+\"px\"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?\"A\":\"B\"}function a(e,t,r,i,n,o){for(var s=e,a=t,c=\"\";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?\"O\":\"[\";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r=\"\",i=0;i0?i-o(s,i):t;var f=i,_=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?\"D\":\"C\",l(Math.abs(h-e),c(s,i));s=u>t?\"D\":\"C\";var f=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(f-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error(\"You must set the allowProposedApi option to true to use proposed API\")},Object.defineProperty(e.prototype,\"onCursorMove\",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onLineFeed\",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onSelectionChange\",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onData\",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBinary\",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTitleChange\",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onBell\",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onScroll\",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onKey\",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onRender\",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onResize\",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"element\",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"parser\",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new f(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"unicode\",{get:function(){return this._checkProposedApi(),new _(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"textarea\",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"rows\",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"cols\",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"buffer\",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"markers\",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write(\"\\r\\n\",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,\"strings\",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),f=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),_=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,\"versions\",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:\"\",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement(\"canvas\"),this._canvas.classList.add(\"xterm-\"+t+\"-layer\"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext(\"2d\",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+\"px\",this._canvas.style.height=e.canvasHeight+\"px\",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline=\"ideographic\",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline=\"ideographic\",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getBgColor()).join(\",\")+\")\";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle=\"rgb(\"+s.AttributeData.toColorRGB(e.getFgColor()).join(\",\")+\")\";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?\"italic\":\"\")+\" \"+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+\" \"+this._optionsService.options.fontSize*window.devicePixelRatio+\"px \"+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),f=this._resolveForegroundRgba(i,r,s,a),_=c.rgba.ensureContrastRatio(u,f,this._optionsService.options.minimumContrastRatio);if(_){var d={css:c.channels.toCss(_>>24&255,_>>16&255,_>>8&255),rgba:_};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,f=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,\"cursor\",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:\"\",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new _(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&\"block\"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||\"block\"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:\"\",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=f;var _=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,\"isPaused\",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,\"link\",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),f=r(4725),_=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,f){var _=e.call(this)||this;_._colors=t,_._screenElement=r,_._bufferService=s,_._charSizeService=u,_._optionsService=f,_._id=v++,_._onRequestRedraw=new p.EventEmitter;var d=_._optionsService.options.allowTransparency;return _._renderLayers=[o.createInstance(a.TextRenderLayer,_._screenElement,0,_._colors,d,_._id),o.createInstance(c.SelectionRenderLayer,_._screenElement,1,_._colors,_._id),o.createInstance(h.LinkRenderLayer,_._screenElement,2,_._colors,_._id,i,n),o.createInstance(l.CursorRenderLayer,_._screenElement,3,_._colors,_._id,_._onRequestRedraw)],_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._devicePixelRatio=window.devicePixelRatio,_._updateDimensions(),_.onOptionsChanged(),_}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error(\"value must not be falsy\");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,\"selection\",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var f=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,f,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),f=r(2585),_=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,\"text\",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont=\"\",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var f=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,f[0],f[1]),f[1]-f[0]),u=f[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,f.IBufferService),s(6,f.IOptionsService),s(7,_.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,\"__esModule\",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),f={css:\"rgba(0, 0, 0, 0)\",rgba:0};function _(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=_;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement(\"canvas\"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext(\"2d\",{alpha:!0}));var n=t.createElement(\"canvas\");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext(\"2d\",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=_(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,\"__esModule\",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),f=r(8460),_=r(4774),d=r(9631),p=\"xterm-dom-renderer-owner-\",v=\"xterm-fg-\",g=\"xterm-bg-\",y=\"xterm-focus\",b=1,S=function(e){function t(t,r,i,n,o,s,c,l,h,u){var f=e.call(this)||this;return f._colors=t,f._element=r,f._screenElement=i,f._viewportElement=n,f._linkifier=o,f._linkifier2=s,f._charSizeService=l,f._optionsService=h,f._bufferService=u,f._terminalClass=b++,f._rowElements=[],f._rowContainer=document.createElement(\"div\"),f._rowContainer.classList.add(\"xterm-rows\"),f._rowContainer.style.lineHeight=\"normal\",f._rowContainer.setAttribute(\"aria-hidden\",\"true\"),f._refreshRowElements(f._bufferService.cols,f._bufferService.rows),f._selectionContainer=document.createElement(\"div\"),f._selectionContainer.classList.add(\"xterm-selection\"),f._selectionContainer.setAttribute(\"aria-hidden\",\"true\"),f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._updateDimensions(),f._injectCss(),f._rowFactory=c.createInstance(a.DomRendererRowFactory,document,f._colors),f._element.classList.add(p+f._terminalClass),f._screenElement.appendChild(f._rowContainer),f._screenElement.appendChild(f._selectionContainer),f._linkifier.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f._linkifier2.onShowLinkUnderline((function(e){return f._onLinkHover(e)})),f._linkifier2.onHideLinkUnderline((function(e){return f._onLinkLeave(e)})),f}return n(t,e),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return(new f.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement(\"div\");return n.style.height=i*this.dimensions.actualCellHeight+\"px\",n.style.top=e*this.dimensions.actualCellHeight+\"px\",n.style.left=t*this.dimensions.actualCellWidth+\"px\",n.style.width=this.dimensions.actualCellWidth*(r-t)+\"px\",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=S},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS=\"xterm-bold\",t.DIM_CLASS=\"xterm-dim\",t.ITALIC_CLASS=\"xterm-italic\",t.UNDERLINE_CLASS=\"xterm-underline\",t.CURSOR_CLASS=\"xterm-cursor\",t.CURSOR_BLINK_CLASS=\"xterm-cursor-blink\",t.CURSOR_STYLE_BLOCK_CLASS=\"xterm-cursor-block\",t.CURSOR_STYLE_BAR_CLASS=\"xterm-cursor-bar\",t.CURSOR_STYLE_UNDERLINE_CLASS=\"xterm-cursor-underline\";var f=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,f){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,f)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){b=!0;var C=p.shift();m=new u.JoinedCellData(this._workCell,e.translateToString(!0,C[0],C[1]),C[1]-C[0]),S=C[1]-1,y=m.getWidth()}var w=this._document.createElement(\"span\");if(y>1&&(w.style.width=h*y+\"px\"),b&&(w.style.display=\"inline\",a>=g&&a<=S&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case\"bar\":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case\"underline\":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}m.isBold()&&w.classList.add(t.BOLD_CLASS),m.isItalic()&&w.classList.add(t.ITALIC_CLASS),m.isDim()&&w.classList.add(t.DIM_CLASS),m.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),m.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=m.getChars()||s.WHITESPACE_CELL_CHAR;var E=m.getFgColor(),L=m.getFgColorMode(),k=m.getBgColor(),A=m.getBgColorMode(),R=!!m.isInverse();if(R){var x=E;E=k,k=x;var T=L;L=A,A=T}switch(L){case 16777216:case 33554432:m.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add(\"xterm-fg-\"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,\"color:#\"+_(E.toString(16),\"0\",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||R&&w.classList.add(\"xterm-fg-\"+o.INVERTED_DEFAULT_COLOR)}switch(A){case 16777216:case 33554432:w.classList.add(\"xterm-bg-\"+k);break;case 50331648:this._addStyle(w,\"background-color:#\"+_(k.toString(16),\"0\",6));break;case 0:default:R&&w.classList.add(\"xterm-bg-\"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=S}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,\"color:\"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute(\"style\",\"\"+(e.getAttribute(\"style\")||\"\")+t+\";\")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function _(e,t,r){for(;e.length{Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,\"finalSelectionStart\",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"finalSelectionEnd\",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,\"hasValidSize\",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onCharSizeChange\",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement(\"span\"),this._measureElement.classList.add(\"xterm-char-measure-element\"),this._measureElement.textContent=\"W\",this._measureElement.setAttribute(\"aria-hidden\",\"true\"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+\"px\";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData=\"\",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error(\"not implemented\")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var f=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),f=0;f1)for(u=this._getJoinedRanges(i,s,o,t,n),f=0;f{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,\"isFocused\",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),f=r(2585),_=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,\"resize\",(function(){return l.onDevicePixelRatioChange()}))),\"IntersectionObserver\"in window){var f=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});f.observe(i),l.register({dispose:function(){return f.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,\"onDimensionsChange\",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRenderedBufferChange\",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRefreshRequest\",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"dimensions\",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,f.IOptionsService),s(4,_.ICharSizeService),s(5,f.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),f=r(2585),_=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,\"g\"),b=function(e){function t(t,r,i,n,o,s,a,u){var f=e.call(this)||this;return f._element=t,f._screenElement=r,f._linkifier=i,f._bufferService=n,f._coreService=o,f._mouseService=s,f._optionsService=a,f._renderService=u,f._dragScrollAmount=0,f._enabled=!0,f._workCell=new l.CellData,f._mouseDownTimeStamp=0,f._oldHasSelection=!1,f._oldSelectionStart=void 0,f._oldSelectionEnd=void 0,f._onLinuxMouseSelection=f.register(new h.EventEmitter),f._onRedrawRequest=f.register(new h.EventEmitter),f._onSelectionChange=f.register(new h.EventEmitter),f._onRequestScrollLines=f.register(new h.EventEmitter),f._mouseMoveListener=function(e){return f._onMouseMove(e)},f._mouseUpListener=function(e){return f._onMouseUp(e)},f._coreService.onUserInput((function(){f.hasSelection&&f.clearSelection()})),f._trimListener=f._bufferService.buffer.lines.onTrim((function(e){return f._onTrim(e)})),f.register(f._bufferService.buffers.onBufferActivate((function(e){return f._onBufferActivate(e)}))),f.enable(),f._model=new c.SelectionModel(f._bufferService),f._activeSelectionMode=0,f}return n(t,e),Object.defineProperty(t.prototype,\"onLinuxMouseSelection\",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRedraw\",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onSelectionChange\",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestScrollLines\",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,\"selectionStart\",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionEnd\",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"hasSelection\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"selectionText\",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return\"\";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return\"\";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y,\" \")})).join(a.isWindows?\"\\r\\n\":\"\\n\")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=_.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(\"mouseup\",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(\"mousemove\",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(\"mouseup\",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption(\"altClickMovesCursor\")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,f=0,_=0;if(\" \"===s.charAt(a)){for(;a>0&&\" \"===s.charAt(a-1);)a--;for(;c1&&(_+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(f+=g-1,a-=g-1),a--,d--}for(;p1&&(_+=y-1,c+=y-1),c++,p++}}c++;var b=a+l-h+f,S=Math.min(this._bufferService.cols,c-a+h+u-f-_);if(t||\"\"!==s.slice(a,c).trim()){if(r&&0===b&&32!==o.getCodePoint(0)){var m=n.lines.get(e[1]-1);if(m&&o.isWrapped&&32!==m.getCodePoint(this._bufferService.cols-1)){var C=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(C){var w=this._bufferService.cols-C.start;b-=w,S+=w}}}if(i&&b+S===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var L=this._getWordAt([0,e[1]+1],!1,!1,!0);L&&(S+=L.length)}}return{start:b,length:S}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,f.IBufferService),s(4,f.ICoreService),s(5,u.IMouseService),s(6,f.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=b},4725:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator(\"CharSizeService\"),t.ICoreBrowserService=i.createDecorator(\"CoreBrowserService\"),t.IMouseService=i.createDecorator(\"MouseService\"),t.IRenderService=i.createDecorator(\"RenderService\"),t.ISelectionService=i.createDecorator(\"SelectionService\"),t.ISoundService=i.createDecorator(\"SoundService\"),t.ICharacterJoinerService=i.createDecorator(\"CharacterJoinerService\")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,\"audioContext\",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn(\"Web Audio API is not supported by this browser. Consider upgrading to the latest version\"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,\"onDelete\",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onInsert\",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"onTrim\",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"maxLength\",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error(\"start argument out of range\");if(e+r<0)throw new Error(\"Cannot shift elements in list beyond index 0\");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,\"__esModule\",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),\"object\"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),f=r(8460),_=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),b=r(5981),S=!1,m=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new f.EventEmitter,r._onData=new f.EventEmitter,r._onLineFeed=new f.EventEmitter,r._onResize=new f.EventEmitter,r._onScroll=new f.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(_.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(f.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(f.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(f.forwardEvent(r._coreService.onData,r._onData)),r.register(f.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new b.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new f.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"cols\",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"rows\",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"buffers\",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!S&&(this._logService.warn(\"writeSync is unreliable and will be removed soon.\"),S=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case\"scrollback\":this.buffers.resize(this.cols,this.rows);break;case\"windowsMode\":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:\"H\"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,\"event\",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]=\"GET_WIN_SIZE_PIXELS\",e[e.GET_CELL_SIZE_PIXELS=1]=\"GET_CELL_SIZE_PIXELS\"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'\"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0\"q'+s.C0.ESC+\"\\\\\");break;case'\"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1\"p'+s.C0.ESC+\"\\\\\");break;case\"r\":var r=this._bufferService.buffer.scrollTop+1+\";\"+(this._bufferService.buffer.scrollBottom+1)+\"r\";this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+r+s.C0.ESC+\"\\\\\");break;case\"m\":this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r0m\"+s.C0.ESC+\"\\\\\");break;case\" q\":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+\"P1$r\"+i+\" q\"+s.C0.ESC+\"\\\\\");break;default:this._logService.debug(\"Unknown DCS $q %s\",t),this._coreService.triggerDataEvent(s.C0.ESC+\"P0$r\"+s.C0.ESC+\"\\\\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle=\"\",g._iconName=\"\",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=f.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new _.EventEmitter,g._onRequestRefreshRows=new _.EventEmitter,g._onRequestReset=new _.EventEmitter,g._onRequestSyncScrollBar=new _.EventEmitter,g._onRequestWindowsOptionsReport=new _.EventEmitter,g._onA11yChar=new _.EventEmitter,g._onA11yTab=new _.EventEmitter,g._onCursorMove=new _.EventEmitter,g._onLineFeed=new _.EventEmitter,g._onScroll=new _.EventEmitter,g._onTitleChange=new _.EventEmitter,g._onAnsiColorChange=new _.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug(\"Unknown CSI code: \",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug(\"Unknown ESC code: \",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug(\"Unknown EXECUTE code: \",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug(\"Unknown OSC code: \",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){\"HOOK\"===t&&(r=r.toArray()),g._logService.debug(\"Unknown DCS code: \",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:\"@\"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"@\"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:\"A\"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"A\"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:\"B\"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:\"C\"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:\"D\"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:\"E\"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:\"F\"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:\"G\"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:\"H\"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:\"I\"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"J\"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"K\"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:\"L\"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:\"M\"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:\"P\"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:\"S\"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:\"T\"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:\"X\"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:\"Z\"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:\"`\"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:\"a\"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:\"b\"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:\"c\"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:\">\",final:\"c\"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:\"d\"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:\"e\"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:\"f\"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:\"g\"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:\"h\"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"h\"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:\"l\"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"l\"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:\"m\"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:\"n\"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:\"?\",final:\"n\"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:\"!\",final:\"p\"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:\" \",final:\"q\"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:\"r\"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:\"s\"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:\"t\"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:\"u\"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"}\"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:\"'\",final:\"~\"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:\"7\"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:\"8\"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:\"D\"},(function(){return g.index()})),g._parser.registerEscHandler({final:\"E\"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:\"H\"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:\"M\"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:\"=\"},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:\">\"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:\"c\"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:\"n\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"o\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"|\"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:\"}\"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:\"~\"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:\"%\",final:\"@\"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:\"%\",final:\"G\"},(function(){return g.selectDefaultCharset()}));var b=function(e){S._parser.registerEscHandler({intermediates:\"(\",final:e},(function(){return g.selectCharset(\"(\"+e)})),S._parser.registerEscHandler({intermediates:\")\",final:e},(function(){return g.selectCharset(\")\"+e)})),S._parser.registerEscHandler({intermediates:\"*\",final:e},(function(){return g.selectCharset(\"*\"+e)})),S._parser.registerEscHandler({intermediates:\"+\",final:e},(function(){return g.selectCharset(\"+\"+e)})),S._parser.registerEscHandler({intermediates:\"-\",final:e},(function(){return g.selectCharset(\"-\"+e)})),S._parser.registerEscHandler({intermediates:\".\",final:e},(function(){return g.selectCharset(\".\"+e)})),S._parser.registerEscHandler({intermediates:\"/\",final:e},(function(){return g.selectCharset(\"/\"+e)}))},S=this;for(var m in a.CHARSETS)b(m);return g._parser.registerEscHandler({intermediates:\"#\",final:\"8\"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error(\"Parsing error: \",e),e})),g._parser.registerDcsHandler({intermediates:\"$\",final:\"q\"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,\"onRequestBell\",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestRefreshRows\",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestReset\",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestSyncScrollBar\",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onRequestWindowsOptionsReport\",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yChar\",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onA11yTab\",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onCursorMove\",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onLineFeed\",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onTitleChange\",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onAnsiColorChange\",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t(\"#SLOW_TIMEOUT\")}),5e3)}))]).catch((function(e){if(\"#SLOW_TIMEOUT\"!==e)throw e;console.warn(\"async parser handler taking longer than 5000 ms\")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>m&&(s=this._parseStack.position+m)}if(this._logService.debug(\"parsing data\",e),this._parseBuffer.lengthm)for(var c=s;c0&&2===_.getWidth(o.x-1)&&_.setCellFromCodePoint(o.x-1,0,1,f.fg,f.bg,f.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),_=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(_.insertCells(o.x,n,o.getNullCell(f),f),2===_.getWidth(c-1)&&_.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,f.fg,f.bg,f.extended)),_.setCellFromCodePoint(o.x++,i,n,f.fg,f.bg,f.extended),n>0)for(;--n;)_.setCellFromCodePoint(o.x++,0,0,f.fg,f.bg,f.extended)}else _.getWidth(o.x-1)?_.addCodepointToCell(o.x-1,i):_.addCodepointToCell(o.x-2,i)}r-t>0&&(_.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===_.getWidth(o.x)&&!_.hasContent(o.x)&&_.setCellFromCodePoint(o.x,0,1,f.fg,f.bg,f.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return\"t\"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!C(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new b.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is(\"xterm\")||this._is(\"rxvt-unicode\")||this._is(\"screen\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[?1;2c\"):this._is(\"linux\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[?6c\")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is(\"xterm\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>0;276;0c\"):this._is(\"rxvt-unicode\")?this._coreService.triggerDataEvent(s.C0.ESC+\"[>85;95;0c\"):this._is(\"linux\")?this._coreService.triggerDataEvent(e.params[0]+\"c\"):this._is(\"screen\")&&this._coreService.triggerDataEvent(s.C0.ESC+\"[>83;40003;0c\")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+\"\").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=f.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=f.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=f.DEFAULT_ATTR_DATA.fg,i.bg=f.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&f.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&f.DEFAULT_ATTR_DATA.bg):this._logService.debug(\"Unknown SGR attribute: %d.\",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+\"[0n\");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[\"+t+\";\"+r+\"R\")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+\"[?\"+t+\";\"+r+\"R\")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle=\"block\";break;case 3:case 4:this._optionsService.options.cursorStyle=\"underline\";break;case 5:case 6:this._optionsService.options.cursorStyle=\"bar\"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!C(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+\"[8;\"+this._bufferService.rows+\";\"+this._bufferService.cols+\"t\");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\\d+);rgb:([\\da-f]{2})\\/([\\da-f]{2})\\/([\\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn(\"Expected format ;rgb:// but got data: \"+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug(\"Serial port requested application keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug(\"Switching back to normal keypad.\"),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):(\"/\"===e[0]||this._charsetService.setgCharset(S[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=f.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=f.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|\"E\".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,\"__esModule\",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r=\"undefined\"==typeof navigator,i=r?\"node\":navigator.userAgent,n=r?\"node\":navigator.platform;t.isFirefox=i.includes(\"Firefox\"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=[\"Macintosh\",\"MacIntel\",\"MacPPC\",\"Mac68K\"].includes(n),t.isIpad=\"iPad\"===n,t.isIphone=\"iPhone\"===n,t.isWindows=[\"Windows\",\"Win16\",\"Win32\",\"WinCE\"].includes(n),t.isLinux=n.indexOf(\"Linux\")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,\"hasScrollback\",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"isCursorInViewport\",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=_.length-1,b=_[y];0===b&&(b=_[--y]);for(var S=l.length-d-1,m=f;S>=0;){var C=Math.min(m,b);if(l[y].copyCellsFrom(l[S],m-C,b-C,C,!0),0==(b-=C)&&(b=_[--y]),0==(m-=C)){S--;var w=Math.max(S,0);m=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var L=[],k=[];for(v=0;v=0;v--)if(T&&T.start>R+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,L.push({index:R+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++x]}else this.lines.set(v,k[R--]);var P=0;for(v=L.length-1;v>=0;v--)L[v].index+=P,this.lines.onInsertEmitter.fire(L[v]),P+=L[v].amount;var M=Math.max(0,A+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new f(this,e,t,r,i,n)},e}();t.Buffer=u;var f=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t=\"\",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=f},8437:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):\"\"},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o=\"\";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error(\"Buffer range end (\"+e.end.x+\", \"+e.end.y+\") cannot be before start (\"+e.start.x+\", \"+e.start.y+\")\");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,\"__esModule\",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(S>u||0===h[S].getTrimmedLength());S--)b++;b>0&&(s.push(a+h.length-b),s.push(b)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,\"onBufferActivate\",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,\"alt\",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"active\",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"normal\",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData=\"\",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):\"\"},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR=\"\",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=\" \",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onDispose\",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={\"`\":\"◆\",a:\"▒\",b:\"␉\",c:\"␌\",d:\"␍\",e:\"␊\",f:\"°\",g:\"±\",h:\"␤\",i:\"␋\",j:\"┘\",k:\"┐\",l:\"┌\",m:\"└\",n:\"┼\",o:\"⎺\",p:\"⎻\",q:\"─\",r:\"⎼\",s:\"⎽\",t:\"├\",u:\"┤\",v:\"┴\",w:\"┬\",x:\"│\",y:\"≤\",z:\"≥\",\"{\":\"π\",\"|\":\"≠\",\"}\":\"£\",\"~\":\"·\"},t.CHARSETS.A={\"#\":\"£\"},t.CHARSETS.B=void 0,t.CHARSETS[4]={\"#\":\"£\",\"@\":\"¾\",\"[\":\"ij\",\"\\\\\":\"½\",\"]\":\"|\",\"{\":\"¨\",\"|\":\"f\",\"}\":\"¼\",\"~\":\"´\"},t.CHARSETS.C=t.CHARSETS[5]={\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.R={\"#\":\"£\",\"@\":\"à\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"§\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"¨\"},t.CHARSETS.Q={\"@\":\"à\",\"[\":\"â\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",\"`\":\"ô\",\"{\":\"é\",\"|\":\"ù\",\"}\":\"è\",\"~\":\"û\"},t.CHARSETS.K={\"@\":\"§\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Ü\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"ß\"},t.CHARSETS.Y={\"#\":\"£\",\"@\":\"§\",\"[\":\"°\",\"\\\\\":\"ç\",\"]\":\"é\",\"`\":\"ù\",\"{\":\"à\",\"|\":\"ò\",\"}\":\"è\",\"~\":\"ì\"},t.CHARSETS.E=t.CHARSETS[6]={\"@\":\"Ä\",\"[\":\"Æ\",\"\\\\\":\"Ø\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"ä\",\"{\":\"æ\",\"|\":\"ø\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS.Z={\"#\":\"£\",\"@\":\"§\",\"[\":\"¡\",\"\\\\\":\"Ñ\",\"]\":\"¿\",\"{\":\"°\",\"|\":\"ñ\",\"}\":\"ç\"},t.CHARSETS.H=t.CHARSETS[7]={\"@\":\"É\",\"[\":\"Ä\",\"\\\\\":\"Ö\",\"]\":\"Å\",\"^\":\"Ü\",\"`\":\"é\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"å\",\"~\":\"ü\"},t.CHARSETS[\"=\"]={\"#\":\"ù\",\"@\":\"à\",\"[\":\"é\",\"\\\\\":\"ç\",\"]\":\"ê\",\"^\":\"î\",_:\"è\",\"`\":\"ô\",\"{\":\"ä\",\"|\":\"ö\",\"}\":\"ü\",\"~\":\"û\"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,\"__esModule\",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL=\"\\0\",i.SOH=\"\u0001\",i.STX=\"\u0002\",i.ETX=\"\u0003\",i.EOT=\"\u0004\",i.ENQ=\"\u0005\",i.ACK=\"\u0006\",i.BEL=\"\u0007\",i.BS=\"\\b\",i.HT=\"\\t\",i.LF=\"\\n\",i.VT=\"\\v\",i.FF=\"\\f\",i.CR=\"\\r\",i.SO=\"\u000e\",i.SI=\"\u000f\",i.DLE=\"\u0010\",i.DC1=\"\u0011\",i.DC2=\"\u0012\",i.DC3=\"\u0013\",i.DC4=\"\u0014\",i.NAK=\"\u0015\",i.SYN=\"\u0016\",i.ETB=\"\u0017\",i.CAN=\"\u0018\",i.EM=\"\u0019\",i.SUB=\"\u001a\",i.ESC=\"\u001b\",i.FS=\"\u001c\",i.GS=\"\u001d\",i.RS=\"\u001e\",i.US=\"\u001f\",i.SP=\" \",i.DEL=\"\",(r=t.C1||(t.C1={})).PAD=\"€\",r.HOP=\"\",r.BPH=\"‚\",r.NBH=\"ƒ\",r.IND=\"„\",r.NEL=\"…\",r.SSA=\"†\",r.ESA=\"‡\",r.HTS=\"ˆ\",r.HTJ=\"‰\",r.VTS=\"Š\",r.PLD=\"‹\",r.PLU=\"Œ\",r.RI=\"\",r.SS2=\"Ž\",r.SS3=\"\",r.DCS=\"\",r.PU1=\"‘\",r.PU2=\"’\",r.STS=\"“\",r.CCH=\"”\",r.MW=\"•\",r.SPA=\"–\",r.EPA=\"—\",r.SOS=\"˜\",r.SGCI=\"™\",r.SCI=\"š\",r.CSI=\"›\",r.ST=\"œ\",r.OSC=\"\",r.PM=\"ž\",r.APC=\"Ÿ\"},7399:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:[\"0\",\")\"],49:[\"1\",\"!\"],50:[\"2\",\"@\"],51:[\"3\",\"#\"],52:[\"4\",\"$\"],53:[\"5\",\"%\"],54:[\"6\",\"^\"],55:[\"7\",\"&\"],56:[\"8\",\"*\"],57:[\"9\",\"(\"],186:[\";\",\":\"],187:[\"=\",\"+\"],188:[\",\",\"<\"],189:[\"-\",\"_\"],190:[\".\",\">\"],191:[\"/\",\"?\"],192:[\"`\",\"~\"],219:[\"[\",\"{\"],220:[\"\\\\\",\"|\"],221:[\"]\",\"}\"],222:[\"'\",'\"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:\"UIKeyInputUpArrow\"===e.key?s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\":\"UIKeyInputLeftArrow\"===e.key?s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\":\"UIKeyInputRightArrow\"===e.key?s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\":\"UIKeyInputDownArrow\"===e.key&&(s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+\"[Z\";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"D\",s.key===i.C0.ESC+\"[1;3D\"&&(s.key=i.C0.ESC+(r?\"b\":\"[1;5D\"))):s.key=t?i.C0.ESC+\"OD\":i.C0.ESC+\"[D\";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"C\",s.key===i.C0.ESC+\"[1;3C\"&&(s.key=i.C0.ESC+(r?\"f\":\"[1;5C\"))):s.key=t?i.C0.ESC+\"OC\":i.C0.ESC+\"[C\";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"A\",r||s.key!==i.C0.ESC+\"[1;3A\"||(s.key=i.C0.ESC+\"[1;5A\")):s.key=t?i.C0.ESC+\"OA\":i.C0.ESC+\"[A\";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+\"[1;\"+(a+1)+\"B\",r||s.key!==i.C0.ESC+\"[1;3B\"||(s.key=i.C0.ESC+\"[1;5B\")):s.key=t?i.C0.ESC+\"OB\":i.C0.ESC+\"[B\";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+\"[2~\");break;case 46:s.key=a?i.C0.ESC+\"[3;\"+(a+1)+\"~\":i.C0.ESC+\"[3~\";break;case 36:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"H\":t?i.C0.ESC+\"OH\":i.C0.ESC+\"[H\";break;case 35:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"F\":t?i.C0.ESC+\"OF\":i.C0.ESC+\"[F\";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+\"[5~\";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+\"[6~\";break;case 112:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"P\":i.C0.ESC+\"OP\";break;case 113:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"Q\":i.C0.ESC+\"OQ\";break;case 114:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"R\":i.C0.ESC+\"OR\";break;case 115:s.key=a?i.C0.ESC+\"[1;\"+(a+1)+\"S\":i.C0.ESC+\"OS\";break;case 116:s.key=a?i.C0.ESC+\"[15;\"+(a+1)+\"~\":i.C0.ESC+\"[15~\";break;case 117:s.key=a?i.C0.ESC+\"[17;\"+(a+1)+\"~\":i.C0.ESC+\"[17~\";break;case 118:s.key=a?i.C0.ESC+\"[18;\"+(a+1)+\"~\":i.C0.ESC+\"[18~\";break;case 119:s.key=a?i.C0.ESC+\"[19;\"+(a+1)+\"~\":i.C0.ESC+\"[19~\";break;case 120:s.key=a?i.C0.ESC+\"[20;\"+(a+1)+\"~\":i.C0.ESC+\"[20~\";break;case 121:s.key=a?i.C0.ESC+\"[21;\"+(a+1)+\"~\":i.C0.ESC+\"[21~\";break;case 122:s.key=a?i.C0.ESC+\"[23;\"+(a+1)+\"~\":i.C0.ESC+\"[23~\";break;case 123:s.key=a?i.C0.ESC+\"[24;\"+(a+1)+\"~\":i.C0.ESC+\"[24~\";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&\"_\"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i=\"\",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var f=0,_=void 0;(_=63&this.interim[++f])&&f<4;)u<<=6,u|=_;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-f;l=r)return 0;if(128!=(192&(_=e[l++]))){l--,h=!0;break}this.interim[f++]=_,u<<=6,u|=63&_}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version=\"6\",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.WriteBuffer=void 0;var r=\"undefined\"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error(\"write data discarded, use flow control to avoid losing data\");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,\"HOOK\",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,\"PUT\",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,\"UNHOOK\",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data=\"\",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data=\"\",t._hitLimit=!1,e}));return this._params=c,this._data=\"\",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error(\"only one byte as prefix supported\");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error(\"prefix must be in range 0x3c .. 0x3f\")}if(e.intermediates){if(e.intermediates.length>2)throw new Error(\"only two bytes as intermediates are supported\");for(var i=0;in||n>47)throw new Error(\"intermediate must be in range 0x20 .. 0x2f\");r<<=8,r|=n}}if(1!==e.final.length)throw new Error(\"final must be a single byte\");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error(\"final must be in range \"+t[0]+\" .. \"+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join(\"\")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error(\"improper continuation due to previous async handler, giving up parsing\");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[f](this._params));f--)if(i instanceof Promise)return this._preserveStack(3,a,f,o,l),i;f<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var _=this._escHandlers[this._collect<<8|n],d=_?_.length-1:-1;d>=0&&!0!==(i=_[d]());d--)if(i instanceof Promise)return this._preserveStack(4,_,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,\"START\")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,\"PUT\",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,\"END\",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data=\"\",this._hitLimit=!1}return e.prototype.start=function(){this._data=\"\",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data=\"\",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data=\"\",t._hitLimit=!1,e}));return this._data=\"\",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error(\"maxSubParamsLength must not be greater than 256\");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error(\"values lesser than -1 are not allowed\");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,\"onResize\",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"onScroll\",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,\"buffer\",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?\"\":\"\u001b[M\"+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?\"m\":\"M\";return\"\u001b[<\"+c(e,!0)+\";\"+e.col+\";\"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol=\"\",this._activeEncoding=\"\",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&(\"DEFAULT\"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),f=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),_=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(f),o}return n(t,e),Object.defineProperty(t.prototype,\"onData\",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onUserInput\",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,\"onBinary\",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(f)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary \"'+e+'\"',(function(){return e.split(\"\").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=_},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,\"__esModule\",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,\"start\",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"end\",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error(\"[createInstance] First service dependency of \"+e.name+\" at position \"+(u+1)+\" conflicts with \"+t.length+\" static arguments\");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,\"__esModule\",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND=\"data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq\",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:\"block\",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:\"none\",drawBoldTextInBrightColors:!0,fastScrollModifier:\"alt\",fastScrollSensitivity:5,fontFamily:\"courier-new, courier, monospace\",fontSize:15,fontWeight:\"normal\",fontWeightBold:\"bold\",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:\"info\",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:\"canvas\",windowOptions:{},windowsMode:!1,wordSeparator:\" ()[]{}',\\\"`\",altClickMovesCursor:!0,convertEol:!1,termName:\"xterm\",cancelEvents:!1});var s=[\"normal\",\"bold\",\"100\",\"200\",\"300\",\"400\",\"500\",\"600\",\"700\",\"800\",\"900\"],a=[\"cols\",\"rows\"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,\"__esModule\",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error(\"@IServiceName-decorator can only be used to decorate a parameter\");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator(\"BufferService\"),t.ICoreMouseService=n.createDecorator(\"CoreMouseService\"),t.ICoreService=n.createDecorator(\"CoreService\"),t.ICharsetService=n.createDecorator(\"CharsetService\"),t.IDirtyRowService=n.createDecorator(\"DirtyRowService\"),t.IInstantiationService=n.createDecorator(\"InstantiationService\"),t.ILogService=n.createDecorator(\"LogService\"),t.IOptionsService=n.createDecorator(\"OptionsService\"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]=\"DEBUG\",i[i.INFO=1]=\"INFO\",i[i.WARN=2]=\"WARN\",i[i.ERROR=3]=\"ERROR\",i[i.OFF=4]=\"OFF\",t.IUnicodeService=n.createDecorator(\"UnicodeService\")},1480:(e,t,r)=>{Object.defineProperty(t,\"__esModule\",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active=\"\",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,\"onChange\",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"versions\",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,\"activeVersion\",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version \"'+e+'\"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()}));\n//# sourceMappingURL=xterm.js.map","\"use strict\";\n\nvar Zmodem = module.exports;\n\nconst HEX_DIGITS = [ 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 97, 98, 99, 100, 101, 102 ];\n\nconst HEX_OCTET_VALUE = {};\nfor (var hd=0; hd 0xffff) throw( \"Number cannot exceed 16 bits: \" + number )\n\n return [ number >> 8, number & 0xff ];\n },\n\n /**\n * Return an array with the given number as 4 little-endian bytes.\n *\n * @param {number} number - The number to encode.\n *\n * @returns {number[]} The octet values.\n */\n pack_u32_le: function pack_u32_le(number) {\n //Can’t bit-shift because that runs into JS’s bit-shift problem.\n //(See _updcrc32() for an example.)\n var high_bytes = number / 65536; //fraction is ok\n\n //a little-endian 4-byte sequence\n return [\n number & 0xff,\n (number & 65535) >> 8,\n high_bytes & 0xff,\n high_bytes >> 8,\n ];\n },\n\n /**\n * The inverse of pack_u16_be() - i.e., take in 2 octet values\n * and parse them as an unsigned, 2-byte big-endian number.\n *\n * @param {number[]} octets - The octet values (2 of them).\n *\n * @returns {number} The decoded number.\n */\n unpack_u16_be: function unpack_u16_be(bytes_arr) {\n return (bytes_arr[0] << 8) + bytes_arr[1];\n },\n\n /**\n * The inverse of pack_u32_le() - i.e., take in a 4-byte sequence\n * and parse it as an unsigned, 4-byte little-endian number.\n *\n * @param {number[]} octets - The octet values (4 of them).\n *\n * @returns {number} The decoded number.\n */\n unpack_u32_le: function unpack_u32_le(octets) {\n // … (254 << 24 is -33554432, according to JavaScript)\n return octets[0] + (octets[1] << 8) + (octets[2] << 16) + (octets[3] * 16777216);\n },\n\n /**\n * Encode a series of octet values to be the octet values that\n * correspond to the ASCII hex characters for each octet. The\n * returned array is suitable for use as binary data.\n *\n * For example:\n *\n * Original Hex Returned\n * 254 fe 102, 101\n * 12 0c 48, 99\n * 129 81 56, 49\n *\n * @param {number[]} octets - The original octet values.\n *\n * @returns {number[]} The octet values that correspond to an ASCII\n * representation of the given octets.\n */\n octets_to_hex: function octets_to_hex(octets) {\n var hex = [];\n for (var o=0; o> 4 ],\n HEX_DIGITS[ octets[o] & 0x0f ]\n );\n }\n\n return hex;\n },\n\n /**\n * The inverse of octets_to_hex(): takes an array\n * of hex octet pairs and returns their octet values.\n *\n * @param {number[]} hex_octets - The hex octet values.\n *\n * @returns {number[]} The parsed octet values.\n */\n parse_hex_octets: function parse_hex_octets(hex_octets) {\n var octets = new Array(hex_octets.length / 2);\n\n for (var i=0; i> 8) & 255)]\n ^ ((255 & crc) << 8)\n ^ cp\n );\n}\n\nfunction __verify(expect, got) {\n var err;\n\n if ( expect.join() !== got.join() ) {\n throw new Zmodem.Error(\"crc\", got, expect);\n }\n}\n\n//TODO: use external implementation(s)\nZmodem.CRC = {\n\n //https://www.lammertbies.nl/comm/info/crc-calculation.html\n //CRC-CCITT (XModem)\n\n /**\n * Deduce a given set of octet values’ CRC16, as per the CRC16\n * variant that ZMODEM uses (CRC-CCITT/XModem).\n *\n * @param {Array} octets - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @returns {Array} crc - The CRC, expressed as an array of octet values.\n */\n crc16: function crc16(octet_nums) {\n var crc = octet_nums[0];\n for (var b=1; b>> 0 //bit-shift to get unsigned\n );\n },\n\n /**\n * Verify a given set of octet values’ CRC16.\n * An exception is thrown on failure.\n *\n * @param {Array} bytes_arr - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {Array} crc - The CRC to check against, expressed as\n * an array of octet values.\n */\n verify16: function verify16(bytes_arr, got) {\n return __verify( this.crc16(bytes_arr), got );\n },\n\n /**\n * Verify a given set of octet values’ CRC32.\n * An exception is thrown on failure.\n *\n * @param {Array} bytes_arr - The array of octet values.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {Array} crc - The CRC to check against, expressed as\n * an array of octet values.\n */\n verify32: function verify32(bytes_arr, crc) {\n try {\n __verify( this.crc32(bytes_arr), crc );\n }\n catch(err) {\n err.input = bytes_arr.slice(0);\n throw err;\n }\n },\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zmlib\")\n);\n\n//encode() variables - declare them here so we don’t\n//create them in the function.\nvar encode_cur, encode_todo;\n\nconst ZDLE = Zmodem.ZMLIB.ZDLE;\n\n/**\n * Class that handles ZDLE encoding and decoding.\n * Encoding is subject to a given configuration--specifically, whether\n * we want to escape all control characters. Decoding is static; however\n * a given string is encoded we can always decode it.\n */\nZmodem.ZDLE = class ZmodemZDLE {\n /**\n * Create a ZDLE encoder.\n *\n * @param {object} [config] - The initial configuration.\n * @param {object} config.escape_ctrl_chars - Whether the ZDLE encoder\n * should escape control characters.\n */\n constructor(config) {\n this._config = {};\n if (config) {\n this.set_escape_ctrl_chars(!!config.escape_ctrl_chars);\n }\n }\n\n /**\n * Enable or disable control-character escaping.\n * You should probably enable this for sender sessions.\n *\n * @param {boolean} value - Whether to enable (true) or disable (false).\n */\n set_escape_ctrl_chars(value) {\n if (typeof value !== \"boolean\") throw \"need boolean!\";\n\n if (value !== this._config.escape_ctrl_chars) {\n this._config.escape_ctrl_chars = value;\n this._setup_zdle_table();\n }\n }\n\n /**\n * Whether or not control-character escaping is enabled.\n *\n * @return {boolean} Whether the escaping is on (true) or off (false).\n */\n escapes_ctrl_chars() {\n return !!this._config.escape_ctrl_chars;\n }\n\n //I don’t know of any Zmodem implementations that use ZESC8\n //(“escape_8th_bit”)??\n\n /*\n ZMODEM software escapes ZDLE, 020, 0220, 021, 0221, 023, and 0223. If\n preceded by 0100 or 0300 (@), 015 and 0215 are also escaped to protect the\n Telenet command escape CR-@-CR.\n */\n\n /**\n * Encode an array of octet values and return it.\n * This will mutate the given array.\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {number[]} The passed-in array, transformed. This is the\n * same object that is passed in.\n */\n encode(octets) {\n //NB: Performance matters here!\n\n if (!this._zdle_table) throw \"No ZDLE encode table configured!\";\n\n var zdle_table = this._zdle_table;\n\n var last_code = this._lastcode;\n\n var arrbuf = new ArrayBuffer( 2 * octets.length );\n var arrbuf_uint8 = new Uint8Array(arrbuf);\n\n var escctl_yn = this._config.escape_ctrl_chars;\n\n var arrbuf_i = 0;\n\n for (encode_cur=0; encode_cur=0; o--) {\n if (octets[o] === ZDLE) {\n octets.splice( o, 2, octets[o+1] - 64 );\n }\n }\n\n return octets;\n }\n\n /**\n * Remove, ZDLE-decode, and return bytes from the passed-in array.\n * If the requested number of ZDLE-encoded bytes isn’t available,\n * then the passed-in array is unmodified (and the return is undefined).\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @param {number} offset - The number of (undecoded) bytes to skip\n * at the beginning of the “octets” array.\n *\n * @param {number} count - The number of bytes (octet values) to return.\n *\n * @returns {number[]|undefined} An array with the requested number of\n * decoded octet values, or undefined if that number of decoded\n * octets isn’t available (given the passed-in offset).\n */\n static splice(octets, offset, count) {\n var so_far = 0;\n\n if (!offset) offset = 0;\n\n for (var i = offset; i> 8,\n 0,\n flags_num,\n ];\n }\n\n //undefined if nonstop I/O is allowed\n get_buffer_size() {\n return Zmodem.ENCODELIB.unpack_u16_be( this._bytes4.slice(0, 2) ) || undefined;\n }\n\n //Unimplemented:\n // can_decrypt\n // can_decompress\n\n //----------------------------------------------------------------------\n //function names taken from Jacques Mattheij’s implementation,\n //as used in syncterm.\n\n can_full_duplex() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANFDX );\n }\n\n can_overlap_io() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANOVIO );\n }\n\n can_break() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANBRK );\n }\n\n can_fcs_32() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.CANFC32 );\n }\n\n escape_ctrl_chars() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.ESCCTL );\n }\n\n //Is this used? I don’t see it used in lrzsz or syncterm\n //Looks like it was a “foreseen” feature that Forsberg\n //never implemented. (The need for it went away, maybe?)\n escape_8th_bit() {\n return !!( this._bytes4[3] & ZRINIT_FLAG.ESC8 );\n }\n};\n\n//----------------------------------------------------------------------\n\n//Since context makes clear what’s going on, we use these\n//rather than the T-prefixed constants in the specification.\nconst ZSINIT_FLAG = {\n ESCCTL: 0x40, // Transmitter will escape ctl chars\n ESC8: 0x80, // Transmitter will escape 8th bit\n};\n\nfunction _get_ZSINIT_flag_num(fl) {\n if (!ZSINIT_FLAG[fl]) {\n throw(\"Invalid ZSINIT flag: \" + fl);\n }\n return ZSINIT_FLAG[fl];\n}\n\nclass ZSINIT_HEADER extends Zmodem.Header {\n constructor( flags_arr, attn_seq_arr ) {\n super();\n var flags_num = 0;\n\n flags_arr.forEach( function(fl) {\n flags_num |= _get_ZSINIT_flag_num(fl);\n } );\n\n this._bytes4 = [ 0, 0, 0, flags_num ];\n\n if (attn_seq_arr) {\n if (attn_seq_arr.length > 31) {\n throw(\"Attn sequence must be <= 31 bytes\");\n }\n if (attn_seq_arr.some( function(num) { return num > 255 } )) {\n throw(\"Attn sequence (\" + attn_seq_arr + \") must be <256\");\n }\n this._data = attn_seq_arr.concat([0]);\n }\n }\n\n escape_ctrl_chars() {\n return !!( this._bytes4[3] & ZSINIT_FLAG.ESCCTL );\n }\n\n //Is this used? I don’t see it used in lrzsz or syncterm\n escape_8th_bit() {\n return !!( this._bytes4[3] & ZSINIT_FLAG.ESC8 );\n }\n}\n\n//Thus far it doesn’t seem we really need this header except to respond\n//to ZSINIT, which doesn’t require a payload.\nclass ZACK_HEADER extends Zmodem.Header {\n constructor(payload4) {\n super();\n\n if (payload4) {\n this._bytes4 = payload4.slice();\n }\n }\n}\nZACK_HEADER.prototype._hex_header_ending = HEX_HEADER_CRLF;\n\n//----------------------------------------------------------------------\n\nconst ZFILE_VALUES = {\n\n //ZF3 (i.e., first byte)\n extended: {\n sparse: 0x40, //ZXSPARS\n },\n\n //ZF2\n transport: [\n undefined,\n \"compress\", //ZTLZW\n \"encrypt\", //ZTCRYPT\n \"rle\", //ZTRLE\n ],\n\n //ZF1\n management: [\n undefined,\n \"newer_or_longer\", //ZF1_ZMNEWL\n \"crc\", //ZF1_ZMCRC\n \"append\", //ZF1_ZMAPND\n \"clobber\", //ZF1_ZMCLOB\n \"newer\", //ZF1_ZMNEW\n \"mtime_or_length\", //ZF1_ZMNEW\n \"protect\", //ZF1_ZMPROT\n \"rename\", //ZF1_ZMPROT\n ],\n\n //ZF0 (i.e., last byte)\n conversion: [\n undefined,\n \"binary\", //ZCBIN\n \"text\", //ZCNL\n \"resume\", //ZCRESUM\n ],\n};\n\nconst ZFILE_ORDER = [\"extended\", \"transport\", \"management\", \"conversion\"];\n\nconst ZMSKNOLOC = 0x80,\n MANAGEMENT_MASK = 0x1f,\n ZXSPARS = 0x40\n;\n\nclass ZFILE_HEADER extends Zmodem.Header {\n\n //TODO: allow options on instantiation\n get_options() {\n var opts = {\n sparse: !!(this._bytes4[0] & ZXSPARS),\n };\n\n var bytes_copy = this._bytes4.slice(0);\n\n ZFILE_ORDER.forEach( function(key, i) {\n if (ZFILE_VALUES[key] instanceof Array) {\n if (key === \"management\") {\n opts.skip_if_absent = !!(bytes_copy[i] & ZMSKNOLOC);\n bytes_copy[i] &= MANAGEMENT_MASK;\n }\n\n opts[key] = ZFILE_VALUES[key][ bytes_copy[i] ];\n }\n else {\n for (var extkey in ZFILE_VALUES[key]) {\n opts[extkey] = !!(bytes_copy[i] & ZFILE_VALUES[key][extkey]);\n if (opts[extkey]) {\n bytes_copy[i] ^= ZFILE_VALUES[key][extkey]\n }\n }\n }\n\n if (!opts[key] && bytes_copy[i]) {\n opts[key] = \"unknown:\" + bytes_copy[i];\n }\n } );\n\n return opts;\n }\n}\n\n//----------------------------------------------------------------------\n\n//Empty headers - in addition to ZRQINIT\nclass ZSKIP_HEADER extends Zmodem.Header {}\n//No need for ZNAK\nclass ZABORT_HEADER extends Zmodem.Header {}\nclass ZFIN_HEADER extends Zmodem.Header {}\nclass ZFERR_HEADER extends Zmodem.Header {}\n\nZFIN_HEADER.prototype._hex_header_ending = HEX_HEADER_CRLF;\n\nclass ZOffsetHeader extends Zmodem.Header {\n constructor(offset) {\n super();\n this._bytes4 = Zmodem.ENCODELIB.pack_u32_le(offset);\n }\n\n get_offset() {\n return Zmodem.ENCODELIB.unpack_u32_le(this._bytes4);\n }\n}\n\nclass ZRPOS_HEADER extends ZOffsetHeader {};\nclass ZDATA_HEADER extends ZOffsetHeader {};\nclass ZEOF_HEADER extends ZOffsetHeader {};\n\n//As request, receiver creates.\n/* UNIMPLEMENTED FOR NOW\nclass ZCRC_HEADER extends ZHeader {\n constructor(crc_le_bytes) {\n super();\n if (crc_le_bytes) { //response, sender creates\n this._bytes4 = crc_le_bytes;\n }\n }\n}\n*/\n\n//No ZCHALLENGE implementation\n\n//class ZCOMPL_HEADER extends ZHeader {}\n//class ZCAN_HEADER extends Zmodem.Header {}\n\n//As described, this header represents an information disclosure.\n//It could be interpreted, I suppose, merely as “this is how much space\n//I have FOR YOU.”\n//TODO: implement if needed/requested\n//class ZFREECNT_HEADER extends ZmodemHeader {}\n\n//----------------------------------------------------------------------\n\nconst FRAME_CLASS_TYPES = [\n [ ZRQINIT_HEADER, \"ZRQINIT\" ],\n [ ZRINIT_HEADER, \"ZRINIT\" ],\n [ ZSINIT_HEADER, \"ZSINIT\" ],\n [ ZACK_HEADER, \"ZACK\" ],\n [ ZFILE_HEADER, \"ZFILE\" ],\n [ ZSKIP_HEADER, \"ZSKIP\" ],\n undefined, // [ ZNAK_HEADER, \"ZNAK\" ],\n [ ZABORT_HEADER, \"ZABORT\" ],\n [ ZFIN_HEADER, \"ZFIN\" ],\n [ ZRPOS_HEADER, \"ZRPOS\" ],\n [ ZDATA_HEADER, \"ZDATA\" ],\n [ ZEOF_HEADER, \"ZEOF\" ],\n [ ZFERR_HEADER, \"ZFERR\" ], //see note\n undefined, //[ ZCRC_HEADER, \"ZCRC\" ],\n undefined, //[ ZCHALLENGE_HEADER, \"ZCHALLENGE\" ],\n undefined, //[ ZCOMPL_HEADER, \"ZCOMPL\" ],\n undefined, //[ ZCAN_HEADER, \"ZCAN\" ],\n undefined, //[ ZFREECNT_HEADER, \"ZFREECNT\" ],\n undefined, //[ ZCOMMAND_HEADER, \"ZCOMMAND\" ],\n undefined, //[ ZSTDERR_HEADER, \"ZSTDERR\" ],\n];\n\n/*\nZFERR is described as “error in reading or writing file”. It’s really\nnot a good idea from a security angle for the endpoint to expose this\ninformation. We should parse this and handle it as ZABORT but never send it.\n\nLikewise with ZFREECNT: the sender shouldn’t ask how much space is left\non the other box; rather, the receiver should decide what to do with the\nfile size as the sender reports it.\n*/\n\nvar FRAME_NAME_CREATOR = {};\n\nfor (var fc=0; fc 11) {\n hdr_err = \"Invalid hex header - no LF detected within 12 bytes!\";\n }\n\n //incomplete header\n return;\n }\n else {\n hex_bytes = bytes_arr.splice( 0, lf_pos );\n\n //Trim off the LF\n bytes_arr.shift();\n\n if ( hex_bytes.length === 19 ) {\n\n //NB: The spec says CR but seems to treat high-bit variants\n //of control characters the same as the regulars; should we\n //also allow 0x8d?\n var preceding = hex_bytes.pop();\n if ( preceding !== 0x0d && preceding !== 0x8d ) {\n hdr_err = \"Invalid hex header: (CR/)LF doesn’t have CR!\";\n }\n }\n else if ( hex_bytes.length !== 18 ) {\n hdr_err = \"Invalid hex header: invalid number of bytes before LF!\";\n }\n }\n\n if (hdr_err) {\n hdr_err += \" (\" + hex_bytes.length + \" bytes: \" + hex_bytes.join() + \")\";\n throw hdr_err;\n }\n\n hex_bytes.splice(0, 4);\n\n //Should be 7 bytes ultimately:\n // 1 for typenum\n // 4 for header data\n // 2 for CRC\n var octets = Zmodem.ENCODELIB.parse_hex_octets(hex_bytes);\n\n return _parse_non_zdle_binary16(octets);\n}\n\nZmodem.Header.parse_hex = _parse_hex;\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nconst\n ZDLE = 0x18,\n XON = 0x11,\n XOFF = 0x13,\n XON_HIGH = 0x80 | XON,\n XOFF_HIGH = 0x80 | XOFF,\n CAN = 0x18 //NB: same character as ZDLE\n;\n\n/**\n * Tools and constants that are useful for ZMODEM.\n *\n * @exports ZMLIB\n */\nZmodem.ZMLIB = {\n\n /**\n * @property {number} The ZDLE constant, which ZMODEM uses for escaping\n */\n ZDLE: ZDLE,\n\n /**\n * @property {number} XON - ASCII XON\n */\n XON: XON,\n\n /**\n * @property {number} XOFF - ASCII XOFF\n */\n XOFF: XOFF,\n\n /**\n * @property {number[]} ABORT_SEQUENCE - ZMODEM’s abort sequence\n */\n ABORT_SEQUENCE: [ CAN, CAN, CAN, CAN, CAN ],\n\n /**\n * Remove octet values from the given array that ZMODEM always ignores.\n * This will mutate the given array.\n *\n * @param {number[]} octets - The octet values to transform.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {number[]} The passed-in array. This is the same object that is\n * passed in.\n */\n strip_ignored_bytes: function strip_ignored_bytes(octets) {\n for (var o=octets.length-1; o>=0; o--) {\n switch (octets[o]) {\n case XON:\n case XON_HIGH:\n case XOFF:\n case XOFF_HIGH:\n octets.splice(o, 1);\n continue;\n }\n }\n\n return octets;\n },\n\n /**\n * Like Array.prototype.indexOf, but searches for a subarray\n * rather than just a particular value.\n *\n * @param {Array} haystack - The array to search, i.e., the bigger.\n *\n * @param {Array} needle - The array whose values to find,\n * i.e., the smaller.\n *\n * @returns {number} The position in “haystack” where “needle”\n * first appears—or, -1 if “needle” doesn’t appear anywhere\n * in “haystack”.\n */\n find_subarray: function find_subarray(haystack, needle) {\n var h=0, n;\n\n var start = Date.now();\n\n HAYSTACK:\n while (h !== -1) {\n h = haystack.indexOf( needle[0], h );\n if (h === -1) break HAYSTACK;\n\n for (n=1; n=0; f--) {\n var fobj = files[f];\n total_size += fobj.size;\n batch[f] = {\n obj: fobj,\n name: fobj.name,\n size: fobj.size,\n mtime: new Date(fobj.lastModified),\n files_remaining: files.length - f,\n bytes_remaining: total_size,\n };\n }\n\n var file_idx = 0;\n function promise_callback() {\n var cur_b = batch[file_idx];\n\n if (!cur_b) {\n return Promise.resolve(); //batch done!\n }\n\n file_idx++;\n\n return session.send_offer(cur_b).then( function after_send_offer(xfer) {\n if (options.on_offer_response) {\n options.on_offer_response(cur_b.obj, xfer);\n }\n\n if (xfer === undefined) {\n return promise_callback(); //skipped\n }\n\n return new Promise( function(res) {\n var reader = new FileReader();\n\n //This really shouldn’t happen … so let’s\n //blow up if it does.\n reader.onerror = function reader_onerror(e) {\n console.error(\"file read error\", e);\n throw(\"File read error: \" + e);\n };\n\n var piece;\n reader.onprogress = function reader_onprogress(e) {\n\n //Some browsers (e.g., Chrome) give partial returns,\n //while others (e.g., Firefox) don’t.\n if (e.target.result) {\n piece = new Uint8Array(e.target.result, xfer.get_offset())\n\n _check_aborted(session);\n\n xfer.send(piece);\n\n if (options.on_progress) {\n options.on_progress(cur_b.obj, xfer, piece);\n }\n }\n };\n\n reader.onload = function reader_onload(e) {\n piece = new Uint8Array(e.target.result, xfer, piece)\n\n _check_aborted(session);\n\n xfer.end(piece).then( function() {\n if (options.on_progress && piece.length) {\n options.on_progress(cur_b.obj, xfer, piece);\n }\n\n if (options.on_file_complete) {\n options.on_file_complete(cur_b.obj, xfer);\n }\n\n //Resolve the current file-send promise with\n //another promise. That promise resolves immediately\n //if we’re done, or with another file-send promise\n //if there’s more to send.\n res( promise_callback() );\n } );\n };\n\n reader.readAsArrayBuffer(cur_b.obj);\n } );\n } );\n }\n\n return promise_callback();\n },\n\n /**\n * Prompt a user to save the given packets as a file by injecting an\n * `` element (with `display: none` styling) into the page and\n * calling the element’s `click()`\n * method. The element is removed immediately after.\n *\n * @param {Array} packets - Same as the first argument to [Blob’s constructor](https://developer.mozilla.org/en-US/docs/Web/API/Blob).\n * @param {string} name - The name to give the file.\n */\n save_to_disk: function save_to_disk(packets, name) {\n var blob = new Blob(packets);\n var url = URL.createObjectURL(blob);\n\n var el = document.createElement(\"a\");\n el.style.display = \"none\";\n el.href = url;\n el.download = name;\n document.body.appendChild(el);\n\n //It seems like a security problem that this actually works;\n //I’d think there would need to be some confirmation before\n //a browser could save arbitrarily many bytes onto the disk.\n //But, hey.\n el.click();\n\n document.body.removeChild(el);\n },\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zmlib\"),\n require(\"./zsession\")\n);\n\nconst\n MIN_ZM_HEX_START_LENGTH = 20,\n MAX_ZM_HEX_START_LENGTH = 21,\n\n // **, ZDLE, 'B0'\n //ZRQINIT’s next byte will be '0'; ZRINIT’s will be '1'.\n COMMON_ZM_HEX_START = [ 42, 42, 24, 66, 48 ],\n\n SENTRY_CONSTRUCTOR_REQUIRED_ARGS = [\n \"to_terminal\",\n \"on_detect\",\n \"on_retract\",\n \"sender\",\n ],\n\n ASTERISK = 42\n;\n\n/**\n * An instance of this object is passed to the Sentry’s on_detect\n * callback each time the Sentry object sees what looks like the\n * start of a ZMODEM session.\n *\n * Note that it is possible for a detection to be “retracted”\n * if the Sentry consumes bytes afterward that are not ZMODEM.\n * When this happens, the Sentry’s `retract` event will fire,\n * after which the Detection object is no longer usable.\n */\nclass Detection {\n\n /**\n * Not called directly.\n */\n constructor(session_type, accepter, denier, checker) {\n\n //confirm() - user confirms that ZMODEM is desired\n this._confirmer = accepter;\n\n //deny() - user declines ZMODEM; send abort sequence\n //\n //TODO: It might be ideal to forgo the session “peaceably”,\n //i.e., such that the peer doesn’t end in error. That’s\n //possible if we’re the sender, we accept the session,\n //then we just send a close(), but it doesn’t seem to be\n //possible for a receiver. Thus, let’s just leave it so\n //it’s at least consistent (and simpler, too).\n this._denier = denier;\n\n this._is_valid = checker;\n\n this._session_type = session_type;\n }\n\n /**\n * Confirm that the detected ZMODEM sequence indicates the\n * start of a ZMODEM session.\n *\n * @return {Session} The ZMODEM Session object (i.e., either a\n * Send or Receive instance).\n */\n confirm() {\n return this._confirmer.apply(this, arguments);\n }\n\n /**\n * Tell the Sentry that the detected bytes sequence is\n * **NOT** intended to be the start of a ZMODEM session.\n */\n deny() {\n return this._denier.apply(this, arguments);\n }\n\n /**\n * Tells whether the Detection is still valid; i.e., whether\n * the Sentry has `consume()`d bytes that invalidate the\n * Detection.\n *\n * @returns {boolean} Whether the Detection is valid.\n */\n is_valid() {\n return this._is_valid.apply(this, arguments);\n }\n\n /**\n * Gives the session’s role.\n *\n * @returns {string} One of:\n * - `receive`\n * - `send`\n */\n get_session_role() { return this._session_type }\n}\n\n/**\n * Class that parses an input stream for the beginning of a\n * ZMODEM session. We look for the tell-tale signs\n * of a ZMODEM transfer and allow the client to determine whether\n * it’s really ZMODEM or not.\n *\n * This is the “mother” class for zmodem.js;\n * all other class instances are created, directly or indirectly,\n * by an instance of this class.\n *\n * This logic is not unlikely to need tweaking, and it can never\n * be fully bulletproof; if it could be bulletproof it would be\n * simpler since there wouldn’t need to be the .confirm()/.deny()\n * step.\n *\n * One thing you could do to make things a bit simpler *is* just\n * to make that assumption for your users--i.e., to .confirm()\n * Detection objects automatically. That’ll be one less step\n * for the user, but an unaccustomed user might find that a bit\n * confusing. It’s also then possible to have a “false positive”:\n * a text stream that contains a ZMODEM initialization string but\n * isn’t, in fact, meant to start a ZMODEM session.\n *\n * Workflow:\n * - parse all input with .consume(). As long as nothing looks\n * like ZMODEM, all the traffic will go to to_terminal().\n *\n * - when a “tell-tale” sequence of bytes arrives, we create a\n * Detection object and pass it to the “on_detect” handler.\n *\n * - Either .confirm() or .deny() with the Detection object.\n * This is the user’s chance to say, “yeah, I know those\n * bytes look like ZMODEM, but they’re not. So back off!”\n *\n * If you .confirm(), the Session object is returned, and\n * further input that goes to the Sentry’s .consume() will\n * go to the (now-active) Session object.\n *\n * - Sometimes additional traffic arrives that makes it apparent\n * that no ZMODEM session is intended to start; in this case,\n * the Sentry marks the Detection as “stale” and calls the\n * `on_retract` handler. Any attempt from here to .confirm()\n * on the Detection object will prompt an exception.\n *\n * (This “retraction” behavior will only happen prior to\n * .confirm() or .deny() being called on the Detection object.\n * Beyond that point, either the Session has to deal with the\n * “garbage”, or it’s back to the terminal anyway.\n *\n * - Once the Session object is done, the Sentry will again send\n * all traffic to to_terminal().\n */\nZmodem.Sentry = class ZmodemSentry {\n\n /**\n * Invoked directly. Creates a new Sentry that inspects all\n * traffic before it goes to the terminal.\n *\n * @param {Object} options - The Sentry parameters\n *\n * @param {Function} options.to_terminal - Handler that sends\n * traffic to the terminal object. Receives an iterable object\n * (e.g., an Array) that contains octet numbers.\n *\n * @param {Function} options.on_detect - Handler for new\n * detection events. Receives a new Detection object.\n *\n * @param {Function} options.on_retract - Handler for retraction\n * events. Receives no input.\n *\n * @param {Function} options.sender - Handler that sends traffic to\n * the peer. If, for example, your application uses WebSocket to talk\n * to the peer, use this to send data to the WebSocket instance.\n */\n constructor(options) {\n if (!options) throw \"Need options!\";\n\n var sentry = this;\n SENTRY_CONSTRUCTOR_REQUIRED_ARGS.forEach( function(arg) {\n if (!options[arg]) {\n throw \"Need “\" + arg + \"”!\";\n }\n sentry[\"_\" + arg] = options[arg];\n } );\n\n this._cache = [];\n }\n\n _after_session_end() {\n this._zsession = null;\n }\n\n /**\n * “Consumes” a piece of input:\n *\n * - If there is no active or pending ZMODEM session, the text is\n * all output. (This is regardless of whether we’ve got a new\n * Detection.)\n *\n * - If there is no active ZMODEM session and the input **ends** with\n * a ZRINIT or ZRQINIT, then a new Detection object is created,\n * and it is passed to the “on_detect” function.\n * If there was another pending Detection object, it is retracted.\n *\n * - If there is no active ZMODEM session and the input does NOT end\n * with a ZRINIT or ZRQINIT, then any pending Detection object is\n * retracted.\n *\n * - If there is an active ZMODEM session, the input is passed to it.\n * Any non-ZMODEM data (i.e., “garbage”) parsed from the input\n * is sent to output.\n * If the ZMODEM session ends, any post-ZMODEM part of the input\n * is sent to output.\n *\n * @param {number[] | ArrayBuffer} input - Octets to parse as input.\n */\n consume(input) {\n if (!(input instanceof Array)) {\n input = Array.prototype.slice.call( new Uint8Array(input) );\n }\n\n if (this._zsession) {\n var session_before_consume = this._zsession;\n\n session_before_consume.consume(input);\n\n if (session_before_consume.has_ended()) {\n if (session_before_consume.type === \"receive\") {\n input = session_before_consume.get_trailing_bytes();\n }\n else {\n input = [];\n }\n }\n else return;\n }\n\n var new_session = this._parse(input);\n var to_terminal = input;\n\n if (new_session) {\n let replacement_detect = !!this._parsed_session;\n\n if (replacement_detect) {\n //no terminal output if the new session is of the\n //same type as the old\n if (this._parsed_session.type === new_session.type) {\n to_terminal = [];\n }\n\n this._on_retract();\n }\n\n this._parsed_session = new_session;\n\n var sentry = this;\n\n function checker() {\n return sentry._parsed_session === new_session;\n }\n\n //This runs with the Sentry object as the context.\n function accepter() {\n if (!this.is_valid()) {\n throw \"Stale ZMODEM session!\";\n }\n\n new_session.on(\"garbage\", sentry._to_terminal);\n\n new_session.on(\n \"session_end\",\n sentry._after_session_end.bind(sentry)\n );\n\n new_session.set_sender(sentry._sender);\n\n delete sentry._parsed_session;\n\n return sentry._zsession = new_session;\n };\n\n function denier() {\n if (!this.is_valid()) return;\n };\n\n this._on_detect( new Detection(\n new_session.type,\n accepter,\n this._send_abort.bind(this),\n checker\n ) );\n }\n else {\n /*\n if (this._parsed_session) {\n this._session_stale_because = 'Non-ZMODEM output received after ZMODEM initialization.';\n }\n */\n\n var expired_session = this._parsed_session;\n\n this._parsed_session = null;\n\n if (expired_session) {\n\n //If we got a single “C” after parsing a session,\n //that means our peer is trying to downgrade to YMODEM.\n //That won’t work, so we just send the ABORT_SEQUENCE\n //right away.\n if (to_terminal.length === 1 && to_terminal[0] === 67) {\n this._send_abort();\n }\n\n this._on_retract();\n }\n }\n\n this._to_terminal(to_terminal);\n }\n\n /**\n * @return {Session|null} The sentry’s current Session object, or\n * null if there is none.\n */\n get_confirmed_session() {\n return this._zsession || null;\n }\n\n _send_abort() {\n this._sender( Zmodem.ZMLIB.ABORT_SEQUENCE );\n }\n\n /**\n * Parse an input stream and decide how much of it goes to the\n * terminal or to a new Session object.\n *\n * This will accommodate input strings that are fragmented\n * across calls to this function; e.g., if you send the first\n * two bytes at the end of one parse() call then send the rest\n * at the beginning of the next, parse() will recognize it as\n * the beginning of a ZMODEM session.\n *\n * In order to keep from blocking any actual useful data to the\n * terminal in real-time, this will send on the initial\n * ZRINIT/ZRQINIT bytes to the terminal. They’re meant to go to the\n * terminal anyway, so that should be fine.\n *\n * @private\n *\n * @param {Array|Uint8Array} array_like - The input bytes.\n * Each member should be a number between 0 and 255 (inclusive).\n *\n * @return {Array} A two-member list:\n * 0) the bytes that should be printed on the terminal\n * 1) the created Session object (if any)\n */\n _parse(array_like) {\n var cache = this._cache;\n\n cache.push.apply( cache, array_like );\n\n while (true) {\n let common_hex_at = Zmodem.ZMLIB.find_subarray( cache, COMMON_ZM_HEX_START );\n if (-1 === common_hex_at) break;\n\n let before_common_hex = cache.splice(0, common_hex_at);\n let zsession;\n try {\n zsession = Zmodem.Session.parse(cache);\n } catch(err) { //ignore errors\n //console.log(err);\n }\n\n if (!zsession) break;\n\n //Don’t need to parse the trailing XON.\n if ((cache.length === 1) && (cache[0] === Zmodem.ZMLIB.XON)) {\n cache.shift();\n }\n\n //If there are still bytes in the cache,\n //then we don’t have a ZMODEM session. This logic depends\n //on the sender only sending one initial header.\n return cache.length ? null : zsession;\n }\n\n cache.splice( MAX_ZM_HEX_START_LENGTH );\n\n return null;\n }\n}\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\n/**\n * This is where the protocol-level logic lives: the interaction of ZMODEM\n * headers and subpackets. The logic here is not unlikely to need tweaking\n * as little edge cases crop up.\n */\n\nZmodem.DEBUG = false;\n\nObject.assign(\n Zmodem,\n require(\"./encode\"),\n require(\"./text\"),\n require(\"./zdle\"),\n require(\"./zmlib\"),\n require(\"./zheader\"),\n require(\"./zsubpacket\"),\n require(\"./zvalidation\"),\n require(\"./zerror\")\n);\n\nconst\n //pertinent to this module\n KEEPALIVE_INTERVAL = 5000,\n\n //We ourselves don’t need ESCCTL, so we don’t send it;\n //however, we always expect to receive it in ZRINIT.\n //See _ensure_receiver_escapes_ctrl_chars() for more details.\n ZRINIT_FLAGS = [\n \"CANFDX\", //full duplex\n \"CANOVIO\", //overlap I/O\n\n //lsz has a buffer overflow bug that shows itself when:\n //\n // - 16-bit CRC is used, and\n // - lsz receives the abort sequence while sending a file\n //\n //To avoid this, we just tell lsz to use 32-bit CRC\n //even though there is otherwise no reason. This ensures that\n //unfixed lsz versions will avoid the buffer overflow.\n \"CANFC32\",\n ],\n\n //We do this because some WebSocket shell servers\n //(e.g., xterm.js’s demo server) enable the IEXTEN termios flag,\n //which bars 0x0f and 0x16 from reaching the shell process,\n //which results in transmission errors.\n FORCE_ESCAPE_CTRL_CHARS = true,\n\n DEFAULT_RECEIVE_INPUT_MODE = \"spool_uint8array\",\n\n //pertinent to ZMODEM\n MAX_CHUNK_LENGTH = 8192, //1 KiB officially, but lrzsz allows 8192\n BS = 0x8,\n OVER_AND_OUT = [ 79, 79 ],\n ABORT_SEQUENCE = Zmodem.ZMLIB.ABORT_SEQUENCE\n;\n\n/**\n * A base class for objects that have events.\n *\n * @private\n */\nclass _Eventer {\n\n /**\n * Not called directly.\n */\n constructor() {\n this._on_evt = {};\n this._evt_once_index = {};\n }\n\n _Add_event(evt_name) {\n this._on_evt[evt_name] = [];\n this._evt_once_index[evt_name] = [];\n }\n\n _get_evt_queue(evt_name) {\n if (!this._on_evt[evt_name]) {\n throw( \"Bad event: \" + evt_name );\n }\n\n return this._on_evt[evt_name];\n }\n\n /**\n * Register a callback for a given event.\n *\n * @param {string} evt_name - The name of the event.\n *\n * @param {Function} todo - The function to execute when the event happens.\n */\n on(evt_name, todo) {\n var queue = this._get_evt_queue(evt_name);\n\n queue.push(todo);\n\n return this;\n }\n\n /**\n * Unregister a callback for a given event.\n *\n * @param {string} evt_name - The name of the event.\n *\n * @param {Function} [todo] - The function to execute when the event\n * happens. If not given, the last event registered for the event\n * is unregistered.\n */\n off(evt_name, todo) {\n var queue = this._get_evt_queue(evt_name);\n\n if (todo) {\n var at = queue.indexOf(todo);\n if (at === -1) {\n throw(\"“\" + todo + \"” is not in the “\" + evt_name + \"” queue.\");\n }\n queue.splice(at, 1);\n }\n else {\n queue.pop();\n }\n\n return this;\n }\n\n _Happen(evt_name /*, arg0, arg1, .. */) {\n var queue = this._get_evt_queue(evt_name); //might as well validate\n\n //console.info(\"EVENT\", this, arguments);\n\n var args = Array.apply(null, arguments);\n args.shift();\n\n var sess = this;\n\n queue.forEach( function(cb) { cb.apply(sess, args) } );\n\n return queue.length;\n }\n}\n\n/**\n * The Session classes handle the protocol-level logic.\n * These shield the user from dealing with headers and subpackets.\n * This is a base class with functionality common to both Receive\n * and Send subclasses.\n *\n * @extends _Eventer\n*/\nZmodem.Session = class ZmodemSession extends _Eventer {\n\n /**\n * Parse out a hex header from the given array.\n * If there’s a ZRQINIT or ZRINIT at the beginning,\n * we’ll return it. If the input isn’t a header,\n * for whatever reason, we return undefined.\n *\n * @param {number[]} octets - The bytes to parse.\n *\n * @return {Session|undefined} A Session object if the beginning\n * of a session was parsable in “octets”; otherwise undefined.\n */\n static parse( octets ) {\n\n //Will need to trap errors.\n var hdr;\n try {\n hdr = Zmodem.Header.parse_hex(octets);\n }\n catch(e) { //Don’t report since we aren’t in session\n\n //debug\n //console.warn(\"No hex header: \", e);\n\n return;\n }\n\n if (!hdr) return;\n\n switch (hdr.NAME) {\n case \"ZRQINIT\":\n //throw if ZCOMMAND\n return new Zmodem.Session.Receive();\n case \"ZRINIT\":\n return new Zmodem.Session.Send(hdr);\n }\n\n //console.warn(\"Invalid first Zmodem header\", hdr);\n }\n\n /**\n * Sets the sender function that a Session object will use.\n *\n * @param {Function} sender_func - The function to call.\n * It will receive an Array with the relevant octets.\n *\n * @return {Session} The session object (for chaining).\n */\n set_sender(sender_func) {\n this._sender = sender_func;\n return this;\n }\n\n /**\n * Whether the current Session has ended.\n *\n * @returns {boolean} The ended state.\n */\n has_ended() { return this._has_ended() }\n\n /**\n * Consumes an array of octets as ZMODEM session input.\n *\n * @param {number[]} octets - The input octets.\n */\n consume(octets) {\n this._before_consume(octets);\n\n if (this._aborted) throw new Zmodem.Error('already_aborted');\n\n if (!octets.length) return;\n\n this._strip_and_enqueue_input(octets);\n\n if (!this._check_for_abort_sequence(octets)) {\n this._consume_first();\n }\n\n return;\n }\n\n /**\n * Whether the current Session has been `abort()`ed.\n *\n * @returns {boolean} The aborted state.\n */\n aborted() { return !!this._aborted }\n\n /**\n * Not called directly.\n */\n constructor() {\n super();\n //if (!sender_func) throw \"Need sender!\";\n\n //this._first_header = first_header;\n //this._sender = sender_func;\n this._config = {};\n\n //this._input = new ZInput();\n\n this._input_buffer = [];\n\n //This is mostly for debugging.\n this._Add_event(\"receive\");\n this._Add_event(\"garbage\");\n this._Add_event(\"session_end\");\n }\n\n /**\n * Returns the Session object’s role.\n *\n * @returns {string} One of:\n * - `receive`\n * - `send`\n */\n get_role() { return this.type }\n\n _trim_leading_garbage_until_header() {\n var garbage = Zmodem.Header.trim_leading_garbage(this._input_buffer);\n\n if (garbage.length) {\n if (this._Happen(\"garbage\", garbage) === 0) {\n console.debug(\n \"Garbage: \",\n String.fromCharCode.apply(String, garbage),\n garbage\n );\n }\n }\n }\n\n _parse_and_consume_header() {\n this._trim_leading_garbage_until_header();\n\n var new_header_and_crc = Zmodem.Header.parse(this._input_buffer);\n if (!new_header_and_crc) return;\n\n if (Zmodem.DEBUG) {\n this._log_header( \"RECEIVED HEADER\", new_header_and_crc[0] );\n }\n\n this._consume_header(new_header_and_crc[0]);\n\n this._last_header_name = new_header_and_crc[0].NAME;\n this._last_header_crc = new_header_and_crc[1];\n\n return new_header_and_crc[0];\n }\n\n _log_header(label, header) {\n console.debug(this.type, label, header.NAME, header._bytes4.join());\n }\n\n _consume_header(new_header) {\n this._on_receive(new_header);\n\n var handler = this._next_header_handler && this._next_header_handler[ new_header.NAME ];\n if (!handler) {\n console.error(\"Unhandled header!\", new_header, this._next_header_handler);\n throw new Zmodem.Error( \"Unhandled header: \" + new_header.NAME );\n }\n\n this._next_header_handler = null;\n\n handler.call(this, new_header);\n }\n\n //TODO: strip out the abort sequence\n _check_for_abort_sequence() {\n var abort_at = Zmodem.ZMLIB.find_subarray( this._input_buffer, ABORT_SEQUENCE );\n\n if (abort_at !== -1) {\n\n //TODO: expose this to caller\n this._input_buffer.splice( 0, abort_at + ABORT_SEQUENCE.length );\n\n this._aborted = true;\n\n //TODO compare response here to lrzsz.\n this._on_session_end();\n\n //We shouldn’t ever expect to receive an abort. Even if we\n //have sent an abort ourselves, the Sentry should have stopped\n //directing input to this Session object.\n //if (this._expect_abort) {\n // return true;\n //}\n\n throw new Zmodem.Error(\"peer_aborted\");\n }\n }\n\n _send_header(name /*, args */) {\n if (!this._sender) throw \"Need sender!\";\n\n var args = Array.apply( null, arguments );\n\n var bytes_hdr = this._create_header_bytes(args);\n\n if (Zmodem.DEBUG) {\n this._log_header( \"SENDING HEADER\", bytes_hdr[1] );\n }\n\n this._sender(bytes_hdr[0]);\n\n this._last_sent_header = bytes_hdr[1];\n }\n\n _create_header_bytes(name_and_args) {\n\n var hdr = Zmodem.Header.build.apply( Zmodem.Header, name_and_args );\n\n var formatter = this._get_header_formatter(name_and_args[0]);\n\n return [\n hdr[formatter](this._zencoder),\n hdr\n ];\n }\n\n _strip_and_enqueue_input(input) {\n Zmodem.ZMLIB.strip_ignored_bytes(input);\n\n //It’s possible that “input” is empty at this point.\n //It doesn’t seem to hurt anything to keep processing, though.\n\n this._input_buffer.push.apply( this._input_buffer, input );\n }\n\n /**\n * **STOP!** You probably want to `skip()` an Offer rather than\n * `abort()`. See below.\n *\n * Abort the current session by sending the ZMODEM abort sequence.\n * This function will cause the Session object to refuse to send\n * any further data.\n *\n * Zmodem.Sentry is configured to send all output to the terminal\n * after a session’s `abort()`. That could result in lots of\n * ZMODEM garble being sent to the JavaScript terminal, which you\n * probably don’t want.\n *\n * `skip()` on an Offer is better because Session will continue to\n * discard data until we reach either another file or the\n * sender-initiated end of the ZMODEM session. So no ZMODEM garble,\n * and the session will end successfully.\n *\n * The behavior of `abort()` is subject to change since it’s not\n * very useful as currently implemented.\n */\n abort() {\n\n //this._expect_abort = true;\n\n //From Forsberg:\n //\n //The Cancel sequence consists of eight CAN characters\n //and ten backspace characters. ZMODEM only requires five\n //Cancel characters; the other three are \"insurance\".\n //The trailing backspace characters attempt to erase\n //the effects of the CAN characters if they are\n //received by a command interpreter.\n //\n //FG: Since we assume our connection is reliable, there’s\n //no reason to send more than 5 CANs.\n this._sender(\n ABORT_SEQUENCE.concat([ BS, BS, BS, BS, BS ])\n );\n\n this._aborted = true;\n this._sender = function() {\n throw new Zmodem.Error('already_aborted');\n };\n\n this._on_session_end();\n\n return;\n }\n\n //----------------------------------------------------------------------\n _on_session_end() {\n this._Happen(\"session_end\");\n }\n\n _on_receive(hdr_or_pkt) {\n this._Happen(\"receive\", hdr_or_pkt);\n }\n\n _before_consume() {}\n}\n\nfunction _trim_OO(array) {\n if (0 === Zmodem.ZMLIB.find_subarray(array, OVER_AND_OUT)) {\n array.splice(0, OVER_AND_OUT.length);\n }\n\n //TODO: This assumes OVER_AND_OUT is 2 bytes long. No biggie, but.\n else if ( array[0] === OVER_AND_OUT[ OVER_AND_OUT.length - 1 ] ) {\n array.splice(0, 1);\n }\n\n return array;\n}\n\n/** A class for ZMODEM receive sessions.\n *\n * @extends Session\n */\nZmodem.Session.Receive = class ZmodemReceiveSession extends Zmodem.Session {\n //We only get 1 file at a time, so on each consume() either\n //continue state for the current file or start a new one.\n\n /**\n * Not called directly.\n */\n constructor() {\n super();\n\n this._Add_event(\"offer\");\n this._Add_event(\"data_in\");\n this._Add_event(\"file_end\");\n }\n\n /**\n * Consume input bytes from the sender.\n *\n * @private\n * @param {number[]} octets - The bytes to consume.\n */\n _before_consume(octets) {\n if (this._bytes_after_OO) {\n throw \"PROTOCOL: Session is completed!\";\n }\n\n //Put this here so that our logic later on has access to the\n //input string and can populate _bytes_after_OO when the\n //session ends.\n this._bytes_being_consumed = octets;\n }\n\n /**\n * Return any bytes that have been `consume()`d but\n * came after the end of the ZMODEM session.\n *\n * @returns {number[]} The trailing bytes.\n */\n get_trailing_bytes() {\n if (this._aborted) return [];\n\n if (!this._bytes_after_OO) {\n throw \"PROTOCOL: Session is not completed!\";\n }\n\n return this._bytes_after_OO.slice(0);\n }\n\n _has_ended() { return this.aborted() || !!this._bytes_after_OO }\n\n //Receiver always sends hex headers.\n _get_header_formatter() { return \"to_hex\" }\n\n _parse_and_consume_subpacket() {\n var parse_func;\n if (this._last_header_crc === 16) {\n parse_func = \"parse16\";\n }\n else {\n parse_func = \"parse32\";\n }\n\n var subpacket = Zmodem.Subpacket[parse_func](this._input_buffer);\n\n if (subpacket) {\n if (Zmodem.DEBUG) {\n console.debug(this.type, \"RECEIVED SUBPACKET\", subpacket);\n }\n\n this._consume_data(subpacket);\n\n //What state are we in if the subpacket indicates frame end\n //but we haven’t gotten ZEOF yet? Can anything other than ZEOF\n //follow after a ZDATA?\n if (subpacket.frame_end()) {\n this._next_subpacket_handler = null;\n }\n }\n\n return subpacket;\n }\n\n _consume_first() {\n if (this._got_ZFIN) {\n if (this._input_buffer.length < 2) return;\n\n //if it’s OO, then set this._bytes_after_OO\n if (Zmodem.ZMLIB.find_subarray(this._input_buffer, OVER_AND_OUT) === 0) {\n\n //This doubles as an indication that the session has ended.\n //We need to set this right away so that handlers like\n //\"session_end\" will have access to it.\n this._bytes_after_OO = _trim_OO(this._bytes_being_consumed.slice(0));\n this._on_session_end();\n\n return;\n }\n else {\n throw( \"PROTOCOL: Only thing after ZFIN should be “OO” (79,79), not: \" + this._input_buffer.join() );\n }\n }\n\n var parsed;\n do {\n if (this._next_subpacket_handler) {\n parsed = this._parse_and_consume_subpacket();\n }\n else {\n parsed = this._parse_and_consume_header();\n }\n } while (parsed && this._input_buffer.length);\n }\n\n _consume_data(subpacket) {\n this._on_receive(subpacket);\n\n if (!this._next_subpacket_handler) {\n throw( \"PROTOCOL: Received unexpected data packet after \" + this._last_header_name + \" header: \" + subpacket.get_payload().join() );\n }\n\n this._next_subpacket_handler.call(this, subpacket);\n }\n\n _octets_to_string(octets) {\n if (!this._textdecoder) {\n this._textdecoder = new Zmodem.Text.Decoder();\n }\n\n return this._textdecoder.decode( new Uint8Array(octets) );\n }\n\n _consume_ZFILE_data(hdr, subpacket) {\n if (this._file_info) {\n throw \"PROTOCOL: second ZFILE data subpacket received\";\n }\n\n var packet_payload = subpacket.get_payload();\n var nul_at = packet_payload.indexOf(0);\n\n //\n var fname = this._octets_to_string( packet_payload.slice(0, nul_at) );\n var the_rest = this._octets_to_string( packet_payload.slice( 1 + nul_at ) ).split(\" \");\n\n var mtime = the_rest[1] && parseInt( the_rest[1], 8 ) || undefined;\n if (mtime) {\n mtime = new Date(mtime * 1000);\n }\n\n this._file_info = {\n name: fname,\n size: the_rest[0] ? parseInt( the_rest[0], 10 ) : null,\n mtime: mtime || null,\n mode: the_rest[2] && parseInt( the_rest[2], 8 ) || null,\n serial: the_rest[3] && parseInt( the_rest[3], 10 ) || null,\n\n files_remaining: the_rest[4] ? parseInt( the_rest[4], 10 ) : null,\n bytes_remaining: the_rest[5] ? parseInt( the_rest[5], 10 ) : null,\n };\n\n //console.log(\"ZFILE\", hdr);\n\n var xfer = new Offer(\n hdr.get_options(),\n this._file_info,\n this._accept.bind(this),\n this._skip.bind(this)\n );\n this._current_transfer = xfer;\n\n //this._Happen(\"offer\", xfer);\n }\n\n _consume_ZDATA_data(subpacket) {\n if (!this._accepted_offer) {\n throw \"PROTOCOL: Received data without accepting!\";\n }\n\n //TODO: Probably should include some sort of preventive against\n //infinite loop here: if the peer hasn’t sent us what we want after,\n //say, 10 ZRPOS headers then we should send ZABORT and just end.\n if (!this._offset_ok) {\n console.warn(\"offset not ok!\");\n _send_ZRPOS();\n return;\n }\n\n this._file_offset += subpacket.get_payload().length;\n this._on_data_in(subpacket);\n\n /*\n console.warn(\"received error from data_in callback; retrying\", e);\n throw \"unimplemented\";\n */\n\n if (subpacket.ack_expected() && !subpacket.frame_end()) {\n this._send_header( \"ZACK\", Zmodem.ENCODELIB.pack_u32_le(this._file_offset) );\n }\n }\n\n _make_promise_for_between_files() {\n var sess = this;\n\n return new Promise( function(res) {\n var between_files_handler = {\n ZFILE: function(hdr) {\n this._next_subpacket_handler = function(subpacket) {\n this._next_subpacket_handler = null;\n this._consume_ZFILE_data(hdr, subpacket);\n this._Happen(\"offer\", this._current_transfer);\n res(this._current_transfer);\n };\n },\n\n //We use this as a keep-alive. Maybe other\n //implementations do, too?\n ZSINIT: function(hdr) {\n //The content of this header doesn’t affect us\n //since all it does is tell us details of how\n //the sender will ZDLE-encode binary data. Our\n //ZDLE parser doesn’t need to know in advance.\n\n sess._next_subpacket_handler = function(spkt) {\n sess._next_subpacket_handler = null;\n sess._consume_ZSINIT_data(spkt);\n sess._send_header('ZACK');\n sess._next_header_handler = between_files_handler;\n };\n },\n\n ZFIN: function() {\n this._consume_ZFIN();\n res();\n },\n };\n\n sess._next_header_handler = between_files_handler;\n } );\n }\n\n _consume_ZSINIT_data(spkt) {\n\n //TODO: Should this be used when we signal a cancellation?\n this._attn = spkt.get_payload();\n }\n\n /**\n * Start the ZMODEM session by signaling to the sender that\n * we are ready for the first file offer.\n *\n * @returns {Promise} A promise that resolves with an Offer object\n * or, if the sender closes the session immediately without offering\n * anything, nothing.\n */\n start() {\n if (this._started) throw \"Already started!\";\n this._started = true;\n\n var ret = this._make_promise_for_between_files();\n\n this._send_ZRINIT();\n\n return ret;\n }\n\n //Returns a promise that’s fulfilled when the file\n //transfer is done.\n //\n // That ZEOF promise return is another promise that’s\n // fulfilled when we get either ZFIN or another ZFILE.\n _accept(offset) {\n this._accepted_offer = true;\n this._file_offset = offset || 0;\n\n var sess = this;\n\n var ret = new Promise( function(resolve_accept) {\n var last_ZDATA;\n\n sess._next_header_handler = {\n ZDATA: function on_ZDATA(hdr) {\n this._consume_ZDATA(hdr);\n\n this._next_subpacket_handler = this._consume_ZDATA_data;\n\n this._next_header_handler = {\n ZEOF: function on_ZEOF(hdr) {\n\n // Do this first to verify the ZEOF.\n // This also fires the “file_end” event.\n this._consume_ZEOF(hdr);\n\n this._next_subpacket_handler = null;\n\n // We don’t care about this promise.\n // Prior to v0.1.8 we did because we called\n // resolve_accept() at the resolution of this\n // promise, but that was a bad idea and was\n // never documented, so 0.1.8 changed it.\n this._make_promise_for_between_files();\n\n resolve_accept();\n\n this._send_ZRINIT();\n },\n };\n },\n };\n } );\n\n this._send_ZRPOS();\n\n return ret;\n }\n\n _skip() {\n var ret = this._make_promise_for_between_files();\n\n if (this._accepted_offer) {\n // There’s a race condition where we might attempt to\n // skip() an in-progress transfer near its end but actually\n // the skip() will fire after the transfer is complete.\n // While there might be ways to prevent this, they likely\n // would require extra work on the part of implementations.\n //\n // It seems far simpler just to make this function a no-op\n // in these cases.\n if (!this._current_transfer) return;\n\n //For cancel of an in-progress transfer from lsz,\n //it’s necessary to avoid this buffer overflow bug:\n //\n // https://github.com/gooselinux/lrzsz/blob/master/lrzsz-0.12.20.patch\n //\n //… which we do by asking for CRC32 from lsz.\n\n //We might or might not have consumed ZDATA.\n //The sender also might or might not send a ZEOF before it\n //parses the ZSKIP. Thus, we want to ignore the following:\n //\n // - ZDATA\n // - ZDATA then ZEOF\n // - ZEOF\n //\n //… and just look for the next between-file header.\n\n var bound_make_promise_for_between_files = function() {\n\n //Once this happens we fail on any received data packet.\n //So it needs not to happen until we’ve received a header.\n this._accepted_offer = false;\n this._next_subpacket_handler = null;\n\n this._make_promise_for_between_files();\n }.bind(this);\n\n Object.assign(\n this._next_header_handler,\n {\n ZEOF: bound_make_promise_for_between_files,\n ZDATA: function() {\n bound_make_promise_for_between_files();\n this._next_header_handler.ZEOF = bound_make_promise_for_between_files;\n }.bind(this),\n }\n );\n }\n\n //this._accepted_offer = false;\n\n this._file_info = null;\n\n this._send_header( \"ZSKIP\" );\n\n return ret;\n }\n\n _send_ZRINIT() {\n this._send_header( \"ZRINIT\", ZRINIT_FLAGS );\n }\n\n _consume_ZFIN() {\n this._got_ZFIN = true;\n this._send_header( \"ZFIN\" );\n }\n\n _consume_ZEOF(header) {\n if (this._file_offset !== header.get_offset()) {\n throw( \"ZEOF offset mismatch; unimplemented (local: \" + this._file_offset + \"; ZEOF: \" + header.get_offset() + \")\" );\n }\n\n this._on_file_end();\n\n //Preserve these two so that file_end callbacks\n //will have the right information.\n this._file_info = null;\n this._current_transfer = null;\n }\n\n _consume_ZDATA(header) {\n if ( this._file_offset === header.get_offset() ) {\n this._offset_ok = true;\n }\n else {\n throw \"Error correction is unimplemented.\";\n }\n }\n\n _send_ZRPOS() {\n this._send_header( \"ZRPOS\", this._file_offset );\n }\n\n //----------------------------------------------------------------------\n //events\n\n _on_file_end() {\n this._Happen(\"file_end\");\n\n if (this._current_transfer) {\n this._current_transfer._Happen(\"complete\");\n this._current_transfer = null;\n }\n }\n\n _on_data_in(subpacket) {\n this._Happen(\"data_in\", subpacket);\n\n if (this._current_transfer) {\n this._current_transfer._Happen(\"input\", subpacket.get_payload());\n }\n }\n}\n\nObject.assign(\n Zmodem.Session.Receive.prototype,\n {\n type: \"receive\",\n }\n);\n\n//----------------------------------------------------------------------\n\n/**\n * @typedef {Object} FileDetails\n *\n * @property {string} name - The name of the file.\n *\n * @property {number} [size] - The file size, in bytes.\n *\n * @property {number} [mode] - The file mode (e.g., 0100644).\n *\n * @property {Date|number} [mtime] - The file’s modification time.\n * When expressed as a number, the unit is epoch seconds.\n *\n * @property {number} [files_remaining] - Inclusive of the current file,\n * so this value is never less than 1.\n *\n * @property {number} [bytes_remaining] - Inclusive of the current file.\n */\n\n/**\n * Common methods for Transfer and Offer objects.\n *\n * @mixin\n */\nvar Transfer_Offer_Mixin = {\n /**\n * Returns the file details object.\n * @returns {FileDetails} `mtime` is a Date.\n */\n get_details: function get_details() {\n return Object.assign( {}, this._file_info );\n },\n\n /**\n * Returns a parse of the ZFILE header’s payload.\n *\n * @returns {Object} Members are:\n *\n * - `conversion` (string | undefined)\n * - `management` (string | undefined)\n * - `transfer` (string | undefined)\n * - `sparse` (boolean)\n */\n get_options: function get_options() {\n return Object.assign( {}, this._zfile_opts );\n },\n\n /**\n * Returns the offset based on the last transferred chunk.\n * @returns {number} The file offset (i.e., number of bytes after\n * the start of the file).\n */\n get_offset: function get_offset() {\n return this._file_offset;\n },\n};\n\n/**\n * A class to represent a sender’s interaction with a single file\n * transfer within a batch. When a receiver accepts an offer, the\n * Session instantiates this class and passes the instance as the\n * promise resolution from send_offer().\n *\n * @mixes Transfer_Offer_Mixin\n */\nclass Transfer {\n\n /**\n * Not called directly.\n */\n constructor(file_info, offset, send_func, end_func) {\n this._file_info = file_info;\n this._file_offset = offset || 0;\n\n this._send = send_func;\n this._end = end_func;\n }\n\n /**\n * Send a (non-terminal) piece of the file.\n *\n * @param { number[] | Uint8Array } array_like - The bytes to send.\n */\n send(array_like) {\n this._send(array_like);\n this._file_offset += array_like.length;\n }\n\n /**\n * Complete the file transfer.\n *\n * @param { number[] | Uint8Array } [array_like] - The last bytes to send.\n *\n * @return { Promise } Resolves when the receiver has indicated\n * acceptance of the end of the file transfer.\n */\n end(array_like) {\n var ret = this._end(array_like || []);\n if (array_like) this._file_offset += array_like.length;\n return ret;\n }\n}\nObject.assign( Transfer.prototype, Transfer_Offer_Mixin );\n\n/**\n * A class to represent a receiver’s interaction with a single file\n * transfer offer within a batch. There is functionality here to\n * skip or accept offered files and either to spool the packet\n * payloads or to handle them yourself.\n *\n * @mixes Transfer_Offer_Mixin\n */\nclass Offer extends _Eventer {\n\n /**\n * Not called directly.\n */\n constructor(zfile_opts, file_info, accept_func, skip_func) {\n super();\n\n this._zfile_opts = zfile_opts;\n this._file_info = file_info;\n\n this._accept_func = accept_func;\n this._skip_func = skip_func;\n\n this._Add_event(\"input\");\n this._Add_event(\"complete\");\n\n //Register this first so that application handlers receive\n //the updated offset.\n this.on(\"input\", this._input_handler);\n }\n\n _verify_not_skipped() {\n if (this._skipped) {\n throw new Zmodem.Error(\"Already skipped!\");\n }\n }\n\n /**\n * Tell the sender that you don’t want the offered file.\n *\n * You can send this in lieu of `accept()` or after it, e.g.,\n * if you find that the transfer is taking too long. Note that,\n * if you `skip()` after you `accept()`, you’ll likely have to\n * wait for buffers to clear out.\n *\n */\n skip() {\n this._verify_not_skipped();\n this._skipped = true;\n\n return this._skip_func.apply(this, arguments);\n }\n\n /**\n * Tell the sender to send the offered file.\n *\n * @param {Object} [opts] - Can be:\n * @param {string} [opts.oninput=spool_uint8array] - Can be:\n *\n * - `spool_uint8array`: Stores the ZMODEM\n * packet payloads as Uint8Array instances.\n * This makes for an easy transition to a Blob,\n * which JavaScript can use to save the file to disk.\n *\n * - `spool_array`: Stores the ZMODEM packet payloads\n * as Array instances. Each value is an octet value.\n *\n * - (function): A handler that receives each payload\n * as it arrives. The Offer object does not store\n * the payloads internally when thus configured.\n *\n * @return { Promise } Resolves when the file is fully received.\n * If the Offer has been spooling\n * the packet payloads, the promise resolves with an Array\n * that contains those payloads.\n */\n accept(opts) {\n this._verify_not_skipped();\n\n if (this._accepted) {\n throw new Zmodem.Error(\"Already accepted!\");\n }\n this._accepted = true;\n\n if (!opts) opts = {};\n\n this._file_offset = opts.offset || 0;\n\n switch (opts.on_input) {\n case null:\n case undefined:\n case \"spool_array\":\n case DEFAULT_RECEIVE_INPUT_MODE: //default\n this._spool = [];\n break;\n default:\n if (typeof opts.on_input !== \"function\") {\n throw \"Invalid “on_input”: \" + opts.on_input;\n }\n }\n\n this._input_handler_mode = opts.on_input || DEFAULT_RECEIVE_INPUT_MODE;\n\n return this._accept_func(this._file_offset).then( this._get_spool.bind(this) );\n }\n\n _input_handler(payload) {\n this._file_offset += payload.length;\n\n if (typeof this._input_handler_mode === \"function\") {\n this._input_handler_mode(payload);\n }\n else {\n if (this._input_handler_mode === DEFAULT_RECEIVE_INPUT_MODE) {\n payload = new Uint8Array(payload);\n }\n\n //sanity\n else if (this._input_handler_mode !== \"spool_array\") {\n throw new Zmodem.Error(\"WTF?? _input_handler_mode = \" + this._input_handler_mode);\n }\n\n this._spool.push(payload);\n }\n }\n\n _get_spool() {\n return this._spool;\n }\n}\nObject.assign( Offer.prototype, Transfer_Offer_Mixin );\n\n//Curious that ZSINIT isn’t here … but, lsz sends it as hex.\nconst SENDER_BINARY_HEADER = {\n ZFILE: true,\n ZDATA: true,\n};\n\n/**\n * A class that encapsulates behavior for a ZMODEM sender.\n *\n * @extends Session\n */\nZmodem.Session.Send = class ZmodemSendSession extends Zmodem.Session {\n\n /**\n * Not called directly.\n */\n constructor(zrinit_hdr) {\n super();\n\n if (!zrinit_hdr) {\n throw \"Need first header!\";\n }\n else if (zrinit_hdr.NAME !== \"ZRINIT\") {\n throw(\"First header should be ZRINIT, not \" + zrinit_hdr.NAME);\n }\n\n this._last_header_name = 'ZRINIT';\n\n //We don’t need to send crc32. Even if the other side can grok it,\n //there’s no point to sending it since, for now, we assume we’re\n //on a reliable connection, e.g., TCP. Ideally we’d just forgo\n //CRC checks completely, but ZMODEM doesn’t allow that.\n //\n //If we *were* to start using crc32, we’d update this every time\n //we send a header.\n this._subpacket_encode_func = 'encode16';\n\n this._zencoder = new Zmodem.ZDLE();\n\n this._consume_ZRINIT(zrinit_hdr);\n\n this._file_offset = 0;\n\n var zrqinit_count = 0;\n\n this._start_keepalive_on_set_sender = true;\n\n //lrzsz will send ZRINIT until it gets an offer. (keep-alive?)\n //It sends 4 additional ones after the initial ZRINIT and, if\n //no response is received, starts sending “C” (0x43, 67) as if to\n //try to downgrade to XMODEM or YMODEM.\n //var sess = this;\n //this._prepare_to_receive_ZRINIT( function keep_alive() {\n // sess._prepare_to_receive_ZRINIT(keep_alive);\n //} );\n\n //queue up the ZSINIT flag to send -- but seems useless??\n\n /*\n Object.assign(\n this._on_evt,\n {\n file_received: [],\n },\n };\n */\n }\n\n /**\n * Sets the sender function. The first time this is called,\n * it will also initiate a keepalive using ZSINIT until the\n * first file is sent.\n *\n * @param {Function} func - The function to call.\n * It will receive an Array with the relevant octets.\n *\n * @return {Session} The session object (for chaining).\n */\n set_sender(func) {\n super.set_sender(func);\n\n if (this._start_keepalive_on_set_sender) {\n this._start_keepalive_on_set_sender = false;\n this._start_keepalive();\n }\n\n return this;\n }\n\n //7.3.3 .. The sender also uses hex headers when they are\n //not followed by binary data subpackets.\n //\n //FG: … or when the header is ZSINIT? That’s what lrzsz does, anyway.\n //Then it sends a single NUL byte as the payload to an end_ack subpacket.\n _get_header_formatter(name) {\n return SENDER_BINARY_HEADER[name] ? \"to_binary16\" : \"to_hex\";\n }\n\n //In order to keep lrzsz from timing out, we send ZSINIT every 5 seconds.\n //Maybe make this configurable?\n _start_keepalive() {\n //if (this._keepalive_promise) throw \"Keep-alive already started!\";\n if (!this._keepalive_promise) {\n var sess = this;\n\n this._keepalive_promise = new Promise(function(resolve) {\n //console.log(\"SETTING KEEPALIVE TIMEOUT\");\n sess._keepalive_timeout = setTimeout(resolve, KEEPALIVE_INTERVAL);\n }).then( function() {\n sess._next_header_handler = {\n ZACK: function() {\n\n //We’re going to need to ensure that the\n //receiver is ready for all control characters\n //to be escaped. If we’ve already sent a ZSINIT\n //and gotten a response, then we know that that\n //work is already done later on when we actually\n //send an offer.\n sess._got_ZSINIT_ZACK = true;\n },\n };\n sess._send_ZSINIT();\n\n sess._keepalive_promise = null;\n sess._start_keepalive();\n });\n }\n }\n\n _stop_keepalive() {\n if (this._keepalive_promise) {\n //console.log(\"STOPPING KEEPALIVE\");\n clearTimeout(this._keepalive_timeout);\n this._keep_alive_promise = null;\n }\n }\n\n _send_ZSINIT() {\n //See note at _ensure_receiver_escapes_ctrl_chars()\n //for why we have to pass ESCCTL.\n\n var zsinit_flags = [];\n if (this._zencoder.escapes_ctrl_chars()) {\n zsinit_flags.push(\"ESCCTL\");\n }\n\n this._send_header_and_data(\n [\"ZSINIT\", zsinit_flags],\n [0],\n \"end_ack\"\n );\n }\n\n _consume_ZRINIT(hdr) {\n this._last_ZRINIT = hdr;\n\n if (hdr.get_buffer_size()) {\n throw( \"Buffer size (\" + hdr.get_buffer_size() + \") is unsupported!\" );\n }\n\n if (!hdr.can_full_duplex()) {\n throw( \"Half-duplex I/O is unsupported!\" );\n }\n\n if (!hdr.can_overlap_io()) {\n throw( \"Non-overlap I/O is unsupported!\" );\n }\n\n if (hdr.escape_8th_bit()) {\n throw( \"8-bit escaping is unsupported!\" );\n }\n\n if (FORCE_ESCAPE_CTRL_CHARS) {\n this._zencoder.set_escape_ctrl_chars(true);\n if (!hdr.escape_ctrl_chars()) {\n console.debug(\"Peer didn’t request escape of all control characters. Will send ZSINIT to force recognition of escaped control characters.\");\n }\n }\n else {\n this._zencoder.set_escape_ctrl_chars(hdr.escape_ctrl_chars());\n }\n }\n\n //https://stackoverflow.com/questions/23155939/missing-0xf-and-0x16-when-binary-data-through-virtual-serial-port-pair-created-b\n //^^ Because of that, we always escape control characters.\n //The alternative would be that lrz would never receive those\n //two bytes from zmodem.js.\n _ensure_receiver_escapes_ctrl_chars() {\n var promise;\n\n var needs_ZSINIT = !this._last_ZRINIT.escape_ctrl_chars() && !this._got_ZSINIT_ZACK;\n\n if (needs_ZSINIT) {\n var sess = this;\n promise = new Promise( function(res) {\n sess._next_header_handler = {\n ZACK: (hdr) => {\n res();\n },\n };\n sess._send_ZSINIT();\n } );\n }\n else {\n promise = Promise.resolve();\n }\n\n return promise;\n }\n\n _convert_params_to_offer_payload_array(params) {\n params = Zmodem.Validation.offer_parameters(params);\n\n var subpacket_payload = params.name + \"\\x00\";\n\n var subpacket_space_pieces = [\n (params.size || 0).toString(10),\n params.mtime ? params.mtime.toString(8) : \"0\",\n params.mode ? (0x8000 | params.mode).toString(8) : \"0\",\n \"0\", //serial\n ];\n\n if (params.files_remaining) {\n subpacket_space_pieces.push( params.files_remaining );\n\n if (params.bytes_remaining) {\n subpacket_space_pieces.push( params.bytes_remaining );\n }\n }\n\n subpacket_payload += subpacket_space_pieces.join(\" \");\n return this._string_to_octets(subpacket_payload);\n }\n\n /**\n * Send an offer to the receiver.\n *\n * @param {FileDetails} params - All about the file you want to transfer.\n *\n * @returns {Promise} If the receiver accepts the offer, then the\n * resolution is a Transfer object; otherwise the resolution is\n * undefined.\n */\n send_offer(params) {\n if (Zmodem.DEBUG) {\n console.debug(\"SENDING OFFER\", params);\n }\n\n if (!params) throw \"need file params!\";\n\n if (this._sending_file) throw \"Already sending file!\";\n\n var payload_array = this._convert_params_to_offer_payload_array(params);\n\n this._stop_keepalive();\n\n var sess = this;\n\n function zrpos_handler_setter_func() {\n sess._next_header_handler = {\n\n // The receiver may send ZRPOS in at least two cases:\n //\n // 1) A malformed subpacket arrived, so we need to\n // “rewind” a bit and continue from the receiver’s\n // last-successful location in the file.\n //\n // 2) The receiver hasn’t gotten any data for a bit,\n // so it sends ZRPOS as a “ping”.\n //\n // Case #1 shouldn’t happen since zmodem.js requires a\n // reliable transport. Case #2, though, can happen due\n // to either normal network congestion or errors in\n // implementation. In either case, there’s nothing for\n // us to do but to ignore the ZRPOS, with an optional\n // warning.\n //\n ZRPOS: function(hdr) {\n if (Zmodem.DEBUG) {\n console.warn(\"Mid-transfer ZRPOS … implementation error?\");\n }\n\n zrpos_handler_setter_func();\n },\n };\n };\n\n var doer_func = function() {\n\n //return Promise object that is fulfilled when the ZRPOS or ZSKIP arrives.\n //The promise value is the byte offset, or undefined for ZSKIP.\n //If ZRPOS arrives, then send ZDATA(0) and set this._sending_file.\n var handler_setter_promise = new Promise( function(res) {\n sess._next_header_handler = {\n ZSKIP: function() {\n sess._start_keepalive();\n res();\n },\n ZRPOS: function(hdr) {\n sess._sending_file = true;\n\n zrpos_handler_setter_func();\n\n res(\n new Transfer(\n params,\n hdr.get_offset(),\n sess._send_interim_file_piece.bind(sess),\n sess._end_file.bind(sess)\n )\n );\n },\n };\n } );\n\n sess._send_header_and_data( [\"ZFILE\"], payload_array, \"end_ack\" );\n\n delete sess._sent_ZDATA;\n\n return handler_setter_promise;\n };\n\n if (FORCE_ESCAPE_CTRL_CHARS) {\n return this._ensure_receiver_escapes_ctrl_chars().then(doer_func);\n }\n\n return doer_func();\n }\n\n _send_header_and_data( hdr_name_and_args, data_arr, frameend ) {\n var bytes_hdr = this._create_header_bytes(hdr_name_and_args);\n\n var data_bytes = this._build_subpacket_bytes(data_arr, frameend);\n\n bytes_hdr[0].push.apply( bytes_hdr[0], data_bytes );\n\n if (Zmodem.DEBUG) {\n this._log_header( \"SENDING HEADER\", bytes_hdr[1] );\n console.debug( this.type, \"-- HEADER PAYLOAD:\", frameend, data_bytes.length );\n }\n\n this._sender( bytes_hdr[0] );\n\n this._last_sent_header = bytes_hdr[1];\n }\n\n _build_subpacket_bytes( bytes_arr, frameend ) {\n var subpacket = Zmodem.Subpacket.build(bytes_arr, frameend);\n\n return subpacket[this._subpacket_encode_func]( this._zencoder );\n }\n\n _build_and_send_subpacket( bytes_arr, frameend ) {\n this._sender( this._build_subpacket_bytes(bytes_arr, frameend) );\n }\n\n _string_to_octets(string) {\n if (!this._textencoder) {\n this._textencoder = new Zmodem.Text.Encoder();\n }\n\n var uint8arr = this._textencoder.encode(string);\n return Array.prototype.slice.call(uint8arr);\n }\n\n /*\n Potential future support for responding to ZRPOS:\n send_file_offset(offset) {\n }\n */\n\n /*\n Sending logic works thus:\n - ASSUME the receiver can overlap I/O (CANOVIO)\n (so fail if !CANFDX || !CANOVIO)\n - Sender opens the firehose … all ZCRCG (!end/!ack)\n until the end, when we send a ZCRCE (end/!ack)\n NB: try 8k/32k/64k chunk sizes? Looks like there’s\n no need to change the packet otherwise.\n */\n //TODO: Put this on a Transfer object similar to what Receive uses?\n _send_interim_file_piece(bytes_obj) {\n\n //We don’t ask the receiver to confirm because there’s no need.\n this._send_file_part(bytes_obj, \"no_end_no_ack\");\n\n //This pattern will allow\n //error-correction without buffering the entire stream in JS.\n //For now the promise is always resolved, but in the future we\n //can make it only resolve once we’ve gotten acknowledgement.\n return Promise.resolve();\n }\n\n _ensure_we_are_sending() {\n if (!this._sending_file) throw \"Not sending a file currently!\";\n }\n\n //This resolves once we receive ZEOF.\n _end_file(bytes_obj) {\n this._ensure_we_are_sending();\n\n //Is the frame-end-ness of this last packet redundant\n //with the ZEOF packet?? - No. It signals the receiver that\n //the next thing to expect is a header, not a packet.\n\n //no-ack, following lrzsz’s example\n this._send_file_part(bytes_obj, \"end_no_ack\");\n\n var sess = this;\n\n //Register this before we send ZEOF in case of local round-trip.\n //(Basically just for synchronous testing, but.)\n var ret = new Promise( function(res) {\n //console.log(\"UNSETTING SENDING FLAG\");\n sess._sending_file = false;\n sess._prepare_to_receive_ZRINIT(res);\n } );\n\n this._send_header( \"ZEOF\", this._file_offset );\n\n this._file_offset = 0;\n\n return ret;\n }\n\n //Called at the beginning of our session\n //and also when we’re done sending a file.\n _prepare_to_receive_ZRINIT(after_consume) {\n this._next_header_handler = {\n ZRINIT: function(hdr) {\n this._consume_ZRINIT(hdr);\n if (after_consume) after_consume();\n },\n };\n }\n\n /**\n * Signal to the receiver that the ZMODEM session is wrapping up.\n *\n * @returns {Promise} Resolves when the receiver has responded to\n * our signal that the session is over.\n */\n close() {\n var ok_to_close = (this._last_header_name === \"ZRINIT\")\n if (!ok_to_close) {\n ok_to_close = (this._last_header_name === \"ZSKIP\");\n }\n if (!ok_to_close) {\n ok_to_close = (this._last_sent_header.name === \"ZSINIT\") && (this._last_header_name === \"ZACK\");\n }\n\n if (!ok_to_close) {\n throw( \"Can’t close; last received header was “\" + this._last_header_name + \"”\" );\n }\n\n var sess = this;\n\n var ret = new Promise( function(res, rej) {\n sess._next_header_handler = {\n ZFIN: function() {\n sess._sender( OVER_AND_OUT );\n sess._sent_OO = true;\n sess._on_session_end();\n res();\n },\n };\n } );\n\n this._send_header(\"ZFIN\");\n\n return ret;\n }\n\n _has_ended() {\n return this.aborted() || !!this._sent_OO;\n }\n\n _send_file_part(bytes_obj, final_packetend) {\n if (!this._sent_ZDATA) {\n this._send_header( \"ZDATA\", this._file_offset );\n this._sent_ZDATA = true;\n }\n\n var obj_offset = 0;\n\n var bytes_count = bytes_obj.length;\n\n //We have to go through at least once in event of an\n //empty buffer, e.g., an empty end_file.\n while (true) {\n var chunk_size = Math.min(obj_offset + MAX_CHUNK_LENGTH, bytes_count) - obj_offset;\n\n var at_end = (chunk_size + obj_offset) >= bytes_count;\n\n var chunk = bytes_obj.slice( obj_offset, obj_offset + chunk_size );\n if (!(chunk instanceof Array)) {\n chunk = Array.prototype.slice.call(chunk);\n }\n\n this._build_and_send_subpacket(\n chunk,\n at_end ? final_packetend : \"no_end_no_ack\"\n );\n\n this._file_offset += chunk_size;\n obj_offset += chunk_size;\n\n if (obj_offset >= bytes_count) break;\n }\n }\n\n _consume_first() {\n if (!this._parse_and_consume_header()) {\n\n //When the ZMODEM receive program starts, it immediately sends\n //a ZRINIT header to initiate ZMODEM file transfers, or a\n //ZCHALLENGE header to verify the sending program. The receive\n //program resends its header at response time (default 10 second)\n //intervals for a suitable period of time (40 seconds total)\n //before falling back to YMODEM protocol.\n if (this._input_buffer.join() === \"67\") {\n throw \"Receiver has fallen back to YMODEM.\";\n }\n }\n }\n\n _on_session_end() {\n this._stop_keepalive();\n super._on_session_end();\n }\n}\n\nObject.assign(\n Zmodem.Session.Send.prototype,\n {\n type: \"send\",\n }\n);\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zcrc\"),\n require(\"./zdle\"),\n require(\"./zmlib\"),\n require(\"./zerror\")\n);\n\nconst\n ZCRCE = 0x68, // 'h', 104, frame ends, header packet follows\n ZCRCG = 0x69, // 'i', 105, frame continues nonstop\n ZCRCQ = 0x6a, // 'j', 106, frame continues, ZACK expected\n ZCRCW = 0x6b // 'k', 107, frame ends, ZACK expected\n;\n\nvar SUBPACKET_BUILDER;\n\n/** Class that represents a ZMODEM data subpacket. */\nZmodem.Subpacket = class ZmodemSubpacket {\n\n /**\n * Build a Subpacket subclass given a payload and frame end string.\n *\n * @param {Array} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n *\n * @param {string} frameend - One of:\n * - `no_end_no_ack`\n * - `end_no_ack`\n * - `no_end_ack` (unused currently)\n * - `end_ack`\n *\n * @returns {Subpacket} An instance of the appropriate Subpacket subclass.\n */\n static build(octets, frameend) {\n\n //TODO: make this better\n var Ctr = SUBPACKET_BUILDER[frameend];\n if (!Ctr) {\n throw(\"No subpacket type “\" + frameend + \"” is defined! Try one of: \" + Object.keys(SUBPACKET_BUILDER).join(\", \"));\n }\n\n return new Ctr(octets);\n }\n\n /**\n * Return the octet values array that represents the object\n * encoded with a 16-bit CRC.\n *\n * @param {ZDLE} zencoder - A ZDLE instance to use for ZDLE encoding.\n *\n * @returns {number[]} An array of octet values suitable for sending\n * as binary data.\n */\n encode16(zencoder) {\n return this._encode( zencoder, Zmodem.CRC.crc16 );\n }\n\n /**\n * Return the octet values array that represents the object\n * encoded with a 32-bit CRC.\n *\n * @param {ZDLE} zencoder - A ZDLE instance to use for ZDLE encoding.\n *\n * @returns {number[]} An array of octet values suitable for sending\n * as binary data.\n */\n encode32(zencoder) {\n return this._encode( zencoder, Zmodem.CRC.crc32 );\n }\n\n /**\n * Return the subpacket payload’s octet values.\n *\n * NOTE: For speed, this returns the actual data in the subpacket;\n * if you mutate this return value, you alter the Subpacket object\n * internals. This is OK if you won’t need the Subpacket anymore, but\n * just be careful.\n *\n * @returns {number[]} The subpacket’s payload, represented as an\n * array of octet values. **DO NOT ALTER THIS ARRAY** unless you\n * no longer need the Subpacket.\n */\n get_payload() { return this._payload }\n\n /**\n * Parse out a Subpacket object from a given array of octet values,\n * assuming a 16-bit CRC.\n *\n * An exception is thrown if the given bytes are definitively invalid\n * as subpacket values with 16-bit CRC.\n *\n * @param {number[]} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {Subpacket|undefined} An instance of the appropriate Subpacket\n * subclass, or undefined if not enough octet values are given\n * to determine whether there is a valid subpacket here or not.\n */\n static parse16(octets) {\n return ZmodemSubpacket._parse(octets, 2);\n }\n\n //parse32 test:\n //[102, 105, 108, 101, 110, 97, 109, 101, 119, 105, 116, 104, 115, 112, 97, 99, 101, 115, 0, 49, 55, 49, 51, 49, 52, 50, 52, 51, 50, 49, 55, 50, 49, 48, 48, 54, 52, 52, 48, 49, 49, 55, 0, 43, 8, 63, 115, 23, 17]\n\n /**\n * Same as parse16(), but assuming a 32-bit CRC.\n *\n * @param {number[]} octets - The octet values to parse.\n * Each array member should be an 8-bit unsigned integer (0-255).\n * This object is mutated in the function.\n *\n * @returns {Subpacket|undefined} An instance of the appropriate Subpacket\n * subclass, or undefined if not enough octet values are given\n * to determine whether there is a valid subpacket here or not.\n */\n static parse32(octets) {\n return ZmodemSubpacket._parse(octets, 4);\n }\n\n /**\n * Not used directly.\n */\n constructor(payload) {\n this._payload = payload;\n }\n\n _encode(zencoder, crc_func) {\n return zencoder.encode( this._payload.slice(0) ).concat(\n [ Zmodem.ZMLIB.ZDLE, this._frameend_num ],\n zencoder.encode( crc_func( this._payload.concat(this._frameend_num) ) )\n );\n }\n\n //Because of ZDLE encoding, we’ll never see any of the frame-end octets\n //in a stream except as the ends of data payloads.\n static _parse(bytes_arr, crc_len) {\n\n var end_at;\n var creator;\n\n //These have to be written in decimal since they’re lookup keys.\n var _frame_ends_lookup = {\n 104: ZEndNoAckSubpacket,\n 105: ZNoEndNoAckSubpacket,\n 106: ZNoEndAckSubpacket,\n 107: ZEndAckSubpacket,\n };\n\n var zdle_at = 0;\n while (zdle_at < bytes_arr.length) {\n zdle_at = bytes_arr.indexOf( Zmodem.ZMLIB.ZDLE, zdle_at );\n if (zdle_at === -1) return;\n\n var after_zdle = bytes_arr[ zdle_at + 1 ];\n creator = _frame_ends_lookup[ after_zdle ];\n if (creator) {\n end_at = zdle_at + 1;\n break;\n }\n\n zdle_at++;\n }\n\n if (!creator) return;\n\n var frameend_num = bytes_arr[end_at];\n\n //sanity check\n if (bytes_arr[end_at - 1] !== Zmodem.ZMLIB.ZDLE) {\n throw( \"Byte before frame end should be ZDLE, not \" + bytes_arr[end_at - 1] );\n }\n\n var zdle_encoded_payload = bytes_arr.splice( 0, end_at - 1 );\n\n var got_crc = Zmodem.ZDLE.splice( bytes_arr, 2, crc_len );\n if (!got_crc) {\n //got payload but no CRC yet .. should be rare!\n\n //We have to put the ZDLE-encoded payload back before returning.\n bytes_arr.unshift.apply(bytes_arr, zdle_encoded_payload);\n\n return;\n }\n\n var payload = Zmodem.ZDLE.decode(zdle_encoded_payload);\n\n //We really shouldn’t need to do this, but just for good measure.\n //I suppose it’s conceivable this may run over UDP or something?\n Zmodem.CRC[ (crc_len === 2) ? \"verify16\" : \"verify32\" ](\n payload.concat( [frameend_num] ),\n got_crc\n );\n\n return new creator(payload, got_crc);\n }\n}\n\nclass ZEndSubpacketBase extends Zmodem.Subpacket {\n frame_end() { return true }\n}\nclass ZNoEndSubpacketBase extends Zmodem.Subpacket {\n frame_end() { return false }\n}\n\n//Used for end-of-file.\nclass ZEndNoAckSubpacket extends ZEndSubpacketBase {\n ack_expected() { return false }\n}\nZEndNoAckSubpacket.prototype._frameend_num = ZCRCE;\n\n//Used for ZFILE and ZSINIT payloads.\nclass ZEndAckSubpacket extends ZEndSubpacketBase {\n ack_expected() { return true }\n}\nZEndAckSubpacket.prototype._frameend_num = ZCRCW;\n\n//Used for ZDATA, prior to end-of-file.\nclass ZNoEndNoAckSubpacket extends ZNoEndSubpacketBase {\n ack_expected() { return false }\n}\nZNoEndNoAckSubpacket.prototype._frameend_num = ZCRCG;\n\n//only used if receiver can full-duplex\nclass ZNoEndAckSubpacket extends ZNoEndSubpacketBase {\n ack_expected() { return true }\n}\nZNoEndAckSubpacket.prototype._frameend_num = ZCRCQ;\n\nSUBPACKET_BUILDER = {\n end_no_ack: ZEndNoAckSubpacket,\n end_ack: ZEndAckSubpacket,\n no_end_no_ack: ZNoEndNoAckSubpacket,\n no_end_ack: ZNoEndAckSubpacket,\n};\n","\"use strict\";\n\nvar Zmodem = module.exports;\n\nObject.assign(\n Zmodem,\n require(\"./zerror\")\n);\n\nconst LOOKS_LIKE_ZMODEM_HEADER = /\\*\\x18[AC]|\\*\\*\\x18B/;\n\nfunction _validate_number(key, value) {\n if (value < 0) {\n throw new Zmodem.Error(\"validation\", \"“\" + key + \"” (\" + value + \") must be nonnegative.\");\n }\n\n if (value !== Math.floor(value)) {\n throw new Zmodem.Error(\"validation\", \"“\" + key + \"” (\" + value + \") must be an integer.\");\n }\n}\n\n/** Validation logic for zmodem.js\n *\n * @exports Validation\n */\nZmodem.Validation = {\n\n /**\n * Validates and normalizes a set of parameters for an offer to send.\n * NOTE: This returns “mtime” as epoch seconds, not a Date. This is\n * inconsistent with the get_details() method in Session, but it’s\n * more useful for sending over the wire.\n *\n * @param {FileDetails} params - The file details. Some fairly trivial\n * variances from the specification are allowed.\n *\n * @return {FileDetails} The parameters that should be sent. `mtime`\n * will be a Date rather than a number.\n */\n offer_parameters: function offer_parameters(params) {\n if (!params.name) {\n throw new Zmodem.Error(\"validation\", \"Need “name”!\");\n }\n\n if (typeof params.name !== \"string\") {\n throw new Zmodem.Error(\"validation\", \"“name” (\" + params.name + \") must be a string!\");\n }\n\n //So that we can override values as is useful\n //without affecting the passed-in object.\n params = Object.assign({}, params);\n\n if (LOOKS_LIKE_ZMODEM_HEADER.test(params.name)) {\n console.warn(\"The filename \" + JSON.stringify(name) + \" contains characters that look like a ZMODEM header. This could corrupt the ZMODEM session; consider renaming it so that the filename doesn’t contain control characters.\");\n }\n\n if (params.serial !== null && params.serial !== undefined) {\n throw new Zmodem.Error(\"validation\", \"“serial” is meaningless.\");\n }\n\n params.serial = null;\n\n [\"size\", \"mode\", \"files_remaining\", \"bytes_remaining\"].forEach(\n function(k) {\n var ok;\n switch (typeof params[k]) {\n case \"object\":\n ok = (params[k] === null);\n break;\n case \"undefined\":\n params[k] = null;\n ok = true;\n break;\n case \"number\":\n _validate_number(k, params[k]);\n\n ok = true;\n break;\n }\n\n if (!ok) {\n throw new Zmodem.Error(\"validation\", \"“\" + k + \"” (\" + params[k] + \") must be null, undefined, or a number.\");\n }\n }\n );\n\n if (typeof params.mode === \"number\") {\n params.mode |= 0x8000;\n }\n\n if (params.files_remaining === 0) {\n throw new Zmodem.Error(\"validation\", \"“files_remaining”, if given, must be positive.\");\n }\n\n var mtime_ok;\n switch (typeof params.mtime) {\n case \"object\":\n mtime_ok = true;\n\n if (params.mtime instanceof Date) {\n\n var date_obj = params.mtime;\n params.mtime = Math.floor( date_obj.getTime() / 1000 );\n if (params.mtime < 0) {\n throw new Zmodem.Error(\"validation\", \"“mtime” (\" + date_obj + \") must not be earlier than 1970.\");\n }\n }\n else if (params.mtime !== null) {\n mtime_ok = false;\n }\n\n break;\n\n case \"undefined\":\n params.mtime = null;\n mtime_ok = true;\n break;\n case \"number\":\n _validate_number(\"mtime\", params.mtime);\n mtime_ok = true;\n break;\n }\n\n if (!mtime_ok) {\n throw new Zmodem.Error(\"validation\", \"“mtime” (\" + params.mtime + \") must be null, undefined, a Date, or a number.\");\n }\n\n return params;\n },\n};\n","export class ConnectionFactory {\n url: string;\n protocols: string[];\n\n constructor(url: string, protocols: string[]) {\n this.url = url;\n this.protocols = protocols;\n };\n\n create(): Connection {\n return new Connection(this.url, this.protocols);\n };\n}\n\nexport class Connection {\n bare: WebSocket;\n\n\n constructor(url: string, protocols: string[]) {\n this.bare = new WebSocket(url, protocols);\n }\n\n open() {\n // nothing todo for websocket\n };\n\n close() {\n this.bare.close();\n };\n\n send(data: string) {\n this.bare.send(data);\n };\n\n isOpen(): boolean {\n if (this.bare.readyState == WebSocket.CONNECTING ||\n this.bare.readyState == WebSocket.OPEN) {\n return true\n }\n return false\n }\n\n onOpen(callback: () => void) {\n this.bare.onopen = (event) => {\n callback();\n }\n };\n\n onReceive(callback: (data: string) => void) {\n this.bare.onmessage = (event) => {\n callback(event.data);\n }\n };\n\n onClose(callback: () => void) {\n this.bare.onclose = (event) => {\n callback();\n };\n };\n}\n","import * as Zmodem from 'zmodem.js/src/zmodem_browser';\n\nexport const protocols = [\"webtty\"];\n\nexport const msgInputUnknown = '0';\nexport const msgInput = '1';\nexport const msgPing = '2';\nexport const msgResizeTerminal = '3';\n\nexport const msgUnknownOutput = '0';\nexport const msgOutput = '1';\nexport const msgPong = '2';\nexport const msgSetWindowTitle = '3';\nexport const msgSetPreferences = '4';\nexport const msgSetReconnect = '5';\nexport const msgSetBufferSize = '6';\n\n\nexport interface Terminal {\n info(): { columns: number, rows: number };\n output(data: string): void;\n showMessage(message: string, timeout: number): void;\n getMessage(): HTMLElement;\n removeMessage(): void;\n setWindowTitle(title: string): void;\n setPreferences(value: object): void;\n onInput(callback: (input: string) => void): void;\n onResize(callback: (colmuns: number, rows: number) => void): void;\n reset(): void;\n deactivate(): void;\n close(): void;\n}\n\nexport interface Connection {\n open(): void;\n close(): void;\n send(data: string): void;\n isOpen(): boolean;\n onOpen(callback: () => void): void;\n onReceive(callback: (data: string) => void): void;\n onClose(callback: () => void): void;\n}\n\nexport interface ConnectionFactory {\n create(): Connection;\n}\n\n\nexport class WebTTY {\n term: Terminal;\n connectionFactory: ConnectionFactory;\n connection: Connection;\n args: string;\n authToken: string;\n reconnect: number;\n bufSize: number;\n sentry: Zmodem.Sentry;\n\n constructor(term: Terminal, connectionFactory: ConnectionFactory, args: string, authToken: string) {\n this.term = term;\n this.connectionFactory = connectionFactory;\n this.args = args;\n this.authToken = authToken;\n this.reconnect = -1;\n this.bufSize = 1024;\n\n this.sentry = new Zmodem.Sentry({\n 'to_terminal': (d: any) => this.term.output(d),\n 'on_detect': (detection: Zmodem.Detection) => this.zmodemDetect(detection),\n 'sender': (x: Uint8Array) => this.sendInput(x),\n 'on_retract': (x: any) => alert(\"never mind!\"),\n })\n };\n\n private zmodemDetect(detection: Zmodem.Detection) {\n var zsession = detection.confirm();\n\n if (zsession.type === \"send\") {\n this.zmodemSend(zsession);\n }\n else {\n zsession.on(\"offer\", (xfer: any) => this.zmodemOffer(xfer));\n zsession.start();\n }\n }\n\n private zmodemSend(zsession: any) {\n let dialog = this.getFileSendDialog();\n dialog.style.display = 'block';\n\n let selector = document.getElementById(\"sendFileSelector\");\n if (selector != null) {\n selector.onchange = (event) => {\n Zmodem.Browser.send_files(zsession, (event.target as HTMLInputElement).files)\n .then(() => zsession.close())\n .catch(e => console.log(e));\n dialog.style.display = 'none';\n };\n }\n }\n\n private zmodemOffer(xfer: Zmodem.Offer) {\n var dialog = this.getFileAcceptanceDialog();\n dialog.style.display = 'block';\n\n var filenameElem = document.getElementById(\"filename\");\n if (filenameElem != null) {\n filenameElem.textContent = xfer.get_details().name;\n }\n var sizeElem = document.getElementById(\"filesize\");\n if (sizeElem != null) {\n sizeElem.textContent = xfer.get_details().size;\n }\n var skipLink = document.getElementById(\"skipTransfer\");\n if (skipLink != null) {\n skipLink.onclick = (ev) => {\n xfer.skip();\n dialog.style.display = 'none';\n }\n }\n\n var acceptLink = document.getElementById(\"acceptTransfer\");\n if (acceptLink != null) {\n acceptLink.onclick = (ev) => {\n dialog.style.display = 'none';\n xfer.accept().then((payloads: any) => {\n //Now you need some mechanism to save the file.\n //An example of how you can do this in a browser:\n Zmodem.Browser.save_to_disk(\n payloads,\n xfer.get_details().name\n );\n });\n }\n }\n }\n\n private sendInput(input: string | Uint8Array) {\n let effectiveBufferSize = this.bufSize - 1;\n let dataString: string\n\n if (Array.isArray(input)) {\n dataString = String.fromCharCode.apply(null, input);\n } else {\n dataString = (input as string);\n }\n\n // Account for base64 encoding\n let maxChunkSize = Math.floor(effectiveBufferSize / 4)*3;\n\n for (let i = 0; i < Math.ceil(dataString.length / maxChunkSize); i++) {\n let inputChunk = dataString.substring(i * maxChunkSize, Math.min((i + 1) * maxChunkSize, dataString.length))\n this.connection.send(msgInput + btoa(inputChunk));\n }\n }\n\n getFileAcceptanceDialog(): HTMLElement {\n let dialog = document.getElementById(\"acceptFileDialog\");\n if (dialog == null) {\n dialog = document.createElement(\"div\");\n dialog.id = 'acceptFileDialog';\n dialog.className = 'fileDialog';\n dialog.innerHTML = '

Incoming file transfer: ( bytes)

Accept Decline';\n document.body.appendChild(dialog);\n }\n return dialog;\n }\n\n getFileSendDialog(): HTMLElement {\n let dialog = document.getElementById(\"sendFileDialog\");\n if (dialog == null) {\n dialog = document.createElement(\"div\");\n dialog.id = 'sendFileDialog';\n dialog.className = 'fileDialog';\n dialog.innerHTML = '

Remote ready to receive files.

';\n document.body.appendChild(dialog);\n }\n return dialog;\n }\n\n open() {\n let connection = this.connectionFactory.create();\n let pingTimer: NodeJS.Timeout;\n let reconnectTimeout: NodeJS.Timeout;\n this.connection = connection;\n\n const setup = () => {\n connection.onOpen(() => {\n const termInfo = this.term.info();\n\n connection.send(JSON.stringify(\n {\n Arguments: this.args,\n AuthToken: this.authToken,\n }\n ));\n\n\n const resizeHandler = (colmuns: number, rows: number) => {\n connection.send(\n msgResizeTerminal + JSON.stringify(\n {\n columns: colmuns,\n rows: rows\n }\n )\n );\n };\n\n this.term.onResize(resizeHandler);\n resizeHandler(termInfo.columns, termInfo.rows);\n\n // Set encoding to base64 (TODO: Fix this up)\n connection.send(\"4base64\");\n\n this.term.onInput(\n (input: string) => {\n this.sendInput(input);\n }\n );\n\n pingTimer = setInterval(() => {\n connection.send(msgPing)\n }, 30 * 1000);\n\n });\n\n connection.onReceive((data) => {\n const payload = data.slice(1);\n switch (data[0]) {\n case msgOutput:\n this.sentry.consume(Uint8Array.from(atob(payload), c => c.charCodeAt(0)));\n break;\n case msgPong:\n break;\n case msgSetWindowTitle:\n this.term.setWindowTitle(payload);\n break;\n case msgSetPreferences:\n const preferences = JSON.parse(payload);\n this.term.setPreferences(preferences);\n break;\n case msgSetReconnect:\n const autoReconnect = JSON.parse(payload);\n console.log(\"Enabling reconnect: \" + autoReconnect + \" seconds\")\n this.reconnect = autoReconnect;\n break;\n case msgSetBufferSize:\n const bufSize = JSON.parse(payload);\n this.bufSize = bufSize;\n break;\n }\n });\n\n connection.onClose(() => {\n clearInterval(pingTimer);\n this.term.deactivate();\n this.term.showMessage(\"Connection Closed\", 0);\n if (this.reconnect > 0) {\n reconnectTimeout = setTimeout(() => {\n connection = this.connectionFactory.create();\n this.term.reset();\n setup();\n }, this.reconnect * 1000);\n }\n });\n\n connection.open();\n }\n\n setup();\n return () => {\n clearTimeout(reconnectTimeout);\n connection.close();\n }\n };\n};\n","import { Terminal, IDisposable } from \"xterm\";\nimport { FitAddon } from 'xterm-addon-fit';\nimport { WebLinksAddon } from 'xterm-addon-web-links';\nimport { WebglAddon } from 'xterm-addon-webgl';\n\nexport class Xterm {\n elem: HTMLElement;\n term: Terminal;\n resizeListener: () => void;\n\n message: HTMLElement;\n messageTimeout: number;\n messageTimer: NodeJS.Timeout;\n onResizeHandler: IDisposable;\n onDataHandler: IDisposable;\n fitAddOn: FitAddon;\n\n constructor(elem: HTMLElement) {\n this.elem = elem;\n this.term = new Terminal();\n this.fitAddOn = new FitAddon();\n this.term.loadAddon(new WebLinksAddon());\n this.term.loadAddon(this.fitAddOn);\n\n this.message = elem.ownerDocument.createElement(\"div\");\n this.message.className = \"xterm-overlay\";\n this.messageTimeout = 2000;\n\n this.resizeListener = () => {\n this.fitAddOn.fit();\n this.term.scrollToBottom();\n this.showMessage(String(this.term.cols) + \"x\" + String(this.term.rows), this.messageTimeout);\n };\n\n this.term.open(elem);\n this.term.focus();\n this.resizeListener();\n window.addEventListener(\"resize\", () => { this.resizeListener(); });\n };\n\n info(): { columns: number, rows: number } {\n return { columns: this.term.cols, rows: this.term.rows };\n };\n\n output(data: string) {\n this.term.write(data);\n };\n\n getMessage(): HTMLElement {\n return this.message;\n }\n\n showMessage(message: string, timeout: number) {\n this.message.innerHTML = message;\n this.showMessageElem(timeout);\n }\n\n showMessageElem(timeout: number) {\n this.elem.appendChild(this.message);\n\n if (this.messageTimer) {\n clearTimeout(this.messageTimer);\n }\n if (timeout > 0) {\n this.messageTimer = setTimeout(() => {\n this.elem.removeChild(this.message);\n }, timeout);\n }\n };\n\n removeMessage(): void {\n if (this.message.parentNode == this.elem) {\n this.elem.removeChild(this.message);\n }\n }\n\n setWindowTitle(title: string) {\n document.title = title;\n };\n\n setPreferences(value: object) {\n Object.keys(value).forEach((key) => {\n if (key == \"EnableWebGL\" && key) {\n this.term.loadAddon(new WebglAddon());\n } else if (key == \"font-size\") {\n this.term.setOption(\"fontSize\", value[key])\n } else if (key == \"font-family\") {\n this.term.setOption(\"fontFamily\", value[key])\n }\n });\n };\n\n onInput(callback: (input: string) => void) {\n this.onDataHandler = this.term.onData((data) => {\n callback(data);\n });\n\n };\n\n onResize(callback: (colmuns: number, rows: number) => void) {\n this.onResizeHandler = this.term.onResize(() => {\n callback(this.term.cols, this.term.rows);\n });\n };\n\n deactivate(): void {\n this.onDataHandler.dispose();\n this.onResizeHandler.dispose();\n this.term.blur();\n }\n\n reset(): void {\n this.removeMessage();\n this.term.clear();\n }\n\n close(): void {\n window.removeEventListener(\"resize\", this.resizeListener);\n this.term.dispose();\n }\n}\n","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId](module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n","import { Xterm } from \"./xterm\";\nimport { Terminal, WebTTY, protocols } from \"./webtty\";\nimport { ConnectionFactory } from \"./websocket\";\n\n// @TODO remove these\ndeclare var gotty_auth_token: string;\ndeclare var gotty_term: string;\n\nconst elem = document.getElementById(\"terminal\")\n\nif (elem !== null) {\n var term: Terminal;\n term = new Xterm(elem);\n\n const httpsEnabled = window.location.protocol == \"https:\";\n const url = (httpsEnabled ? 'wss://' : 'ws://') + window.location.host + window.location.pathname + 'ws';\n const args = window.location.search;\n const factory = new ConnectionFactory(url, protocols);\n const wt = new WebTTY(term, factory, args, gotty_auth_token);\n const closer = wt.open();\n\n window.addEventListener(\"unload\", () => {\n closer();\n term.close();\n });\n};\n"],"sourceRoot":""} \ No newline at end of file diff --git a/js/package-lock.json b/js/package-lock.json index edba5e6..837954b 100644 --- a/js/package-lock.json +++ b/js/package-lock.json @@ -1491,23 +1491,6 @@ "webpack": "^4.0.0 || ^5.0.0" } }, - "node_modules/style-loader/node_modules/schema-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", - "dependencies": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - }, - "engines": { - "node": ">= 10.13.0" - }, - "funding": { - "type": "opencollective", - "url": "https://opencollective.com/webpack" - } - }, "node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", @@ -2970,18 +2953,6 @@ "requires": { "loader-utils": "^2.0.0", "schema-utils": "^3.0.0" - }, - "dependencies": { - "schema-utils": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", - "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", - "requires": { - "@types/json-schema": "^7.0.6", - "ajv": "^6.12.5", - "ajv-keywords": "^3.5.2" - } - } } }, "supports-color": { diff --git a/js/src/webtty.ts b/js/src/webtty.ts index af0caf1..d979f2c 100644 --- a/js/src/webtty.ts +++ b/js/src/webtty.ts @@ -149,7 +149,7 @@ export class WebTTY { let maxChunkSize = Math.floor(effectiveBufferSize / 4)*3; for (let i = 0; i < Math.ceil(dataString.length / maxChunkSize); i++) { - let inputChunk = dataString.substring(i * effectiveBufferSize, Math.min((i + 1) * effectiveBufferSize, dataString.length)) + let inputChunk = dataString.substring(i * maxChunkSize, Math.min((i + 1) * maxChunkSize, dataString.length)) this.connection.send(msgInput + btoa(inputChunk)); } } @@ -210,6 +210,9 @@ export class WebTTY { this.term.onResize(resizeHandler); resizeHandler(termInfo.columns, termInfo.rows); + // Set encoding to base64 (TODO: Fix this up) + connection.send("4base64"); + this.term.onInput( (input: string) => { this.sendInput(input); diff --git a/webtty/codecs.go b/webtty/codecs.go new file mode 100644 index 0000000..06b1973 --- /dev/null +++ b/webtty/codecs.go @@ -0,0 +1,19 @@ +package webtty + +type Decoder interface { + Decode(dst, src []byte) (int, error) +} + +type Encoder interface { + Encode(dst, src []byte) (int, error) +} + +type NullCodec struct{} + +func (NullCodec) Encode(dst, src []byte) (int, error) { + return copy(dst, src), nil +} + +func (NullCodec) Decode(dst, src []byte) (int, error) { + return copy(dst, src), nil +} diff --git a/webtty/message_types.go b/webtty/message_types.go index 9cbc8e8..72cea8c 100644 --- a/webtty/message_types.go +++ b/webtty/message_types.go @@ -13,6 +13,8 @@ const ( Ping = '2' // Notify that the browser size has been changed ResizeTerminal = '3' + // Change encoding + SetEncoding = '4' ) const ( diff --git a/webtty/webtty.go b/webtty/webtty.go index 2d65074..90c8c31 100644 --- a/webtty/webtty.go +++ b/webtty/webtty.go @@ -24,6 +24,7 @@ type WebTTY struct { rows int reconnect int // in seconds masterPrefs []byte + decoder Decoder bufferSize int writeMutex sync.Mutex @@ -43,6 +44,7 @@ func New(masterConn Master, slave Slave, options ...Option) (*WebTTY, error) { rows: 0, bufferSize: 1024, + decoder: &NullCodec{}, } for _, option := range options { @@ -177,9 +179,9 @@ func (wt *WebTTY) handleMasterReadEvent(data []byte) error { } var decodedBuffer = make([]byte, len(data)) - n, err := base64.StdEncoding.Decode(decodedBuffer, data[1:]) + n, err := wt.decoder.Decode(decodedBuffer, data[1:]) if err != nil { - return errors.Wrapf(err, "failed to write received data to slave") + return errors.Wrapf(err, "failed to decode received data") } _, err = wt.slave.Write(decodedBuffer[:n]) @@ -193,6 +195,14 @@ func (wt *WebTTY) handleMasterReadEvent(data []byte) error { return errors.Wrapf(err, "failed to return Pong message to master") } + case SetEncoding: + switch string(data[1:]) { + case "base64": + wt.decoder = base64.StdEncoding + case "null": + wt.decoder = NullCodec{} + } + case ResizeTerminal: if wt.columns != 0 && wt.rows != 0 { break diff --git a/webtty/webtty_test.go b/webtty/webtty_test.go index 9923d93..fca6a80 100644 --- a/webtty/webtty_test.go +++ b/webtty/webtty_test.go @@ -98,8 +98,8 @@ func TestWriteFromFrontend(t *testing.T) { checkNextMsgType(t, mMaster.gottyToMasterReader, SetWindowTitle) checkNextMsgType(t, mMaster.gottyToMasterReader, SetBufferSize) - // simulate input from frontend... ("hello" in base64) - message := []byte("1aGVsbG8=\n") // line buffered canonical mode + // simulate input from frontend... + message := []byte("1hello\n") // line buffered canonical mode mMaster.masterToGottyWriter.Write(message) // ...and make sure it makes it through to the slave intact @@ -108,7 +108,7 @@ func TestWriteFromFrontend(t *testing.T) { if err != nil { t.Fatalf("Unexpected error from Write(): %s", err) } - if !bytes.Equal(readBuf[:n], []byte("hello")) { + if !bytes.Equal(readBuf[:n], message[1:]) { t.Fatalf("Unexpected message received: `%s`", readBuf[:n]) } } From 7f05f2fe17d37319eb083630a2731f9ecc970a4b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20L=2E=20Hansen?= Date: Sat, 9 Apr 2022 10:10:03 +0000 Subject: [PATCH 14/56] Use bootstrap components for up- and downloads --- LICENSE | 2 +- bindata/static/css/index.css | 15 +- bindata/static/css/xterm.css | 12 +- bindata/static/index.html | 36 +- bindata/static/js/gotty.js | 2 +- bindata/static/js/gotty.js.LICENSE.txt | 524 +- bindata/static/js/gotty.js.map | 2 +- bindata/static/js/gotty.licenses.txt | 650 +++ js/package-lock.json | 6268 ++++++++++++++++++++---- js/package.json | 15 +- js/src/MyModal.tsx | 64 + js/src/bootstrap.scss | 27 + js/src/main.ts | 7 +- js/src/websocket.ts | 1 - js/src/webtty.ts | 277 -- js/src/webtty.tsx | 270 + js/src/{xterm.ts => xterm.tsx} | 61 +- js/src/zmodem.tsx | 245 + js/tsconfig.json | 6 +- js/webpack.config.js | 22 +- resources/index.css | 15 +- resources/index.html | 36 +- 22 files changed, 6840 insertions(+), 1717 deletions(-) create mode 100644 bindata/static/js/gotty.licenses.txt create mode 100644 js/src/MyModal.tsx create mode 100644 js/src/bootstrap.scss delete mode 100644 js/src/webtty.ts create mode 100644 js/src/webtty.tsx rename js/src/{xterm.ts => xterm.tsx} (68%) create mode 100644 js/src/zmodem.tsx diff --git a/LICENSE b/LICENSE index 85d168d..c9627aa 100644 --- a/LICENSE +++ b/LICENSE @@ -1,7 +1,7 @@ The MIT License (MIT) Copyright (c) 2015-2017 Iwasaki Yudai -Copyright (c) 2021 Søren L. Hansen +Copyright (c) 2021-2022 Søren L. Hansen Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/bindata/static/css/index.css b/bindata/static/css/index.css index 0223c3a..7a04b05 100644 --- a/bindata/static/css/index.css +++ b/bindata/static/css/index.css @@ -6,15 +6,8 @@ html, body, #terminal { margin: 0%; } -.fileDialog { - position: fixed; - top: 40%; - left: 40%; - background-color: lightgray; - padding: 20px; - border: 10px; - border-color: red; - border-width: medium; - display: none; - z-index: 5; +.progress .progress-bar { + transition: unset; + transition-duration: 0.1s; + transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1); } \ No newline at end of file diff --git a/bindata/static/css/xterm.css b/bindata/static/css/xterm.css index 831a89c..ab3965b 100644 --- a/bindata/static/css/xterm.css +++ b/bindata/static/css/xterm.css @@ -133,7 +133,8 @@ cursor: default; } -.xterm.xterm-cursor-pointer { +.xterm.xterm-cursor-pointer, +.xterm .xterm-cursor-pointer { cursor: pointer; } @@ -168,3 +169,12 @@ .xterm-underline { text-decoration: underline; } + +.xterm-strikethrough { + text-decoration: line-through; +} + +.xterm-screen .xterm-decoration-container .xterm-decoration { + z-index: 6; + position: absolute; +} diff --git a/bindata/static/index.html b/bindata/static/index.html index fe45cb7..3771078 100644 --- a/bindata/static/index.html +++ b/bindata/static/index.html @@ -1,18 +1,22 @@ - - {{ .title }} - - - - - - - - -
- - - - - + + + {{ .title }} + + + + + + + + + + +
+ + + + + + \ No newline at end of file diff --git a/bindata/static/js/gotty.js b/bindata/static/js/gotty.js index 1132ead..fcce5ea 100644 --- a/bindata/static/js/gotty.js +++ b/bindata/static/js/gotty.js @@ -1,3 +1,3 @@ /*! For license information please see gotty.js.LICENSE.txt */ -(()=>{var e={619:(e,t)=>{var r;r=function(e){e.version="1.2.1";var t=function(){for(var e=0,t=new Array(256),r=0;256!=r;++r)e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=1&(e=r)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1)?-306674912^e>>>1:e>>>1,t[r]=e;return"undefined"!=typeof Int32Array?new Int32Array(t):t}(),r=function(e){var t=0,r=0,i=0,n="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(i=0;256!=i;++i)n[i]=e[i];for(i=0;256!=i;++i)for(r=e[i],t=256+i;t<4096;t+=256)r=n[t]=r>>>8^e[255&r];var o=[];for(i=1;16!=i;++i)o[i-1]="undefined"!=typeof Int32Array?n.subarray(256*i,256*i+256):n.slice(256*i,256*i+256);return o}(t),i=r[0],n=r[1],o=r[2],s=r[3],a=r[4],c=r[5],l=r[6],h=r[7],u=r[8],_=r[9],f=r[10],d=r[11],p=r[12],v=r[13],g=r[14];e.table=t,e.bstr=function(e,r){for(var i=-1^r,n=0,o=e.length;n>>8^t[255&(i^e.charCodeAt(n++))];return~i},e.buf=function(e,r){for(var y=-1^r,m=e.length-15,b=0;b>8&255]^p[e[b++]^y>>16&255]^d[e[b++]^y>>>24]^f[e[b++]]^_[e[b++]]^u[e[b++]]^h[e[b++]]^l[e[b++]]^c[e[b++]]^a[e[b++]]^s[e[b++]]^o[e[b++]]^n[e[b++]]^i[e[b++]]^t[e[b++]];for(m+=15;b>>8^t[255&(y^e[b++])];return~y},e.str=function(e,r){for(var i=-1^r,n=0,o=e.length,s=0,a=0;n>>8^t[255&(i^s)]:s<2048?i=(i=i>>>8^t[255&(i^(192|s>>6&31))])>>>8^t[255&(i^(128|63&s))]:s>=55296&&s<57344?(s=64+(1023&s),a=1023&e.charCodeAt(n++),i=(i=(i=(i=i>>>8^t[255&(i^(240|s>>8&7))])>>>8^t[255&(i^(128|s>>2&63))])>>>8^t[255&(i^(128|a>>6&15|(3&s)<<4))])>>>8^t[255&(i^(128|63&a))]):i=(i=(i=i>>>8^t[255&(i^(224|s>>12&15))])>>>8^t[255&(i^(128|s>>6&63))])>>>8^t[255&(i^(128|63&s))];return~i}},"undefined"==typeof DO_NOT_EXPORT_CRC?r(t):r({})},881:e=>{self,e.exports=(()=>{"use strict";var e={775:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.FitAddon=void 0;var r=function(){function e(){}return e.prototype.activate=function(e){this._terminal=e},e.prototype.dispose=function(){},e.prototype.fit=function(){var e=this.proposeDimensions();if(e&&this._terminal){var t=this._terminal._core;this._terminal.rows===e.rows&&this._terminal.cols===e.cols||(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}},e.prototype.proposeDimensions=function(){if(this._terminal&&this._terminal.element&&this._terminal.element.parentElement){var e=this._terminal._core;if(0!==e._renderService.dimensions.actualCellWidth&&0!==e._renderService.dimensions.actualCellHeight){var t=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(t.getPropertyValue("height")),i=Math.max(0,parseInt(t.getPropertyValue("width"))),n=window.getComputedStyle(this._terminal.element),o=r-(parseInt(n.getPropertyValue("padding-top"))+parseInt(n.getPropertyValue("padding-bottom"))),s=i-(parseInt(n.getPropertyValue("padding-right"))+parseInt(n.getPropertyValue("padding-left")))-e.viewport.scrollBarWidth;return{cols:Math.max(2,Math.floor(s/e._renderService.dimensions.actualCellWidth)),rows:Math.max(1,Math.floor(o/e._renderService.dimensions.actualCellHeight))}}}},e}();t.FitAddon=r}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i](n,n.exports,r),n.exports}(775)})()},962:e=>{window,e.exports=function(e){var t={};function r(i){if(t[i])return t[i].exports;var n=t[i]={i,l:!1,exports:{}};return e[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=e,r.c=t,r.d=function(e,t,i){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)r.d(i,n,function(t){return e[t]}.bind(null,n));return i},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="",r(r.s=0)}([function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebLinksAddon=void 0;var i=r(1),n=new RegExp("(?:^|[^\\da-z\\.-]+)((https?:\\/\\/)((([\\da-z\\.-]+)\\.([a-z\\.]{2,6}))|((\\d{1,3}\\.){3}\\d{1,3})|(localhost))(:\\d{1,5})?((\\/[\\/\\w\\.\\-%~:+@]*)*([^:\"'\\s]))?(\\?[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?(#[0-9\\w\\[\\]\\(\\)\\/\\?\\!#@$%&'*+,:;~\\=\\.\\-]*)?)($|[^\\/\\w\\.\\-%]+)");function o(e,t){var r=window.open();r?(r.opener=null,r.location.href=t):console.warn("Opening link blocked as opener could not be cleared")}var s=function(){function e(e,t,r){void 0===e&&(e=o),void 0===t&&(t={}),void 0===r&&(r=!1),this._handler=e,this._options=t,this._useLinkProvider=r,this._options.matchIndex=1}return e.prototype.activate=function(e){this._terminal=e,this._useLinkProvider&&"registerLinkProvider"in this._terminal?this._linkProvider=this._terminal.registerLinkProvider(new i.WebLinkProvider(this._terminal,n,this._handler)):this._linkMatcherId=this._terminal.registerLinkMatcher(n,this._handler,this._options)},e.prototype.dispose=function(){var e;void 0!==this._linkMatcherId&&void 0!==this._terminal&&this._terminal.deregisterLinkMatcher(this._linkMatcherId),null===(e=this._linkProvider)||void 0===e||e.dispose()},e}();t.WebLinksAddon=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LinkComputer=t.WebLinkProvider=void 0;var i=function(){function e(e,t,r){this._terminal=e,this._regex=t,this._handler=r}return e.prototype.provideLinks=function(e,t){t(n.computeLink(e,this._regex,this._terminal,this._handler))},e}();t.WebLinkProvider=i;var n=function(){function e(){}return e.computeLink=function(t,r,i,n){for(var o,s=new RegExp(r.source,(r.flags||"")+"g"),a=e._translateBufferLineToStringWithWrap(t-1,!1,i),c=a[0],l=a[1],h=-1,u=[];null!==(o=s.exec(c));){var _=o[1];if(!_){console.log("match found without corresponding matchIndex");break}if(h=c.indexOf(_,h+1),s.lastIndex=h+_.length,h<0)break;for(var f=h+_.length,d=l+1;f>i.cols;)f-=i.cols,d++;var p={start:{x:h+1,y:l+1},end:{x:f,y:d}};u.push({range:p,text:_,activate:n})}return u},e._translateBufferLineToStringWithWrap=function(e,t,r){var i,n,o="";do{if(!(a=r.buffer.active.getLine(e)))break;a.isWrapped&&e--,n=a.isWrapped}while(n);var s=e;do{var a,c=r.buffer.active.getLine(e+1);if(i=!!c&&c.isWrapped,!(a=r.buffer.active.getLine(e)))break;o+=a.translateToString(!i&&t).substring(0,r.cols),e++}while(i);return[o,s]},e}();t.LinkComputer=n}])},445:e=>{self,e.exports=(()=>{"use strict";var e={965:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GlyphRenderer=void 0;var i=r(381),n=r(310),o=r(455),s=r(259),a=r(855),c=r(147),l=10,h=l*Float32Array.BYTES_PER_ELEMENT,u=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._activeBuffer=0,this._vertices={count:0,attributes:new Float32Array(0),attributesBuffers:[new Float32Array(0),new Float32Array(0)],selectionAttributes:new Float32Array(0)};var o=this._gl,s=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_unitquad;\nlayout (location = 1) in vec2 a_cellpos;\nlayout (location = 2) in vec2 a_offset;\nlayout (location = 3) in vec2 a_size;\nlayout (location = 4) in vec2 a_texcoord;\nlayout (location = 5) in vec2 a_texsize;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec2 v_texcoord;\n\nvoid main() {\n vec2 zeroToOne = (a_offset / u_resolution) + a_cellpos + (a_unitquad * a_size);\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_texcoord = a_texcoord + a_unitquad * a_texsize;\n}","#version 300 es\nprecision lowp float;\n\nin vec2 v_texcoord;\n\nuniform sampler2D u_texture;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = texture(u_texture, v_texcoord);\n}"));this._program=s,this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._textureLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_texture")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),u=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,u),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,2,o.FLOAT,!1,h,0),o.vertexAttribDivisor(2,1),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,o.FLOAT,!1,h,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(3,1),o.enableVertexAttribArray(4),o.vertexAttribPointer(4,2,o.FLOAT,!1,h,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(4,1),o.enableVertexAttribArray(5),o.vertexAttribPointer(5,2,o.FLOAT,!1,h,6*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(5,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,h,8*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),this._atlasTexture=i.throwIfFalsy(o.createTexture()),o.bindTexture(o.TEXTURE_2D,this._atlasTexture),o.texImage2D(o.TEXTURE_2D,0,o.RGBA,1,1,0,o.RGBA,o.UNSIGNED_BYTE,new Uint8Array([0,0,255,255])),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_S,o.CLAMP_TO_EDGE),o.texParameteri(o.TEXTURE_2D,o.TEXTURE_WRAP_T,o.CLAMP_TO_EDGE),o.enable(o.BLEND),o.blendFunc(o.SRC_ALPHA,o.ONE_MINUS_SRC_ALPHA),this.onResize()}return e.prototype.beginFrame=function(){return!this._atlas||this._atlas.beginFrame()},e.prototype.updateCell=function(e,t,r,i,n,o){this._updateCell(this._vertices.attributes,e,t,r,i,n,o)},e.prototype._updateCell=function(e,t,r,i,n,s,c){var h,u=(r*this._terminal.cols+t)*l;i!==a.NULL_CELL_CODE&&i!==a.WHITESPACE_CELL_CODE&&void 0!==i?this._atlas&&((h=c&&c.length>1?this._atlas.getRasterizedGlyphCombinedChar(c,n,s):this._atlas.getRasterizedGlyph(i,n,s))?(e[u]=-h.offset.x+this._dimensions.scaledCharLeft,e[u+1]=-h.offset.y+this._dimensions.scaledCharTop,e[u+2]=h.size.x/this._dimensions.scaledCanvasWidth,e[u+3]=h.size.y/this._dimensions.scaledCanvasHeight,e[u+4]=h.texturePositionClipSpace.x,e[u+5]=h.texturePositionClipSpace.y,e[u+6]=h.sizeClipSpace.x,e[u+7]=h.sizeClipSpace.y):o.fill(e,0,u,u+l-1-2)):o.fill(e,0,u,u+l-1-2)},e.prototype.updateSelection=function(e){var t=this._terminal;this._vertices.selectionAttributes=s.slice(this._vertices.attributes,0);var r=this._colors.selectionOpaque.rgba>>>8|50331648;if(e.selection.columnSelectMode)for(var i=e.selection.startCol,n=e.selection.endCol-i,o=e.selection.viewportCappedEndRow-e.selection.viewportCappedStartRow+1,a=e.selection.viewportCappedStartRow;a>8&16711680|p>>8&65280|p>>8&255;case 50331648:var v=c.AttributeData.toColorRGB(d.getBgColor());f|=v[0]<<16|v[1]<<8|v[2]<<0;case 0:default:var g=this._colors.background.rgba;f|=g>>8&16711680|g>>8&65280|g>>8&255}f|=50331648}if(_&n.COMBINED_CHAR_BIT_MASK){s||(s=a.buffer.active.getLine(l));var y=s.getCell(h).getChars();this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f,y)}else this._updateCell(this._vertices.selectionAttributes,h,r,i.cells[u],o,f)}},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._colors.ansi.length)throw new Error("No color found for idx "+e);return this._colors.ansi[e]},e.prototype.onResize=function(){var e=this._terminal,t=this._gl;t.viewport(0,0,t.canvas.width,t.canvas.height);var r=e.cols*e.rows*l;if(this._vertices.count!==r){this._vertices.count=r,this._vertices.attributes=new Float32Array(r);for(var i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.RectangleRenderer=void 0;var i=r(381),n=r(455),o=r(310),s=8*Float32Array.BYTES_PER_ELEMENT,a=function(){function e(e,t,r,n){this._terminal=e,this._colors=t,this._gl=r,this._dimensions=n,this._vertices={count:0,attributes:new Float32Array(160),selection:new Float32Array(24)};var o=this._gl;this._program=i.throwIfFalsy(i.createProgram(o,"#version 300 es\nlayout (location = 0) in vec2 a_position;\nlayout (location = 1) in vec2 a_size;\nlayout (location = 2) in vec4 a_color;\nlayout (location = 3) in vec2 a_unitquad;\n\nuniform mat4 u_projection;\nuniform vec2 u_resolution;\n\nout vec4 v_color;\n\nvoid main() {\n vec2 zeroToOne = (a_position + (a_unitquad * a_size)) / u_resolution;\n gl_Position = u_projection * vec4(zeroToOne, 0.0, 1.0);\n v_color = a_color;\n}","#version 300 es\nprecision lowp float;\n\nin vec4 v_color;\n\nout vec4 outColor;\n\nvoid main() {\n outColor = v_color;\n}")),this._resolutionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_resolution")),this._projectionLocation=i.throwIfFalsy(o.getUniformLocation(this._program,"u_projection")),this._vertexArrayObject=o.createVertexArray(),o.bindVertexArray(this._vertexArrayObject);var a=new Float32Array([0,0,1,0,0,1,1,1]),c=o.createBuffer();o.bindBuffer(o.ARRAY_BUFFER,c),o.bufferData(o.ARRAY_BUFFER,a,o.STATIC_DRAW),o.enableVertexAttribArray(3),o.vertexAttribPointer(3,2,this._gl.FLOAT,!1,0,0);var l=new Uint8Array([0,1,3,0,2,3]),h=o.createBuffer();o.bindBuffer(o.ELEMENT_ARRAY_BUFFER,h),o.bufferData(o.ELEMENT_ARRAY_BUFFER,l,o.STATIC_DRAW),this._attributesBuffer=i.throwIfFalsy(o.createBuffer()),o.bindBuffer(o.ARRAY_BUFFER,this._attributesBuffer),o.enableVertexAttribArray(0),o.vertexAttribPointer(0,2,o.FLOAT,!1,s,0),o.vertexAttribDivisor(0,1),o.enableVertexAttribArray(1),o.vertexAttribPointer(1,2,o.FLOAT,!1,s,2*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(1,1),o.enableVertexAttribArray(2),o.vertexAttribPointer(2,4,o.FLOAT,!1,s,4*Float32Array.BYTES_PER_ELEMENT),o.vertexAttribDivisor(2,1),this._updateCachedColors()}return e.prototype.render=function(){var e=this._gl;e.useProgram(this._program),e.bindVertexArray(this._vertexArrayObject),e.uniformMatrix4fv(this._projectionLocation,!1,i.PROJECTION_MATRIX),e.uniform2f(this._resolutionLocation,e.canvas.width,e.canvas.height),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.attributes,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,this._vertices.count),e.bindBuffer(e.ARRAY_BUFFER,this._attributesBuffer),e.bufferData(e.ARRAY_BUFFER,this._vertices.selection,e.DYNAMIC_DRAW),e.drawElementsInstanced(this._gl.TRIANGLES,6,e.UNSIGNED_BYTE,0,3)},e.prototype.onResize=function(){this._updateViewportRectangle()},e.prototype.setColors=function(){this._updateCachedColors(),this._updateViewportRectangle()},e.prototype._updateCachedColors=function(){this._bgFloat=this._colorToFloat32Array(this._colors.background),this._selectionFloat=this._colorToFloat32Array(this._colors.selectionOpaque)},e.prototype._updateViewportRectangle=function(){this._addRectangleFloat(this._vertices.attributes,0,0,0,this._terminal.cols*this._dimensions.scaledCellWidth,this._terminal.rows*this._dimensions.scaledCellHeight,this._bgFloat)},e.prototype.updateSelection=function(e){var t=this._terminal;if(e.hasSelection)if(e.columnSelectMode){var r=e.startCol,i=e.endCol-r,o=e.viewportCappedEndRow-e.viewportCappedStartRow+1;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,i*this._dimensions.scaledCellWidth,o*this._dimensions.scaledCellHeight,this._selectionFloat),n.fill(this._vertices.selection,0,8)}else{r=e.viewportStartRow===e.viewportCappedStartRow?e.startCol:0;var s=e.viewportCappedStartRow===e.viewportEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,0,r*this._dimensions.scaledCellWidth,e.viewportCappedStartRow*this._dimensions.scaledCellHeight,(s-r)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat);var a=Math.max(e.viewportCappedEndRow-e.viewportCappedStartRow-1,0);if(this._addRectangleFloat(this._vertices.selection,8,0,(e.viewportCappedStartRow+1)*this._dimensions.scaledCellHeight,t.cols*this._dimensions.scaledCellWidth,a*this._dimensions.scaledCellHeight,this._selectionFloat),e.viewportCappedStartRow!==e.viewportCappedEndRow){var c=e.viewportEndRow===e.viewportCappedEndRow?e.endCol:t.cols;this._addRectangleFloat(this._vertices.selection,16,0,e.viewportCappedEndRow*this._dimensions.scaledCellHeight,c*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,this._selectionFloat)}else n.fill(this._vertices.selection,0,16)}else n.fill(this._vertices.selection,0,0)},e.prototype.updateBackgrounds=function(e){for(var t=this._terminal,r=this._vertices,i=1,n=0;n>24&255)/255,_=(c>>16&255)/255,f=(c>>8&255)/255;this._addRectangle(e.attributes,t,l,h,(s-o)*this._dimensions.scaledCellWidth,this._dimensions.scaledCellHeight,u,_,f,1)},e.prototype._addRectangle=function(e,t,r,i,n,o,s,a,c,l){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s,e[t+5]=a,e[t+6]=c,e[t+7]=l},e.prototype._addRectangleFloat=function(e,t,r,i,n,o,s){e[t]=r,e[t+1]=i,e[t+2]=n,e[t+3]=o,e[t+4]=s[0],e[t+5]=s[1],e[t+6]=s[2],e[t+7]=s[3]},e.prototype._colorToFloat32Array=function(e){return new Float32Array([(e.rgba>>24&255)/255,(e.rgba>>16&255)/255,(e.rgba>>8&255)/255,(255&e.rgba)/255])},e}();t.RectangleRenderer=a},310:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderModel=t.COMBINED_CHAR_BIT_MASK=t.RENDER_MODEL_FG_OFFSET=t.RENDER_MODEL_BG_OFFSET=t.RENDER_MODEL_INDICIES_PER_CELL=void 0;var i=r(455);t.RENDER_MODEL_INDICIES_PER_CELL=3,t.RENDER_MODEL_BG_OFFSET=1,t.RENDER_MODEL_FG_OFFSET=2,t.COMBINED_CHAR_BIT_MASK=2147483648;var n=function(){function e(){this.cells=new Uint32Array(0),this.lineLengths=new Uint32Array(0),this.selection={hasSelection:!1,columnSelectMode:!1,viewportStartRow:0,viewportEndRow:0,viewportCappedStartRow:0,viewportCappedEndRow:0,startCol:0,endCol:0}}return e.prototype.resize=function(e,r){var i=e*r*t.RENDER_MODEL_INDICIES_PER_CELL;i!==this.cells.length&&(this.cells=new Uint32Array(i),this.lineLengths=new Uint32Array(r))},e.prototype.clear=function(){i.fill(this.cells,0,0),i.fill(this.lineLengths,0,0)},e.prototype.clearSelection=function(){this.selection.hasSelection=!1,this.selection.viewportStartRow=0,this.selection.viewportEndRow=0,this.selection.viewportCappedStartRow=0,this.selection.viewportCappedEndRow=0,this.selection.startCol=0,this.selection.endCol=0},e}();t.RenderModel=n},259:(e,t)=>{function r(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length),t<0&&(t=(e.length+t)%e.length),r=r>=e.length?e.length:(e.length+r)%e.length,t=Math.min(t,r);for(var i=new e.constructor(r-t),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglAddon=void 0;var i=r(666),n=function(){function e(e){this._preserveDrawingBuffer=e}return e.prototype.activate=function(e){if(!e.element)throw new Error("Cannot activate WebglAddon before Terminal.open");this._terminal=e;var t=e._core._renderService,r=e._core._colorManager.colors;this._renderer=new i.WebglRenderer(e,r,this._preserveDrawingBuffer),t.setRenderer(this._renderer)},e.prototype.dispose=function(){if(!this._terminal)throw new Error("Cannot dispose WebglAddon because it is activated");var e=this._terminal._core._renderService;e.setRenderer(this._terminal._core._createRenderer()),e.onResize(this._terminal.cols,this._terminal.rows),this._renderer=void 0},Object.defineProperty(e.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._renderer)||void 0===e?void 0:e.textureAtlas},enumerable:!1,configurable:!0}),e.prototype.clearTextureAtlas=function(){var e;null===(e=this._renderer)||void 0===e||e.clearCharAtlas()},e}();t.WebglAddon=n},666:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.WebglRenderer=void 0;var o=r(965),s=r(733),a=r(461),c=r(713),l=r(344),h=r(310),u=r(859),_=r(855),f=r(345),d=r(782),p=function(e){function t(t,r,i){var n=e.call(this)||this;n._terminal=t,n._colors=r,n._model=new h.RenderModel,n._workCell=new d.CellData,n._onRequestRedraw=new f.EventEmitter,n._core=n._terminal._core,n._renderLayers=[new s.LinkRenderLayer(n._core.screenElement,2,n._colors,n._core),new a.CursorRenderLayer(n._core.screenElement,3,n._colors,n._onRequestRedraw)],n.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},n._devicePixelRatio=window.devicePixelRatio,n._updateDimensions(),n._canvas=document.createElement("canvas");var c={antialias:!1,depth:!1,preserveDrawingBuffer:i};if(n._gl=n._canvas.getContext("webgl2",c),!n._gl)throw new Error("WebGL2 not supported "+n._gl);return n._core.screenElement.appendChild(n._canvas),n._rectangleRenderer=new l.RectangleRenderer(n._terminal,n._colors,n._gl,n.dimensions),n._glyphRenderer=new o.GlyphRenderer(n._terminal,n._colors,n._gl,n.dimensions),n.onCharSizeChanged(),n._isAttached=document.body.contains(n._core.screenElement),n}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._renderLayers.forEach((function(e){return e.dispose()})),this._core.screenElement.removeChild(this._canvas),e.prototype.dispose.call(this)},Object.defineProperty(t.prototype,"textureAtlas",{get:function(){var e;return null===(e=this._charAtlas)||void 0===e?void 0:e.cacheCanvas},enumerable:!1,configurable:!0}),t.prototype.setColors=function(e){var t=this;this._colors=e,this._renderLayers.forEach((function(e){e.setColors(t._terminal,t._colors),e.reset(t._terminal)})),this._rectangleRenderer.setColors(),this._glyphRenderer.setColors(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onDevicePixelRatioChange=function(){this._devicePixelRatio!==window.devicePixelRatio&&(this._devicePixelRatio=window.devicePixelRatio,this.onResize(this._terminal.cols,this._terminal.rows))},t.prototype.onResize=function(e,t){var r=this;this._updateDimensions(),this._model.resize(this._terminal.cols,this._terminal.rows),this._renderLayers.forEach((function(e){return e.resize(r._terminal,r.dimensions)})),this._canvas.width=this.dimensions.scaledCanvasWidth,this._canvas.height=this.dimensions.scaledCanvasHeight,this._canvas.style.width=this.dimensions.canvasWidth+"px",this._canvas.style.height=this.dimensions.canvasHeight+"px",this._core.screenElement.style.width=this.dimensions.canvasWidth+"px",this._core.screenElement.style.height=this.dimensions.canvasHeight+"px",this._rectangleRenderer.onResize(),this._model.selection.hasSelection&&this._rectangleRenderer.updateSelection(this._model.selection),this._glyphRenderer.setDimensions(this.dimensions),this._glyphRenderer.onResize(),this._refreshCharAtlas(),this._model.clear()},t.prototype.onCharSizeChanged=function(){this.onResize(this._terminal.cols,this._terminal.rows)},t.prototype.onBlur=function(){var e=this;this._renderLayers.forEach((function(t){return t.onBlur(e._terminal)}))},t.prototype.onFocus=function(){var e=this;this._renderLayers.forEach((function(t){return t.onFocus(e._terminal)}))},t.prototype.onSelectionChanged=function(e,t,r){var i=this;this._renderLayers.forEach((function(n){return n.onSelectionChanged(i._terminal,e,t,r)})),this._updateSelectionModel(e,t,r),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.onCursorMove=function(){var e=this;this._renderLayers.forEach((function(t){return t.onCursorMove(e._terminal)}))},t.prototype.onOptionsChanged=function(){var e=this;this._renderLayers.forEach((function(t){return t.onOptionsChanged(e._terminal)})),this._updateDimensions(),this._refreshCharAtlas()},t.prototype._refreshCharAtlas=function(){if(this.dimensions.scaledCharWidth<=0&&this.dimensions.scaledCharHeight<=0)this._isAttached=!1;else{var e=c.acquireCharAtlas(this._terminal,this._colors,this.dimensions.scaledCharWidth,this.dimensions.scaledCharHeight);if(!("getRasterizedGlyph"in e))throw new Error("The webgl renderer only works with the webgl char atlas");this._charAtlas=e,this._charAtlas.warmUp(),this._glyphRenderer.setAtlas(this._charAtlas)}},t.prototype.clearCharAtlas=function(){var e;null===(e=this._charAtlas)||void 0===e||e.clearTexture(),this._model.clear(),this._updateModel(0,this._terminal.rows-1),this._onRequestRedraw.fire({start:0,end:this._terminal.rows-1})},t.prototype.clear=function(){var e=this;this._renderLayers.forEach((function(t){return t.reset(e._terminal)}))},t.prototype.registerCharacterJoiner=function(e){return-1},t.prototype.deregisterCharacterJoiner=function(e){return!1},t.prototype.renderRows=function(e,t){var r=this;if(!this._isAttached){if(!(document.body.contains(this._core.screenElement)&&this._core._charSizeService.width&&this._core._charSizeService.height))return;this._updateDimensions(),this._refreshCharAtlas(),this._isAttached=!0}this._renderLayers.forEach((function(i){return i.onGridChanged(r._terminal,e,t)})),this._glyphRenderer.beginFrame()&&(this._model.clear(),this._updateSelectionModel(void 0,void 0)),this._updateModel(e,t),this._rectangleRenderer.render(),this._glyphRenderer.render(this._model,this._model.selection.hasSelection)},t.prototype._updateModel=function(e,t){for(var r=this._core,i=e;i<=t;i++){var n=i+r.buffer.ydisp,o=r.buffer.lines.get(n);this._model.lineLengths[i]=0;for(var s=0;s1&&(c|=h.COMBINED_CHAR_BIT_MASK),this._model.cells[l]=c,this._model.cells[l+h.RENDER_MODEL_BG_OFFSET]=this._workCell.bg,this._model.cells[l+h.RENDER_MODEL_FG_OFFSET]=this._workCell.fg,this._glyphRenderer.updateCell(s,i,c,this._workCell.bg,this._workCell.fg,a))}}this._rectangleRenderer.updateBackgrounds(this._model),this._model.selection.hasSelection&&this._glyphRenderer.updateSelection(this._model)},t.prototype._updateSelectionModel=function(e,t,r){void 0===r&&(r=!1);var i=this._terminal;if(!e||!t||e[0]===t[0]&&e[1]===t[1])return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);var n=e[1]-i.buffer.active.viewportY,o=t[1]-i.buffer.active.viewportY,s=Math.max(n,0),a=Math.min(o,i.rows-1);if(s>=i.rows||a<0)return this._model.clearSelection(),void this._rectangleRenderer.updateSelection(this._model.selection);this._model.selection.hasSelection=!0,this._model.selection.columnSelectMode=r,this._model.selection.viewportStartRow=n,this._model.selection.viewportEndRow=o,this._model.selection.viewportCappedStartRow=s,this._model.selection.viewportCappedEndRow=a,this._model.selection.startCol=e[0],this._model.selection.endCol=t[0],this._rectangleRenderer.updateSelection(this._model.selection)},t.prototype._updateDimensions=function(){this._core._charSizeService.width&&this._core._charSizeService.height&&(this.dimensions.scaledCharWidth=Math.floor(this._core._charSizeService.width*this._devicePixelRatio),this.dimensions.scaledCharHeight=Math.ceil(this._core._charSizeService.height*this._devicePixelRatio),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._terminal.getOption("lineHeight")),this.dimensions.scaledCharTop=1===this._terminal.getOption("lineHeight")?0:Math.round((this.dimensions.scaledCellHeight-this.dimensions.scaledCharHeight)/2),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._terminal.getOption("letterSpacing")),this.dimensions.scaledCharLeft=Math.floor(this._terminal.getOption("letterSpacing")/2),this.dimensions.scaledCanvasHeight=this._terminal.rows*this.dimensions.scaledCellHeight,this.dimensions.scaledCanvasWidth=this._terminal.cols*this.dimensions.scaledCellWidth,this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/this._devicePixelRatio),this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/this._devicePixelRatio),this.dimensions.actualCellHeight=this.dimensions.scaledCellHeight/this._devicePixelRatio,this.dimensions.actualCellWidth=this.dimensions.scaledCellWidth/this._devicePixelRatio)},t}(u.Disposable);t.WebglRenderer=p},381:(e,t)=>{function r(e,t,r){var n=i(e.createShader(t));if(e.shaderSource(n,r),e.compileShader(n),e.getShaderParameter(n,e.COMPILE_STATUS))return n;console.error(e.getShaderInfoLog(n)),e.deleteShader(n)}function i(e){if(!e)throw new Error("value must not be falsy");return e}Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=t.expandFloat32Array=t.createShader=t.createProgram=t.PROJECTION_MATRIX=void 0,t.PROJECTION_MATRIX=new Float32Array([2,0,0,0,0,-2,0,0,0,0,1,0,-1,1,0,1]),t.createProgram=function(e,t,n){var o=i(e.createProgram());if(e.attachShader(o,i(r(e,e.VERTEX_SHADER,t))),e.attachShader(o,i(r(e,e.FRAGMENT_SHADER,n))),e.linkProgram(o),e.getProgramParameter(o,e.LINK_STATUS))return o;console.error(e.getProgramInfoLog(o)),e.deleteProgram(o)},t.createShader=r,t.expandFloat32Array=function(e,t){for(var r=Math.min(2*e.length,t),i=new Float32Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(433),n=r(167),o=[];t.acquireCharAtlas=function(e,t,r,s){for(var a=i.generateConfig(r,s,e,t),c=0;c=0){if(i.configEquals(h.config,a))return h.atlas;1===h.ownedBy.length?(h.atlas.dispose(),o.splice(c,1)):h.ownedBy.splice(l,1);break}}for(c=0;c{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var r={css:"",rgba:0};t.generateConfig=function(e,t,i,n){var o={foreground:n.foreground,background:n.background,cursor:r,cursorAccent:r,selectionTransparent:r,selectionOpaque:r,ansi:n.ansi.slice(),contrastCache:n.contrastCache};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:i.getOption("fontFamily"),fontSize:i.getOption("fontSize"),fontWeight:i.getOption("fontWeight"),fontWeightBold:i.getOption("fontWeightBold"),allowTransparency:i.getOption("allowTransparency"),drawBoldTextInBrightColors:i.getOption("drawBoldTextInBrightColors"),minimumContrastRatio:i.getOption("minimumContrastRatio"),colors:o}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.WebglCharAtlas=void 0;var i=r(499),n=r(855),o=r(381),s=r(147),a=r(742),c=1024,l=1024,h=Math.floor(819.2),u={css:"rgba(0, 0, 0, 0)",rgba:0},_={offset:{x:0,y:0},texturePosition:{x:0,y:0},texturePositionClipSpace:{x:0,y:0},size:{x:0,y:0},sizeClipSpace:{x:0,y:0}},f=function(){function e(e,t){this._config=t,this._didWarmUp=!1,this._cacheMap={},this._cacheMapCombined={},this._currentRowY=0,this._currentRowX=0,this._currentRowHeight=0,this.hasCanvasChanged=!1,this._workBoundingBox={top:0,left:0,bottom:0,right:0},this._workAttributeData=new s.AttributeData,this.cacheCanvas=e.createElement("canvas"),this.cacheCanvas.width=c,this.cacheCanvas.height=l,this._cacheCtx=o.throwIfFalsy(this.cacheCanvas.getContext("2d",{alpha:!0})),this._tmpCanvas=e.createElement("canvas"),this._tmpCanvas.width=2*this._config.scaledCharWidth+4,this._tmpCanvas.height=this._config.scaledCharHeight+4,this._tmpCtx=o.throwIfFalsy(this._tmpCanvas.getContext("2d",{alpha:this._config.allowTransparency}))}return e.prototype.dispose=function(){this.cacheCanvas.parentElement&&this.cacheCanvas.parentElement.removeChild(this.cacheCanvas)},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){for(var e,t,r=33;r<126;r++){var i=this._drawToCache(r,n.DEFAULT_COLOR,n.DEFAULT_COLOR);this._cacheMap[r]=((e={})[n.DEFAULT_COLOR]=((t={})[n.DEFAULT_COLOR]=i,t),e)}},e.prototype.beginFrame=function(){return this._currentRowY>h&&(this.clearTexture(),this.warmUp(),!0)},e.prototype.clearTexture=function(){0===this._currentRowX&&0===this._currentRowY||(this._cacheCtx.clearRect(0,0,c,l),this._cacheMap={},this._cacheMapCombined={},this._currentRowHeight=0,this._currentRowX=0,this._currentRowY=0,this._didWarmUp=!1)},e.prototype.getRasterizedGlyphCombinedChar=function(e,t,r){var i,n=this._cacheMapCombined[e];n||(n={},this._cacheMapCombined[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype.getRasterizedGlyph=function(e,t,r){var i,n=this._cacheMap[e];n||(n={},this._cacheMap[e]=n);var o=n[t];return o&&(i=o[r]),i||(i=this._drawToCache(e,t,r),n[t]||(n[t]={}),n[t][r]=i),i},e.prototype._getColorFromAnsiIndex=function(e){if(e>=this._config.colors.ansi.length)throw new Error("No color found for idx "+e);return this._config.colors.ansi[e]},e.prototype._getBackgroundColor=function(e,t,r){if(this._config.allowTransparency)return u;switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t);case 50331648:var i=s.AttributeData.toColorRGB(t);return{rgba:t<<8,css:"#"+d(i[0])+d(i[1])+d(i[2])};case 0:default:return r?this._config.colors.foreground:this._config.colors.background}},e.prototype._getForegroundCss=function(e,t,r,i,n,o,c,l){var h=this._getMinimumContrastCss(e,t,r,i,n,o,c,l);if(h)return h;switch(n){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&l&&o<8&&(o+=8),this._getColorFromAnsiIndex(o).css;case 50331648:var u=s.AttributeData.toColorRGB(o);return a.channels.toCss(u[0],u[1],u[2]);case 0:default:if(c){var _=this._config.colors.background.css;return 9===_.length?_.substr(0,7):_}return this._config.colors.foreground.css}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.foreground.rgba:this._config.colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._config.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._getColorFromAnsiIndex(t).rgba;case 50331648:return t<<8;case 0:default:return r?this._config.colors.background.rgba:this._config.colors.foreground.rgba}},e.prototype._getMinimumContrastCss=function(e,t,r,i,n,o,s,c){if(1!==this._config.minimumContrastRatio){var l=this._config.colors.contrastCache.getCss(e,i);if(void 0!==l)return l||void 0;var h=this._resolveBackgroundRgba(t,r,s),u=this._resolveForegroundRgba(n,o,s,c),_=a.rgba.ensureContrastRatio(h,u,this._config.minimumContrastRatio);if(_){var f=a.channels.toCss(_>>24&255,_>>16&255,_>>8&255);return this._config.colors.contrastCache.setCss(e,i,f),f}this._config.colors.contrastCache.setCss(e,i,null)}},e.prototype._drawToCache=function(e,t,r){var n="number"==typeof e?String.fromCharCode(e):e;if(this.hasCanvasChanged=!0,this._tmpCtx.save(),this._workAttributeData.fg=r,this._workAttributeData.bg=t,this._workAttributeData.isInvisible())return _;var o=!!this._workAttributeData.isBold(),s=!!this._workAttributeData.isInverse(),a=!!this._workAttributeData.isDim(),h=!!this._workAttributeData.isItalic(),u=this._workAttributeData.getFgColor(),f=this._workAttributeData.getFgColorMode(),d=this._workAttributeData.getBgColor(),p=this._workAttributeData.getBgColorMode();if(s){var v=u;u=d,d=v;var g=f;f=p,p=g}var y=this._getBackgroundColor(p,d,s);this._tmpCtx.globalCompositeOperation="copy",this._tmpCtx.fillStyle=y.css,this._tmpCtx.fillRect(0,0,this._tmpCanvas.width,this._tmpCanvas.height),this._tmpCtx.globalCompositeOperation="source-over";var m=o?this._config.fontWeightBold:this._config.fontWeight,b=h?"italic":"";this._tmpCtx.font=b+" "+m+" "+this._config.fontSize*this._config.devicePixelRatio+"px "+this._config.fontFamily,this._tmpCtx.textBaseline="middle",this._tmpCtx.fillStyle=this._getForegroundCss(t,p,d,r,f,u,s,o),a&&(this._tmpCtx.globalAlpha=i.DIM_OPACITY),this._tmpCtx.fillText(n,2,2+this._config.scaledCharHeight/2),this._tmpCtx.restore();var C=this._tmpCtx.getImageData(0,0,this._tmpCanvas.width,this._tmpCanvas.height);if(function(e,t){for(var r=!0,i=t.rgba>>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;sc&&(this._currentRowX=0,this._currentRowY+=this._currentRowHeight,this._currentRowHeight=0),S.texturePosition.x=this._currentRowX,S.texturePosition.y=this._currentRowY,S.texturePositionClipSpace.x=this._currentRowX/c,S.texturePositionClipSpace.y=this._currentRowY/l,this._currentRowHeight=Math.max(this._currentRowHeight,S.size.y),this._currentRowX+=S.size.x,this._cacheCtx.putImageData(w,S.texturePosition.x,S.texturePosition.y),S},e.prototype._findGlyphBoundingBox=function(e,t){t.top=0;for(var r=!1,i=0;i=0;n--){for(i=0;i=0;i--){for(n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(713),n=r(381),o=function(){function e(e,t,r,i,n){this._container=e,this._alpha=i,this._colors=n,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){this._container.removeChild(this._canvas),this._charAtlas&&this._charAtlas.dispose()},e.prototype._initCanvas=function(){this._ctx=n.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(e){},e.prototype.onBlur=function(e){},e.prototype.onFocus=function(e){},e.prototype.onCursorMove=function(e){},e.prototype.onGridChanged=function(e,t,r){},e.prototype.onSelectionChanged=function(e,t,r,i){void 0===i&&(i=!1)},e.prototype.setColors=function(e,t){this._refreshCharAtlas(e,t)},e.prototype._setTransparency=function(e,t){if(t!==this._alpha){var r=this._canvas;this._alpha=t,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,r),this._refreshCharAtlas(e,this._colors),this.onGridChanged(e,0,e.rows-1)}},e.prototype._refreshCharAtlas=function(e,t){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=i.acquireCharAtlas(e,t,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e,t){this._scaledCellWidth=t.scaledCellWidth,this._scaledCellHeight=t.scaledCellHeight,this._scaledCharWidth=t.scaledCharWidth,this._scaledCharHeight=t.scaledCharHeight,this._scaledCharLeft=t.scaledCharLeft,this._scaledCharTop=t.scaledCharTop,this._canvas.width=t.scaledCanvasWidth,this._canvas.height=t.scaledCanvasHeight,this._canvas.style.width=t.canvasWidth+"px",this._canvas.style.height=t.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(e,this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r,i){this._ctx.font=this._getFont(e,!1,!1),this._ctx.textBaseline="middle",this._clipRow(e,i),this._ctx.fillText(t.getChars(),r*this._scaledCellWidth+this._scaledCharLeft,i*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight/2)},e.prototype._clipRow=function(e,t){this._ctx.beginPath(),this._ctx.rect(0,t*this._scaledCellHeight,e.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t,r){return(r?"italic":"")+" "+(t?e.getOption("fontWeightBold"):e.getOption("fontWeight"))+" "+e.getOption("fontSize")*window.devicePixelRatio+"px "+e.getOption("fontFamily")},e}();t.BaseRenderLayer=o},461:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var o=r(592),s=r(782),a=600,c=function(e){function t(t,r,i,n){var o=e.call(this,t,"cursor",r,!0,i)||this;return o._onRequestRefreshRowsEvent=n,o._cell=new s.CellData,o._state={x:0,y:0,isFocused:!1,style:"",width:0},o._cursorRenderers={bar:o._renderBarCursor.bind(o),block:o._renderBlockCursor.bind(o),underline:o._renderUnderlineCursor.bind(o)},o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(e){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this.onOptionsChanged(e))},t.prototype.onBlur=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onFocus=function(e){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume(e):this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onOptionsChanged=function(e){var t,r=this;e.getOption("cursorBlink")?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new l(e,(function(){r._render(e,!0)}))):(null===(t=this._cursorBlinkStateManager)||void 0===t||t.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRefreshRowsEvent.fire({start:e.buffer.active.cursorY,end:e.buffer.active.cursorY})},t.prototype.onCursorMove=function(e){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype.onGridChanged=function(e,t,r){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(e,!1):this._cursorBlinkStateManager.restartBlinkAnimation(e)},t.prototype._render=function(e,t){if(e._core._coreService.isCursorInitialized&&!e._core._coreService.isCursorHidden){var r=e.buffer.active.baseY+e.buffer.active.cursorY,i=r-e.buffer.active.viewportY,n=Math.min(e.buffer.active.cursorX,e.cols-1);if(i<0||i>=e.rows)this._clearCursor();else if(e._core.buffer.lines.get(r).loadCell(n,this._cell),void 0!==this._cell.content){if(!h(e)){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var o=e.getOption("cursorStyle");return o&&"block"!==o?this._cursorRenderers[o](e,n,i,this._cell):this._renderBlurCursor(e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=o,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===n&&this._state.y===i&&this._state.isFocused===h(e)&&this._state.style===e.getOption("cursorStyle")&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[e.getOption("cursorStyle")||"block"](e,n,i,this._cell),this._ctx.restore(),this._state.x=n,this._state.y=i,this._state.isFocused=!1,this._state.style=e.getOption("cursorStyle"),this._state.width=this._cell.getWidth()}else this._clearCursor()}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(t,r,e.getOption("cursorWidth")),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(t,r,i.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(e,i,t,r),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r,i){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(t,r),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r,i){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(t,r,i.getWidth(),1),this._ctx.restore()},t}(o.BaseRenderLayer);t.CursorRenderLayer=c;var l=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,h(e)&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(e){var t=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=a),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=a-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),a)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(e){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation(e)},e}();function h(e){return document.activeElement===e.textarea&&document.hasFocus()}},733:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var o=r(592),s=r(499),a=r(433),c=function(e){function t(t,r,i,n){var o=e.call(this,t,"link",r,!0,i)||this;return n.linkifier.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),n.linkifier2.onShowLinkUnderline((function(e){return o._onShowLinkUnderline(e)})),n.linkifier2.onHideLinkUnderline((function(e){return o._onHideLinkUnderline(e)})),o}return n(t,e),t.prototype.resize=function(t,r){e.prototype.resize.call(this,t,r),this._state=void 0},t.prototype.reset=function(e){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===s.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:void 0!==e.fg&&a.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},499:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},345:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},782:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(133),s=r(855),a=r(147),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},855:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},133:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(795)})()},841:e=>{self,e.exports=(()=>{"use strict";var e={4567:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.AccessibilityManager=void 0;var o=r(9042),s=r(6114),a=r(6193),c=r(3656),l=r(844),h=r(5596),u=r(9631),_=function(e){function t(t,r){var i=e.call(this)||this;i._terminal=t,i._renderService=r,i._liveRegionLineCount=0,i._charsToConsume=[],i._charsToAnnounce="",i._accessibilityTreeRoot=document.createElement("div"),i._accessibilityTreeRoot.classList.add("xterm-accessibility"),i._rowContainer=document.createElement("div"),i._rowContainer.setAttribute("role","list"),i._rowContainer.classList.add("xterm-accessibility-tree"),i._rowElements=[];for(var n=0;ne;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener("focus",this._bottomBoundaryFocusListener),this._refreshRowsDimensions()},t.prototype._createAccessibilityTreeNode=function(){var e=document.createElement("div");return e.setAttribute("role","listitem"),e.tabIndex=-1,this._refreshRowDimensions(e),e},t.prototype._onTab=function(e){for(var t=0;t0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,"\n"===e&&(this._liveRegionLineCount++,21===this._liveRegionLineCount&&(this._liveRegion.textContent+=o.tooMuchOutput)),s.isMac&&this._liveRegion.textContent&&this._liveRegion.textContent.length>0&&!this._liveRegion.parentNode&&setTimeout((function(){t._accessibilityTreeRoot.appendChild(t._liveRegion)}),0))},t.prototype._clearLiveRegion=function(){this._liveRegion.textContent="",this._liveRegionLineCount=0,s.isMac&&u.removeElementFromParent(this._liveRegion)},t.prototype._onKey=function(e){this._clearLiveRegion(),this._charsToConsume.push(e)},t.prototype._refreshRows=function(e,t){this._renderRowsDebouncer.refresh(e,t,this._terminal.rows)},t.prototype._renderRows=function(e,t){for(var r=this._terminal.buffer,i=r.lines.length.toString(),n=e;n<=t;n++){var o=r.translateBufferLineToString(r.ydisp+n,!0),s=(r.ydisp+n+1).toString(),a=this._rowElements[n];a&&(0===o.length?a.innerText=" ":a.textContent=o,a.setAttribute("aria-posinset",s),a.setAttribute("aria-setsize",i))}this._announceCharacters()},t.prototype._refreshRowsDimensions=function(){if(this._renderService.dimensions.actualCellHeight){this._rowElements.length!==this._terminal.rows&&this._onResize(this._terminal.rows);for(var e=0;e{function r(e){return e.replace(/\r?\n/g,"\r")}function i(e,t){return t?"[200~"+e+"[201~":e}function n(e,t,n){e=i(e=r(e),n.decPrivateModes.bracketedPasteMode),n.triggerDataEvent(e,!0),t.value=""}function o(e,t,r){var i=r.getBoundingClientRect(),n=e.clientX-i.left-10,o=e.clientY-i.top-10;t.style.width="20px",t.style.height="20px",t.style.left=n+"px",t.style.top=o+"px",t.style.zIndex="1000",t.focus()}Object.defineProperty(t,"__esModule",{value:!0}),t.rightClickHandler=t.moveTextAreaUnderMouseCursor=t.paste=t.handlePasteEvent=t.copyHandler=t.bracketTextForPaste=t.prepareTextForTerminal=void 0,t.prepareTextForTerminal=r,t.bracketTextForPaste=i,t.copyHandler=function(e,t){e.clipboardData&&e.clipboardData.setData("text/plain",t.selectionText),e.preventDefault()},t.handlePasteEvent=function(e,t,r){e.stopPropagation(),e.clipboardData&&n(e.clipboardData.getData("text/plain"),t,r)},t.paste=n,t.moveTextAreaUnderMouseCursor=o,t.rightClickHandler=function(e,t,r,i,n){o(e,t,r),n&&i.rightClickSelect(e),t.value=i.selectionText,t.select()}},4774:(e,t)=>{var r,i,n,o;function s(e){var t=e.toString(16);return t.length<2?"0"+t:t}function a(e,t){return e>>0}}(r=t.channels||(t.channels={})),(i=t.color||(t.color={})).blend=function(e,t){var i=(255&t.rgba)/255;if(1===i)return{css:t.css,rgba:t.rgba};var n=t.rgba>>24&255,o=t.rgba>>16&255,s=t.rgba>>8&255,a=e.rgba>>24&255,c=e.rgba>>16&255,l=e.rgba>>8&255,h=a+Math.round((n-a)*i),u=c+Math.round((o-c)*i),_=l+Math.round((s-l)*i);return{css:r.toCss(h,u,_),rgba:r.toRgba(h,u,_)}},i.isOpaque=function(e){return 255==(255&e.rgba)},i.ensureContrastRatio=function(e,t,r){var i=o.ensureContrastRatio(e.rgba,t.rgba,r);if(i)return o.toColor(i>>24&255,i>>16&255,i>>8&255)},i.opaque=function(e){var t=(255|e.rgba)>>>0,i=o.toChannels(t),n=i[0],s=i[1],a=i[2];return{css:r.toCss(n,s,a),rgba:t}},i.opacity=function(e,t){var i=Math.round(255*t),n=o.toChannels(e.rgba),s=n[0],a=n[1],c=n[2];return{css:r.toCss(s,a,c,i),rgba:r.toRgba(s,a,c,i)}},(t.css||(t.css={})).toColor=function(e){switch(e.length){case 7:return{css:e,rgba:(parseInt(e.slice(1),16)<<8|255)>>>0};case 9:return{css:e,rgba:parseInt(e.slice(1),16)>>>0}}throw new Error("css.toColor: Unsupported css format")},function(e){function t(e,t,r){var i=e/255,n=t/255,o=r/255;return.2126*(i<=.03928?i/12.92:Math.pow((i+.055)/1.055,2.4))+.7152*(n<=.03928?n/12.92:Math.pow((n+.055)/1.055,2.4))+.0722*(o<=.03928?o/12.92:Math.pow((o+.055)/1.055,2.4))}e.relativeLuminance=function(e){return t(e>>16&255,e>>8&255,255&e)},e.relativeLuminance2=t}(n=t.rgb||(t.rgb={})),function(e){function t(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u0||l>0||h>0);)c-=Math.max(0,Math.ceil(.1*c)),l-=Math.max(0,Math.ceil(.1*l)),h-=Math.max(0,Math.ceil(.1*h)),u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));return(c<<24|l<<16|h<<8|255)>>>0}function i(e,t,r){for(var i=e>>24&255,o=e>>16&255,s=e>>8&255,c=t>>24&255,l=t>>16&255,h=t>>8&255,u=a(n.relativeLuminance2(c,h,l),n.relativeLuminance2(i,o,s));u>>0}e.ensureContrastRatio=function(e,r,o){var s=n.relativeLuminance(e>>8),c=n.relativeLuminance(r>>8);if(a(s,c)>24&255,e>>16&255,e>>8&255,255&e]},e.toColor=function(e,t,i){return{css:r.toCss(e,t,i),rgba:r.toRgba(e,t,i)}}}(o=t.rgba||(t.rgba={})),t.toPaddedHex=s,t.contrastRatio=a},7239:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorContrastCache=void 0;var r=function(){function e(){this._color={},this._rgba={}}return e.prototype.clear=function(){this._color={},this._rgba={}},e.prototype.setCss=function(e,t,r){this._rgba[e]||(this._rgba[e]={}),this._rgba[e][t]=r},e.prototype.getCss=function(e,t){return this._rgba[e]?this._rgba[e][t]:void 0},e.prototype.setColor=function(e,t,r){this._color[e]||(this._color[e]={}),this._color[e][t]=r},e.prototype.getColor=function(e,t){return this._color[e]?this._color[e][t]:void 0},e}();t.ColorContrastCache=r},5680:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ColorManager=t.DEFAULT_ANSI_COLORS=void 0;var i=r(4774),n=r(7239),o=i.css.toColor("#ffffff"),s=i.css.toColor("#000000"),a=i.css.toColor("#ffffff"),c=i.css.toColor("#000000"),l={css:"rgba(255, 255, 255, 0.3)",rgba:4294967117};t.DEFAULT_ANSI_COLORS=Object.freeze(function(){for(var e=[i.css.toColor("#2e3436"),i.css.toColor("#cc0000"),i.css.toColor("#4e9a06"),i.css.toColor("#c4a000"),i.css.toColor("#3465a4"),i.css.toColor("#75507b"),i.css.toColor("#06989a"),i.css.toColor("#d3d7cf"),i.css.toColor("#555753"),i.css.toColor("#ef2929"),i.css.toColor("#8ae234"),i.css.toColor("#fce94f"),i.css.toColor("#729fcf"),i.css.toColor("#ad7fa8"),i.css.toColor("#34e2e2"),i.css.toColor("#eeeeec")],t=[0,95,135,175,215,255],r=0;r<216;r++){var n=t[r/36%6|0],o=t[r/6%6|0],s=t[r%6];e.push({css:i.channels.toCss(n,o,s),rgba:i.channels.toRgba(n,o,s)})}for(r=0;r<24;r++){var a=8+10*r;e.push({css:i.channels.toCss(a,a,a),rgba:i.channels.toRgba(a,a,a)})}return e}());var h=function(){function e(e,r){this.allowTransparency=r;var h=e.createElement("canvas");h.width=1,h.height=1;var u=h.getContext("2d");if(!u)throw new Error("Could not get rendering context");this._ctx=u,this._ctx.globalCompositeOperation="copy",this._litmusColor=this._ctx.createLinearGradient(0,0,1,1),this._contrastCache=new n.ColorContrastCache,this.colors={foreground:o,background:s,cursor:a,cursorAccent:c,selectionTransparent:l,selectionOpaque:i.color.blend(s,l),ansi:t.DEFAULT_ANSI_COLORS.slice(),contrastCache:this._contrastCache}}return e.prototype.onOptionsChange=function(e){"minimumContrastRatio"===e&&this._contrastCache.clear()},e.prototype.setTheme=function(e){void 0===e&&(e={}),this.colors.foreground=this._parseColor(e.foreground,o),this.colors.background=this._parseColor(e.background,s),this.colors.cursor=this._parseColor(e.cursor,a,!0),this.colors.cursorAccent=this._parseColor(e.cursorAccent,c,!0),this.colors.selectionTransparent=this._parseColor(e.selection,l,!0),this.colors.selectionOpaque=i.color.blend(this.colors.background,this.colors.selectionTransparent),i.color.isOpaque(this.colors.selectionTransparent)&&(this.colors.selectionTransparent=i.color.opacity(this.colors.selectionTransparent,.3)),this.colors.ansi[0]=this._parseColor(e.black,t.DEFAULT_ANSI_COLORS[0]),this.colors.ansi[1]=this._parseColor(e.red,t.DEFAULT_ANSI_COLORS[1]),this.colors.ansi[2]=this._parseColor(e.green,t.DEFAULT_ANSI_COLORS[2]),this.colors.ansi[3]=this._parseColor(e.yellow,t.DEFAULT_ANSI_COLORS[3]),this.colors.ansi[4]=this._parseColor(e.blue,t.DEFAULT_ANSI_COLORS[4]),this.colors.ansi[5]=this._parseColor(e.magenta,t.DEFAULT_ANSI_COLORS[5]),this.colors.ansi[6]=this._parseColor(e.cyan,t.DEFAULT_ANSI_COLORS[6]),this.colors.ansi[7]=this._parseColor(e.white,t.DEFAULT_ANSI_COLORS[7]),this.colors.ansi[8]=this._parseColor(e.brightBlack,t.DEFAULT_ANSI_COLORS[8]),this.colors.ansi[9]=this._parseColor(e.brightRed,t.DEFAULT_ANSI_COLORS[9]),this.colors.ansi[10]=this._parseColor(e.brightGreen,t.DEFAULT_ANSI_COLORS[10]),this.colors.ansi[11]=this._parseColor(e.brightYellow,t.DEFAULT_ANSI_COLORS[11]),this.colors.ansi[12]=this._parseColor(e.brightBlue,t.DEFAULT_ANSI_COLORS[12]),this.colors.ansi[13]=this._parseColor(e.brightMagenta,t.DEFAULT_ANSI_COLORS[13]),this.colors.ansi[14]=this._parseColor(e.brightCyan,t.DEFAULT_ANSI_COLORS[14]),this.colors.ansi[15]=this._parseColor(e.brightWhite,t.DEFAULT_ANSI_COLORS[15]),this._contrastCache.clear()},e.prototype._parseColor=function(e,t,r){if(void 0===r&&(r=this.allowTransparency),void 0===e)return t;if(this._ctx.fillStyle=this._litmusColor,this._ctx.fillStyle=e,"string"!=typeof this._ctx.fillStyle)return console.warn("Color: "+e+" is invalid using fallback "+t.css),t;this._ctx.fillRect(0,0,1,1);var n=this._ctx.getImageData(0,0,1,1).data;if(255!==n[3]){if(!r)return console.warn("Color: "+e+" is using transparency, but allowTransparency is false. Using fallback "+t.css+"."),t;var o=this._ctx.fillStyle.substring(5,this._ctx.fillStyle.length-1).split(",").map((function(e){return Number(e)})),s=o[0],a=o[1],c=o[2],l=o[3],h=Math.round(255*l);return{rgba:i.channels.toRgba(s,a,c,h),css:e}}return{css:this._ctx.fillStyle,rgba:i.channels.toRgba(n[0],n[1],n[2],n[3])}},e}();t.ColorManager=h},9631:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeElementFromParent=void 0,t.removeElementFromParent=function(){for(var e,t=[],r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.addDisposableDomListener=void 0,t.addDisposableDomListener=function(e,t,r,i){e.addEventListener(t,r,i);var n=!1;return{dispose:function(){n||(n=!0,e.removeEventListener(t,r,i))}}}},3551:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZone=t.Linkifier=void 0;var o=r(8460),s=r(2585),a=function(){function e(e,t,r){this._bufferService=e,this._logService=t,this._unicodeService=r,this._linkMatchers=[],this._nextLinkMatcherId=0,this._onShowLinkUnderline=new o.EventEmitter,this._onHideLinkUnderline=new o.EventEmitter,this._onLinkTooltip=new o.EventEmitter,this._rowsToLinkify={start:void 0,end:void 0}}return Object.defineProperty(e.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLinkTooltip",{get:function(){return this._onLinkTooltip.event},enumerable:!1,configurable:!0}),e.prototype.attachToDom=function(e,t){this._element=e,this._mouseZoneManager=t},e.prototype.linkifyRows=function(t,r){var i=this;this._mouseZoneManager&&(void 0===this._rowsToLinkify.start||void 0===this._rowsToLinkify.end?(this._rowsToLinkify.start=t,this._rowsToLinkify.end=r):(this._rowsToLinkify.start=Math.min(this._rowsToLinkify.start,t),this._rowsToLinkify.end=Math.max(this._rowsToLinkify.end,r)),this._mouseZoneManager.clearAll(t,r),this._rowsTimeoutId&&clearTimeout(this._rowsTimeoutId),this._rowsTimeoutId=setTimeout((function(){return i._linkifyRows()}),e._timeBeforeLatency))},e.prototype._linkifyRows=function(){this._rowsTimeoutId=void 0;var e=this._bufferService.buffer;if(void 0!==this._rowsToLinkify.start&&void 0!==this._rowsToLinkify.end){var t=e.ydisp+this._rowsToLinkify.start;if(!(t>=e.lines.length)){for(var r=e.ydisp+Math.min(this._rowsToLinkify.end,this._bufferService.rows)+1,i=Math.ceil(2e3/this._bufferService.cols),n=this._bufferService.buffer.iterator(!1,t,r,i,i);n.hasNext();)for(var o=n.next(),s=0;s=0;t--)if(e.priority<=this._linkMatchers[t].priority)return void this._linkMatchers.splice(t+1,0,e);this._linkMatchers.splice(0,0,e)}else this._linkMatchers.push(e)},e.prototype.deregisterLinkMatcher=function(e){for(var t=0;t>9&511:void 0;r.validationCallback?r.validationCallback(a,(function(e){n._rowsTimeoutId||e&&n._addLink(l[1],l[0]-n._bufferService.buffer.ydisp,a,r,_)})):c._addLink(l[1],l[0]-c._bufferService.buffer.ydisp,a,r,_)},c=this;null!==(i=o.exec(t))&&"break"!==a(););},e.prototype._addLink=function(e,t,r,i,n){var o=this;if(this._mouseZoneManager&&this._element){var s=this._unicodeService.getStringCellWidth(r),a=e%this._bufferService.cols,l=t+Math.floor(e/this._bufferService.cols),h=(a+s)%this._bufferService.cols,u=l+Math.floor((a+s)/this._bufferService.cols);0===h&&(h=this._bufferService.cols,u--),this._mouseZoneManager.add(new c(a+1,l+1,h+1,u+1,(function(e){if(i.handler)return i.handler(e,r);var t=window.open();t?(t.opener=null,t.location.href=r):console.warn("Opening link blocked as opener could not be cleared")}),(function(){o._onShowLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.add("xterm-cursor-pointer")}),(function(e){o._onLinkTooltip.fire(o._createLinkHoverEvent(a,l,h,u,n)),i.hoverTooltipCallback&&i.hoverTooltipCallback(e,r,{start:{x:a,y:l},end:{x:h,y:u}})}),(function(){o._onHideLinkUnderline.fire(o._createLinkHoverEvent(a,l,h,u,n)),o._element.classList.remove("xterm-cursor-pointer"),i.hoverLeaveCallback&&i.hoverLeaveCallback()}),(function(e){return!i.willLinkActivate||i.willLinkActivate(e,r)})))}},e.prototype._createLinkHoverEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},e._timeBeforeLatency=200,e=i([n(0,s.IBufferService),n(1,s.ILogService),n(2,s.IUnicodeService)],e)}();t.Linkifier=a;var c=function(e,t,r,i,n,o,s,a,c){this.x1=e,this.y1=t,this.x2=r,this.y2=i,this.clickCallback=n,this.hoverCallback=o,this.tooltipCallback=s,this.leaveCallback=a,this.willLinkActivate=c};t.MouseZone=c},6465:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Linkifier2=void 0;var a=r(2585),c=r(8460),l=r(844),h=r(3656),u=function(e){function t(t){var r=e.call(this)||this;return r._bufferService=t,r._linkProviders=[],r._linkCacheDisposables=[],r._isMouseOut=!0,r._activeLine=-1,r._onShowLinkUnderline=r.register(new c.EventEmitter),r._onHideLinkUnderline=r.register(new c.EventEmitter),r.register(l.getDisposeArrayDisposable(r._linkCacheDisposables)),r}return n(t,e),Object.defineProperty(t.prototype,"currentLink",{get:function(){return this._currentLink},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onShowLinkUnderline",{get:function(){return this._onShowLinkUnderline.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onHideLinkUnderline",{get:function(){return this._onHideLinkUnderline.event},enumerable:!1,configurable:!0}),t.prototype.registerLinkProvider=function(e){var t=this;return this._linkProviders.push(e),{dispose:function(){var r=t._linkProviders.indexOf(e);-1!==r&&t._linkProviders.splice(r,1)}}},t.prototype.attachToDom=function(e,t,r){var i=this;this._element=e,this._mouseService=t,this._renderService=r,this.register(h.addDisposableDomListener(this._element,"mouseleave",(function(){i._isMouseOut=!0,i._clearCurrentLink()}))),this.register(h.addDisposableDomListener(this._element,"mousemove",this._onMouseMove.bind(this))),this.register(h.addDisposableDomListener(this._element,"click",this._onClick.bind(this)))},t.prototype._onMouseMove=function(e){if(this._lastMouseEvent=e,this._element&&this._mouseService){var t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(t){this._isMouseOut=!1;for(var r=e.composedPath(),i=0;ie?this._bufferService.cols:s.link.range.end.x,l=a;l<=c;l++){if(r.has(l)){n.splice(o--,1);break}r.add(l)}}},t.prototype._checkLinkProviderResult=function(e,t,r){var i,n=this;if(!this._activeProviderReplies)return r;for(var o=this._activeProviderReplies.get(e),s=!1,a=0;a=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,l.disposeArray(this._linkCacheDisposables))},t.prototype._handleNewLink=function(e){var t=this;if(this._element&&this._lastMouseEvent&&this._mouseService){var r=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);r&&this._linkAtPosition(e.link,r)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:void 0===e.link.decorations||e.link.decorations.underline,pointerCursor:void 0===e.link.decorations||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.pointerCursor},set:function(e){var r,i;(null===(r=t._currentLink)||void 0===r?void 0:r.state)&&t._currentLink.state.decorations.pointerCursor!==e&&(t._currentLink.state.decorations.pointerCursor=e,t._currentLink.state.isHovered&&(null===(i=t._element)||void 0===i||i.classList.toggle("xterm-cursor-pointer",e)))}},underline:{get:function(){var e,r;return null===(r=null===(e=t._currentLink)||void 0===e?void 0:e.state)||void 0===r?void 0:r.decorations.underline},set:function(r){var i,n,o;(null===(i=t._currentLink)||void 0===i?void 0:i.state)&&(null===(o=null===(n=t._currentLink)||void 0===n?void 0:n.state)||void 0===o?void 0:o.decorations.underline)!==r&&(t._currentLink.state.decorations.underline=r,t._currentLink.state.isHovered&&t._fireUnderlineEvent(e.link,r))}}}),this._renderService&&this._linkCacheDisposables.push(this._renderService.onRenderedBufferChange((function(e){var r=0===e.start?0:e.start+1+t._bufferService.buffer.ydisp;t._clearCurrentLink(r,e.end+1+t._bufferService.buffer.ydisp)}))))}},t.prototype._linkHover=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add("xterm-cursor-pointer")),t.hover&&t.hover(r,t.text)},t.prototype._fireUnderlineEvent=function(e,t){var r=e.range,i=this._bufferService.buffer.ydisp,n=this._createLinkUnderlineEvent(r.start.x-1,r.start.y-i-1,r.end.x,r.end.y-i-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(n)},t.prototype._linkLeave=function(e,t,r){var i;(null===(i=this._currentLink)||void 0===i?void 0:i.state)&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove("xterm-cursor-pointer")),t.leave&&t.leave(r,t.text)},t.prototype._linkAtPosition=function(e,t){var r=e.range.start.y===e.range.end.y,i=e.range.start.yt.y;return(r&&e.range.start.x<=t.x&&e.range.end.x>=t.x||i&&e.range.end.x>=t.x||n&&e.range.start.x<=t.x||i&&n)&&e.range.start.y<=t.y&&e.range.end.y>=t.y},t.prototype._positionFromMouseEvent=function(e,t,r){var i=r.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(i)return{x:i[0],y:i[1]+this._bufferService.buffer.ydisp}},t.prototype._createLinkUnderlineEvent=function(e,t,r,i,n){return{x1:e,y1:t,x2:r,y2:i,cols:this._bufferService.cols,fg:n}},o([s(0,a.IBufferService)],t)}(l.Disposable);t.Linkifier2=u},9042:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.tooMuchOutput=t.promptLabel=void 0,t.promptLabel="Terminal input",t.tooMuchOutput="Too much output to announce, navigate to rows manually to read"},6954:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseZoneManager=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s){var a=e.call(this)||this;return a._element=t,a._screenElement=r,a._bufferService=i,a._mouseService=n,a._selectionService=o,a._optionsService=s,a._zones=[],a._areZonesActive=!1,a._lastHoverCoords=[void 0,void 0],a._initialSelectionLength=0,a.register(c.addDisposableDomListener(a._element,"mousedown",(function(e){return a._onMouseDown(e)}))),a._mouseMoveListener=function(e){return a._onMouseMove(e)},a._mouseLeaveListener=function(e){return a._onMouseLeave(e)},a._clickListener=function(e){return a._onClick(e)},a}return n(t,e),t.prototype.dispose=function(){e.prototype.dispose.call(this),this._deactivate()},t.prototype.add=function(e){this._zones.push(e),1===this._zones.length&&this._activate()},t.prototype.clearAll=function(e,t){if(0!==this._zones.length){e&&t||(e=0,t=this._bufferService.rows-1);for(var r=0;re&&i.y1<=t+1||i.y2>e&&i.y2<=t+1||i.y1t+1)&&(this._currentZone&&this._currentZone===i&&(this._currentZone.leaveCallback(),this._currentZone=void 0),this._zones.splice(r--,1))}0===this._zones.length&&this._deactivate()}},t.prototype._activate=function(){this._areZonesActive||(this._areZonesActive=!0,this._element.addEventListener("mousemove",this._mouseMoveListener),this._element.addEventListener("mouseleave",this._mouseLeaveListener),this._element.addEventListener("click",this._clickListener))},t.prototype._deactivate=function(){this._areZonesActive&&(this._areZonesActive=!1,this._element.removeEventListener("mousemove",this._mouseMoveListener),this._element.removeEventListener("mouseleave",this._mouseLeaveListener),this._element.removeEventListener("click",this._clickListener))},t.prototype._onMouseMove=function(e){this._lastHoverCoords[0]===e.pageX&&this._lastHoverCoords[1]===e.pageY||(this._onHover(e),this._lastHoverCoords=[e.pageX,e.pageY])},t.prototype._onHover=function(e){var t=this,r=this._findZoneEventAt(e);r!==this._currentZone&&(this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout)),r&&(this._currentZone=r,r.hoverCallback&&r.hoverCallback(e),this._tooltipTimeout=window.setTimeout((function(){return t._onTooltip(e)}),this._optionsService.options.linkTooltipHoverDuration)))},t.prototype._onTooltip=function(e){this._tooltipTimeout=void 0;var t=this._findZoneEventAt(e);null==t||t.tooltipCallback(e)},t.prototype._onMouseDown=function(e){if(this._initialSelectionLength=this._getSelectionLength(),this._areZonesActive){var t=this._findZoneEventAt(e);(null==t?void 0:t.willLinkActivate(e))&&(e.preventDefault(),e.stopImmediatePropagation())}},t.prototype._onMouseLeave=function(e){this._currentZone&&(this._currentZone.leaveCallback(),this._currentZone=void 0,this._tooltipTimeout&&clearTimeout(this._tooltipTimeout))},t.prototype._onClick=function(e){var t=this._findZoneEventAt(e),r=this._getSelectionLength();t&&r===this._initialSelectionLength&&(t.clickCallback(e),e.preventDefault(),e.stopImmediatePropagation())},t.prototype._getSelectionLength=function(){var e=this._selectionService.selectionText;return e?e.length:0},t.prototype._findZoneEventAt=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows);if(t)for(var r=t[0],i=t[1],n=0;n=o.x1&&r=o.x1||i===o.y2&&ro.y1&&i{Object.defineProperty(t,"__esModule",{value:!0}),t.RenderDebouncer=void 0;var r=function(){function e(e){this._renderCallback=e}return e.prototype.dispose=function(){this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.refresh=function(e,t,r){var i=this;this._rowCount=r,e=void 0!==e?e:0,t=void 0!==t?t:this._rowCount-1,this._rowStart=void 0!==this._rowStart?Math.min(this._rowStart,e):e,this._rowEnd=void 0!==this._rowEnd?Math.max(this._rowEnd,t):t,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){return i._innerRefresh()})))},e.prototype._innerRefresh=function(){if(void 0!==this._rowStart&&void 0!==this._rowEnd&&void 0!==this._rowCount){var e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._animationFrame=void 0,this._renderCallback(e,t)}},e}();t.RenderDebouncer=r},5596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.ScreenDprMonitor=void 0;var o=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._currentDevicePixelRatio=window.devicePixelRatio,t}return n(t,e),t.prototype.setListener=function(e){var t=this;this._listener&&this.clearListener(),this._listener=e,this._outerListener=function(){t._listener&&(t._listener(window.devicePixelRatio,t._currentDevicePixelRatio),t._updateDpr())},this._updateDpr()},t.prototype.dispose=function(){e.prototype.dispose.call(this),this.clearListener()},t.prototype._updateDpr=function(){var e;this._outerListener&&(null===(e=this._resolutionMediaMatchList)||void 0===e||e.removeListener(this._outerListener),this._currentDevicePixelRatio=window.devicePixelRatio,this._resolutionMediaMatchList=window.matchMedia("screen and (resolution: "+window.devicePixelRatio+"dppx)"),this._resolutionMediaMatchList.addListener(this._outerListener))},t.prototype.clearListener=function(){this._resolutionMediaMatchList&&this._listener&&this._outerListener&&(this._resolutionMediaMatchList.removeListener(this._outerListener),this._resolutionMediaMatchList=void 0,this._listener=void 0,this._outerListener=void 0)},t}(r(844).Disposable);t.ScreenDprMonitor=o},3236:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var o=r(2950),s=r(1680),a=r(3614),c=r(2584),l=r(5435),h=r(3525),u=r(3551),_=r(9312),f=r(6114),d=r(3656),p=r(9042),v=r(357),g=r(6954),y=r(4567),m=r(1296),b=r(7399),C=r(8460),S=r(8437),w=r(5680),E=r(3230),A=r(4725),R=r(428),L=r(8934),x=r(6465),k=r(5114),T=r(8969),O=r(4774),D=r(4269),P="undefined"!=typeof window?window.document:null,M=function(e){function t(t){void 0===t&&(t={});var r=e.call(this,t)||this;return r.browser=f,r._keyDownHandled=!1,r._onCursorMove=new C.EventEmitter,r._onKey=new C.EventEmitter,r._onRender=new C.EventEmitter,r._onSelectionChange=new C.EventEmitter,r._onTitleChange=new C.EventEmitter,r._onBell=new C.EventEmitter,r._onFocus=new C.EventEmitter,r._onBlur=new C.EventEmitter,r._onA11yCharEmitter=new C.EventEmitter,r._onA11yTabEmitter=new C.EventEmitter,r._setup(),r.linkifier=r._instantiationService.createInstance(u.Linkifier),r.linkifier2=r.register(r._instantiationService.createInstance(x.Linkifier2)),r.register(r._inputHandler.onRequestBell((function(){return r.bell()}))),r.register(r._inputHandler.onRequestRefreshRows((function(e,t){return r.refresh(e,t)}))),r.register(r._inputHandler.onRequestReset((function(){return r.reset()}))),r.register(r._inputHandler.onRequestWindowsOptionsReport((function(e){return r._reportWindowsOptions(e)}))),r.register(r._inputHandler.onAnsiColorChange((function(e){return r._changeAnsiColor(e)}))),r.register(C.forwardEvent(r._inputHandler.onCursorMove,r._onCursorMove)),r.register(C.forwardEvent(r._inputHandler.onTitleChange,r._onTitleChange)),r.register(C.forwardEvent(r._inputHandler.onA11yChar,r._onA11yCharEmitter)),r.register(C.forwardEvent(r._inputHandler.onA11yTab,r._onA11yTabEmitter)),r.register(r._bufferService.onResize((function(e){return r._afterResize(e.cols,e.rows)}))),r}return n(t,e),Object.defineProperty(t.prototype,"options",{get:function(){return this.optionsService.options},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onKey",{get:function(){return this._onKey.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRender",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBell",{get:function(){return this._onBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onFocus",{get:function(){return this._onFocus.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBlur",{get:function(){return this._onBlur.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yCharEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTabEmitter.event},enumerable:!1,configurable:!0}),t.prototype._changeAnsiColor=function(e){var t,r;if(this._colorManager){for(var i=0,n=e.colors;i4)&&t._coreMouseService.triggerMouseEvent({col:n.x-33,row:n.y-33,button:r,action:i,ctrl:e.ctrlKey,alt:e.altKey,shift:e.shiftKey})}var n={mouseup:null,wheel:null,mousedrag:null,mousemove:null},o=function(t){return i(t),t.buttons||(e._document.removeEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.removeEventListener("mousemove",n.mousedrag)),e.cancel(t)},s=function(t){return i(t),t.preventDefault(),e.cancel(t)},a=function(e){e.buttons&&i(e)},l=function(e){e.buttons||i(e)};this.register(this._coreMouseService.onProtocolChange((function(t){t?("debug"===e.optionsService.options.logLevel&&e._logService.debug("Binding to mouse events:",e._coreMouseService.explainEvents(t)),e.element.classList.add("enable-mouse-events"),e._selectionService.disable()):(e._logService.debug("Unbinding from mouse events."),e.element.classList.remove("enable-mouse-events"),e._selectionService.enable()),8&t?n.mousemove||(r.addEventListener("mousemove",l),n.mousemove=l):(r.removeEventListener("mousemove",n.mousemove),n.mousemove=null),16&t?n.wheel||(r.addEventListener("wheel",s,{passive:!1}),n.wheel=s):(r.removeEventListener("wheel",n.wheel),n.wheel=null),2&t?n.mouseup||(n.mouseup=o):(e._document.removeEventListener("mouseup",n.mouseup),n.mouseup=null),4&t?n.mousedrag||(n.mousedrag=a):(e._document.removeEventListener("mousemove",n.mousedrag),n.mousedrag=null)}))),this._coreMouseService.activeProtocol=this._coreMouseService.activeProtocol,this.register(d.addDisposableDomListener(r,"mousedown",(function(t){if(t.preventDefault(),e.focus(),e._coreMouseService.areMouseEventsActive&&!e._selectionService.shouldForceSelection(t))return i(t),n.mouseup&&e._document.addEventListener("mouseup",n.mouseup),n.mousedrag&&e._document.addEventListener("mousemove",n.mousedrag),e.cancel(t)}))),this.register(d.addDisposableDomListener(r,"wheel",(function(t){if(n.wheel);else if(!e.buffer.hasScrollback){var r=e.viewport.getLinesScrolled(t);if(0===r)return;for(var i=c.C0.ESC+(e._coreService.decPrivateModes.applicationCursorKeys?"O":"[")+(t.deltaY<0?"A":"B"),o="",s=0;s47)},t.prototype._keyUp=function(e){this._customKeyEventHandler&&!1===this._customKeyEventHandler(e)||(function(e){return 16===e.keyCode||17===e.keyCode||18===e.keyCode}(e)||this.focus(),this.updateCursorStyle(e))},t.prototype._keyPress=function(e){var t;if(this._keyDownHandled)return!1;if(this._customKeyEventHandler&&!1===this._customKeyEventHandler(e))return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(null===e.which||void 0===e.which)t=e.keyCode;else{if(0===e.which||0===e.charCode)return!1;t=e.which}return!(!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)||(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this._coreService.triggerDataEvent(t,!0),0))},t.prototype.bell=function(){var e;this._soundBell()&&(null===(e=this._soundService)||void 0===e||e.playBellSound()),this._onBell.fire()},t.prototype.resize=function(t,r){t!==this.cols||r!==this.rows?e.prototype.resize.call(this,t,r):this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure()},t.prototype._afterResize=function(e,t){var r,i;null===(r=this._charSizeService)||void 0===r||r.measure(),null===(i=this.viewport)||void 0===i||i.syncScrollArea(!0)},t.prototype.clear=function(){if(0!==this.buffer.ybase||0!==this.buffer.y){this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(var e=1;e=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Viewport=void 0;var a=r(844),c=r(3656),l=r(4725),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a){var l=e.call(this)||this;return l._scrollLines=t,l._viewportElement=r,l._scrollArea=i,l._bufferService=n,l._optionsService=o,l._charSizeService=s,l._renderService=a,l.scrollBarWidth=0,l._currentRowHeight=0,l._lastRecordedBufferLength=0,l._lastRecordedViewportHeight=0,l._lastRecordedBufferHeight=0,l._lastTouchY=0,l._lastScrollTop=0,l._wheelPartialScroll=0,l._refreshAnimationFrame=null,l._ignoreNextScrollEvent=!1,l.scrollBarWidth=l._viewportElement.offsetWidth-l._scrollArea.offsetWidth||15,l.register(c.addDisposableDomListener(l._viewportElement,"scroll",l._onScroll.bind(l))),setTimeout((function(){return l.syncScrollArea()}),0),l}return n(t,e),t.prototype.onThemeChange=function(e){this._viewportElement.style.backgroundColor=e.background.css},t.prototype._refresh=function(e){var t=this;if(e)return this._innerRefresh(),void(null!==this._refreshAnimationFrame&&cancelAnimationFrame(this._refreshAnimationFrame));null===this._refreshAnimationFrame&&(this._refreshAnimationFrame=requestAnimationFrame((function(){return t._innerRefresh()})))},t.prototype._innerRefresh=function(){if(this._charSizeService.height>0){this._currentRowHeight=this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio,this._lastRecordedViewportHeight=this._viewportElement.offsetHeight;var e=Math.round(this._currentRowHeight*this._lastRecordedBufferLength)+(this._lastRecordedViewportHeight-this._renderService.dimensions.canvasHeight);this._lastRecordedBufferHeight!==e&&(this._lastRecordedBufferHeight=e,this._scrollArea.style.height=this._lastRecordedBufferHeight+"px")}var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._viewportElement.scrollTop!==t&&(this._ignoreNextScrollEvent=!0,this._viewportElement.scrollTop=t),this._refreshAnimationFrame=null},t.prototype.syncScrollArea=function(e){if(void 0===e&&(e=!1),this._lastRecordedBufferLength!==this._bufferService.buffer.lines.length)return this._lastRecordedBufferLength=this._bufferService.buffer.lines.length,void this._refresh(e);if(this._lastRecordedViewportHeight===this._renderService.dimensions.canvasHeight){var t=this._bufferService.buffer.ydisp*this._currentRowHeight;this._lastScrollTop===t&&this._lastScrollTop===this._viewportElement.scrollTop&&this._renderService.dimensions.scaledCellHeight/window.devicePixelRatio===this._currentRowHeight||this._refresh(e)}else this._refresh(e)},t.prototype._onScroll=function(e){if(this._lastScrollTop=this._viewportElement.scrollTop,this._viewportElement.offsetParent){if(this._ignoreNextScrollEvent)return this._ignoreNextScrollEvent=!1,void this._scrollLines(0);var t=Math.round(this._lastScrollTop/this._currentRowHeight)-this._bufferService.buffer.ydisp;this._scrollLines(t)}},t.prototype._bubbleScroll=function(e,t){var r=this._viewportElement.scrollTop+this._lastRecordedViewportHeight;return!(t<0&&0!==this._viewportElement.scrollTop||t>0&&r0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(t*=this._bufferService.rows),t},t.prototype._applyScrollModifier=function(e,t){var r=this._optionsService.options.fastScrollModifier;return"alt"===r&&t.altKey||"ctrl"===r&&t.ctrlKey||"shift"===r&&t.shiftKey?e*this._optionsService.options.fastScrollSensitivity*this._optionsService.options.scrollSensitivity:e*this._optionsService.options.scrollSensitivity},t.prototype.onTouchStart=function(e){this._lastTouchY=e.touches[0].pageY},t.prototype.onTouchMove=function(e){var t=this._lastTouchY-e.touches[0].pageY;return this._lastTouchY=e.touches[0].pageY,0!==t&&(this._viewportElement.scrollTop+=t,this._bubbleScroll(e,t))},o([s(3,h.IBufferService),s(4,h.IOptionsService),s(5,l.ICharSizeService),s(6,l.IRenderService)],t)}(a.Disposable);t.Viewport=u},2950:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CompositionHelper=void 0;var o=r(4725),s=r(2585),a=function(){function e(e,t,r,i,n,o){this._textarea=e,this._compositionView=t,this._bufferService=r,this._optionsService=i,this._coreService=n,this._renderService=o,this._isComposing=!1,this._isSendingComposition=!1,this._compositionPosition={start:0,end:0},this._dataAlreadySent=""}return Object.defineProperty(e.prototype,"isComposing",{get:function(){return this._isComposing},enumerable:!1,configurable:!0}),e.prototype.compositionstart=function(){this._isComposing=!0,this._compositionPosition.start=this._textarea.value.length,this._compositionView.textContent="",this._dataAlreadySent="",this._compositionView.classList.add("active")},e.prototype.compositionupdate=function(e){var t=this;this._compositionView.textContent=e.data,this.updateCompositionElements(),setTimeout((function(){t._compositionPosition.end=t._textarea.value.length}),0)},e.prototype.compositionend=function(){this._finalizeComposition(!0)},e.prototype.keydown=function(e){if(this._isComposing||this._isSendingComposition){if(229===e.keyCode)return!1;if(16===e.keyCode||17===e.keyCode||18===e.keyCode)return!1;this._finalizeComposition(!1)}return 229!==e.keyCode||(this._handleAnyTextareaChanges(),!1)},e.prototype._finalizeComposition=function(e){var t=this;if(this._compositionView.classList.remove("active"),this._isComposing=!1,e){var r={start:this._compositionPosition.start,end:this._compositionPosition.end};this._isSendingComposition=!0,setTimeout((function(){var e;t._isSendingComposition&&(t._isSendingComposition=!1,r.start+=t._dataAlreadySent.length,(e=t._isComposing?t._textarea.value.substring(r.start,r.end):t._textarea.value.substring(r.start)).length>0&&t._coreService.triggerDataEvent(e,!0))}),0)}else{this._isSendingComposition=!1;var i=this._textarea.value.substring(this._compositionPosition.start,this._compositionPosition.end);this._coreService.triggerDataEvent(i,!0)}},e.prototype._handleAnyTextareaChanges=function(){var e=this,t=this._textarea.value;setTimeout((function(){if(!e._isComposing){var r=e._textarea.value.replace(t,"");r.length>0&&(e._dataAlreadySent=r,e._coreService.triggerDataEvent(r,!0))}}),0)},e.prototype.updateCompositionElements=function(e){var t=this;if(this._isComposing){if(this._bufferService.buffer.isCursorInViewport){var r=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1),i=this._renderService.dimensions.actualCellHeight,n=this._bufferService.buffer.y*this._renderService.dimensions.actualCellHeight,o=r*this._renderService.dimensions.actualCellWidth;this._compositionView.style.left=o+"px",this._compositionView.style.top=n+"px",this._compositionView.style.height=i+"px",this._compositionView.style.lineHeight=i+"px",this._compositionView.style.fontFamily=this._optionsService.options.fontFamily,this._compositionView.style.fontSize=this._optionsService.options.fontSize+"px";var s=this._compositionView.getBoundingClientRect();this._textarea.style.left=o+"px",this._textarea.style.top=n+"px",this._textarea.style.width=Math.max(s.width,1)+"px",this._textarea.style.height=Math.max(s.height,1)+"px",this._textarea.style.lineHeight=s.height+"px"}e||setTimeout((function(){return t.updateCompositionElements(!0)}),0)}},i([n(2,s.IBufferService),n(3,s.IOptionsService),n(4,s.ICoreService),n(5,o.IRenderService)],e)}();t.CompositionHelper=a},9806:(e,t)=>{function r(e,t){var r=t.getBoundingClientRect();return[e.clientX-r.left,e.clientY-r.top]}Object.defineProperty(t,"__esModule",{value:!0}),t.getRawByteCoords=t.getCoords=t.getCoordsRelativeToElement=void 0,t.getCoordsRelativeToElement=r,t.getCoords=function(e,t,i,n,o,s,a,c){if(o){var l=r(e,t);if(l)return l[0]=Math.ceil((l[0]+(c?s/2:0))/s),l[1]=Math.ceil(l[1]/a),l[0]=Math.min(Math.max(l[0],1),i+(c?1:0)),l[1]=Math.min(Math.max(l[1],1),n),l}},t.getRawByteCoords=function(e){if(e)return{x:e[0]+32,y:e[1]+32}}},9504:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.moveToCellSequence=void 0;var i=r(2584);function n(e,t,r,i){var n=e-o(r,e),a=t-o(r,t);return l(Math.abs(n-a)-function(e,t,r){for(var i=0,n=e-o(r,e),a=t-o(r,t),c=0;c=0&&tt?"A":"B"}function a(e,t,r,i,n,o){for(var s=e,a=t,c="";s!==r||a!==i;)s+=n?1:-1,n&&s>o.cols-1?(c+=o.buffer.translateBufferLineToString(a,!1,e,s),s=0,e=0,a++):!n&&s<0&&(c+=o.buffer.translateBufferLineToString(a,!1,0,e+1),e=s=o.cols-1,a--);return c+o.buffer.translateBufferLineToString(a,!1,e,s)}function c(e,t){var r=t?"O":"[";return i.C0.ESC+r+e}function l(e,t){e=Math.floor(e);for(var r="",i=0;i0?i-o(s,i):t;var _=i,f=function(e,t,r,i,s,a){var c;return c=n(r,i,s,a).length>0?i-o(s,i):t,e=r&&ce?"D":"C",l(Math.abs(h-e),c(s,i));s=u>t?"D":"C";var _=Math.abs(u-t);return l(function(e,t){return t.cols-e}(u>t?e:h,r)+(_-1)*r.cols+1+((u>t?h:e)-1),c(s,i))}},244:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.AddonManager=void 0;var r=function(){function e(){this._addons=[]}return e.prototype.dispose=function(){for(var e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()},e.prototype.loadAddon=function(e,t){var r=this,i={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(i),t.dispose=function(){return r._wrappedAddonDispose(i)},t.activate(e)},e.prototype._wrappedAddonDispose=function(e){if(!e.isDisposed){for(var t=-1,r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.Terminal=void 0;var i=r(511),n=r(3236),o=r(9042),s=r(8460),a=r(244),c=function(){function e(e){this._core=new n.Terminal(e),this._addonManager=new a.AddonManager}return e.prototype._checkProposedApi=function(){if(!this._core.optionsService.options.allowProposedApi)throw new Error("You must set the allowProposedApi option to true to use proposed API")},Object.defineProperty(e.prototype,"onCursorMove",{get:function(){return this._core.onCursorMove},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onLineFeed",{get:function(){return this._core.onLineFeed},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onSelectionChange",{get:function(){return this._core.onSelectionChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onData",{get:function(){return this._core.onData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBinary",{get:function(){return this._core.onBinary},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTitleChange",{get:function(){return this._core.onTitleChange},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onBell",{get:function(){return this._core.onBell},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onScroll",{get:function(){return this._core.onScroll},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onKey",{get:function(){return this._core.onKey},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onRender",{get:function(){return this._core.onRender},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onResize",{get:function(){return this._core.onResize},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"element",{get:function(){return this._core.element},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"parser",{get:function(){return this._checkProposedApi(),this._parser||(this._parser=new _(this._core)),this._parser},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"unicode",{get:function(){return this._checkProposedApi(),new f(this._core)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"textarea",{get:function(){return this._core.textarea},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"rows",{get:function(){return this._core.rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"cols",{get:function(){return this._core.cols},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"buffer",{get:function(){return this._checkProposedApi(),this._buffer||(this._buffer=new h(this._core)),this._buffer},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"markers",{get:function(){return this._checkProposedApi(),this._core.markers},enumerable:!1,configurable:!0}),e.prototype.blur=function(){this._core.blur()},e.prototype.focus=function(){this._core.focus()},e.prototype.resize=function(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)},e.prototype.open=function(e){this._core.open(e)},e.prototype.attachCustomKeyEventHandler=function(e){this._core.attachCustomKeyEventHandler(e)},e.prototype.registerLinkMatcher=function(e,t,r){return this._checkProposedApi(),this._core.registerLinkMatcher(e,t,r)},e.prototype.deregisterLinkMatcher=function(e){this._checkProposedApi(),this._core.deregisterLinkMatcher(e)},e.prototype.registerLinkProvider=function(e){return this._checkProposedApi(),this._core.registerLinkProvider(e)},e.prototype.registerCharacterJoiner=function(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)},e.prototype.deregisterCharacterJoiner=function(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)},e.prototype.registerMarker=function(e){return this._checkProposedApi(),this._verifyIntegers(e),this._core.addMarker(e)},e.prototype.addMarker=function(e){return this.registerMarker(e)},e.prototype.hasSelection=function(){return this._core.hasSelection()},e.prototype.select=function(e,t,r){this._verifyIntegers(e,t,r),this._core.select(e,t,r)},e.prototype.getSelection=function(){return this._core.getSelection()},e.prototype.getSelectionPosition=function(){return this._core.getSelectionPosition()},e.prototype.clearSelection=function(){this._core.clearSelection()},e.prototype.selectAll=function(){this._core.selectAll()},e.prototype.selectLines=function(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)},e.prototype.dispose=function(){this._addonManager.dispose(),this._core.dispose()},e.prototype.scrollLines=function(e){this._verifyIntegers(e),this._core.scrollLines(e)},e.prototype.scrollPages=function(e){this._verifyIntegers(e),this._core.scrollPages(e)},e.prototype.scrollToTop=function(){this._core.scrollToTop()},e.prototype.scrollToBottom=function(){this._core.scrollToBottom()},e.prototype.scrollToLine=function(e){this._verifyIntegers(e),this._core.scrollToLine(e)},e.prototype.clear=function(){this._core.clear()},e.prototype.write=function(e,t){this._core.write(e,t)},e.prototype.writeUtf8=function(e,t){this._core.write(e,t)},e.prototype.writeln=function(e,t){this._core.write(e),this._core.write("\r\n",t)},e.prototype.paste=function(e){this._core.paste(e)},e.prototype.getOption=function(e){return this._core.optionsService.getOption(e)},e.prototype.setOption=function(e,t){this._core.optionsService.setOption(e,t)},e.prototype.refresh=function(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)},e.prototype.reset=function(){this._core.reset()},e.prototype.loadAddon=function(e){return this._addonManager.loadAddon(this,e)},Object.defineProperty(e,"strings",{get:function(){return o},enumerable:!1,configurable:!0}),e.prototype._verifyIntegers=function(){for(var e=[],t=0;t=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new i.CellData)},e.prototype.translateToString=function(e,t,r){return this._line.translateToString(e,t,r)},e}(),_=function(){function e(e){this._core=e}return e.prototype.registerCsiHandler=function(e,t){return this._core.registerCsiHandler(e,(function(e){return t(e.toArray())}))},e.prototype.addCsiHandler=function(e,t){return this.registerCsiHandler(e,t)},e.prototype.registerDcsHandler=function(e,t){return this._core.registerDcsHandler(e,(function(e,r){return t(e,r.toArray())}))},e.prototype.addDcsHandler=function(e,t){return this.registerDcsHandler(e,t)},e.prototype.registerEscHandler=function(e,t){return this._core.registerEscHandler(e,t)},e.prototype.addEscHandler=function(e,t){return this.registerEscHandler(e,t)},e.prototype.registerOscHandler=function(e,t){return this._core.registerOscHandler(e,t)},e.prototype.addOscHandler=function(e,t){return this.registerOscHandler(e,t)},e}(),f=function(){function e(e){this._core=e}return e.prototype.register=function(e){this._core.unicodeService.register(e)},Object.defineProperty(e.prototype,"versions",{get:function(){return this._core.unicodeService.versions},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._core.unicodeService.activeVersion},set:function(e){this._core.unicodeService.activeVersion=e},enumerable:!1,configurable:!0}),e}()},1546:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseRenderLayer=void 0;var i=r(643),n=r(8803),o=r(1420),s=r(3734),a=r(1752),c=r(4774),l=r(9631),h=function(){function e(e,t,r,i,n,o,s,a){this._container=e,this._alpha=i,this._colors=n,this._rendererId=o,this._bufferService=s,this._optionsService=a,this._scaledCharWidth=0,this._scaledCharHeight=0,this._scaledCellWidth=0,this._scaledCellHeight=0,this._scaledCharLeft=0,this._scaledCharTop=0,this._currentGlyphIdentifier={chars:"",code:0,bg:0,fg:0,bold:!1,dim:!1,italic:!1},this._canvas=document.createElement("canvas"),this._canvas.classList.add("xterm-"+t+"-layer"),this._canvas.style.zIndex=r.toString(),this._initCanvas(),this._container.appendChild(this._canvas)}return e.prototype.dispose=function(){var e;l.removeElementFromParent(this._canvas),null===(e=this._charAtlas)||void 0===e||e.dispose()},e.prototype._initCanvas=function(){this._ctx=a.throwIfFalsy(this._canvas.getContext("2d",{alpha:this._alpha})),this._alpha||this._clearAll()},e.prototype.onOptionsChanged=function(){},e.prototype.onBlur=function(){},e.prototype.onFocus=function(){},e.prototype.onCursorMove=function(){},e.prototype.onGridChanged=function(e,t){},e.prototype.onSelectionChanged=function(e,t,r){void 0===r&&(r=!1)},e.prototype.setColors=function(e){this._refreshCharAtlas(e)},e.prototype._setTransparency=function(e){if(e!==this._alpha){var t=this._canvas;this._alpha=e,this._canvas=this._canvas.cloneNode(),this._initCanvas(),this._container.replaceChild(this._canvas,t),this._refreshCharAtlas(this._colors),this.onGridChanged(0,this._bufferService.rows-1)}},e.prototype._refreshCharAtlas=function(e){this._scaledCharWidth<=0&&this._scaledCharHeight<=0||(this._charAtlas=o.acquireCharAtlas(this._optionsService.options,this._rendererId,e,this._scaledCharWidth,this._scaledCharHeight),this._charAtlas.warmUp())},e.prototype.resize=function(e){this._scaledCellWidth=e.scaledCellWidth,this._scaledCellHeight=e.scaledCellHeight,this._scaledCharWidth=e.scaledCharWidth,this._scaledCharHeight=e.scaledCharHeight,this._scaledCharLeft=e.scaledCharLeft,this._scaledCharTop=e.scaledCharTop,this._canvas.width=e.scaledCanvasWidth,this._canvas.height=e.scaledCanvasHeight,this._canvas.style.width=e.canvasWidth+"px",this._canvas.style.height=e.canvasHeight+"px",this._alpha||this._clearAll(),this._refreshCharAtlas(this._colors)},e.prototype._fillCells=function(e,t,r,i){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight)},e.prototype._fillBottomLineAtCells=function(e,t,r){void 0===r&&(r=1),this._ctx.fillRect(e*this._scaledCellWidth,(t+1)*this._scaledCellHeight-window.devicePixelRatio-1,r*this._scaledCellWidth,window.devicePixelRatio)},e.prototype._fillLeftLineAtCell=function(e,t,r){this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,window.devicePixelRatio*r,this._scaledCellHeight)},e.prototype._strokeRectAtCell=function(e,t,r,i){this._ctx.lineWidth=window.devicePixelRatio,this._ctx.strokeRect(e*this._scaledCellWidth+window.devicePixelRatio/2,t*this._scaledCellHeight+window.devicePixelRatio/2,r*this._scaledCellWidth-window.devicePixelRatio,i*this._scaledCellHeight-window.devicePixelRatio)},e.prototype._clearAll=function(){this._alpha?this._ctx.clearRect(0,0,this._canvas.width,this._canvas.height):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(0,0,this._canvas.width,this._canvas.height))},e.prototype._clearCells=function(e,t,r,i){this._alpha?this._ctx.clearRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight):(this._ctx.fillStyle=this._colors.background.css,this._ctx.fillRect(e*this._scaledCellWidth,t*this._scaledCellHeight,r*this._scaledCellWidth,i*this._scaledCellHeight))},e.prototype._fillCharTrueColor=function(e,t,r){this._ctx.font=this._getFont(!1,!1),this._ctx.textBaseline="ideographic",this._clipRow(r),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight)},e.prototype._drawChars=function(e,t,r){var o,s,a=this._getContrastColor(e);a||e.isFgRGB()||e.isBgRGB()?this._drawUncachedChars(e,t,r,a):(e.isInverse()?(o=e.isBgDefault()?n.INVERTED_DEFAULT_COLOR:e.getBgColor(),s=e.isFgDefault()?n.INVERTED_DEFAULT_COLOR:e.getFgColor()):(s=e.isBgDefault()?i.DEFAULT_COLOR:e.getBgColor(),o=e.isFgDefault()?i.DEFAULT_COLOR:e.getFgColor()),o+=this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8?8:0,this._currentGlyphIdentifier.chars=e.getChars()||i.WHITESPACE_CELL_CHAR,this._currentGlyphIdentifier.code=e.getCode()||i.WHITESPACE_CELL_CODE,this._currentGlyphIdentifier.bg=s,this._currentGlyphIdentifier.fg=o,this._currentGlyphIdentifier.bold=!!e.isBold(),this._currentGlyphIdentifier.dim=!!e.isDim(),this._currentGlyphIdentifier.italic=!!e.isItalic(),this._charAtlas&&this._charAtlas.draw(this._ctx,this._currentGlyphIdentifier,t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop)||this._drawUncachedChars(e,t,r))},e.prototype._drawUncachedChars=function(e,t,r,i){if(this._ctx.save(),this._ctx.font=this._getFont(!!e.isBold(),!!e.isItalic()),this._ctx.textBaseline="ideographic",e.isInverse())if(i)this._ctx.fillStyle=i.css;else if(e.isBgDefault())this._ctx.fillStyle=c.color.opaque(this._colors.background).css;else if(e.isBgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getBgColor()).join(",")+")";else{var o=e.getBgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&o<8&&(o+=8),this._ctx.fillStyle=this._colors.ansi[o].css}else if(i)this._ctx.fillStyle=i.css;else if(e.isFgDefault())this._ctx.fillStyle=this._colors.foreground.css;else if(e.isFgRGB())this._ctx.fillStyle="rgb("+s.AttributeData.toColorRGB(e.getFgColor()).join(",")+")";else{var a=e.getFgColor();this._optionsService.options.drawBoldTextInBrightColors&&e.isBold()&&a<8&&(a+=8),this._ctx.fillStyle=this._colors.ansi[a].css}this._clipRow(r),e.isDim()&&(this._ctx.globalAlpha=n.DIM_OPACITY),this._ctx.fillText(e.getChars(),t*this._scaledCellWidth+this._scaledCharLeft,r*this._scaledCellHeight+this._scaledCharTop+this._scaledCharHeight),this._ctx.restore()},e.prototype._clipRow=function(e){this._ctx.beginPath(),this._ctx.rect(0,e*this._scaledCellHeight,this._bufferService.cols*this._scaledCellWidth,this._scaledCellHeight),this._ctx.clip()},e.prototype._getFont=function(e,t){return(t?"italic":"")+" "+(e?this._optionsService.options.fontWeightBold:this._optionsService.options.fontWeight)+" "+this._optionsService.options.fontSize*window.devicePixelRatio+"px "+this._optionsService.options.fontFamily},e.prototype._getContrastColor=function(e){if(1!==this._optionsService.options.minimumContrastRatio){var t=this._colors.contrastCache.getColor(e.bg,e.fg);if(void 0!==t)return t||void 0;var r=e.getFgColor(),i=e.getFgColorMode(),n=e.getBgColor(),o=e.getBgColorMode(),s=!!e.isInverse(),a=!!e.isInverse();if(s){var l=r;r=n,n=l;var h=i;i=o,o=h}var u=this._resolveBackgroundRgba(o,n,s),_=this._resolveForegroundRgba(i,r,s,a),f=c.rgba.ensureContrastRatio(u,_,this._optionsService.options.minimumContrastRatio);if(f){var d={css:c.channels.toCss(f>>24&255,f>>16&255,f>>8&255),rgba:f};return this._colors.contrastCache.setColor(e.bg,e.fg,d),d}this._colors.contrastCache.setColor(e.bg,e.fg,null)}},e.prototype._resolveBackgroundRgba=function(e,t,r){switch(e){case 16777216:case 33554432:return this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.foreground.rgba:this._colors.background.rgba}},e.prototype._resolveForegroundRgba=function(e,t,r,i){switch(e){case 16777216:case 33554432:return this._optionsService.options.drawBoldTextInBrightColors&&i&&t<8&&(t+=8),this._colors.ansi[t].rgba;case 50331648:return t<<8;case 0:default:return r?this._colors.background.rgba:this._colors.foreground.rgba}},e}();t.BaseRenderLayer=h},2512:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CursorRenderLayer=void 0;var a=r(1546),c=r(511),l=r(2585),h=r(4725),u=600,_=function(e){function t(t,r,i,n,o,s,a,l,h){var u=e.call(this,t,"cursor",r,!0,i,n,s,a)||this;return u._onRequestRedraw=o,u._coreService=l,u._coreBrowserService=h,u._cell=new c.CellData,u._state={x:0,y:0,isFocused:!1,style:"",width:0},u._cursorRenderers={bar:u._renderBarCursor.bind(u),block:u._renderBlockCursor.bind(u),underline:u._renderUnderlineCursor.bind(u)},u}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state={x:0,y:0,isFocused:!1,style:"",width:0}},t.prototype.reset=function(){this._clearCursor(),this._cursorBlinkStateManager&&(this._cursorBlinkStateManager.dispose(),this._cursorBlinkStateManager=void 0,this.onOptionsChanged())},t.prototype.onBlur=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.pause(),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onFocus=function(){this._cursorBlinkStateManager?this._cursorBlinkStateManager.resume():this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onOptionsChanged=function(){var e,t=this;this._optionsService.options.cursorBlink?this._cursorBlinkStateManager||(this._cursorBlinkStateManager=new f(this._coreBrowserService.isFocused,(function(){t._render(!0)}))):(null===(e=this._cursorBlinkStateManager)||void 0===e||e.dispose(),this._cursorBlinkStateManager=void 0),this._onRequestRedraw.fire({start:this._bufferService.buffer.y,end:this._bufferService.buffer.y})},t.prototype.onCursorMove=function(){this._cursorBlinkStateManager&&this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype.onGridChanged=function(e,t){!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isPaused?this._render(!1):this._cursorBlinkStateManager.restartBlinkAnimation()},t.prototype._render=function(e){if(this._coreService.isCursorInitialized&&!this._coreService.isCursorHidden){var t=this._bufferService.buffer.ybase+this._bufferService.buffer.y,r=t-this._bufferService.buffer.ydisp;if(r<0||r>=this._bufferService.rows)this._clearCursor();else{var i=Math.min(this._bufferService.buffer.x,this._bufferService.cols-1);if(this._bufferService.buffer.lines.get(t).loadCell(i,this._cell),void 0!==this._cell.content){if(!this._coreBrowserService.isFocused){this._clearCursor(),this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css;var n=this._optionsService.options.cursorStyle;return n&&"block"!==n?this._cursorRenderers[n](i,r,this._cell):this._renderBlurCursor(i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=n,void(this._state.width=this._cell.getWidth())}if(!this._cursorBlinkStateManager||this._cursorBlinkStateManager.isCursorVisible){if(this._state){if(this._state.x===i&&this._state.y===r&&this._state.isFocused===this._coreBrowserService.isFocused&&this._state.style===this._optionsService.options.cursorStyle&&this._state.width===this._cell.getWidth())return;this._clearCursor()}this._ctx.save(),this._cursorRenderers[this._optionsService.options.cursorStyle||"block"](i,r,this._cell),this._ctx.restore(),this._state.x=i,this._state.y=r,this._state.isFocused=!1,this._state.style=this._optionsService.options.cursorStyle,this._state.width=this._cell.getWidth()}else this._clearCursor()}}}else this._clearCursor()},t.prototype._clearCursor=function(){this._state&&(this._clearCells(this._state.x,this._state.y,this._state.width,1),this._state={x:0,y:0,isFocused:!1,style:"",width:0})},t.prototype._renderBarCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillLeftLineAtCell(e,t,this._optionsService.options.cursorWidth),this._ctx.restore()},t.prototype._renderBlockCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillCells(e,t,r.getWidth(),1),this._ctx.fillStyle=this._colors.cursorAccent.css,this._fillCharTrueColor(r,e,t),this._ctx.restore()},t.prototype._renderUnderlineCursor=function(e,t,r){this._ctx.save(),this._ctx.fillStyle=this._colors.cursor.css,this._fillBottomLineAtCells(e,t),this._ctx.restore()},t.prototype._renderBlurCursor=function(e,t,r){this._ctx.save(),this._ctx.strokeStyle=this._colors.cursor.css,this._strokeRectAtCell(e,t,r.getWidth(),1),this._ctx.restore()},o([s(5,l.IBufferService),s(6,l.IOptionsService),s(7,l.ICoreService),s(8,h.ICoreBrowserService)],t)}(a.BaseRenderLayer);t.CursorRenderLayer=_;var f=function(){function e(e,t){this._renderCallback=t,this.isCursorVisible=!0,e&&this._restartInterval()}return Object.defineProperty(e.prototype,"isPaused",{get:function(){return!(this._blinkStartTimeout||this._blinkInterval)},enumerable:!1,configurable:!0}),e.prototype.dispose=function(){this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.restartBlinkAnimation=function(){var e=this;this.isPaused||(this._animationTimeRestarted=Date.now(),this.isCursorVisible=!0,this._animationFrame||(this._animationFrame=window.requestAnimationFrame((function(){e._renderCallback(),e._animationFrame=void 0}))))},e.prototype._restartInterval=function(e){var t=this;void 0===e&&(e=u),this._blinkInterval&&window.clearInterval(this._blinkInterval),this._blinkStartTimeout=window.setTimeout((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);if(t._animationTimeRestarted=void 0,e>0)return void t._restartInterval(e)}t.isCursorVisible=!1,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0})),t._blinkInterval=window.setInterval((function(){if(t._animationTimeRestarted){var e=u-(Date.now()-t._animationTimeRestarted);return t._animationTimeRestarted=void 0,void t._restartInterval(e)}t.isCursorVisible=!t.isCursorVisible,t._animationFrame=window.requestAnimationFrame((function(){t._renderCallback(),t._animationFrame=void 0}))}),u)}),e)},e.prototype.pause=function(){this.isCursorVisible=!0,this._blinkInterval&&(window.clearInterval(this._blinkInterval),this._blinkInterval=void 0),this._blinkStartTimeout&&(window.clearTimeout(this._blinkStartTimeout),this._blinkStartTimeout=void 0),this._animationFrame&&(window.cancelAnimationFrame(this._animationFrame),this._animationFrame=void 0)},e.prototype.resume=function(){this.pause(),this._animationTimeRestarted=void 0,this._restartInterval(),this.restartBlinkAnimation()},e}()},3700:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.GridCache=void 0;var r=function(){function e(){this.cache=[]}return e.prototype.resize=function(e,t){for(var r=0;r=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.LinkRenderLayer=void 0;var a=r(1546),c=r(8803),l=r(2040),h=r(2585),u=function(e){function t(t,r,i,n,o,s,a,c){var l=e.call(this,t,"link",r,!0,i,n,a,c)||this;return o.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),o.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),s.onShowLinkUnderline((function(e){return l._onShowLinkUnderline(e)})),s.onHideLinkUnderline((function(e){return l._onHideLinkUnderline(e)})),l}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._state=void 0},t.prototype.reset=function(){this._clearCurrentLink()},t.prototype._clearCurrentLink=function(){if(this._state){this._clearCells(this._state.x1,this._state.y1,this._state.cols-this._state.x1,1);var e=this._state.y2-this._state.y1-1;e>0&&this._clearCells(0,this._state.y1+1,this._state.cols,e),this._clearCells(0,this._state.y2,this._state.x2,1),this._state=void 0}},t.prototype._onShowLinkUnderline=function(e){if(e.fg===c.INVERTED_DEFAULT_COLOR?this._ctx.fillStyle=this._colors.background.css:e.fg&&l.is256Color(e.fg)?this._ctx.fillStyle=this._colors.ansi[e.fg].css:this._ctx.fillStyle=this._colors.foreground.css,e.y1===e.y2)this._fillBottomLineAtCells(e.x1,e.y1,e.x2-e.x1);else{this._fillBottomLineAtCells(e.x1,e.y1,e.cols-e.x1);for(var t=e.y1+1;t=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.Renderer=void 0;var a=r(9596),c=r(4149),l=r(2512),h=r(5098),u=r(844),_=r(4725),f=r(2585),d=r(1420),p=r(8460),v=1,g=function(e){function t(t,r,i,n,o,s,u,_){var f=e.call(this)||this;f._colors=t,f._screenElement=r,f._bufferService=s,f._charSizeService=u,f._optionsService=_,f._id=v++,f._onRequestRedraw=new p.EventEmitter;var d=f._optionsService.options.allowTransparency;return f._renderLayers=[o.createInstance(a.TextRenderLayer,f._screenElement,0,f._colors,d,f._id),o.createInstance(c.SelectionRenderLayer,f._screenElement,1,f._colors,f._id),o.createInstance(h.LinkRenderLayer,f._screenElement,2,f._colors,f._id,i,n),o.createInstance(l.CursorRenderLayer,f._screenElement,3,f._colors,f._id,f._onRequestRedraw)],f.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},f._devicePixelRatio=window.devicePixelRatio,f._updateDimensions(),f.onOptionsChanged(),f}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRequestRedraw.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){for(var t=0,r=this._renderLayers;t{Object.defineProperty(t,"__esModule",{value:!0}),t.throwIfFalsy=void 0,t.throwIfFalsy=function(e){if(!e)throw new Error("value must not be falsy");return e}},4149:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionRenderLayer=void 0;var a=r(1546),c=r(2585),l=function(e){function t(t,r,i,n,o,s){var a=e.call(this,t,"selection",r,!0,i,n,o,s)||this;return a._clearState(),a}return n(t,e),t.prototype._clearState=function(){this._state={start:void 0,end:void 0,columnSelectMode:void 0,ydisp:void 0}},t.prototype.resize=function(t){e.prototype.resize.call(this,t),this._clearState()},t.prototype.reset=function(){this._state.start&&this._state.end&&(this._clearState(),this._clearAll())},t.prototype.onSelectionChanged=function(e,t,r){if(this._didStateChange(e,t,r,this._bufferService.buffer.ydisp))if(this._clearAll(),e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(o>=this._bufferService.rows||s<0)this._state.ydisp=this._bufferService.buffer.ydisp;else{if(this._ctx.fillStyle=this._colors.selectionTransparent.css,r){var a=e[0],c=t[0]-a,l=s-o+1;this._fillCells(a,o,c,l)}else{a=i===o?e[0]:0;var h=o===n?t[0]:this._bufferService.cols;this._fillCells(a,o,h-a,1);var u=Math.max(s-o-1,0);if(this._fillCells(0,o+1,this._bufferService.cols,u),o!==s){var _=n===s?t[0]:this._bufferService.cols;this._fillCells(0,s,_,1)}}this._state.start=[e[0],e[1]],this._state.end=[t[0],t[1]],this._state.columnSelectMode=r,this._state.ydisp=this._bufferService.buffer.ydisp}}else this._clearState()},t.prototype._didStateChange=function(e,t,r,i){return!this._areCoordinatesEqual(e,this._state.start)||!this._areCoordinatesEqual(t,this._state.end)||r!==this._state.columnSelectMode||i!==this._state.ydisp},t.prototype._areCoordinatesEqual=function(e,t){return!(!e||!t)&&e[0]===t[0]&&e[1]===t[1]},o([s(4,c.IBufferService),s(5,c.IOptionsService)],t)}(a.BaseRenderLayer);t.SelectionRenderLayer=l},9596:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.TextRenderLayer=void 0;var a=r(3700),c=r(1546),l=r(3734),h=r(643),u=r(511),_=r(2585),f=r(4725),d=r(4269),p=function(e){function t(t,r,i,n,o,s,c,l){var h=e.call(this,t,"text",r,n,i,o,s,c)||this;return h._characterJoinerService=l,h._characterWidth=0,h._characterFont="",h._characterOverlapCache={},h._workCell=new u.CellData,h._state=new a.GridCache,h}return n(t,e),t.prototype.resize=function(t){e.prototype.resize.call(this,t);var r=this._getFont(!1,!1);this._characterWidth===t.scaledCharWidth&&this._characterFont===r||(this._characterWidth=t.scaledCharWidth,this._characterFont=r,this._characterOverlapCache={}),this._state.clear(),this._state.resize(this._bufferService.cols,this._bufferService.rows)},t.prototype.reset=function(){this._state.clear(),this._clearAll()},t.prototype._forEachCell=function(e,t,r){for(var i=e;i<=t;i++)for(var n=i+this._bufferService.buffer.ydisp,o=this._bufferService.buffer.lines.get(n),s=this._characterJoinerService.getJoinedCharacters(n),a=0;a0&&a===s[0][0]){l=!0;var _=s.shift();c=new d.JoinedCellData(this._workCell,o.translateToString(!0,_[0],_[1]),_[1]-_[0]),u=_[1]-1}!l&&this._isOverlapping(c)&&uthis._characterWidth;return this._ctx.restore(),this._characterOverlapCache[t]=r,r},o([s(5,_.IBufferService),s(6,_.IOptionsService),s(7,f.ICharacterJoinerService)],t)}(c.BaseRenderLayer);t.TextRenderLayer=p},9616:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BaseCharAtlas=void 0;var r=function(){function e(){this._didWarmUp=!1}return e.prototype.dispose=function(){},e.prototype.warmUp=function(){this._didWarmUp||(this._doWarmUp(),this._didWarmUp=!0)},e.prototype._doWarmUp=function(){},e.prototype.beginFrame=function(){},e}();t.BaseCharAtlas=r},1420:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.removeTerminalFromCache=t.acquireCharAtlas=void 0;var i=r(2040),n=r(1906),o=[];t.acquireCharAtlas=function(e,t,r,s,a){for(var c=i.generateConfig(s,a,e,r),l=0;l=0){if(i.configEquals(u.config,c))return u.atlas;1===u.ownedBy.length?(u.atlas.dispose(),o.splice(l,1)):u.ownedBy.splice(h,1);break}}for(l=0;l{Object.defineProperty(t,"__esModule",{value:!0}),t.is256Color=t.configEquals=t.generateConfig=void 0;var i=r(643);t.generateConfig=function(e,t,r,i){var n={foreground:i.foreground,background:i.background,cursor:void 0,cursorAccent:void 0,selection:void 0,ansi:i.ansi};return{devicePixelRatio:window.devicePixelRatio,scaledCharWidth:e,scaledCharHeight:t,fontFamily:r.fontFamily,fontSize:r.fontSize,fontWeight:r.fontWeight,fontWeightBold:r.fontWeightBold,allowTransparency:r.allowTransparency,colors:n}},t.configEquals=function(e,t){for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.CHAR_ATLAS_CELL_SPACING=t.DIM_OPACITY=t.INVERTED_DEFAULT_COLOR=void 0,t.INVERTED_DEFAULT_COLOR=257,t.DIM_OPACITY=.5,t.CHAR_ATLAS_CELL_SPACING=1},1906:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.NoneCharAtlas=t.DynamicCharAtlas=t.getGlyphCacheKey=void 0;var o=r(8803),s=r(9616),a=r(5680),c=r(7001),l=r(6114),h=r(1752),u=r(4774),_={css:"rgba(0, 0, 0, 0)",rgba:0};function f(e){return e.code<<21|e.bg<<12|e.fg<<3|(e.bold?0:4)+(e.dim?0:2)+(e.italic?0:1)}t.getGlyphCacheKey=f;var d=function(e){function t(t,r){var i=e.call(this)||this;i._config=r,i._drawToCacheCount=0,i._glyphsWaitingOnBitmap=[],i._bitmapCommitTimeout=null,i._bitmap=null,i._cacheCanvas=t.createElement("canvas"),i._cacheCanvas.width=1024,i._cacheCanvas.height=1024,i._cacheCtx=h.throwIfFalsy(i._cacheCanvas.getContext("2d",{alpha:!0}));var n=t.createElement("canvas");n.width=i._config.scaledCharWidth,n.height=i._config.scaledCharHeight,i._tmpCtx=h.throwIfFalsy(n.getContext("2d",{alpha:i._config.allowTransparency})),i._width=Math.floor(1024/i._config.scaledCharWidth),i._height=Math.floor(1024/i._config.scaledCharHeight);var o=i._width*i._height;return i._cacheMap=new c.LRUMap(o),i._cacheMap.prealloc(o),i}return n(t,e),t.prototype.dispose=function(){null!==this._bitmapCommitTimeout&&(window.clearTimeout(this._bitmapCommitTimeout),this._bitmapCommitTimeout=null)},t.prototype.beginFrame=function(){this._drawToCacheCount=0},t.prototype.draw=function(e,t,r,i){if(32===t.code)return!0;if(!this._canCache(t))return!1;var n=f(t),o=this._cacheMap.get(n);if(null!=o)return this._drawFromCache(e,o,r,i),!0;if(this._drawToCacheCount<100){var s;s=this._cacheMap.size>>24,n=t.rgba>>>16&255,o=t.rgba>>>8&255,s=0;s{Object.defineProperty(t,"__esModule",{value:!0}),t.LRUMap=void 0;var r=function(){function e(e){this.capacity=e,this._map={},this._head=null,this._tail=null,this._nodePool=[],this.size=0}return e.prototype._unlinkNode=function(e){var t=e.prev,r=e.next;e===this._head&&(this._head=r),e===this._tail&&(this._tail=t),null!==t&&(t.next=r),null!==r&&(r.prev=t)},e.prototype._appendNode=function(e){var t=this._tail;null!==t&&(t.next=e),e.prev=t,e.next=null,this._tail=e,null===this._head&&(this._head=e)},e.prototype.prealloc=function(e){for(var t=this._nodePool,r=0;r=this.capacity)r=this._head,this._unlinkNode(r),delete this._map[r.key],r.key=e,r.value=t,this._map[e]=r;else{var i=this._nodePool;i.length>0?((r=i.pop()).key=e,r.value=t):r={prev:null,next:null,key:e,value:t},this._map[e]=r,this.size++}this._appendNode(r)},e}();t.LRUMap=r},1296:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRenderer=void 0;var a=r(3787),c=r(8803),l=r(844),h=r(4725),u=r(2585),_=r(8460),f=r(4774),d=r(9631),p="xterm-dom-renderer-owner-",v="xterm-fg-",g="xterm-bg-",y="xterm-focus",m=1,b=function(e){function t(t,r,i,n,o,s,c,l,h,u){var _=e.call(this)||this;return _._colors=t,_._element=r,_._screenElement=i,_._viewportElement=n,_._linkifier=o,_._linkifier2=s,_._charSizeService=l,_._optionsService=h,_._bufferService=u,_._terminalClass=m++,_._rowElements=[],_._rowContainer=document.createElement("div"),_._rowContainer.classList.add("xterm-rows"),_._rowContainer.style.lineHeight="normal",_._rowContainer.setAttribute("aria-hidden","true"),_._refreshRowElements(_._bufferService.cols,_._bufferService.rows),_._selectionContainer=document.createElement("div"),_._selectionContainer.classList.add("xterm-selection"),_._selectionContainer.setAttribute("aria-hidden","true"),_.dimensions={scaledCharWidth:0,scaledCharHeight:0,scaledCellWidth:0,scaledCellHeight:0,scaledCharLeft:0,scaledCharTop:0,scaledCanvasWidth:0,scaledCanvasHeight:0,canvasWidth:0,canvasHeight:0,actualCellWidth:0,actualCellHeight:0},_._updateDimensions(),_._injectCss(),_._rowFactory=c.createInstance(a.DomRendererRowFactory,document,_._colors),_._element.classList.add(p+_._terminalClass),_._screenElement.appendChild(_._rowContainer),_._screenElement.appendChild(_._selectionContainer),_._linkifier.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_._linkifier2.onShowLinkUnderline((function(e){return _._onLinkHover(e)})),_._linkifier2.onHideLinkUnderline((function(e){return _._onLinkLeave(e)})),_}return n(t,e),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return(new _.EventEmitter).event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._element.classList.remove(p+this._terminalClass),d.removeElementFromParent(this._rowContainer,this._selectionContainer,this._themeStyleElement,this._dimensionsStyleElement),e.prototype.dispose.call(this)},t.prototype._updateDimensions=function(){this.dimensions.scaledCharWidth=this._charSizeService.width*window.devicePixelRatio,this.dimensions.scaledCharHeight=Math.ceil(this._charSizeService.height*window.devicePixelRatio),this.dimensions.scaledCellWidth=this.dimensions.scaledCharWidth+Math.round(this._optionsService.options.letterSpacing),this.dimensions.scaledCellHeight=Math.floor(this.dimensions.scaledCharHeight*this._optionsService.options.lineHeight),this.dimensions.scaledCharLeft=0,this.dimensions.scaledCharTop=0,this.dimensions.scaledCanvasWidth=this.dimensions.scaledCellWidth*this._bufferService.cols,this.dimensions.scaledCanvasHeight=this.dimensions.scaledCellHeight*this._bufferService.rows,this.dimensions.canvasWidth=Math.round(this.dimensions.scaledCanvasWidth/window.devicePixelRatio),this.dimensions.canvasHeight=Math.round(this.dimensions.scaledCanvasHeight/window.devicePixelRatio),this.dimensions.actualCellWidth=this.dimensions.canvasWidth/this._bufferService.cols,this.dimensions.actualCellHeight=this.dimensions.canvasHeight/this._bufferService.rows;for(var e=0,t=this._rowElements;et;)this._rowContainer.removeChild(this._rowElements.pop())},t.prototype.onResize=function(e,t){this._refreshRowElements(e,t),this._updateDimensions()},t.prototype.onCharSizeChanged=function(){this._updateDimensions()},t.prototype.onBlur=function(){this._rowContainer.classList.remove(y)},t.prototype.onFocus=function(){this._rowContainer.classList.add(y)},t.prototype.onSelectionChanged=function(e,t,r){for(;this._selectionContainer.children.length;)this._selectionContainer.removeChild(this._selectionContainer.children[0]);if(e&&t){var i=e[1]-this._bufferService.buffer.ydisp,n=t[1]-this._bufferService.buffer.ydisp,o=Math.max(i,0),s=Math.min(n,this._bufferService.rows-1);if(!(o>=this._bufferService.rows||s<0)){var a=document.createDocumentFragment();if(r)a.appendChild(this._createSelectionElement(o,e[0],t[0],s-o+1));else{var c=i===o?e[0]:0,l=o===n?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(o,c,l));var h=s-o-1;if(a.appendChild(this._createSelectionElement(o+1,0,this._bufferService.cols,h)),o!==s){var u=n===s?t[0]:this._bufferService.cols;a.appendChild(this._createSelectionElement(s,0,u))}}this._selectionContainer.appendChild(a)}}},t.prototype._createSelectionElement=function(e,t,r,i){void 0===i&&(i=1);var n=document.createElement("div");return n.style.height=i*this.dimensions.actualCellHeight+"px",n.style.top=e*this.dimensions.actualCellHeight+"px",n.style.left=t*this.dimensions.actualCellWidth+"px",n.style.width=this.dimensions.actualCellWidth*(r-t)+"px",n},t.prototype.onCursorMove=function(){},t.prototype.onOptionsChanged=function(){this._updateDimensions(),this._injectCss()},t.prototype.clear=function(){for(var e=0,t=this._rowElements;e=n&&(e=0,r++)}},o([s(6,u.IInstantiationService),s(7,h.ICharSizeService),s(8,u.IOptionsService),s(9,u.IBufferService)],t)}(l.Disposable);t.DomRenderer=b},3787:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DomRendererRowFactory=t.CURSOR_STYLE_UNDERLINE_CLASS=t.CURSOR_STYLE_BAR_CLASS=t.CURSOR_STYLE_BLOCK_CLASS=t.CURSOR_BLINK_CLASS=t.CURSOR_CLASS=t.UNDERLINE_CLASS=t.ITALIC_CLASS=t.DIM_CLASS=t.BOLD_CLASS=void 0;var o=r(8803),s=r(643),a=r(511),c=r(2585),l=r(4774),h=r(4725),u=r(4269);t.BOLD_CLASS="xterm-bold",t.DIM_CLASS="xterm-dim",t.ITALIC_CLASS="xterm-italic",t.UNDERLINE_CLASS="xterm-underline",t.CURSOR_CLASS="xterm-cursor",t.CURSOR_BLINK_CLASS="xterm-cursor-blink",t.CURSOR_STYLE_BLOCK_CLASS="xterm-cursor-block",t.CURSOR_STYLE_BAR_CLASS="xterm-cursor-bar",t.CURSOR_STYLE_UNDERLINE_CLASS="xterm-cursor-underline";var _=function(){function e(e,t,r,i){this._document=e,this._colors=t,this._characterJoinerService=r,this._optionsService=i,this._workCell=new a.CellData}return e.prototype.setColors=function(e){this._colors=e},e.prototype.createRow=function(e,r,i,n,a,c,h,_){for(var d=this._document.createDocumentFragment(),p=this._characterJoinerService.getJoinedCharacters(r),v=0,g=Math.min(e.length,_)-1;g>=0;g--)if(e.loadCell(g,this._workCell).getCode()!==s.NULL_CELL_CODE||i&&g===a){v=g+1;break}for(g=0;g0&&g===p[0][0]){m=!0;var S=p.shift();C=new u.JoinedCellData(this._workCell,e.translateToString(!0,S[0],S[1]),S[1]-S[0]),b=S[1]-1,y=C.getWidth()}var w=this._document.createElement("span");if(y>1&&(w.style.width=h*y+"px"),m&&(w.style.display="inline",a>=g&&a<=b&&(a=g)),i&&g===a)switch(w.classList.add(t.CURSOR_CLASS),c&&w.classList.add(t.CURSOR_BLINK_CLASS),n){case"bar":w.classList.add(t.CURSOR_STYLE_BAR_CLASS);break;case"underline":w.classList.add(t.CURSOR_STYLE_UNDERLINE_CLASS);break;default:w.classList.add(t.CURSOR_STYLE_BLOCK_CLASS)}C.isBold()&&w.classList.add(t.BOLD_CLASS),C.isItalic()&&w.classList.add(t.ITALIC_CLASS),C.isDim()&&w.classList.add(t.DIM_CLASS),C.isUnderline()&&w.classList.add(t.UNDERLINE_CLASS),C.isInvisible()?w.textContent=s.WHITESPACE_CELL_CHAR:w.textContent=C.getChars()||s.WHITESPACE_CELL_CHAR;var E=C.getFgColor(),A=C.getFgColorMode(),R=C.getBgColor(),L=C.getBgColorMode(),x=!!C.isInverse();if(x){var k=E;E=R,R=k;var T=A;A=L,L=T}switch(A){case 16777216:case 33554432:C.isBold()&&E<8&&this._optionsService.options.drawBoldTextInBrightColors&&(E+=8),this._applyMinimumContrast(w,this._colors.background,this._colors.ansi[E])||w.classList.add("xterm-fg-"+E);break;case 50331648:var O=l.rgba.toColor(E>>16&255,E>>8&255,255&E);this._applyMinimumContrast(w,this._colors.background,O)||this._addStyle(w,"color:#"+f(E.toString(16),"0",6));break;case 0:default:this._applyMinimumContrast(w,this._colors.background,this._colors.foreground)||x&&w.classList.add("xterm-fg-"+o.INVERTED_DEFAULT_COLOR)}switch(L){case 16777216:case 33554432:w.classList.add("xterm-bg-"+R);break;case 50331648:this._addStyle(w,"background-color:#"+f(R.toString(16),"0",6));break;case 0:default:x&&w.classList.add("xterm-bg-"+o.INVERTED_DEFAULT_COLOR)}d.appendChild(w),g=b}}return d},e.prototype._applyMinimumContrast=function(e,t,r){if(1===this._optionsService.options.minimumContrastRatio)return!1;var i=this._colors.contrastCache.getColor(this._workCell.bg,this._workCell.fg);return void 0===i&&(i=l.color.ensureContrastRatio(t,r,this._optionsService.options.minimumContrastRatio),this._colors.contrastCache.setColor(this._workCell.bg,this._workCell.fg,null!=i?i:null)),!!i&&(this._addStyle(e,"color:"+i.css),!0)},e.prototype._addStyle=function(e,t){e.setAttribute("style",""+(e.getAttribute("style")||"")+t+";")},i([n(2,h.ICharacterJoinerService),n(3,c.IOptionsService)],e)}();function f(e,t,r){for(;e.length{Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionModel=void 0;var r=function(){function e(e){this._bufferService=e,this.isSelectAllActive=!1,this.selectionStartLength=0}return e.prototype.clearSelection=function(){this.selectionStart=void 0,this.selectionEnd=void 0,this.isSelectAllActive=!1,this.selectionStartLength=0},Object.defineProperty(e.prototype,"finalSelectionStart",{get:function(){return this.isSelectAllActive?[0,0]:this.selectionEnd&&this.selectionStart&&this.areSelectionValuesReversed()?this.selectionEnd:this.selectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"finalSelectionEnd",{get:function(){if(this.isSelectAllActive)return[this._bufferService.cols,this._bufferService.buffer.ybase+this._bufferService.rows-1];if(this.selectionStart){if(!this.selectionEnd||this.areSelectionValuesReversed()){var e=this.selectionStart[0]+this.selectionStartLength;return e>this._bufferService.cols?[e%this._bufferService.cols,this.selectionStart[1]+Math.floor(e/this._bufferService.cols)]:[e,this.selectionStart[1]]}return this.selectionStartLength&&this.selectionEnd[1]===this.selectionStart[1]?[Math.max(this.selectionStart[0]+this.selectionStartLength,this.selectionEnd[0]),this.selectionEnd[1]]:this.selectionEnd}},enumerable:!1,configurable:!0}),e.prototype.areSelectionValuesReversed=function(){var e=this.selectionStart,t=this.selectionEnd;return!(!e||!t)&&(e[1]>t[1]||e[1]===t[1]&&e[0]>t[0])},e.prototype.onTrim=function(e){return this.selectionStart&&(this.selectionStart[1]-=e),this.selectionEnd&&(this.selectionEnd[1]-=e),this.selectionEnd&&this.selectionEnd[1]<0?(this.clearSelection(),!0):(this.selectionStart&&this.selectionStart[1]<0&&(this.selectionStart[1]=0),!1)},e}();t.SelectionModel=r},428:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharSizeService=void 0;var o=r(2585),s=r(8460),a=function(){function e(e,t,r){this._optionsService=r,this.width=0,this.height=0,this._onCharSizeChange=new s.EventEmitter,this._measureStrategy=new c(e,t,this._optionsService)}return Object.defineProperty(e.prototype,"hasValidSize",{get:function(){return this.width>0&&this.height>0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onCharSizeChange",{get:function(){return this._onCharSizeChange.event},enumerable:!1,configurable:!0}),e.prototype.measure=function(){var e=this._measureStrategy.measure();e.width===this.width&&e.height===this.height||(this.width=e.width,this.height=e.height,this._onCharSizeChange.fire())},i([n(2,o.IOptionsService)],e)}();t.CharSizeService=a;var c=function(){function e(e,t,r){this._document=e,this._parentElement=t,this._optionsService=r,this._result={width:0,height:0},this._measureElement=this._document.createElement("span"),this._measureElement.classList.add("xterm-char-measure-element"),this._measureElement.textContent="W",this._measureElement.setAttribute("aria-hidden","true"),this._parentElement.appendChild(this._measureElement)}return e.prototype.measure=function(){this._measureElement.style.fontFamily=this._optionsService.options.fontFamily,this._measureElement.style.fontSize=this._optionsService.options.fontSize+"px";var e=this._measureElement.getBoundingClientRect();return 0!==e.width&&0!==e.height&&(this._result.width=e.width,this._result.height=Math.ceil(e.height)),this._result},e}()},4269:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CharacterJoinerService=t.JoinedCellData=void 0;var a=r(3734),c=r(643),l=r(511),h=r(2585),u=function(e){function t(t,r,i){var n=e.call(this)||this;return n.content=0,n.combinedData="",n.fg=t.fg,n.bg=t.bg,n.combinedData=r,n._width=i,n}return n(t,e),t.prototype.isCombined=function(){return 2097152},t.prototype.getWidth=function(){return this._width},t.prototype.getChars=function(){return this.combinedData},t.prototype.getCode=function(){return 2097151},t.prototype.setFromCharData=function(e){throw new Error("not implemented")},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.JoinedCellData=u;var _=function(){function e(e){this._bufferService=e,this._characterJoiners=[],this._nextCharacterJoinerId=0,this._workCell=new l.CellData}return e.prototype.register=function(e){var t={id:this._nextCharacterJoinerId++,handler:e};return this._characterJoiners.push(t),t.id},e.prototype.deregister=function(e){for(var t=0;t1)for(var u=this._getJoinedRanges(i,s,o,t,n),_=0;_1)for(u=this._getJoinedRanges(i,s,o,t,n),_=0;_{Object.defineProperty(t,"__esModule",{value:!0}),t.CoreBrowserService=void 0;var r=function(){function e(e){this._textarea=e}return Object.defineProperty(e.prototype,"isFocused",{get:function(){return(this._textarea.getRootNode?this._textarea.getRootNode():document).activeElement===this._textarea&&document.hasFocus()},enumerable:!1,configurable:!0}),e}();t.CoreBrowserService=r},8934:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.MouseService=void 0;var o=r(4725),s=r(9806),a=function(){function e(e,t){this._renderService=e,this._charSizeService=t}return e.prototype.getCoords=function(e,t,r,i,n){return s.getCoords(e,t,r,i,this._charSizeService.hasValidSize,this._renderService.dimensions.actualCellWidth,this._renderService.dimensions.actualCellHeight,n)},e.prototype.getRawByteCoords=function(e,t,r,i){var n=this.getCoords(e,t,r,i);return s.getRawByteCoords(n)},i([n(0,o.IRenderService),n(1,o.ICharSizeService)],e)}();t.MouseService=a},3230:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.RenderService=void 0;var a=r(6193),c=r(8460),l=r(844),h=r(5596),u=r(3656),_=r(2585),f=r(4725),d=function(e){function t(t,r,i,n,o,s){var l=e.call(this)||this;if(l._renderer=t,l._rowCount=r,l._charSizeService=o,l._isPaused=!1,l._needsFullRefresh=!1,l._isNextRenderRedrawOnly=!0,l._needsSelectionRefresh=!1,l._canvasWidth=0,l._canvasHeight=0,l._selectionState={start:void 0,end:void 0,columnSelectMode:!1},l._onDimensionsChange=new c.EventEmitter,l._onRender=new c.EventEmitter,l._onRefreshRequest=new c.EventEmitter,l.register({dispose:function(){return l._renderer.dispose()}}),l._renderDebouncer=new a.RenderDebouncer((function(e,t){return l._renderRows(e,t)})),l.register(l._renderDebouncer),l._screenDprMonitor=new h.ScreenDprMonitor,l._screenDprMonitor.setListener((function(){return l.onDevicePixelRatioChange()})),l.register(l._screenDprMonitor),l.register(s.onResize((function(e){return l._fullRefresh()}))),l.register(n.onOptionChange((function(){return l._renderer.onOptionsChanged()}))),l.register(l._charSizeService.onCharSizeChange((function(){return l.onCharSizeChanged()}))),l._renderer.onRequestRedraw((function(e){return l.refreshRows(e.start,e.end,!0)})),l.register(u.addDisposableDomListener(window,"resize",(function(){return l.onDevicePixelRatioChange()}))),"IntersectionObserver"in window){var _=new IntersectionObserver((function(e){return l._onIntersectionChange(e[e.length-1])}),{threshold:0});_.observe(i),l.register({dispose:function(){return _.disconnect()}})}return l}return n(t,e),Object.defineProperty(t.prototype,"onDimensionsChange",{get:function(){return this._onDimensionsChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRenderedBufferChange",{get:function(){return this._onRender.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRefreshRequest",{get:function(){return this._onRefreshRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"dimensions",{get:function(){return this._renderer.dimensions},enumerable:!1,configurable:!0}),t.prototype._onIntersectionChange=function(e){this._isPaused=void 0===e.isIntersecting?0===e.intersectionRatio:!e.isIntersecting,this._isPaused||this._charSizeService.hasValidSize||this._charSizeService.measure(),!this._isPaused&&this._needsFullRefresh&&(this.refreshRows(0,this._rowCount-1),this._needsFullRefresh=!1)},t.prototype.refreshRows=function(e,t,r){void 0===r&&(r=!1),this._isPaused?this._needsFullRefresh=!0:(r||(this._isNextRenderRedrawOnly=!1),this._renderDebouncer.refresh(e,t,this._rowCount))},t.prototype._renderRows=function(e,t){this._renderer.renderRows(e,t),this._needsSelectionRefresh&&(this._renderer.onSelectionChanged(this._selectionState.start,this._selectionState.end,this._selectionState.columnSelectMode),this._needsSelectionRefresh=!1),this._isNextRenderRedrawOnly||this._onRender.fire({start:e,end:t}),this._isNextRenderRedrawOnly=!0},t.prototype.resize=function(e,t){this._rowCount=t,this._fireOnCanvasResize()},t.prototype.changeOptions=function(){this._renderer.onOptionsChanged(),this.refreshRows(0,this._rowCount-1),this._fireOnCanvasResize()},t.prototype._fireOnCanvasResize=function(){this._renderer.dimensions.canvasWidth===this._canvasWidth&&this._renderer.dimensions.canvasHeight===this._canvasHeight||this._onDimensionsChange.fire(this._renderer.dimensions)},t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype.setRenderer=function(e){var t=this;this._renderer.dispose(),this._renderer=e,this._renderer.onRequestRedraw((function(e){return t.refreshRows(e.start,e.end,!0)})),this._needsSelectionRefresh=!0,this._fullRefresh()},t.prototype._fullRefresh=function(){this._isPaused?this._needsFullRefresh=!0:this.refreshRows(0,this._rowCount-1)},t.prototype.setColors=function(e){this._renderer.setColors(e),this._fullRefresh()},t.prototype.onDevicePixelRatioChange=function(){this._charSizeService.measure(),this._renderer.onDevicePixelRatioChange(),this.refreshRows(0,this._rowCount-1)},t.prototype.onResize=function(e,t){this._renderer.onResize(e,t),this._fullRefresh()},t.prototype.onCharSizeChanged=function(){this._renderer.onCharSizeChanged()},t.prototype.onBlur=function(){this._renderer.onBlur()},t.prototype.onFocus=function(){this._renderer.onFocus()},t.prototype.onSelectionChanged=function(e,t,r){this._selectionState.start=e,this._selectionState.end=t,this._selectionState.columnSelectMode=r,this._renderer.onSelectionChanged(e,t,r)},t.prototype.onCursorMove=function(){this._renderer.onCursorMove()},t.prototype.clear=function(){this._renderer.clear()},o([s(3,_.IOptionsService),s(4,f.ICharSizeService),s(5,_.IBufferService)],t)}(l.Disposable);t.RenderService=d},9312:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SelectionService=void 0;var a=r(6114),c=r(456),l=r(511),h=r(8460),u=r(4725),_=r(2585),f=r(9806),d=r(9504),p=r(844),v=r(4841),g=String.fromCharCode(160),y=new RegExp(g,"g"),m=function(e){function t(t,r,i,n,o,s,a,u){var _=e.call(this)||this;return _._element=t,_._screenElement=r,_._linkifier=i,_._bufferService=n,_._coreService=o,_._mouseService=s,_._optionsService=a,_._renderService=u,_._dragScrollAmount=0,_._enabled=!0,_._workCell=new l.CellData,_._mouseDownTimeStamp=0,_._oldHasSelection=!1,_._oldSelectionStart=void 0,_._oldSelectionEnd=void 0,_._onLinuxMouseSelection=_.register(new h.EventEmitter),_._onRedrawRequest=_.register(new h.EventEmitter),_._onSelectionChange=_.register(new h.EventEmitter),_._onRequestScrollLines=_.register(new h.EventEmitter),_._mouseMoveListener=function(e){return _._onMouseMove(e)},_._mouseUpListener=function(e){return _._onMouseUp(e)},_._coreService.onUserInput((function(){_.hasSelection&&_.clearSelection()})),_._trimListener=_._bufferService.buffer.lines.onTrim((function(e){return _._onTrim(e)})),_.register(_._bufferService.buffers.onBufferActivate((function(e){return _._onBufferActivate(e)}))),_.enable(),_._model=new c.SelectionModel(_._bufferService),_._activeSelectionMode=0,_}return n(t,e),Object.defineProperty(t.prototype,"onLinuxMouseSelection",{get:function(){return this._onLinuxMouseSelection.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRedraw",{get:function(){return this._onRedrawRequest.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onSelectionChange",{get:function(){return this._onSelectionChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestScrollLines",{get:function(){return this._onRequestScrollLines.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this._removeMouseDownListeners()},t.prototype.reset=function(){this.clearSelection()},t.prototype.disable=function(){this.clearSelection(),this._enabled=!1},t.prototype.enable=function(){this._enabled=!0},Object.defineProperty(t.prototype,"selectionStart",{get:function(){return this._model.finalSelectionStart},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionEnd",{get:function(){return this._model.finalSelectionEnd},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"hasSelection",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;return!(!e||!t||e[0]===t[0]&&e[1]===t[1])},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"selectionText",{get:function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd;if(!e||!t)return"";var r=this._bufferService.buffer,i=[];if(3===this._activeSelectionMode){if(e[0]===t[0])return"";for(var n=e[1];n<=t[1];n++){var o=r.translateBufferLineToString(n,!0,e[0],t[0]);i.push(o)}}else{var s=e[1]===t[1]?t[0]:void 0;for(i.push(r.translateBufferLineToString(e[1],!0,e[0],s)),n=e[1]+1;n<=t[1]-1;n++){var c=r.lines.get(n);o=r.translateBufferLineToString(n,!0),c&&c.isWrapped?i[i.length-1]+=o:i.push(o)}e[1]!==t[1]&&(c=r.lines.get(t[1]),o=r.translateBufferLineToString(t[1],!0,0,t[0]),c&&c.isWrapped?i[i.length-1]+=o:i.push(o))}return i.map((function(e){return e.replace(y," ")})).join(a.isWindows?"\r\n":"\n")},enumerable:!1,configurable:!0}),t.prototype.clearSelection=function(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()},t.prototype.refresh=function(e){var t=this;this._refreshAnimationFrame||(this._refreshAnimationFrame=window.requestAnimationFrame((function(){return t._refresh()}))),a.isLinux&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)},t.prototype._refresh=function(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:3===this._activeSelectionMode})},t.prototype._isClickInSelection=function(e){var t=this._getMouseBufferCoords(e),r=this._model.finalSelectionStart,i=this._model.finalSelectionEnd;return!!(r&&i&&t)&&this._areCoordsInSelection(t,r,i)},t.prototype._areCoordsInSelection=function(e,t,r){return e[1]>t[1]&&e[1]=t[0]&&e[0]=t[0]},t.prototype._selectWordAtCursor=function(e,t){var r,i,n=null===(i=null===(r=this._linkifier.currentLink)||void 0===r?void 0:r.link)||void 0===i?void 0:i.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=v.getRangeLength(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;var o=this._getMouseBufferCoords(e);return!!o&&(this._selectWordAt(o,t),this._model.selectionEnd=void 0,!0)},t.prototype.selectAll=function(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()},t.prototype.selectLines=function(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()},t.prototype._onTrim=function(e){this._model.onTrim(e)&&this.refresh()},t.prototype._getMouseBufferCoords=function(e){var t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t},t.prototype._getMouseEventScrollAmount=function(e){var t=f.getCoordsRelativeToElement(e,this._screenElement)[1],r=this._renderService.dimensions.canvasHeight;return t>=0&&t<=r?0:(t>r&&(t-=r),t=Math.min(Math.max(t,-50),50),(t/=50)/Math.abs(t)+Math.round(14*t))},t.prototype.shouldForceSelection=function(e){return a.isMac?e.altKey&&this._optionsService.options.macOptionClickForcesSelection:e.shiftKey},t.prototype.onMouseDown=function(e){if(this._mouseDownTimeStamp=e.timeStamp,(2!==e.button||!this.hasSelection)&&0===e.button){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._onIncrementalClick(e):1===e.detail?this._onSingleClick(e):2===e.detail?this._onDoubleClick(e):3===e.detail&&this._onTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}},t.prototype._addMouseDownListeners=function(){var e=this;this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener("mouseup",this._mouseUpListener)),this._dragScrollIntervalTimer=window.setInterval((function(){return e._dragScroll()}),50)},t.prototype._removeMouseDownListeners=function(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener("mousemove",this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener("mouseup",this._mouseUpListener)),clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0},t.prototype._onIncrementalClick=function(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))},t.prototype._onSingleClick=function(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),this._model.selectionStart){this._model.selectionEnd=void 0;var t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&0===t.hasWidth(this._model.selectionStart[0])&&this._model.selectionStart[0]++}},t.prototype._onDoubleClick=function(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)},t.prototype._onTripleClick=function(e){var t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))},t.prototype.shouldColumnSelect=function(e){return e.altKey&&!(a.isMac&&this._optionsService.options.macOptionClickForcesSelection)},t.prototype._onMouseMove=function(e){if(e.stopImmediatePropagation(),this._model.selectionStart){var t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),this._model.selectionEnd){2===this._activeSelectionMode?this._model.selectionEnd[1]0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));var r=this._bufferService.buffer;if(this._model.selectionEnd[1]0?(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(3!==this._activeSelectionMode&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}},t.prototype._onMouseUp=function(e){var t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<500&&e.altKey&&this._optionsService.getOption("altClickMovesCursor")){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){var r=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(r&&void 0!==r[0]&&void 0!==r[1]){var i=d.moveToCellSequence(r[0]-1,r[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(i,!0)}}}else this._fireEventIfSelectionChanged()},t.prototype._fireEventIfSelectionChanged=function(){var e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,r=!(!e||!t||e[0]===t[0]&&e[1]===t[1]);r?e&&t&&(this._oldSelectionStart&&this._oldSelectionEnd&&e[0]===this._oldSelectionStart[0]&&e[1]===this._oldSelectionStart[1]&&t[0]===this._oldSelectionEnd[0]&&t[1]===this._oldSelectionEnd[1]||this._fireOnSelectionChange(e,t,r)):this._oldHasSelection&&this._fireOnSelectionChange(e,t,r)},t.prototype._fireOnSelectionChange=function(e,t,r){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=r,this._onSelectionChange.fire()},t.prototype._onBufferActivate=function(e){var t=this;this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim((function(e){return t._onTrim(e)}))},t.prototype._convertViewportColToCharacterIndex=function(e,t){for(var r=t[0],i=0;t[0]>=i;i++){var n=e.loadCell(i,this._workCell).getChars().length;0===this._workCell.getWidth()?r--:n>1&&t[0]!==i&&(r+=n-1)}return r},t.prototype.setSelection=function(e,t,r){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=r,this.refresh()},t.prototype.rightClickSelect=function(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())},t.prototype._getWordAt=function(e,t,r,i){if(void 0===r&&(r=!0),void 0===i&&(i=!0),!(e[0]>=this._bufferService.cols)){var n=this._bufferService.buffer,o=n.lines.get(e[1]);if(o){var s=n.translateBufferLineToString(e[1],!1),a=this._convertViewportColToCharacterIndex(o,e),c=a,l=e[0]-a,h=0,u=0,_=0,f=0;if(" "===s.charAt(a)){for(;a>0&&" "===s.charAt(a-1);)a--;for(;c1&&(f+=v-1,c+=v-1);d>0&&a>0&&!this._isCharWordSeparator(o.loadCell(d-1,this._workCell));){o.loadCell(d-1,this._workCell);var g=this._workCell.getChars().length;0===this._workCell.getWidth()?(h++,d--):g>1&&(_+=g-1,a-=g-1),a--,d--}for(;p1&&(f+=y-1,c+=y-1),c++,p++}}c++;var m=a+l-h+_,b=Math.min(this._bufferService.cols,c-a+h+u-_-f);if(t||""!==s.slice(a,c).trim()){if(r&&0===m&&32!==o.getCodePoint(0)){var C=n.lines.get(e[1]-1);if(C&&o.isWrapped&&32!==C.getCodePoint(this._bufferService.cols-1)){var S=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(S){var w=this._bufferService.cols-S.start;m-=w,b+=w}}}if(i&&m+b===this._bufferService.cols&&32!==o.getCodePoint(this._bufferService.cols-1)){var E=n.lines.get(e[1]+1);if(E&&E.isWrapped&&32!==E.getCodePoint(0)){var A=this._getWordAt([0,e[1]+1],!1,!1,!0);A&&(b+=A.length)}}return{start:m,length:b}}}}},t.prototype._selectWordAt=function(e,t){var r=this._getWordAt(e,t);if(r){for(;r.start<0;)r.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[r.start,e[1]],this._model.selectionStartLength=r.length}},t.prototype._selectToWordAt=function(e){var t=this._getWordAt(e,!0);if(t){for(var r=e[1];t.start<0;)t.start+=this._bufferService.cols,r--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,r++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,r]}},t.prototype._isCharWordSeparator=function(e){return 0!==e.getWidth()&&this._optionsService.options.wordSeparator.indexOf(e.getChars())>=0},t.prototype._selectLineAt=function(e){var t=this._bufferService.buffer.getWrappedRangeForLine(e);this._model.selectionStart=[0,t.first],this._model.selectionEnd=[this._bufferService.cols,t.last],this._model.selectionStartLength=0},o([s(3,_.IBufferService),s(4,_.ICoreService),s(5,u.IMouseService),s(6,_.IOptionsService),s(7,u.IRenderService)],t)}(p.Disposable);t.SelectionService=m},4725:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ICharacterJoinerService=t.ISoundService=t.ISelectionService=t.IRenderService=t.IMouseService=t.ICoreBrowserService=t.ICharSizeService=void 0;var i=r(8343);t.ICharSizeService=i.createDecorator("CharSizeService"),t.ICoreBrowserService=i.createDecorator("CoreBrowserService"),t.IMouseService=i.createDecorator("MouseService"),t.IRenderService=i.createDecorator("RenderService"),t.ISelectionService=i.createDecorator("SelectionService"),t.ISoundService=i.createDecorator("SoundService"),t.ICharacterJoinerService=i.createDecorator("CharacterJoinerService")},357:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.SoundService=void 0;var o=r(2585),s=function(){function e(e){this._optionsService=e}return Object.defineProperty(e,"audioContext",{get:function(){if(!e._audioContext){var t=window.AudioContext||window.webkitAudioContext;if(!t)return console.warn("Web Audio API is not supported by this browser. Consider upgrading to the latest version"),null;e._audioContext=new t}return e._audioContext},enumerable:!1,configurable:!0}),e.prototype.playBellSound=function(){var t=e.audioContext;if(t){var r=t.createBufferSource();t.decodeAudioData(this._base64ToArrayBuffer(this._removeMimeType(this._optionsService.options.bellSound)),(function(e){r.buffer=e,r.connect(t.destination),r.start(0)}))}},e.prototype._base64ToArrayBuffer=function(e){for(var t=window.atob(e),r=t.length,i=new Uint8Array(r),n=0;n{Object.defineProperty(t,"__esModule",{value:!0}),t.CircularList=void 0;var i=r(8460),n=function(){function e(e){this._maxLength=e,this.onDeleteEmitter=new i.EventEmitter,this.onInsertEmitter=new i.EventEmitter,this.onTrimEmitter=new i.EventEmitter,this._array=new Array(this._maxLength),this._startIndex=0,this._length=0}return Object.defineProperty(e.prototype,"onDelete",{get:function(){return this.onDeleteEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onInsert",{get:function(){return this.onInsertEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"onTrim",{get:function(){return this.onTrimEmitter.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"maxLength",{get:function(){return this._maxLength},set:function(e){if(this._maxLength!==e){for(var t=new Array(e),r=0;rthis._length)for(var t=this._length;t=e;n--)this._array[this._getCyclicIndex(n+r.length)]=this._array[this._getCyclicIndex(n)];for(n=0;nthis._maxLength){var o=this._length+r.length-this._maxLength;this._startIndex+=o,this._length=this._maxLength,this.onTrimEmitter.fire(o)}else this._length+=r.length},e.prototype.trimStart=function(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)},e.prototype.shiftElements=function(e,t,r){if(!(t<=0)){if(e<0||e>=this._length)throw new Error("start argument out of range");if(e+r<0)throw new Error("Cannot shift elements in list beyond index 0");if(r>0){for(var i=t-1;i>=0;i--)this.set(e+i+r,this.get(e+i));var n=e+t+r-this._length;if(n>0)for(this._length+=n;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(i=0;i{Object.defineProperty(t,"__esModule",{value:!0}),t.clone=void 0,t.clone=function e(t,r){if(void 0===r&&(r=5),"object"!=typeof t)return t;var i=Array.isArray(t)?[]:{};for(var n in t)i[n]=r<=1?t[n]:t[n]?e(t[n],r-1):t[n];return i}},8969:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CoreTerminal=void 0;var o=r(844),s=r(2585),a=r(4348),c=r(7866),l=r(744),h=r(7302),u=r(6975),_=r(8460),f=r(1753),d=r(3730),p=r(1480),v=r(7994),g=r(9282),y=r(5435),m=r(5981),b=!1,C=function(e){function t(t){var r=e.call(this)||this;return r._onBinary=new _.EventEmitter,r._onData=new _.EventEmitter,r._onLineFeed=new _.EventEmitter,r._onResize=new _.EventEmitter,r._onScroll=new _.EventEmitter,r._instantiationService=new a.InstantiationService,r.optionsService=new h.OptionsService(t),r._instantiationService.setService(s.IOptionsService,r.optionsService),r._bufferService=r.register(r._instantiationService.createInstance(l.BufferService)),r._instantiationService.setService(s.IBufferService,r._bufferService),r._logService=r._instantiationService.createInstance(c.LogService),r._instantiationService.setService(s.ILogService,r._logService),r._coreService=r.register(r._instantiationService.createInstance(u.CoreService,(function(){return r.scrollToBottom()}))),r._instantiationService.setService(s.ICoreService,r._coreService),r._coreMouseService=r._instantiationService.createInstance(f.CoreMouseService),r._instantiationService.setService(s.ICoreMouseService,r._coreMouseService),r._dirtyRowService=r._instantiationService.createInstance(d.DirtyRowService),r._instantiationService.setService(s.IDirtyRowService,r._dirtyRowService),r.unicodeService=r._instantiationService.createInstance(p.UnicodeService),r._instantiationService.setService(s.IUnicodeService,r.unicodeService),r._charsetService=r._instantiationService.createInstance(v.CharsetService),r._instantiationService.setService(s.ICharsetService,r._charsetService),r._inputHandler=new y.InputHandler(r._bufferService,r._charsetService,r._coreService,r._dirtyRowService,r._logService,r.optionsService,r._coreMouseService,r.unicodeService),r.register(_.forwardEvent(r._inputHandler.onLineFeed,r._onLineFeed)),r.register(r._inputHandler),r.register(_.forwardEvent(r._bufferService.onResize,r._onResize)),r.register(_.forwardEvent(r._coreService.onData,r._onData)),r.register(_.forwardEvent(r._coreService.onBinary,r._onBinary)),r.register(r.optionsService.onOptionChange((function(e){return r._updateOptions(e)}))),r.register(r._bufferService.onScroll((function(e){r._onScroll.fire({position:r._bufferService.buffer.ydisp,source:0}),r._dirtyRowService.markRangeDirty(r._bufferService.buffer.scrollTop,r._bufferService.buffer.scrollBottom)}))),r._writeBuffer=new m.WriteBuffer((function(e,t){return r._inputHandler.parse(e,t)})),r}return n(t,e),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){var e=this;return this._onScrollApi||(this._onScrollApi=new _.EventEmitter,this.register(this._onScroll.event((function(t){var r;null===(r=e._onScrollApi)||void 0===r||r.fire(t.position)})))),this._onScrollApi.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"cols",{get:function(){return this._bufferService.cols},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"rows",{get:function(){return this._bufferService.rows},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"buffers",{get:function(){return this._bufferService.buffers},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){var t;this._isDisposed||(e.prototype.dispose.call(this),null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)},t.prototype.write=function(e,t){this._writeBuffer.write(e,t)},t.prototype.writeSync=function(e,t){this._logService.logLevel<=s.LogLevelEnum.WARN&&!b&&(this._logService.warn("writeSync is unreliable and will be removed soon."),b=!0),this._writeBuffer.writeSync(e,t)},t.prototype.resize=function(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,l.MINIMUM_COLS),t=Math.max(t,l.MINIMUM_ROWS),this._bufferService.resize(e,t))},t.prototype.scroll=function(e,t){void 0===t&&(t=!1),this._bufferService.scroll(e,t)},t.prototype.scrollLines=function(e,t,r){this._bufferService.scrollLines(e,t,r)},t.prototype.scrollPages=function(e){this._bufferService.scrollPages(e)},t.prototype.scrollToTop=function(){this._bufferService.scrollToTop()},t.prototype.scrollToBottom=function(){this._bufferService.scrollToBottom()},t.prototype.scrollToLine=function(e){this._bufferService.scrollToLine(e)},t.prototype.registerEscHandler=function(e,t){return this._inputHandler.registerEscHandler(e,t)},t.prototype.registerDcsHandler=function(e,t){return this._inputHandler.registerDcsHandler(e,t)},t.prototype.registerCsiHandler=function(e,t){return this._inputHandler.registerCsiHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._inputHandler.registerOscHandler(e,t)},t.prototype._setup=function(){this.optionsService.options.windowsMode&&this._enableWindowsMode()},t.prototype.reset=function(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this._coreService.reset(),this._coreMouseService.reset()},t.prototype._updateOptions=function(e){var t;switch(e){case"scrollback":this.buffers.resize(this.cols,this.rows);break;case"windowsMode":this.optionsService.options.windowsMode?this._enableWindowsMode():(null===(t=this._windowsMode)||void 0===t||t.dispose(),this._windowsMode=void 0)}},t.prototype._enableWindowsMode=function(){var e=this;if(!this._windowsMode){var t=[];t.push(this.onLineFeed(g.updateWindowsModeWrappedState.bind(null,this._bufferService))),t.push(this.registerCsiHandler({final:"H"},(function(){return g.updateWindowsModeWrappedState(e._bufferService),!1}))),this._windowsMode={dispose:function(){for(var e=0,r=t;e{Object.defineProperty(t,"__esModule",{value:!0}),t.forwardEvent=t.EventEmitter=void 0;var r=function(){function e(){this._listeners=[],this._disposed=!1}return Object.defineProperty(e.prototype,"event",{get:function(){var e=this;return this._event||(this._event=function(t){return e._listeners.push(t),{dispose:function(){if(!e._disposed)for(var r=0;r24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}!function(e){e[e.GET_WIN_SIZE_PIXELS=0]="GET_WIN_SIZE_PIXELS",e[e.GET_CELL_SIZE_PIXELS=1]="GET_CELL_SIZE_PIXELS"}(o=t.WindowsOptionsReportType||(t.WindowsOptionsReportType={}));var w=function(){function e(e,t,r,i){this._bufferService=e,this._coreService=t,this._logService=r,this._optionsService=i,this._data=new Uint32Array(0)}return e.prototype.hook=function(e){this._data=new Uint32Array(0)},e.prototype.put=function(e,t,r){this._data=h.concat(this._data,e.subarray(t,r))},e.prototype.unhook=function(e){if(!e)return this._data=new Uint32Array(0),!0;var t=u.utf32ToString(this._data);switch(this._data=new Uint32Array(0),t){case'"q':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r0"q'+s.C0.ESC+"\\");break;case'"p':this._coreService.triggerDataEvent(s.C0.ESC+'P1$r61;1"p'+s.C0.ESC+"\\");break;case"r":var r=this._bufferService.buffer.scrollTop+1+";"+(this._bufferService.buffer.scrollBottom+1)+"r";this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+r+s.C0.ESC+"\\");break;case"m":this._coreService.triggerDataEvent(s.C0.ESC+"P1$r0m"+s.C0.ESC+"\\");break;case" q":var i={block:2,underline:4,bar:6}[this._optionsService.options.cursorStyle];i-=this._optionsService.options.cursorBlink?1:0,this._coreService.triggerDataEvent(s.C0.ESC+"P1$r"+i+" q"+s.C0.ESC+"\\");break;default:this._logService.debug("Unknown DCS $q %s",t),this._coreService.triggerDataEvent(s.C0.ESC+"P0$r"+s.C0.ESC+"\\")}return!0},e}(),E=function(e){function t(t,r,i,n,o,l,h,d,v){void 0===v&&(v=new c.EscapeSequenceParser);var g=e.call(this)||this;g._bufferService=t,g._charsetService=r,g._coreService=i,g._dirtyRowService=n,g._logService=o,g._optionsService=l,g._coreMouseService=h,g._unicodeService=d,g._parser=v,g._parseBuffer=new Uint32Array(4096),g._stringDecoder=new u.StringToUtf32,g._utf8Decoder=new u.Utf8ToUtf32,g._workCell=new p.CellData,g._windowTitle="",g._iconName="",g._windowTitleStack=[],g._iconNameStack=[],g._curAttrData=_.DEFAULT_ATTR_DATA.clone(),g._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone(),g._onRequestBell=new f.EventEmitter,g._onRequestRefreshRows=new f.EventEmitter,g._onRequestReset=new f.EventEmitter,g._onRequestSyncScrollBar=new f.EventEmitter,g._onRequestWindowsOptionsReport=new f.EventEmitter,g._onA11yChar=new f.EventEmitter,g._onA11yTab=new f.EventEmitter,g._onCursorMove=new f.EventEmitter,g._onLineFeed=new f.EventEmitter,g._onScroll=new f.EventEmitter,g._onTitleChange=new f.EventEmitter,g._onAnsiColorChange=new f.EventEmitter,g._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},g.register(g._parser),g._parser.setCsiHandlerFallback((function(e,t){g._logService.debug("Unknown CSI code: ",{identifier:g._parser.identToString(e),params:t.toArray()})})),g._parser.setEscHandlerFallback((function(e){g._logService.debug("Unknown ESC code: ",{identifier:g._parser.identToString(e)})})),g._parser.setExecuteHandlerFallback((function(e){g._logService.debug("Unknown EXECUTE code: ",{code:e})})),g._parser.setOscHandlerFallback((function(e,t,r){g._logService.debug("Unknown OSC code: ",{identifier:e,action:t,data:r})})),g._parser.setDcsHandlerFallback((function(e,t,r){"HOOK"===t&&(r=r.toArray()),g._logService.debug("Unknown DCS code: ",{identifier:g._parser.identToString(e),action:t,payload:r})})),g._parser.setPrintHandler((function(e,t,r){return g.print(e,t,r)})),g._parser.registerCsiHandler({final:"@"},(function(e){return g.insertChars(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"@"},(function(e){return g.scrollLeft(e)})),g._parser.registerCsiHandler({final:"A"},(function(e){return g.cursorUp(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"A"},(function(e){return g.scrollRight(e)})),g._parser.registerCsiHandler({final:"B"},(function(e){return g.cursorDown(e)})),g._parser.registerCsiHandler({final:"C"},(function(e){return g.cursorForward(e)})),g._parser.registerCsiHandler({final:"D"},(function(e){return g.cursorBackward(e)})),g._parser.registerCsiHandler({final:"E"},(function(e){return g.cursorNextLine(e)})),g._parser.registerCsiHandler({final:"F"},(function(e){return g.cursorPrecedingLine(e)})),g._parser.registerCsiHandler({final:"G"},(function(e){return g.cursorCharAbsolute(e)})),g._parser.registerCsiHandler({final:"H"},(function(e){return g.cursorPosition(e)})),g._parser.registerCsiHandler({final:"I"},(function(e){return g.cursorForwardTab(e)})),g._parser.registerCsiHandler({final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({prefix:"?",final:"J"},(function(e){return g.eraseInDisplay(e)})),g._parser.registerCsiHandler({final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({prefix:"?",final:"K"},(function(e){return g.eraseInLine(e)})),g._parser.registerCsiHandler({final:"L"},(function(e){return g.insertLines(e)})),g._parser.registerCsiHandler({final:"M"},(function(e){return g.deleteLines(e)})),g._parser.registerCsiHandler({final:"P"},(function(e){return g.deleteChars(e)})),g._parser.registerCsiHandler({final:"S"},(function(e){return g.scrollUp(e)})),g._parser.registerCsiHandler({final:"T"},(function(e){return g.scrollDown(e)})),g._parser.registerCsiHandler({final:"X"},(function(e){return g.eraseChars(e)})),g._parser.registerCsiHandler({final:"Z"},(function(e){return g.cursorBackwardTab(e)})),g._parser.registerCsiHandler({final:"`"},(function(e){return g.charPosAbsolute(e)})),g._parser.registerCsiHandler({final:"a"},(function(e){return g.hPositionRelative(e)})),g._parser.registerCsiHandler({final:"b"},(function(e){return g.repeatPrecedingCharacter(e)})),g._parser.registerCsiHandler({final:"c"},(function(e){return g.sendDeviceAttributesPrimary(e)})),g._parser.registerCsiHandler({prefix:">",final:"c"},(function(e){return g.sendDeviceAttributesSecondary(e)})),g._parser.registerCsiHandler({final:"d"},(function(e){return g.linePosAbsolute(e)})),g._parser.registerCsiHandler({final:"e"},(function(e){return g.vPositionRelative(e)})),g._parser.registerCsiHandler({final:"f"},(function(e){return g.hVPosition(e)})),g._parser.registerCsiHandler({final:"g"},(function(e){return g.tabClear(e)})),g._parser.registerCsiHandler({final:"h"},(function(e){return g.setMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"h"},(function(e){return g.setModePrivate(e)})),g._parser.registerCsiHandler({final:"l"},(function(e){return g.resetMode(e)})),g._parser.registerCsiHandler({prefix:"?",final:"l"},(function(e){return g.resetModePrivate(e)})),g._parser.registerCsiHandler({final:"m"},(function(e){return g.charAttributes(e)})),g._parser.registerCsiHandler({final:"n"},(function(e){return g.deviceStatus(e)})),g._parser.registerCsiHandler({prefix:"?",final:"n"},(function(e){return g.deviceStatusPrivate(e)})),g._parser.registerCsiHandler({intermediates:"!",final:"p"},(function(e){return g.softReset(e)})),g._parser.registerCsiHandler({intermediates:" ",final:"q"},(function(e){return g.setCursorStyle(e)})),g._parser.registerCsiHandler({final:"r"},(function(e){return g.setScrollRegion(e)})),g._parser.registerCsiHandler({final:"s"},(function(e){return g.saveCursor(e)})),g._parser.registerCsiHandler({final:"t"},(function(e){return g.windowOptions(e)})),g._parser.registerCsiHandler({final:"u"},(function(e){return g.restoreCursor(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"}"},(function(e){return g.insertColumns(e)})),g._parser.registerCsiHandler({intermediates:"'",final:"~"},(function(e){return g.deleteColumns(e)})),g._parser.setExecuteHandler(s.C0.BEL,(function(){return g.bell()})),g._parser.setExecuteHandler(s.C0.LF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.VT,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.FF,(function(){return g.lineFeed()})),g._parser.setExecuteHandler(s.C0.CR,(function(){return g.carriageReturn()})),g._parser.setExecuteHandler(s.C0.BS,(function(){return g.backspace()})),g._parser.setExecuteHandler(s.C0.HT,(function(){return g.tab()})),g._parser.setExecuteHandler(s.C0.SO,(function(){return g.shiftOut()})),g._parser.setExecuteHandler(s.C0.SI,(function(){return g.shiftIn()})),g._parser.setExecuteHandler(s.C1.IND,(function(){return g.index()})),g._parser.setExecuteHandler(s.C1.NEL,(function(){return g.nextLine()})),g._parser.setExecuteHandler(s.C1.HTS,(function(){return g.tabSet()})),g._parser.registerOscHandler(0,new y.OscHandler((function(e){return g.setTitle(e),g.setIconName(e),!0}))),g._parser.registerOscHandler(1,new y.OscHandler((function(e){return g.setIconName(e)}))),g._parser.registerOscHandler(2,new y.OscHandler((function(e){return g.setTitle(e)}))),g._parser.registerOscHandler(4,new y.OscHandler((function(e){return g.setAnsiColor(e)}))),g._parser.registerEscHandler({final:"7"},(function(){return g.saveCursor()})),g._parser.registerEscHandler({final:"8"},(function(){return g.restoreCursor()})),g._parser.registerEscHandler({final:"D"},(function(){return g.index()})),g._parser.registerEscHandler({final:"E"},(function(){return g.nextLine()})),g._parser.registerEscHandler({final:"H"},(function(){return g.tabSet()})),g._parser.registerEscHandler({final:"M"},(function(){return g.reverseIndex()})),g._parser.registerEscHandler({final:"="},(function(){return g.keypadApplicationMode()})),g._parser.registerEscHandler({final:">"},(function(){return g.keypadNumericMode()})),g._parser.registerEscHandler({final:"c"},(function(){return g.fullReset()})),g._parser.registerEscHandler({final:"n"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"o"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"|"},(function(){return g.setgLevel(3)})),g._parser.registerEscHandler({final:"}"},(function(){return g.setgLevel(2)})),g._parser.registerEscHandler({final:"~"},(function(){return g.setgLevel(1)})),g._parser.registerEscHandler({intermediates:"%",final:"@"},(function(){return g.selectDefaultCharset()})),g._parser.registerEscHandler({intermediates:"%",final:"G"},(function(){return g.selectDefaultCharset()}));var m=function(e){b._parser.registerEscHandler({intermediates:"(",final:e},(function(){return g.selectCharset("("+e)})),b._parser.registerEscHandler({intermediates:")",final:e},(function(){return g.selectCharset(")"+e)})),b._parser.registerEscHandler({intermediates:"*",final:e},(function(){return g.selectCharset("*"+e)})),b._parser.registerEscHandler({intermediates:"+",final:e},(function(){return g.selectCharset("+"+e)})),b._parser.registerEscHandler({intermediates:"-",final:e},(function(){return g.selectCharset("-"+e)})),b._parser.registerEscHandler({intermediates:".",final:e},(function(){return g.selectCharset("."+e)})),b._parser.registerEscHandler({intermediates:"/",final:e},(function(){return g.selectCharset("/"+e)}))},b=this;for(var C in a.CHARSETS)m(C);return g._parser.registerEscHandler({intermediates:"#",final:"8"},(function(){return g.screenAlignmentPattern()})),g._parser.setErrorHandler((function(e){return g._logService.error("Parsing error: ",e),e})),g._parser.registerDcsHandler({intermediates:"$",final:"q"},new w(g._bufferService,g._coreService,g._logService,g._optionsService)),g}return n(t,e),Object.defineProperty(t.prototype,"onRequestBell",{get:function(){return this._onRequestBell.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestRefreshRows",{get:function(){return this._onRequestRefreshRows.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestReset",{get:function(){return this._onRequestReset.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestSyncScrollBar",{get:function(){return this._onRequestSyncScrollBar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onRequestWindowsOptionsReport",{get:function(){return this._onRequestWindowsOptionsReport.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yChar",{get:function(){return this._onA11yChar.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onA11yTab",{get:function(){return this._onA11yTab.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onCursorMove",{get:function(){return this._onCursorMove.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onLineFeed",{get:function(){return this._onLineFeed.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onTitleChange",{get:function(){return this._onTitleChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onAnsiColorChange",{get:function(){return this._onAnsiColorChange.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){e.prototype.dispose.call(this)},t.prototype._preserveStack=function(e,t,r,i){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=r,this._parseStack.position=i},t.prototype._logSlowResolvingAsync=function(e){this._logService.logLevel<=g.LogLevelEnum.WARN&&Promise.race([e,new Promise((function(e,t){return setTimeout((function(){return t("#SLOW_TIMEOUT")}),5e3)}))]).catch((function(e){if("#SLOW_TIMEOUT"!==e)throw e;console.warn("async parser handler taking longer than 5000 ms")}))},t.prototype.parse=function(e,t){var r,i=this._bufferService.buffer,n=i.x,o=i.y,s=0,a=this._parseStack.paused;if(a){if(r=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(r),r;n=this._parseStack.cursorStartX,o=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>C&&(s=this._parseStack.position+C)}if(this._logService.debug("parsing data",e),this._parseBuffer.lengthC)for(var c=s;c0&&2===f.getWidth(o.x-1)&&f.setCellFromCodePoint(o.x-1,0,1,_.fg,_.bg,_.extended);for(var p=t;p=c)if(l){for(;o.x=this._bufferService.rows&&(o.y=this._bufferService.rows-1),o.lines.get(o.ybase+o.y).isWrapped=!0),f=o.lines.get(o.ybase+o.y)}else if(o.x=c-1,2===n)continue;if(h&&(f.insertCells(o.x,n,o.getNullCell(_),_),2===f.getWidth(c-1)&&f.setCellFromCodePoint(c-1,d.NULL_CELL_CODE,d.NULL_CELL_WIDTH,_.fg,_.bg,_.extended)),f.setCellFromCodePoint(o.x++,i,n,_.fg,_.bg,_.extended),n>0)for(;--n;)f.setCellFromCodePoint(o.x++,0,0,_.fg,_.bg,_.extended)}else f.getWidth(o.x-1)?f.addCodepointToCell(o.x-1,i):f.addCodepointToCell(o.x-2,i)}r-t>0&&(f.loadCell(o.x-1,this._workCell),2===this._workCell.getWidth()||this._workCell.getCode()>65535?this._parser.precedingCodepoint=0:this._workCell.isCombined()?this._parser.precedingCodepoint=this._workCell.getChars().charCodeAt(0):this._parser.precedingCodepoint=this._workCell.content),o.x0&&0===f.getWidth(o.x)&&!f.hasContent(o.x)&&f.setCellFromCodePoint(o.x,0,1,_.fg,_.bg,_.extended),this._dirtyRowService.markDirty(o.y)},t.prototype.registerCsiHandler=function(e,t){var r=this;return"t"!==e.final||e.prefix||e.intermediates?this._parser.registerCsiHandler(e,t):this._parser.registerCsiHandler(e,(function(e){return!S(e.params[0],r._optionsService.options.windowOptions)||t(e)}))},t.prototype.registerDcsHandler=function(e,t){return this._parser.registerDcsHandler(e,new m.DcsHandler(t))},t.prototype.registerEscHandler=function(e,t){return this._parser.registerEscHandler(e,t)},t.prototype.registerOscHandler=function(e,t){return this._parser.registerOscHandler(e,new y.OscHandler(t))},t.prototype.bell=function(){return this._onRequestBell.fire(),!0},t.prototype.lineFeed=function(){var e=this._bufferService.buffer;return this._dirtyRowService.markDirty(e.y),this._optionsService.options.convertEol&&(e.x=0),e.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),e.x>=this._bufferService.cols&&e.x--,this._dirtyRowService.markDirty(e.y),this._onLineFeed.fire(),!0},t.prototype.carriageReturn=function(){return this._bufferService.buffer.x=0,!0},t.prototype.backspace=function(){var e,t=this._bufferService.buffer;if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),t.x>0&&t.x--,!0;if(this._restrictCursor(this._bufferService.cols),t.x>0)t.x--;else if(0===t.x&&t.y>t.scrollTop&&t.y<=t.scrollBottom&&(null===(e=t.lines.get(t.ybase+t.y))||void 0===e?void 0:e.isWrapped)){t.lines.get(t.ybase+t.y).isWrapped=!1,t.y--,t.x=this._bufferService.cols-1;var r=t.lines.get(t.ybase+t.y);r.hasWidth(t.x)&&!r.hasContent(t.x)&&t.x--}return this._restrictCursor(),!0},t.prototype.tab=function(){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;var e=this._bufferService.buffer.x;return this._bufferService.buffer.x=this._bufferService.buffer.nextStop(),this._optionsService.options.screenReaderMode&&this._onA11yTab.fire(this._bufferService.buffer.x-e),!0},t.prototype.shiftOut=function(){return this._charsetService.setgLevel(1),!0},t.prototype.shiftIn=function(){return this._charsetService.setgLevel(0),!0},t.prototype._restrictCursor=function(e){void 0===e&&(e=this._bufferService.cols-1),this._bufferService.buffer.x=Math.min(e,Math.max(0,this._bufferService.buffer.x)),this._bufferService.buffer.y=this._coreService.decPrivateModes.origin?Math.min(this._bufferService.buffer.scrollBottom,Math.max(this._bufferService.buffer.scrollTop,this._bufferService.buffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._bufferService.buffer.y)),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._setCursor=function(e,t){this._dirtyRowService.markDirty(this._bufferService.buffer.y),this._coreService.decPrivateModes.origin?(this._bufferService.buffer.x=e,this._bufferService.buffer.y=this._bufferService.buffer.scrollTop+t):(this._bufferService.buffer.x=e,this._bufferService.buffer.y=t),this._restrictCursor(),this._dirtyRowService.markDirty(this._bufferService.buffer.y)},t.prototype._moveCursor=function(e,t){this._restrictCursor(),this._setCursor(this._bufferService.buffer.x+e,this._bufferService.buffer.y+t)},t.prototype.cursorUp=function(e){var t=this._bufferService.buffer.y-this._bufferService.buffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0},t.prototype.cursorDown=function(e){var t=this._bufferService.buffer.scrollBottom-this._bufferService.buffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0},t.prototype.cursorForward=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.cursorBackward=function(e){return this._moveCursor(-(e.params[0]||1),0),!0},t.prototype.cursorNextLine=function(e){return this.cursorDown(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorPrecedingLine=function(e){return this.cursorUp(e),this._bufferService.buffer.x=0,!0},t.prototype.cursorCharAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.cursorPosition=function(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0},t.prototype.charPosAbsolute=function(e){return this._setCursor((e.params[0]||1)-1,this._bufferService.buffer.y),!0},t.prototype.hPositionRelative=function(e){return this._moveCursor(e.params[0]||1,0),!0},t.prototype.linePosAbsolute=function(e){return this._setCursor(this._bufferService.buffer.x,(e.params[0]||1)-1),!0},t.prototype.vPositionRelative=function(e){return this._moveCursor(0,e.params[0]||1),!0},t.prototype.hVPosition=function(e){return this.cursorPosition(e),!0},t.prototype.tabClear=function(e){var t=e.params[0];return 0===t?delete this._bufferService.buffer.tabs[this._bufferService.buffer.x]:3===t&&(this._bufferService.buffer.tabs={}),!0},t.prototype.cursorForwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1;t--;)this._bufferService.buffer.x=this._bufferService.buffer.nextStop();return!0},t.prototype.cursorBackwardTab=function(e){if(this._bufferService.buffer.x>=this._bufferService.cols)return!0;for(var t=e.params[0]||1,r=this._bufferService.buffer;t--;)r.x=r.prevStop();return!0},t.prototype._eraseInBufferLine=function(e,t,r,i){void 0===i&&(i=!1);var n=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);n.replaceCells(t,r,this._bufferService.buffer.getNullCell(this._eraseAttrData()),this._eraseAttrData()),i&&(n.isWrapped=!1)},t.prototype._resetBufferLine=function(e){var t=this._bufferService.buffer.lines.get(this._bufferService.buffer.ybase+e);t.fill(this._bufferService.buffer.getNullCell(this._eraseAttrData())),t.isWrapped=!1},t.prototype.eraseInDisplay=function(e){var t;switch(this._restrictCursor(),e.params[0]){case 0:for(t=this._bufferService.buffer.y,this._dirtyRowService.markDirty(t),this._eraseInBufferLine(t++,this._bufferService.buffer.x,this._bufferService.cols,0===this._bufferService.buffer.x);t=this._bufferService.cols&&(this._bufferService.buffer.lines.get(t+1).isWrapped=!1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 2:for(t=this._bufferService.rows,this._dirtyRowService.markDirty(t-1);t--;)this._resetBufferLine(t);this._dirtyRowService.markDirty(0);break;case 3:var r=this._bufferService.buffer.lines.length-this._bufferService.rows;r>0&&(this._bufferService.buffer.lines.trimStart(r),this._bufferService.buffer.ybase=Math.max(this._bufferService.buffer.ybase-r,0),this._bufferService.buffer.ydisp=Math.max(this._bufferService.buffer.ydisp-r,0),this._onScroll.fire(0))}return!0},t.prototype.eraseInLine=function(e){switch(this._restrictCursor(),e.params[0]){case 0:this._eraseInBufferLine(this._bufferService.buffer.y,this._bufferService.buffer.x,this._bufferService.cols);break;case 1:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.buffer.x+1);break;case 2:this._eraseInBufferLine(this._bufferService.buffer.y,0,this._bufferService.cols)}return this._dirtyRowService.markDirty(this._bufferService.buffer.y),!0},t.prototype.insertLines=function(e){this._restrictCursor();var t=e.params[0]||1,r=this._bufferService.buffer;if(r.y>r.scrollBottom||r.yr.scrollBottom||r.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.yt.scrollBottom||t.y0||(this._is("xterm")||this._is("rxvt-unicode")||this._is("screen")?this._coreService.triggerDataEvent(s.C0.ESC+"[?1;2c"):this._is("linux")&&this._coreService.triggerDataEvent(s.C0.ESC+"[?6c")),!0},t.prototype.sendDeviceAttributesSecondary=function(e){return e.params[0]>0||(this._is("xterm")?this._coreService.triggerDataEvent(s.C0.ESC+"[>0;276;0c"):this._is("rxvt-unicode")?this._coreService.triggerDataEvent(s.C0.ESC+"[>85;95;0c"):this._is("linux")?this._coreService.triggerDataEvent(e.params[0]+"c"):this._is("screen")&&this._coreService.triggerDataEvent(s.C0.ESC+"[>83;40003;0c")),!0},t.prototype._is=function(e){return 0===(this._optionsService.options.termName+"").indexOf(e)},t.prototype.setMode=function(e){for(var t=0;t=2||2===i[1]&&o+n>=5)break;i[1]&&(n=1)}while(++o+t5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,0===e&&(t.fg&=-268435457),t.updateExtended()},t.prototype.charAttributes=function(e){if(1===e.length&&0===e.params[0])return this._curAttrData.fg=_.DEFAULT_ATTR_DATA.fg,this._curAttrData.bg=_.DEFAULT_ATTR_DATA.bg,!0;for(var t,r=e.length,i=this._curAttrData,n=0;n=30&&t<=37?(i.fg&=-50331904,i.fg|=16777216|t-30):t>=40&&t<=47?(i.bg&=-50331904,i.bg|=16777216|t-40):t>=90&&t<=97?(i.fg&=-50331904,i.fg|=16777224|t-90):t>=100&&t<=107?(i.bg&=-50331904,i.bg|=16777224|t-100):0===t?(i.fg=_.DEFAULT_ATTR_DATA.fg,i.bg=_.DEFAULT_ATTR_DATA.bg):1===t?i.fg|=134217728:3===t?i.bg|=67108864:4===t?(i.fg|=268435456,this._processUnderline(e.hasSubParams(n)?e.getSubParams(n)[0]:1,i)):5===t?i.fg|=536870912:7===t?i.fg|=67108864:8===t?i.fg|=1073741824:2===t?i.bg|=134217728:21===t?this._processUnderline(2,i):22===t?(i.fg&=-134217729,i.bg&=-134217729):23===t?i.bg&=-67108865:24===t?i.fg&=-268435457:25===t?i.fg&=-536870913:27===t?i.fg&=-67108865:28===t?i.fg&=-1073741825:39===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg):49===t?(i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):38===t||48===t||58===t?n+=this._extractColor(e,n,i):59===t?(i.extended=i.extended.clone(),i.extended.underlineColor=-1,i.updateExtended()):100===t?(i.fg&=-67108864,i.fg|=16777215&_.DEFAULT_ATTR_DATA.fg,i.bg&=-67108864,i.bg|=16777215&_.DEFAULT_ATTR_DATA.bg):this._logService.debug("Unknown SGR attribute: %d.",t);return!0},t.prototype.deviceStatus=function(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(s.C0.ESC+"[0n");break;case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"["+t+";"+r+"R")}return!0},t.prototype.deviceStatusPrivate=function(e){switch(e.params[0]){case 6:var t=this._bufferService.buffer.y+1,r=this._bufferService.buffer.x+1;this._coreService.triggerDataEvent(s.C0.ESC+"[?"+t+";"+r+"R")}return!0},t.prototype.softReset=function(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._bufferService.buffer.scrollTop=0,this._bufferService.buffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._coreService.reset(),this._charsetService.reset(),this._bufferService.buffer.savedX=0,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0},t.prototype.setCursorStyle=function(e){var t=e.params[0]||1;switch(t){case 1:case 2:this._optionsService.options.cursorStyle="block";break;case 3:case 4:this._optionsService.options.cursorStyle="underline";break;case 5:case 6:this._optionsService.options.cursorStyle="bar"}var r=t%2==1;return this._optionsService.options.cursorBlink=r,!0},t.prototype.setScrollRegion=function(e){var t,r=e.params[0]||1;return(e.length<2||(t=e.params[1])>this._bufferService.rows||0===t)&&(t=this._bufferService.rows),t>r&&(this._bufferService.buffer.scrollTop=r-1,this._bufferService.buffer.scrollBottom=t-1,this._setCursor(0,0)),!0},t.prototype.windowOptions=function(e){if(!S(e.params[0],this._optionsService.options.windowOptions))return!0;var t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:2!==t&&this._onRequestWindowsOptionsReport.fire(o.GET_WIN_SIZE_PIXELS);break;case 16:this._onRequestWindowsOptionsReport.fire(o.GET_CELL_SIZE_PIXELS);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(s.C0.ESC+"[8;"+this._bufferService.rows+";"+this._bufferService.cols+"t");break;case 22:0!==t&&2!==t||(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>10&&this._windowTitleStack.shift()),0!==t&&1!==t||(this._iconNameStack.push(this._iconName),this._iconNameStack.length>10&&this._iconNameStack.shift());break;case 23:0!==t&&2!==t||this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),0!==t&&1!==t||this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0},t.prototype.saveCursor=function(e){return this._bufferService.buffer.savedX=this._bufferService.buffer.x,this._bufferService.buffer.savedY=this._bufferService.buffer.ybase+this._bufferService.buffer.y,this._bufferService.buffer.savedCurAttrData.fg=this._curAttrData.fg,this._bufferService.buffer.savedCurAttrData.bg=this._curAttrData.bg,this._bufferService.buffer.savedCharset=this._charsetService.charset,!0},t.prototype.restoreCursor=function(e){return this._bufferService.buffer.x=this._bufferService.buffer.savedX||0,this._bufferService.buffer.y=Math.max(this._bufferService.buffer.savedY-this._bufferService.buffer.ybase,0),this._curAttrData.fg=this._bufferService.buffer.savedCurAttrData.fg,this._curAttrData.bg=this._bufferService.buffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._bufferService.buffer.savedCharset&&(this._charsetService.charset=this._bufferService.buffer.savedCharset),this._restrictCursor(),!0},t.prototype.setTitle=function(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0},t.prototype.setIconName=function(e){return this._iconName=e,!0},t.prototype._parseAnsiColorChange=function(e){for(var t,r={colors:[]},i=/(\d+);rgb:([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})/gi;null!==(t=i.exec(e));)r.colors.push({colorIndex:parseInt(t[1]),red:parseInt(t[2],16),green:parseInt(t[3],16),blue:parseInt(t[4],16)});return 0===r.colors.length?null:r},t.prototype.setAnsiColor=function(e){var t=this._parseAnsiColorChange(e);return t?this._onAnsiColorChange.fire(t):this._logService.warn("Expected format ;rgb:// but got data: "+e),!0},t.prototype.nextLine=function(){return this._bufferService.buffer.x=0,this.index(),!0},t.prototype.keypadApplicationMode=function(){return this._logService.debug("Serial port requested application keypad."),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0},t.prototype.keypadNumericMode=function(){return this._logService.debug("Switching back to normal keypad."),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0},t.prototype.selectDefaultCharset=function(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,a.DEFAULT_CHARSET),!0},t.prototype.selectCharset=function(e){return 2!==e.length?(this.selectDefaultCharset(),!0):("/"===e[0]||this._charsetService.setgCharset(b[e[0]],a.CHARSETS[e[1]]||a.DEFAULT_CHARSET),!0)},t.prototype.index=function(){this._restrictCursor();var e=this._bufferService.buffer;return this._bufferService.buffer.y++,e.y===e.scrollBottom+1?(e.y--,this._bufferService.scroll(this._eraseAttrData())):e.y>=this._bufferService.rows&&(e.y=this._bufferService.rows-1),this._restrictCursor(),!0},t.prototype.tabSet=function(){return this._bufferService.buffer.tabs[this._bufferService.buffer.x]=!0,!0},t.prototype.reverseIndex=function(){this._restrictCursor();var e=this._bufferService.buffer;if(e.y===e.scrollTop){var t=e.scrollBottom-e.scrollTop;e.lines.shiftElements(e.ybase+e.y,t,1),e.lines.set(e.ybase+e.y,e.getBlankLine(this._eraseAttrData())),this._dirtyRowService.markRangeDirty(e.scrollTop,e.scrollBottom)}else e.y--,this._restrictCursor();return!0},t.prototype.fullReset=function(){return this._parser.reset(),this._onRequestReset.fire(),!0},t.prototype.reset=function(){this._curAttrData=_.DEFAULT_ATTR_DATA.clone(),this._eraseAttrDataInternal=_.DEFAULT_ATTR_DATA.clone()},t.prototype._eraseAttrData=function(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=67108863&this._curAttrData.bg,this._eraseAttrDataInternal},t.prototype.setgLevel=function(e){return this._charsetService.setgLevel(e),!0},t.prototype.screenAlignmentPattern=function(){var e=new p.CellData;e.content=1<<22|"E".charCodeAt(0),e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg;var t=this._bufferService.buffer;this._setCursor(0,0);for(var r=0;r{Object.defineProperty(t,"__esModule",{value:!0}),t.getDisposeArrayDisposable=t.disposeArray=t.Disposable=void 0;var r=function(){function e(){this._disposables=[],this._isDisposed=!1}return e.prototype.dispose=function(){this._isDisposed=!0;for(var e=0,t=this._disposables;e{Object.defineProperty(t,"__esModule",{value:!0}),t.isLinux=t.isWindows=t.isIphone=t.isIpad=t.isMac=t.isSafari=t.isFirefox=void 0;var r="undefined"==typeof navigator,i=r?"node":navigator.userAgent,n=r?"node":navigator.platform;t.isFirefox=i.includes("Firefox"),t.isSafari=/^((?!chrome|android).)*safari/i.test(i),t.isMac=["Macintosh","MacIntel","MacPPC","Mac68K"].includes(n),t.isIpad="iPad"===n,t.isIphone="iPhone"===n,t.isWindows=["Windows","Win16","Win32","WinCE"].includes(n),t.isLinux=n.indexOf("Linux")>=0},8273:(e,t)=>{function r(e,t,r,i){if(void 0===r&&(r=0),void 0===i&&(i=e.length),r>=e.length)return e;r=(e.length+r)%e.length,i=i>=e.length?e.length:(e.length+i)%e.length;for(var n=r;n{Object.defineProperty(t,"__esModule",{value:!0}),t.updateWindowsModeWrappedState=void 0;var i=r(643);t.updateWindowsModeWrappedState=function(e){var t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1),r=null==t?void 0:t.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&r&&(n.isWrapped=r[i.CHAR_DATA_CODE_INDEX]!==i.NULL_CELL_CODE&&r[i.CHAR_DATA_CODE_INDEX]!==i.WHITESPACE_CELL_CODE)}},3734:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.ExtendedAttrs=t.AttributeData=void 0;var r=function(){function e(){this.fg=0,this.bg=0,this.extended=new i}return e.toColorRGB=function(e){return[e>>>16&255,e>>>8&255,255&e]},e.fromColorRGB=function(e){return(255&e[0])<<16|(255&e[1])<<8|255&e[2]},e.prototype.clone=function(){var t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t},e.prototype.isInverse=function(){return 67108864&this.fg},e.prototype.isBold=function(){return 134217728&this.fg},e.prototype.isUnderline=function(){return 268435456&this.fg},e.prototype.isBlink=function(){return 536870912&this.fg},e.prototype.isInvisible=function(){return 1073741824&this.fg},e.prototype.isItalic=function(){return 67108864&this.bg},e.prototype.isDim=function(){return 134217728&this.bg},e.prototype.getFgColorMode=function(){return 50331648&this.fg},e.prototype.getBgColorMode=function(){return 50331648&this.bg},e.prototype.isFgRGB=function(){return 50331648==(50331648&this.fg)},e.prototype.isBgRGB=function(){return 50331648==(50331648&this.bg)},e.prototype.isFgPalette=function(){return 16777216==(50331648&this.fg)||33554432==(50331648&this.fg)},e.prototype.isBgPalette=function(){return 16777216==(50331648&this.bg)||33554432==(50331648&this.bg)},e.prototype.isFgDefault=function(){return 0==(50331648&this.fg)},e.prototype.isBgDefault=function(){return 0==(50331648&this.bg)},e.prototype.isAttributeDefault=function(){return 0===this.fg&&0===this.bg},e.prototype.getFgColor=function(){switch(50331648&this.fg){case 16777216:case 33554432:return 255&this.fg;case 50331648:return 16777215&this.fg;default:return-1}},e.prototype.getBgColor=function(){switch(50331648&this.bg){case 16777216:case 33554432:return 255&this.bg;case 50331648:return 16777215&this.bg;default:return-1}},e.prototype.hasExtendedAttrs=function(){return 268435456&this.bg},e.prototype.updateExtended=function(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456},e.prototype.getUnderlineColor=function(){if(268435456&this.bg&&~this.extended.underlineColor)switch(50331648&this.extended.underlineColor){case 16777216:case 33554432:return 255&this.extended.underlineColor;case 50331648:return 16777215&this.extended.underlineColor;default:return this.getFgColor()}return this.getFgColor()},e.prototype.getUnderlineColorMode=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648&this.extended.underlineColor:this.getFgColorMode()},e.prototype.isUnderlineColorRGB=function(){return 268435456&this.bg&&~this.extended.underlineColor?50331648==(50331648&this.extended.underlineColor):this.isFgRGB()},e.prototype.isUnderlineColorPalette=function(){return 268435456&this.bg&&~this.extended.underlineColor?16777216==(50331648&this.extended.underlineColor)||33554432==(50331648&this.extended.underlineColor):this.isFgPalette()},e.prototype.isUnderlineColorDefault=function(){return 268435456&this.bg&&~this.extended.underlineColor?0==(50331648&this.extended.underlineColor):this.isFgDefault()},e.prototype.getUnderlineStyle=function(){return 268435456&this.fg?268435456&this.bg?this.extended.underlineStyle:1:0},e}();t.AttributeData=r;var i=function(){function e(e,t){void 0===e&&(e=0),void 0===t&&(t=-1),this.underlineStyle=e,this.underlineColor=t}return e.prototype.clone=function(){return new e(this.underlineStyle,this.underlineColor)},e.prototype.isEmpty=function(){return 0===this.underlineStyle},e}();t.ExtendedAttrs=i},9092:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferStringIterator=t.Buffer=t.MAX_BUFFER_SIZE=void 0;var i=r(6349),n=r(8437),o=r(511),s=r(643),a=r(4634),c=r(4863),l=r(7116),h=r(3734);t.MAX_BUFFER_SIZE=4294967295;var u=function(){function e(e,t,r){this._hasScrollback=e,this._optionsService=t,this._bufferService=r,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.savedY=0,this.savedX=0,this.savedCurAttrData=n.DEFAULT_ATTR_DATA.clone(),this.savedCharset=l.DEFAULT_CHARSET,this.markers=[],this._nullCell=o.CellData.fromCharData([0,s.NULL_CELL_CHAR,s.NULL_CELL_WIDTH,s.NULL_CELL_CODE]),this._whitespaceCell=o.CellData.fromCharData([0,s.WHITESPACE_CELL_CHAR,s.WHITESPACE_CELL_WIDTH,s.WHITESPACE_CELL_CODE]),this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}return e.prototype.getNullCell=function(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new h.ExtendedAttrs),this._nullCell},e.prototype.getWhitespaceCell=function(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new h.ExtendedAttrs),this._whitespaceCell},e.prototype.getBlankLine=function(e,t){return new n.BufferLine(this._bufferService.cols,this.getNullCell(e),t)},Object.defineProperty(e.prototype,"hasScrollback",{get:function(){return this._hasScrollback&&this.lines.maxLength>this._rows},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"isCursorInViewport",{get:function(){var e=this.ybase+this.y-this.ydisp;return e>=0&&et.MAX_BUFFER_SIZE?t.MAX_BUFFER_SIZE:r},e.prototype.fillViewportRows=function(e){if(0===this.lines.length){void 0===e&&(e=n.DEFAULT_ATTR_DATA);for(var t=this._rows;t--;)this.lines.push(this.getBlankLine(e))}},e.prototype.clear=function(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new i.CircularList(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()},e.prototype.resize=function(e,t){var r=this.getNullCell(n.DEFAULT_ATTR_DATA),i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols0&&this.lines.length<=this.ybase+this.y+s+1?(this.ybase--,s++,this.ydisp>0&&this.ydisp--):this.lines.push(new n.BufferLine(e,r)));else for(a=this._rows;a>t;a--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i0&&(this.lines.trimStart(c),this.ybase=Math.max(this.ybase-c,0),this.ydisp=Math.max(this.ydisp-c,0),this.savedY=Math.max(this.savedY-c,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),s&&(this.y+=s),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(o=0;othis._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))},e.prototype._reflowLarger=function(e,t){var r=a.reflowLargerGetLinesToRemove(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(n.DEFAULT_ATTR_DATA));if(r.length>0){var i=a.reflowLargerCreateNewLayout(this.lines,r);a.reflowLargerApplyNewLayout(this.lines,i.layout),this._reflowLargerAdjustViewport(e,t,i.countRemoved)}},e.prototype._reflowLargerAdjustViewport=function(e,t,r){for(var i=this.getNullCell(n.DEFAULT_ATTR_DATA),o=r;o-- >0;)0===this.ybase?(this.y>0&&this.y--,this.lines.length=0;s--){var c=this.lines.get(s);if(!(!c||!c.isWrapped&&c.getTrimmedLength()<=e)){for(var l=[c];c.isWrapped&&s>0;)c=this.lines.get(--s),l.unshift(c);var h=this.ybase+this.y;if(!(h>=s&&h0&&(i.push({start:s+l.length+o,newLines:p}),o+=p.length),l.push.apply(l,p);var y=f.length-1,m=f[y];0===m&&(m=f[--y]);for(var b=l.length-d-1,C=_;b>=0;){var S=Math.min(C,m);if(l[y].copyCellsFrom(l[b],C-S,m-S,S,!0),0==(m-=S)&&(m=f[--y]),0==(C-=S)){b--;var w=Math.max(b,0);C=a.getWrappedLineTrimmedLength(l,w,this._cols)}}for(v=0;v0;)0===this.ybase?this.y0){var A=[],R=[];for(v=0;v=0;v--)if(T&&T.start>x+O){for(var D=T.newLines.length-1;D>=0;D--)this.lines.set(v--,T.newLines[D]);v++,A.push({index:x+1,amount:T.newLines.length}),O+=T.newLines.length,T=i[++k]}else this.lines.set(v,R[x--]);var P=0;for(v=A.length-1;v>=0;v--)A[v].index+=P,this.lines.onInsertEmitter.fire(A[v]),P+=A[v].amount;var M=Math.max(0,L+o-this.lines.maxLength);M>0&&this.lines.onTrimEmitter.fire(M)}},e.prototype.stringIndexToBufferIndex=function(e,t,r){for(void 0===r&&(r=!1);t;){var i=this.lines.get(e);if(!i)return[-1,-1];for(var n=r?i.getTrimmedLength():i.length,o=0;o0&&this.lines.get(t).isWrapped;)t--;for(;r+10;);return e>=this._cols?this._cols-1:e<0?0:e},e.prototype.nextStop=function(e){for(null==e&&(e=this.x);!this.tabs[++e]&&e=this._cols?this._cols-1:e<0?0:e},e.prototype.addMarker=function(e){var t=this,r=new c.Marker(e);return this.markers.push(r),r.register(this.lines.onTrim((function(e){r.line-=e,r.line<0&&r.dispose()}))),r.register(this.lines.onInsert((function(e){r.line>=e.index&&(r.line+=e.amount)}))),r.register(this.lines.onDelete((function(e){r.line>=e.index&&r.linee.index&&(r.line-=e.amount)}))),r.register(r.onDispose((function(){return t._removeMarker(r)}))),r},e.prototype._removeMarker=function(e){this.markers.splice(this.markers.indexOf(e),1)},e.prototype.iterator=function(e,t,r,i,n){return new _(this,e,t,r,i,n)},e}();t.Buffer=u;var _=function(){function e(e,t,r,i,n,o){void 0===r&&(r=0),void 0===i&&(i=e.lines.length),void 0===n&&(n=0),void 0===o&&(o=0),this._buffer=e,this._trimRight=t,this._startIndex=r,this._endIndex=i,this._startOverscan=n,this._endOverscan=o,this._startIndex<0&&(this._startIndex=0),this._endIndex>this._buffer.lines.length&&(this._endIndex=this._buffer.lines.length),this._current=this._startIndex}return e.prototype.hasNext=function(){return this._currentthis._endIndex+this._endOverscan&&(e.last=this._endIndex+this._endOverscan),e.first=Math.max(e.first,0),e.last=Math.min(e.last,this._buffer.lines.length);for(var t="",r=e.first;r<=e.last;++r)t+=this._buffer.translateBufferLineToString(r,this._trimRight);return this._current=e.last+1,{range:e,content:t}},e}();t.BufferStringIterator=_},8437:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.BufferLine=t.DEFAULT_ATTR_DATA=void 0;var i=r(482),n=r(643),o=r(511),s=r(3734);t.DEFAULT_ATTR_DATA=Object.freeze(new s.AttributeData);var a=function(){function e(e,t,r){void 0===r&&(r=!1),this.isWrapped=r,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(3*e);for(var i=t||o.CellData.fromCharData([0,n.NULL_CELL_CHAR,n.NULL_CELL_WIDTH,n.NULL_CELL_CODE]),s=0;s>22,2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):r]},e.prototype.set=function(e,t){this._data[3*e+1]=t[n.CHAR_DATA_ATTR_INDEX],t[n.CHAR_DATA_CHAR_INDEX].length>1?(this._combined[e]=t[1],this._data[3*e+0]=2097152|e|t[n.CHAR_DATA_WIDTH_INDEX]<<22):this._data[3*e+0]=t[n.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|t[n.CHAR_DATA_WIDTH_INDEX]<<22},e.prototype.getWidth=function(e){return this._data[3*e+0]>>22},e.prototype.hasWidth=function(e){return 12582912&this._data[3*e+0]},e.prototype.getFg=function(e){return this._data[3*e+1]},e.prototype.getBg=function(e){return this._data[3*e+2]},e.prototype.hasContent=function(e){return 4194303&this._data[3*e+0]},e.prototype.getCodePoint=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e].charCodeAt(this._combined[e].length-1):2097151&t},e.prototype.isCombined=function(e){return 2097152&this._data[3*e+0]},e.prototype.getString=function(e){var t=this._data[3*e+0];return 2097152&t?this._combined[e]:2097151&t?i.stringFromCodePoint(2097151&t):""},e.prototype.loadCell=function(e,t){var r=3*e;return t.content=this._data[r+0],t.fg=this._data[r+1],t.bg=this._data[r+2],2097152&t.content&&(t.combinedData=this._combined[e]),268435456&t.bg&&(t.extended=this._extendedAttrs[e]),t},e.prototype.setCell=function(e,t){2097152&t.content&&(this._combined[e]=t.combinedData),268435456&t.bg&&(this._extendedAttrs[e]=t.extended),this._data[3*e+0]=t.content,this._data[3*e+1]=t.fg,this._data[3*e+2]=t.bg},e.prototype.setCellFromCodePoint=function(e,t,r,i,n,o){268435456&n&&(this._extendedAttrs[e]=o),this._data[3*e+0]=t|r<<22,this._data[3*e+1]=i,this._data[3*e+2]=n},e.prototype.addCodepointToCell=function(e,t){var r=this._data[3*e+0];2097152&r?this._combined[e]+=i.stringFromCodePoint(t):(2097151&r?(this._combined[e]=i.stringFromCodePoint(2097151&r)+i.stringFromCodePoint(t),r&=-2097152,r|=2097152):r=t|1<<22,this._data[3*e+0]=r)},e.prototype.insertCells=function(e,t,r,i){if((e%=this.length)&&2===this.getWidth(e-1)&&this.setCellFromCodePoint(e-1,0,1,(null==i?void 0:i.fg)||0,(null==i?void 0:i.bg)||0,(null==i?void 0:i.extended)||new s.ExtendedAttrs),t=0;--a)this.setCell(e+t+a,this.loadCell(e+a,n));for(a=0;athis.length){var r=new Uint32Array(3*e);this.length&&(3*e=e&&delete this._combined[o]}}else this._data=new Uint32Array(0),this._combined={};this.length=e}},e.prototype.fill=function(e){this._combined={},this._extendedAttrs={};for(var t=0;t=0;--e)if(4194303&this._data[3*e+0])return e+(this._data[3*e+0]>>22);return 0},e.prototype.copyCellsFrom=function(e,t,r,i,n){var o=e._data;if(n)for(var s=i-1;s>=0;s--)for(var a=0;a<3;a++)this._data[3*(r+s)+a]=o[3*(t+s)+a];else for(s=0;s=t&&(this._combined[l-t+r]=e._combined[l])}},e.prototype.translateToString=function(e,t,r){void 0===e&&(e=!1),void 0===t&&(t=0),void 0===r&&(r=this.length),e&&(r=Math.min(r,this.getTrimmedLength()));for(var o="";t>22||1}return o},e}();t.BufferLine=a},4841:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.getRangeLength=void 0,t.getRangeLength=function(e,t){if(e.start.y===e.end.y)return e.end.x-e.start.x+1;if(e.start.y>e.end.y)throw new Error("Buffer range end ("+e.end.x+", "+e.end.y+") cannot be before start ("+e.start.x+", "+e.start.y+")");return t*(e.end.y-e.start.y-1)+t-e.start.x+e.end.x}},4634:(e,t)=>{function r(e,t,r){if(t===e.length-1)return e[t].getTrimmedLength();var i=!e[t].hasContent(r-1)&&1===e[t].getWidth(r-1),n=2===e[t+1].getWidth(0);return i&&n?r-1:r}Object.defineProperty(t,"__esModule",{value:!0}),t.getWrappedLineTrimmedLength=t.reflowSmallerGetNewLineLengths=t.reflowLargerApplyNewLayout=t.reflowLargerCreateNewLayout=t.reflowLargerGetLinesToRemove=void 0,t.reflowLargerGetLinesToRemove=function(e,t,i,n,o){for(var s=[],a=0;a=a&&n0&&(b>u||0===h[b].getTrimmedLength());b--)m++;m>0&&(s.push(a+h.length-m),s.push(m)),a+=h.length-1}}}return s},t.reflowLargerCreateNewLayout=function(e,t){for(var r=[],i=0,n=t[i],o=0,s=0;sl&&(s-=l,a++);var h=2===e[a].getWidth(s-1);h&&s--;var u=h?i-1:i;n.push(u),c+=u}return n},t.getWrappedLineTrimmedLength=r},5295:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.BufferSet=void 0;var o=r(9092),s=r(8460),a=function(e){function t(t,r){var i=e.call(this)||this;return i._optionsService=t,i._bufferService=r,i._onBufferActivate=i.register(new s.EventEmitter),i.reset(),i}return n(t,e),Object.defineProperty(t.prototype,"onBufferActivate",{get:function(){return this._onBufferActivate.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this._normal=new o.Buffer(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new o.Buffer(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this.setupTabStops()},Object.defineProperty(t.prototype,"alt",{get:function(){return this._alt},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"active",{get:function(){return this._activeBuffer},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"normal",{get:function(){return this._normal},enumerable:!1,configurable:!0}),t.prototype.activateNormalBuffer=function(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))},t.prototype.activateAltBuffer=function(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))},t.prototype.resize=function(e,t){this._normal.resize(e,t),this._alt.resize(e,t)},t.prototype.setupTabStops=function(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)},t}(r(844).Disposable);t.BufferSet=a},511:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.CellData=void 0;var o=r(482),s=r(643),a=r(3734),c=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.content=0,t.fg=0,t.bg=0,t.extended=new a.ExtendedAttrs,t.combinedData="",t}return n(t,e),t.fromCharData=function(e){var r=new t;return r.setFromCharData(e),r},t.prototype.isCombined=function(){return 2097152&this.content},t.prototype.getWidth=function(){return this.content>>22},t.prototype.getChars=function(){return 2097152&this.content?this.combinedData:2097151&this.content?o.stringFromCodePoint(2097151&this.content):""},t.prototype.getCode=function(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):2097151&this.content},t.prototype.setFromCharData=function(e){this.fg=e[s.CHAR_DATA_ATTR_INDEX],this.bg=0;var t=!1;if(e[s.CHAR_DATA_CHAR_INDEX].length>2)t=!0;else if(2===e[s.CHAR_DATA_CHAR_INDEX].length){var r=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0);if(55296<=r&&r<=56319){var i=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(1);56320<=i&&i<=57343?this.content=1024*(r-55296)+i-56320+65536|e[s.CHAR_DATA_WIDTH_INDEX]<<22:t=!0}else t=!0}else this.content=e[s.CHAR_DATA_CHAR_INDEX].charCodeAt(0)|e[s.CHAR_DATA_WIDTH_INDEX]<<22;t&&(this.combinedData=e[s.CHAR_DATA_CHAR_INDEX],this.content=2097152|e[s.CHAR_DATA_WIDTH_INDEX]<<22)},t.prototype.getAsCharData=function(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]},t}(a.AttributeData);t.CellData=c},643:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WHITESPACE_CELL_CODE=t.WHITESPACE_CELL_WIDTH=t.WHITESPACE_CELL_CHAR=t.NULL_CELL_CODE=t.NULL_CELL_WIDTH=t.NULL_CELL_CHAR=t.CHAR_DATA_CODE_INDEX=t.CHAR_DATA_WIDTH_INDEX=t.CHAR_DATA_CHAR_INDEX=t.CHAR_DATA_ATTR_INDEX=t.DEFAULT_ATTR=t.DEFAULT_COLOR=void 0,t.DEFAULT_COLOR=256,t.DEFAULT_ATTR=256|t.DEFAULT_COLOR<<9,t.CHAR_DATA_ATTR_INDEX=0,t.CHAR_DATA_CHAR_INDEX=1,t.CHAR_DATA_WIDTH_INDEX=2,t.CHAR_DATA_CODE_INDEX=3,t.NULL_CELL_CHAR="",t.NULL_CELL_WIDTH=1,t.NULL_CELL_CODE=0,t.WHITESPACE_CELL_CHAR=" ",t.WHITESPACE_CELL_WIDTH=1,t.WHITESPACE_CELL_CODE=32},4863:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.Marker=void 0;var o=r(8460),s=function(e){function t(r){var i=e.call(this)||this;return i.line=r,i._id=t._nextId++,i.isDisposed=!1,i._onDispose=new o.EventEmitter,i}return n(t,e),Object.defineProperty(t.prototype,"id",{get:function(){return this._id},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onDispose",{get:function(){return this._onDispose.event},enumerable:!1,configurable:!0}),t.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),e.prototype.dispose.call(this))},t._nextId=1,t}(r(844).Disposable);t.Marker=s},7116:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DEFAULT_CHARSET=t.CHARSETS=void 0,t.CHARSETS={},t.DEFAULT_CHARSET=t.CHARSETS.B,t.CHARSETS[0]={"`":"◆",a:"▒",b:"␉",c:"␌",d:"␍",e:"␊",f:"°",g:"±",h:"␤",i:"␋",j:"┘",k:"┐",l:"┌",m:"└",n:"┼",o:"⎺",p:"⎻",q:"─",r:"⎼",s:"⎽",t:"├",u:"┤",v:"┴",w:"┬",x:"│",y:"≤",z:"≥","{":"π","|":"≠","}":"£","~":"·"},t.CHARSETS.A={"#":"£"},t.CHARSETS.B=void 0,t.CHARSETS[4]={"#":"£","@":"¾","[":"ij","\\":"½","]":"|","{":"¨","|":"f","}":"¼","~":"´"},t.CHARSETS.C=t.CHARSETS[5]={"[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS.R={"#":"£","@":"à","[":"°","\\":"ç","]":"§","{":"é","|":"ù","}":"è","~":"¨"},t.CHARSETS.Q={"@":"à","[":"â","\\":"ç","]":"ê","^":"î","`":"ô","{":"é","|":"ù","}":"è","~":"û"},t.CHARSETS.K={"@":"§","[":"Ä","\\":"Ö","]":"Ü","{":"ä","|":"ö","}":"ü","~":"ß"},t.CHARSETS.Y={"#":"£","@":"§","[":"°","\\":"ç","]":"é","`":"ù","{":"à","|":"ò","}":"è","~":"ì"},t.CHARSETS.E=t.CHARSETS[6]={"@":"Ä","[":"Æ","\\":"Ø","]":"Å","^":"Ü","`":"ä","{":"æ","|":"ø","}":"å","~":"ü"},t.CHARSETS.Z={"#":"£","@":"§","[":"¡","\\":"Ñ","]":"¿","{":"°","|":"ñ","}":"ç"},t.CHARSETS.H=t.CHARSETS[7]={"@":"É","[":"Ä","\\":"Ö","]":"Å","^":"Ü","`":"é","{":"ä","|":"ö","}":"å","~":"ü"},t.CHARSETS["="]={"#":"ù","@":"à","[":"é","\\":"ç","]":"ê","^":"î",_:"è","`":"ô","{":"ä","|":"ö","}":"ü","~":"û"}},2584:(e,t)=>{var r,i;Object.defineProperty(t,"__esModule",{value:!0}),t.C1=t.C0=void 0,(i=t.C0||(t.C0={})).NUL="\0",i.SOH="",i.STX="",i.ETX="",i.EOT="",i.ENQ="",i.ACK="",i.BEL="",i.BS="\b",i.HT="\t",i.LF="\n",i.VT="\v",i.FF="\f",i.CR="\r",i.SO="",i.SI="",i.DLE="",i.DC1="",i.DC2="",i.DC3="",i.DC4="",i.NAK="",i.SYN="",i.ETB="",i.CAN="",i.EM="",i.SUB="",i.ESC="",i.FS="",i.GS="",i.RS="",i.US="",i.SP=" ",i.DEL="",(r=t.C1||(t.C1={})).PAD="€",r.HOP="",r.BPH="‚",r.NBH="ƒ",r.IND="„",r.NEL="…",r.SSA="†",r.ESA="‡",r.HTS="ˆ",r.HTJ="‰",r.VTS="Š",r.PLD="‹",r.PLU="Œ",r.RI="",r.SS2="Ž",r.SS3="",r.DCS="",r.PU1="‘",r.PU2="’",r.STS="“",r.CCH="”",r.MW="•",r.SPA="–",r.EPA="—",r.SOS="˜",r.SGCI="™",r.SCI="š",r.CSI="›",r.ST="œ",r.OSC="",r.PM="ž",r.APC="Ÿ"},7399:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.evaluateKeyboardEvent=void 0;var i=r(2584),n={48:["0",")"],49:["1","!"],50:["2","@"],51:["3","#"],52:["4","$"],53:["5","%"],54:["6","^"],55:["7","&"],56:["8","*"],57:["9","("],186:[";",":"],187:["=","+"],188:[",","<"],189:["-","_"],190:[".",">"],191:["/","?"],192:["`","~"],219:["[","{"],220:["\\","|"],221:["]","}"],222:["'",'"']};t.evaluateKeyboardEvent=function(e,t,r,o){var s={type:0,cancel:!1,key:void 0},a=(e.shiftKey?1:0)|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:"UIKeyInputUpArrow"===e.key?s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A":"UIKeyInputLeftArrow"===e.key?s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D":"UIKeyInputRightArrow"===e.key?s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C":"UIKeyInputDownArrow"===e.key&&(s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B");break;case 8:if(e.shiftKey){s.key=i.C0.BS;break}if(e.altKey){s.key=i.C0.ESC+i.C0.DEL;break}s.key=i.C0.DEL;break;case 9:if(e.shiftKey){s.key=i.C0.ESC+"[Z";break}s.key=i.C0.HT,s.cancel=!0;break;case 13:s.key=e.altKey?i.C0.ESC+i.C0.CR:i.C0.CR,s.cancel=!0;break;case 27:s.key=i.C0.ESC,e.altKey&&(s.key=i.C0.ESC+i.C0.ESC),s.cancel=!0;break;case 37:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"D",s.key===i.C0.ESC+"[1;3D"&&(s.key=i.C0.ESC+(r?"b":"[1;5D"))):s.key=t?i.C0.ESC+"OD":i.C0.ESC+"[D";break;case 39:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"C",s.key===i.C0.ESC+"[1;3C"&&(s.key=i.C0.ESC+(r?"f":"[1;5C"))):s.key=t?i.C0.ESC+"OC":i.C0.ESC+"[C";break;case 38:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"A",r||s.key!==i.C0.ESC+"[1;3A"||(s.key=i.C0.ESC+"[1;5A")):s.key=t?i.C0.ESC+"OA":i.C0.ESC+"[A";break;case 40:if(e.metaKey)break;a?(s.key=i.C0.ESC+"[1;"+(a+1)+"B",r||s.key!==i.C0.ESC+"[1;3B"||(s.key=i.C0.ESC+"[1;5B")):s.key=t?i.C0.ESC+"OB":i.C0.ESC+"[B";break;case 45:e.shiftKey||e.ctrlKey||(s.key=i.C0.ESC+"[2~");break;case 46:s.key=a?i.C0.ESC+"[3;"+(a+1)+"~":i.C0.ESC+"[3~";break;case 36:s.key=a?i.C0.ESC+"[1;"+(a+1)+"H":t?i.C0.ESC+"OH":i.C0.ESC+"[H";break;case 35:s.key=a?i.C0.ESC+"[1;"+(a+1)+"F":t?i.C0.ESC+"OF":i.C0.ESC+"[F";break;case 33:e.shiftKey?s.type=2:s.key=i.C0.ESC+"[5~";break;case 34:e.shiftKey?s.type=3:s.key=i.C0.ESC+"[6~";break;case 112:s.key=a?i.C0.ESC+"[1;"+(a+1)+"P":i.C0.ESC+"OP";break;case 113:s.key=a?i.C0.ESC+"[1;"+(a+1)+"Q":i.C0.ESC+"OQ";break;case 114:s.key=a?i.C0.ESC+"[1;"+(a+1)+"R":i.C0.ESC+"OR";break;case 115:s.key=a?i.C0.ESC+"[1;"+(a+1)+"S":i.C0.ESC+"OS";break;case 116:s.key=a?i.C0.ESC+"[15;"+(a+1)+"~":i.C0.ESC+"[15~";break;case 117:s.key=a?i.C0.ESC+"[17;"+(a+1)+"~":i.C0.ESC+"[17~";break;case 118:s.key=a?i.C0.ESC+"[18;"+(a+1)+"~":i.C0.ESC+"[18~";break;case 119:s.key=a?i.C0.ESC+"[19;"+(a+1)+"~":i.C0.ESC+"[19~";break;case 120:s.key=a?i.C0.ESC+"[20;"+(a+1)+"~":i.C0.ESC+"[20~";break;case 121:s.key=a?i.C0.ESC+"[21;"+(a+1)+"~":i.C0.ESC+"[21~";break;case 122:s.key=a?i.C0.ESC+"[23;"+(a+1)+"~":i.C0.ESC+"[23~";break;case 123:s.key=a?i.C0.ESC+"[24;"+(a+1)+"~":i.C0.ESC+"[24~";break;default:if(!e.ctrlKey||e.shiftKey||e.altKey||e.metaKey)if(r&&!o||!e.altKey||e.metaKey)!r||e.altKey||e.ctrlKey||e.shiftKey||!e.metaKey?e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&1===e.key.length?s.key=e.key:e.key&&e.ctrlKey&&"_"===e.key&&(s.key=i.C0.US):65===e.keyCode&&(s.type=1);else{var c=n[e.keyCode],l=c&&c[e.shiftKey?1:0];if(l)s.key=i.C0.ESC+l;else if(e.keyCode>=65&&e.keyCode<=90){var h=e.ctrlKey?e.keyCode-64:e.keyCode+32;s.key=i.C0.ESC+String.fromCharCode(h)}}else e.keyCode>=65&&e.keyCode<=90?s.key=String.fromCharCode(e.keyCode-64):32===e.keyCode?s.key=i.C0.NUL:e.keyCode>=51&&e.keyCode<=55?s.key=String.fromCharCode(e.keyCode-51+27):56===e.keyCode?s.key=i.C0.DEL:219===e.keyCode?s.key=i.C0.ESC:220===e.keyCode?s.key=i.C0.FS:221===e.keyCode&&(s.key=i.C0.GS)}return s}},482:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Utf8ToUtf32=t.StringToUtf32=t.utf32ToString=t.stringFromCodePoint=void 0,t.stringFromCodePoint=function(e){return e>65535?(e-=65536,String.fromCharCode(55296+(e>>10))+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)},t.utf32ToString=function(e,t,r){void 0===t&&(t=0),void 0===r&&(r=e.length);for(var i="",n=t;n65535?(o-=65536,i+=String.fromCharCode(55296+(o>>10))+String.fromCharCode(o%1024+56320)):i+=String.fromCharCode(o)}return i};var r=function(){function e(){this._interim=0}return e.prototype.clear=function(){this._interim=0},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i=0,n=0;this._interim&&(56320<=(a=e.charCodeAt(n++))&&a<=57343?t[i++]=1024*(this._interim-55296)+a-56320+65536:(t[i++]=this._interim,t[i++]=a),this._interim=0);for(var o=n;o=r)return this._interim=s,i;var a;56320<=(a=e.charCodeAt(o))&&a<=57343?t[i++]=1024*(s-55296)+a-56320+65536:(t[i++]=s,t[i++]=a)}else 65279!==s&&(t[i++]=s)}return i},e}();t.StringToUtf32=r;var i=function(){function e(){this.interim=new Uint8Array(3)}return e.prototype.clear=function(){this.interim.fill(0)},e.prototype.decode=function(e,t){var r=e.length;if(!r)return 0;var i,n,o,s,a=0,c=0,l=0;if(this.interim[0]){var h=!1,u=this.interim[0];u&=192==(224&u)?31:224==(240&u)?15:7;for(var _=0,f=void 0;(f=63&this.interim[++_])&&_<4;)u<<=6,u|=f;for(var d=192==(224&this.interim[0])?2:224==(240&this.interim[0])?3:4,p=d-_;l=r)return 0;if(128!=(192&(f=e[l++]))){l--,h=!0;break}this.interim[_++]=f,u<<=6,u|=63&f}h||(2===d?u<128?l--:t[a++]=u:3===d?u<2048||u>=55296&&u<=57343||65279===u||(t[a++]=u):u<65536||u>1114111||(t[a++]=u)),this.interim.fill(0)}for(var v=r-4,g=l;g=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if((c=(31&i)<<6|63&n)<128){g--;continue}t[a++]=c}else if(224==(240&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if((c=(15&i)<<12|(63&n)<<6|63&o)<2048||c>=55296&&c<=57343||65279===c)continue;t[a++]=c}else if(240==(248&i)){if(g>=r)return this.interim[0]=i,a;if(128!=(192&(n=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,a;if(128!=(192&(o=e[g++]))){g--;continue}if(g>=r)return this.interim[0]=i,this.interim[1]=n,this.interim[2]=o,a;if(128!=(192&(s=e[g++]))){g--;continue}if((c=(7&i)<<18|(63&n)<<12|(63&o)<<6|63&s)<65536||c>1114111)continue;t[a++]=c}}return a},e}();t.Utf8ToUtf32=i},225:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeV6=void 0;var i,n=r(8273),o=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],s=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],a=function(){function e(){if(this.version="6",!i){i=new Uint8Array(65536),n.fill(i,1),i[0]=0,n.fill(i,0,1,32),n.fill(i,0,127,160),n.fill(i,2,4352,4448),i[9001]=2,i[9002]=2,n.fill(i,2,11904,42192),i[12351]=1,n.fill(i,2,44032,55204),n.fill(i,2,63744,64256),n.fill(i,2,65040,65050),n.fill(i,2,65072,65136),n.fill(i,2,65280,65377),n.fill(i,2,65504,65511);for(var e=0;et[n][1])return!1;for(;n>=i;)if(e>t[r=i+n>>1][1])i=r+1;else{if(!(e=131072&&e<=196605||e>=196608&&e<=262141?2:1},e}();t.UnicodeV6=a},5981:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.WriteBuffer=void 0;var r="undefined"==typeof queueMicrotask?function(e){Promise.resolve().then(e)}:queueMicrotask,i=function(){function e(e){this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0}return e.prototype.writeSync=function(e,t){if(void 0!==t&&this._syncCalls>t)this._syncCalls=0;else if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,!this._isSyncWriting){var r;for(this._isSyncWriting=!0;r=this._writeBuffer.shift();){this._action(r);var i=this._callbacks.shift();i&&i()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}},e.prototype.write=function(e,t){var r=this;if(this._pendingData>5e7)throw new Error("write data discarded, use flow control to avoid losing data");this._writeBuffer.length||(this._bufferOffset=0,setTimeout((function(){return r._innerWrite()}))),this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)},e.prototype._innerWrite=function(e,t){var i=this;void 0===e&&(e=0),void 0===t&&(t=!0);for(var n=e||Date.now();this._writeBuffer.length>this._bufferOffset;){var o=this._writeBuffer[this._bufferOffset],s=this._action(o,t);if(s)return void s.catch((function(e){return r((function(){throw e})),Promise.resolve(!1)})).then((function(e){return Date.now()-n>=12?setTimeout((function(){return i._innerWrite(0,e)})):i._innerWrite(n,e)}));var a=this._callbacks[this._bufferOffset];if(a&&a(),this._bufferOffset++,this._pendingData-=o.length,Date.now()-n>=12)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>50&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout((function(){return i._innerWrite()}))):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0)},e}();t.WriteBuffer=i},5770:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.PAYLOAD_LIMIT=void 0,t.PAYLOAD_LIMIT=1e7},6351:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.DcsHandler=t.DcsParser=void 0;var i=r(482),n=r(8742),o=r(5770),s=[],a=function(){function e(){this._handlers=Object.create(null),this._active=s,this._ident=0,this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=s},e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.reset=function(){if(this._active.length)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=s,this._ident=0},e.prototype.hook=function(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||s,this._active.length)for(var r=this._active.length-1;r>=0;r--)this._active[r].hook(t);else this._handlerFb(this._ident,"HOOK",t)},e.prototype.put=function(e,t,r){if(this._active.length)for(var n=this._active.length-1;n>=0;n--)this._active[n].put(e,t,r);else this._handlerFb(this._ident,"PUT",i.utf32ToString(e,t,r))},e.prototype.unhook=function(e,t){if(void 0===t&&(t=!0),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].unhook(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].unhook(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._ident,"UNHOOK",e);this._active=s,this._ident=0},e}();t.DcsParser=a;var c=new n.Params;c.addParam(0);var l=function(){function e(e){this._handler=e,this._data="",this._params=c,this._hitLimit=!1}return e.prototype.hook=function(e){this._params=e.length>1||e.params[0]?e.clone():c,this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=i.utf32ToString(e,t,r),this._data.length>o.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.unhook=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data,this._params))instanceof Promise)return r.then((function(e){return t._params=c,t._data="",t._hitLimit=!1,e}));return this._params=c,this._data="",this._hitLimit=!1,r},e}();t.DcsHandler=l},2015:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,"__esModule",{value:!0}),t.EscapeSequenceParser=t.VT500_TRANSITION_TABLE=t.TransitionTable=void 0;var o=r(844),s=r(8273),a=r(8742),c=r(6242),l=r(6351),h=function(){function e(e){this.table=new Uint8Array(e)}return e.prototype.setDefault=function(e,t){s.fill(this.table,e<<4|t)},e.prototype.add=function(e,t,r,i){this.table[t<<8|e]=r<<4|i},e.prototype.addMany=function(e,t,r,i){for(var n=0;n1)throw new Error("only one byte as prefix supported");if((r=e.prefix.charCodeAt(0))&&60>r||r>63)throw new Error("prefix must be in range 0x3c .. 0x3f")}if(e.intermediates){if(e.intermediates.length>2)throw new Error("only two bytes as intermediates are supported");for(var i=0;in||n>47)throw new Error("intermediate must be in range 0x20 .. 0x2f");r<<=8,r|=n}}if(1!==e.final.length)throw new Error("final must be a single byte");var o=e.final.charCodeAt(0);if(t[0]>o||o>t[1])throw new Error("final must be in range "+t[0]+" .. "+t[1]);return(r<<=8)|o},r.prototype.identToString=function(e){for(var t=[];e;)t.push(String.fromCharCode(255&e)),e>>=8;return t.reverse().join("")},r.prototype.dispose=function(){this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null),this._oscParser.dispose(),this._dcsParser.dispose()},r.prototype.setPrintHandler=function(e){this._printHandler=e},r.prototype.clearPrintHandler=function(){this._printHandler=this._printHandlerFb},r.prototype.registerEscHandler=function(e,t){var r=this._identifier(e,[48,126]);void 0===this._escHandlers[r]&&(this._escHandlers[r]=[]);var i=this._escHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearEscHandler=function(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]},r.prototype.setEscHandlerFallback=function(e){this._escHandlerFb=e},r.prototype.setExecuteHandler=function(e,t){this._executeHandlers[e.charCodeAt(0)]=t},r.prototype.clearExecuteHandler=function(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]},r.prototype.setExecuteHandlerFallback=function(e){this._executeHandlerFb=e},r.prototype.registerCsiHandler=function(e,t){var r=this._identifier(e);void 0===this._csiHandlers[r]&&(this._csiHandlers[r]=[]);var i=this._csiHandlers[r];return i.push(t),{dispose:function(){var e=i.indexOf(t);-1!==e&&i.splice(e,1)}}},r.prototype.clearCsiHandler=function(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]},r.prototype.setCsiHandlerFallback=function(e){this._csiHandlerFb=e},r.prototype.registerDcsHandler=function(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)},r.prototype.clearDcsHandler=function(e){this._dcsParser.clearHandler(this._identifier(e))},r.prototype.setDcsHandlerFallback=function(e){this._dcsParser.setHandlerFallback(e)},r.prototype.registerOscHandler=function(e,t){return this._oscParser.registerHandler(e,t)},r.prototype.clearOscHandler=function(e){this._oscParser.clearHandler(e)},r.prototype.setOscHandlerFallback=function(e){this._oscParser.setHandlerFallback(e)},r.prototype.setErrorHandler=function(e){this._errorHandler=e},r.prototype.clearErrorHandler=function(){this._errorHandler=this._errorHandlerFb},r.prototype.reset=function(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingCodepoint=0,0!==this._parseStack.state&&(this._parseStack.state=2,this._parseStack.handlers=[])},r.prototype._preserveStack=function(e,t,r,i,n){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=r,this._parseStack.transition=i,this._parseStack.chunkPos=n},r.prototype.parse=function(e,t,r){var i,n=0,o=0,s=0;if(this._parseStack.state)if(2===this._parseStack.state)this._parseStack.state=0,s=this._parseStack.chunkPos+1;else{if(void 0===r||1===this._parseStack.state)throw this._parseStack.state=1,new Error("improper continuation due to previous async handler, giving up parsing");var a=this._parseStack.handlers,c=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c](this._params));c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 4:if(!1===r&&c>-1)for(;c>=0&&!0!==(i=a[c]());c--)if(i instanceof Promise)return this._parseStack.handlerPos=c,i;this._parseStack.handlers=[];break;case 6:if(n=e[this._parseStack.chunkPos],i=this._dcsParser.unhook(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(n=e[this._parseStack.chunkPos],i=this._oscParser.end(24!==n&&26!==n,r))return i;27===n&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,s=this._parseStack.chunkPos+1,this.precedingCodepoint=0,this.currentState=15&this._parseStack.transition}for(var l=s;l>4){case 2:for(var h=l+1;;++h){if(h>=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=t||(n=e[h])<32||n>126&&n=0&&!0!==(i=a[_](this._params));_--)if(i instanceof Promise)return this._preserveStack(3,a,_,o,l),i;_<0&&this._csiHandlerFb(this._collect<<8|n,this._params),this.precedingCodepoint=0;break;case 8:do{switch(n){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(n-48)}}while(++l47&&n<60);l--;break;case 9:this._collect<<=8,this._collect|=n;break;case 10:for(var f=this._escHandlers[this._collect<<8|n],d=f?f.length-1:-1;d>=0&&!0!==(i=f[d]());d--)if(i instanceof Promise)return this._preserveStack(4,f,d,o,l),i;d<0&&this._escHandlerFb(this._collect<<8|n),this.precedingCodepoint=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|n,this._params);break;case 13:for(var p=l+1;;++p)if(p>=t||24===(n=e[p])||26===n||27===n||n>127&&n=t||(n=e[v])<32||n>127&&n{Object.defineProperty(t,"__esModule",{value:!0}),t.OscHandler=t.OscParser=void 0;var i=r(5770),n=r(482),o=[],s=function(){function e(){this._state=0,this._active=o,this._id=-1,this._handlers=Object.create(null),this._handlerFb=function(){},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}return e.prototype.registerHandler=function(e,t){void 0===this._handlers[e]&&(this._handlers[e]=[]);var r=this._handlers[e];return r.push(t),{dispose:function(){var e=r.indexOf(t);-1!==e&&r.splice(e,1)}}},e.prototype.clearHandler=function(e){this._handlers[e]&&delete this._handlers[e]},e.prototype.setHandlerFallback=function(e){this._handlerFb=e},e.prototype.dispose=function(){this._handlers=Object.create(null),this._handlerFb=function(){},this._active=o},e.prototype.reset=function(){if(2===this._state)for(var e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=o,this._id=-1,this._state=0},e.prototype._start=function(){if(this._active=this._handlers[this._id]||o,this._active.length)for(var e=this._active.length-1;e>=0;e--)this._active[e].start();else this._handlerFb(this._id,"START")},e.prototype._put=function(e,t,r){if(this._active.length)for(var i=this._active.length-1;i>=0;i--)this._active[i].put(e,t,r);else this._handlerFb(this._id,"PUT",n.utf32ToString(e,t,r))},e.prototype.start=function(){this.reset(),this._state=1},e.prototype.put=function(e,t,r){if(3!==this._state){if(1===this._state)for(;t0&&this._put(e,t,r)}},e.prototype.end=function(e,t){if(void 0===t&&(t=!0),0!==this._state){if(3!==this._state)if(1===this._state&&this._start(),this._active.length){var r=!1,i=this._active.length-1,n=!1;if(this._stack.paused&&(i=this._stack.loopPosition-1,r=t,n=this._stack.fallThrough,this._stack.paused=!1),!n&&!1===r){for(;i>=0&&!0!==(r=this._active[i].end(e));i--)if(r instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!1,r;i--}for(;i>=0;i--)if((r=this._active[i].end(!1))instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=i,this._stack.fallThrough=!0,r}else this._handlerFb(this._id,"END",e);this._active=o,this._id=-1,this._state=0}},e}();t.OscParser=s;var a=function(){function e(e){this._handler=e,this._data="",this._hitLimit=!1}return e.prototype.start=function(){this._data="",this._hitLimit=!1},e.prototype.put=function(e,t,r){this._hitLimit||(this._data+=n.utf32ToString(e,t,r),this._data.length>i.PAYLOAD_LIMIT&&(this._data="",this._hitLimit=!0))},e.prototype.end=function(e){var t=this,r=!1;if(this._hitLimit)r=!1;else if(e&&(r=this._handler(this._data))instanceof Promise)return r.then((function(e){return t._data="",t._hitLimit=!1,e}));return this._data="",this._hitLimit=!1,r},e}();t.OscHandler=a},8742:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.Params=void 0;var r=2147483647,i=function(){function e(e,t){if(void 0===e&&(e=32),void 0===t&&(t=32),this.maxLength=e,this.maxSubParamsLength=t,t>256)throw new Error("maxSubParamsLength must not be greater than 256");this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}return e.fromArray=function(t){var r=new e;if(!t.length)return r;for(var i=t[0]instanceof Array?1:0;i>8,i=255&this._subParamsIdx[t];i-r>0&&e.push(Array.prototype.slice.call(this._subParams,r,i))}return e},e.prototype.reset=function(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1},e.prototype.addParam=function(e){if(this._digitIsSub=!1,this.length>=this.maxLength)this._rejectDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>r?r:e}},e.prototype.addSubParam=function(e){if(this._digitIsSub=!0,this.length)if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength)this._rejectSubDigits=!0;else{if(e<-1)throw new Error("values lesser than -1 are not allowed");this._subParams[this._subParamsLength++]=e>r?r:e,this._subParamsIdx[this.length-1]++}},e.prototype.hasSubParams=function(e){return(255&this._subParamsIdx[e])-(this._subParamsIdx[e]>>8)>0},e.prototype.getSubParams=function(e){var t=this._subParamsIdx[e]>>8,r=255&this._subParamsIdx[e];return r-t>0?this._subParams.subarray(t,r):null},e.prototype.getSubParamsAll=function(){for(var e={},t=0;t>8,i=255&this._subParamsIdx[t];i-r>0&&(e[t]=this._subParams.slice(r,i))}return e},e.prototype.addDigit=function(e){var t;if(!(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)){var i=this._digitIsSub?this._subParams:this.params,n=i[t-1];i[t-1]=~n?Math.min(10*n+e,r):e}},e}();t.Params=i},744:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.BufferService=t.MINIMUM_ROWS=t.MINIMUM_COLS=void 0;var a=r(2585),c=r(5295),l=r(8460),h=r(844);t.MINIMUM_COLS=2,t.MINIMUM_ROWS=1;var u=function(e){function r(r){var i=e.call(this)||this;return i._optionsService=r,i.isUserScrolling=!1,i._onResize=new l.EventEmitter,i._onScroll=new l.EventEmitter,i.cols=Math.max(r.options.cols,t.MINIMUM_COLS),i.rows=Math.max(r.options.rows,t.MINIMUM_ROWS),i.buffers=new c.BufferSet(r,i),i}return n(r,e),Object.defineProperty(r.prototype,"onResize",{get:function(){return this._onResize.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"onScroll",{get:function(){return this._onScroll.event},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"buffer",{get:function(){return this.buffers.active},enumerable:!1,configurable:!0}),r.prototype.dispose=function(){e.prototype.dispose.call(this),this.buffers.dispose()},r.prototype.resize=function(e,t){this.cols=e,this.rows=t,this.buffers.resize(e,t),this.buffers.setupTabStops(this.cols),this._onResize.fire({cols:e,rows:t})},r.prototype.reset=function(){this.buffers.reset(),this.isUserScrolling=!1},r.prototype.scroll=function(e,t){void 0===t&&(t=!1);var r,i=this.buffer;(r=this._cachedBlankLine)&&r.length===this.cols&&r.getFg(0)===e.fg&&r.getBg(0)===e.bg||(r=i.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;var n=i.ybase+i.scrollTop,o=i.ybase+i.scrollBottom;if(0===i.scrollTop){var s=i.lines.isFull;o===i.lines.length-1?s?i.lines.recycle().copyFrom(r):i.lines.push(r.clone()):i.lines.splice(o+1,0,r.clone()),s?this.isUserScrolling&&(i.ydisp=Math.max(i.ydisp-1,0)):(i.ybase++,this.isUserScrolling||i.ydisp++)}else{var a=o-n+1;i.lines.shiftElements(n+1,a-1,-1),i.lines.set(o,r.clone())}this.isUserScrolling||(i.ydisp=i.ybase),this._onScroll.fire(i.ydisp)},r.prototype.scrollLines=function(e,t,r){var i=this.buffer;if(e<0){if(0===i.ydisp)return;this.isUserScrolling=!0}else e+i.ydisp>=i.ybase&&(this.isUserScrolling=!1);var n=i.ydisp;i.ydisp=Math.max(Math.min(i.ydisp+e,i.ybase),0),n!==i.ydisp&&(t||this._onScroll.fire(i.ydisp))},r.prototype.scrollPages=function(e){this.scrollLines(e*(this.rows-1))},r.prototype.scrollToTop=function(){this.scrollLines(-this.buffer.ydisp)},r.prototype.scrollToBottom=function(){this.scrollLines(this.buffer.ybase-this.buffer.ydisp)},r.prototype.scrollToLine=function(e){var t=e-this.buffer.ydisp;0!==t&&this.scrollLines(t)},o([s(0,a.IOptionsService)],r)}(h.Disposable);t.BufferService=u},7994:(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.CharsetService=void 0;var r=function(){function e(){this.glevel=0,this._charsets=[]}return e.prototype.reset=function(){this.charset=void 0,this._charsets=[],this.glevel=0},e.prototype.setgLevel=function(e){this.glevel=e,this.charset=this._charsets[e]},e.prototype.setgCharset=function(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)},e}();t.CharsetService=r},1753:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreMouseService=void 0;var o=r(2585),s=r(8460),a={NONE:{events:0,restrict:function(){return!1}},X10:{events:1,restrict:function(e){return 4!==e.button&&1===e.action&&(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)}},VT200:{events:19,restrict:function(e){return 32!==e.action}},DRAG:{events:23,restrict:function(e){return 32!==e.action||3!==e.button}},ANY:{events:31,restrict:function(e){return!0}}};function c(e,t){var r=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return 4===e.button?(r|=64,r|=e.action):(r|=3&e.button,4&e.button&&(r|=64),8&e.button&&(r|=128),32===e.action?r|=32:0!==e.action||t||(r|=3)),r}var l=String.fromCharCode,h={DEFAULT:function(e){var t=[c(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?"":""+l(t[0])+l(t[1])+l(t[2])},SGR:function(e){var t=0===e.action&&4!==e.button?"m":"M";return"[<"+c(e,!0)+";"+e.col+";"+e.row+t}},u=function(){function e(e,t){this._bufferService=e,this._coreService=t,this._protocols={},this._encodings={},this._activeProtocol="",this._activeEncoding="",this._onProtocolChange=new s.EventEmitter,this._lastEvent=null;for(var r=0,i=Object.keys(a);r=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows)return!1;if(4===e.button&&32===e.action)return!1;if(3===e.button&&32!==e.action)return!1;if(4!==e.button&&(2===e.action||3===e.action))return!1;if(e.col++,e.row++,32===e.action&&this._lastEvent&&this._compareEvents(this._lastEvent,e))return!1;if(!this._protocols[this._activeProtocol].restrict(e))return!1;var t=this._encodings[this._activeEncoding](e);return t&&("DEFAULT"===this._activeEncoding?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0},e.prototype.explainEvents=function(e){return{down:!!(1&e),up:!!(2&e),drag:!!(4&e),move:!!(8&e),wheel:!!(16&e)}},e.prototype._compareEvents=function(e,t){return e.col===t.col&&e.row===t.row&&e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift},i([n(0,o.IBufferService),n(1,o.ICoreService)],e)}();t.CoreMouseService=u},6975:function(e,t,r){var i,n=this&&this.__extends||(i=function(e,t){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},s=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.CoreService=void 0;var a=r(2585),c=r(8460),l=r(1439),h=r(844),u=Object.freeze({insertMode:!1}),_=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,origin:!1,reverseWraparound:!1,sendFocus:!1,wraparound:!0}),f=function(e){function t(t,r,i,n){var o=e.call(this)||this;return o._bufferService=r,o._logService=i,o._optionsService=n,o.isCursorInitialized=!1,o.isCursorHidden=!1,o._onData=o.register(new c.EventEmitter),o._onUserInput=o.register(new c.EventEmitter),o._onBinary=o.register(new c.EventEmitter),o._scrollToBottom=t,o.register({dispose:function(){return o._scrollToBottom=void 0}}),o.modes=l.clone(u),o.decPrivateModes=l.clone(_),o}return n(t,e),Object.defineProperty(t.prototype,"onData",{get:function(){return this._onData.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onUserInput",{get:function(){return this._onUserInput.event},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,"onBinary",{get:function(){return this._onBinary.event},enumerable:!1,configurable:!0}),t.prototype.reset=function(){this.modes=l.clone(u),this.decPrivateModes=l.clone(_)},t.prototype.triggerDataEvent=function(e,t){if(void 0===t&&(t=!1),!this._optionsService.options.disableStdin){var r=this._bufferService.buffer;r.ybase!==r.ydisp&&this._scrollToBottom(),t&&this._onUserInput.fire(),this._logService.debug('sending data "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onData.fire(e)}},t.prototype.triggerBinaryEvent=function(e){this._optionsService.options.disableStdin||(this._logService.debug('sending binary "'+e+'"',(function(){return e.split("").map((function(e){return e.charCodeAt(0)}))})),this._onBinary.fire(e))},o([s(1,a.IBufferService),s(2,a.ILogService),s(3,a.IOptionsService)],t)}(h.Disposable);t.CoreService=f},3730:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}};Object.defineProperty(t,"__esModule",{value:!0}),t.DirtyRowService=void 0;var o=r(2585),s=function(){function e(e){this._bufferService=e,this.clearRange()}return Object.defineProperty(e.prototype,"start",{get:function(){return this._start},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"end",{get:function(){return this._end},enumerable:!1,configurable:!0}),e.prototype.clearRange=function(){this._start=this._bufferService.buffer.y,this._end=this._bufferService.buffer.y},e.prototype.markDirty=function(e){ethis._end&&(this._end=e)},e.prototype.markRangeDirty=function(e,t){if(e>t){var r=e;e=t,t=r}ethis._end&&(this._end=t)},e.prototype.markAllDirty=function(){this.markRangeDirty(0,this._bufferService.rows-1)},i([n(0,o.IBufferService)],e)}();t.DirtyRowService=s},4348:function(e,t,r){var i=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t0?n[0].index:t.length;if(t.length!==u)throw new Error("[createInstance] First service dependency of "+e.name+" at position "+(u+1)+" conflicts with "+t.length+" static arguments");return new(e.bind.apply(e,i([void 0],i(t,s))))},e}();t.InstantiationService=a},7866:function(e,t,r){var i=this&&this.__decorate||function(e,t,r,i){var n,o=arguments.length,s=o<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(n=e[a])&&(s=(o<3?n(s):o>3?n(t,r,s):n(t,r))||s);return o>3&&s&&Object.defineProperty(t,r,s),s},n=this&&this.__param||function(e,t){return function(r,i){t(r,i,e)}},o=this&&this.__spreadArrays||function(){for(var e=0,t=0,r=arguments.length;t{Object.defineProperty(t,"__esModule",{value:!0}),t.OptionsService=t.DEFAULT_OPTIONS=t.DEFAULT_BELL_SOUND=void 0;var i=r(8460),n=r(6114),o=r(1439);t.DEFAULT_BELL_SOUND="data:audio/mp3;base64,SUQzBAAAAAAAI1RTU0UAAAAPAAADTGF2ZjU4LjMyLjEwNAAAAAAAAAAAAAAA//tQxAADB8AhSmxhIIEVCSiJrDCQBTcu3UrAIwUdkRgQbFAZC1CQEwTJ9mjRvBA4UOLD8nKVOWfh+UlK3z/177OXrfOdKl7pyn3Xf//WreyTRUoAWgBgkOAGbZHBgG1OF6zM82DWbZaUmMBptgQhGjsyYqc9ae9XFz280948NMBWInljyzsNRFLPWdnZGWrddDsjK1unuSrVN9jJsK8KuQtQCtMBjCEtImISdNKJOopIpBFpNSMbIHCSRpRR5iakjTiyzLhchUUBwCgyKiweBv/7UsQbg8isVNoMPMjAAAA0gAAABEVFGmgqK////9bP/6XCykxBTUUzLjEwMKqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqq",t.DEFAULT_OPTIONS=Object.freeze({cols:80,rows:24,cursorBlink:!1,cursorStyle:"block",cursorWidth:1,bellSound:t.DEFAULT_BELL_SOUND,bellStyle:"none",drawBoldTextInBrightColors:!0,fastScrollModifier:"alt",fastScrollSensitivity:5,fontFamily:"courier-new, courier, monospace",fontSize:15,fontWeight:"normal",fontWeightBold:"bold",lineHeight:1,linkTooltipHoverDuration:500,letterSpacing:0,logLevel:"info",scrollback:1e3,scrollSensitivity:1,screenReaderMode:!1,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!0,allowTransparency:!1,tabStopWidth:8,theme:{},rightClickSelectsWord:n.isMac,rendererType:"canvas",windowOptions:{},windowsMode:!1,wordSeparator:" ()[]{}',\"`",altClickMovesCursor:!0,convertEol:!1,termName:"xterm",cancelEvents:!1});var s=["normal","bold","100","200","300","400","500","600","700","800","900"],a=["cols","rows"],c=function(){function e(e){this._onOptionChange=new i.EventEmitter,this.options=o.clone(t.DEFAULT_OPTIONS);for(var r=0,n=Object.keys(e);r{function r(e,t,r){t.di$target===t?t.di$dependencies.push({id:e,index:r}):(t.di$dependencies=[{id:e,index:r}],t.di$target=t)}Object.defineProperty(t,"__esModule",{value:!0}),t.createDecorator=t.getServiceDependencies=t.serviceRegistry=void 0,t.serviceRegistry=new Map,t.getServiceDependencies=function(e){return e.di$dependencies||[]},t.createDecorator=function(e){if(t.serviceRegistry.has(e))return t.serviceRegistry.get(e);var i=function(e,t,n){if(3!==arguments.length)throw new Error("@IServiceName-decorator can only be used to decorate a parameter");r(i,e,n)};return i.toString=function(){return e},t.serviceRegistry.set(e,i),i}},2585:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.IUnicodeService=t.LogLevelEnum=t.IOptionsService=t.ILogService=t.IInstantiationService=t.IDirtyRowService=t.ICharsetService=t.ICoreService=t.ICoreMouseService=t.IBufferService=void 0;var i,n=r(8343);t.IBufferService=n.createDecorator("BufferService"),t.ICoreMouseService=n.createDecorator("CoreMouseService"),t.ICoreService=n.createDecorator("CoreService"),t.ICharsetService=n.createDecorator("CharsetService"),t.IDirtyRowService=n.createDecorator("DirtyRowService"),t.IInstantiationService=n.createDecorator("InstantiationService"),t.ILogService=n.createDecorator("LogService"),t.IOptionsService=n.createDecorator("OptionsService"),(i=t.LogLevelEnum||(t.LogLevelEnum={}))[i.DEBUG=0]="DEBUG",i[i.INFO=1]="INFO",i[i.WARN=2]="WARN",i[i.ERROR=3]="ERROR",i[i.OFF=4]="OFF",t.IUnicodeService=n.createDecorator("UnicodeService")},1480:(e,t,r)=>{Object.defineProperty(t,"__esModule",{value:!0}),t.UnicodeService=void 0;var i=r(8460),n=r(225),o=function(){function e(){this._providers=Object.create(null),this._active="",this._onChange=new i.EventEmitter;var e=new n.UnicodeV6;this.register(e),this._active=e.version,this._activeProvider=e}return Object.defineProperty(e.prototype,"onChange",{get:function(){return this._onChange.event},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"versions",{get:function(){return Object.keys(this._providers)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"activeVersion",{get:function(){return this._active},set:function(e){if(!this._providers[e])throw new Error('unknown Unicode version "'+e+'"');this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)},enumerable:!1,configurable:!0}),e.prototype.register=function(e){this._providers[e.version]=e},e.prototype.wcwidth=function(e){return this._activeProvider.wcwidth(e)},e.prototype.getStringCellWidth=function(e){for(var t=0,r=e.length,i=0;i=r)return t+this.wcwidth(n);var o=e.charCodeAt(i);56320<=o&&o<=57343?n=1024*(n-55296)+o-56320+65536:t+=this.wcwidth(o)}t+=this.wcwidth(n)}return t},e}();t.UnicodeService=o}},t={};return function r(i){if(t[i])return t[i].exports;var n=t[i]={exports:{}};return e[i].call(n.exports,n,n.exports,r),n.exports}(4389)})()},444:e=>{"use strict";var t=e.exports;const r=[48,49,50,51,52,53,54,55,56,57,97,98,99,100,101,102],i={};for(var n=0;n65535)throw"Number cannot exceed 16 bits: "+e;return[e>>8,255&e]},pack_u32_le:function(e){var t=e/65536;return[255&e,(65535&e)>>8,255&t,t>>8]},unpack_u16_be:function(e){return(e[0]<<8)+e[1]},unpack_u32_le:function(e){return e[0]+(e[1]<<8)+(e[2]<<16)+16777216*e[3]},octets_to_hex:function(e){for(var t=[],i=0;i>4],r[15&e[i]]);return t},parse_hex_octets:function(e){for(var t=new Array(e.length/2),r=0;r{e.exports.Text={Encoder:"undefined"!=typeof TextEncoder?TextEncoder:class{encode(e){e=unescape(encodeURIComponent(e));for(var t=new Array(e.length),r=0;r{"use strict";const i=r(619);var n,o=e.exports;function s(e,t){return n||function(){n=new Array(256);for(var e=0;e<256;e++){for(var t=e<<8&65535,r=0;r<8;r++)0!=(32768&t)?(t<<=1,t^=4129):t<<=1;n[e]=65535&t}}(),n[t>>8&255]^(255&t)<<8^e}function a(e,t){if(e.join()!==t.join())throw new o.Error("crc",t,e)}Object.assign(o,r(595),r(444)),o.CRC={crc16:function(e){for(var t=e[0],r=1;r>>0)},verify16:function(e,t){return a(this.crc16(e),t)},verify32:function(e,t){try{a(this.crc32(e),t)}catch(t){throw t.input=e.slice(0),t}}}},80:(e,t,r)=>{"use strict";var i,n,o=e.exports;Object.assign(o,r(560));const s=o.ZMLIB.ZDLE;o.ZDLE=class e{constructor(e){this._config={},e&&this.set_escape_ctrl_chars(!!e.escape_ctrl_chars)}set_escape_ctrl_chars(e){if("boolean"!=typeof e)throw"need boolean!";e!==this._config.escape_ctrl_chars&&(this._config.escape_ctrl_chars=e,this._setup_zdle_table())}escapes_ctrl_chars(){return!!this._config.escape_ctrl_chars}encode(e){if(!this._zdle_table)throw"No ZDLE encode table configured!";var t=this._zdle_table,r=this._lastcode,o=new ArrayBuffer(2*e.length),a=new Uint8Array(o),c=this._config.escape_ctrl_chars,l=0;for(i=0;i=0;t--)e[t]===s&&e.splice(t,2,e[t+1]-64);return e}static splice(t,r,i){var n=0;r||(r=0);for(var o=r;o{"use strict";var t=e.exports;const r={aborted:"Session aborted",peer_aborted:"Peer aborted session",already_aborted:"Session already aborted",crc:function(e,t){return this.got=e.slice(0),this.expected=t.slice(0),"CRC check failed! (got: "+e.join()+"; expected: "+t.join()+")"},validation:function(e){return e}};function i(e){const t=r[e];switch(typeof t){case"string":return t;case"function":var i=[].slice.call(arguments).slice(1);return t.apply(this,i)}return null}t.Error=class extends Error{constructor(e){super();var t=i.apply(this,arguments);t?(this.type=e,this.message=t):this.message=e}}},547:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(444),r(80),r(560),r(724),r(595));const n="*".charCodeAt(0),o="A".charCodeAt(0),s="B".charCodeAt(0),a="C".charCodeAt(0),c=[13,10],l=c.slice(0).concat([i.ZMLIB.XON]),h=[n,n,i.ZMLIB.ZDLE,s],u=[n,i.ZMLIB.ZDLE,o],_=[n,i.ZMLIB.ZDLE,a];i.Header=class{static trim_leading_garbage(e){var t,r,o=[];e:for(;e.length&&!r;){var s=e.indexOf(n);if(-1===s){t=!0;break e}if(o.push.apply(o,e.splice(0,s)),e.length<2)break e;if(e[1]===n)if(e.length>8,0,r]}get_buffer_size(){return i.ENCODELIB.unpack_u16_be(this._bytes4.slice(0,2))||void 0}can_full_duplex(){return!!(this._bytes4[3]&d.CANFDX)}can_overlap_io(){return!!(this._bytes4[3]&d.CANOVIO)}can_break(){return!!(this._bytes4[3]&d.CANBRK)}can_fcs_32(){return!!(this._bytes4[3]&d.CANFC32)}escape_ctrl_chars(){return!!(this._bytes4[3]&d.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&d.ESC8)}}const v={ESCCTL:64,ESC8:128};class g extends i.Header{constructor(e,t){super();var r=0;if(e.forEach((function(e){r|=function(e){if(!v[e])throw"Invalid ZSINIT flag: "+e;return v[e]}(e)})),this._bytes4=[0,0,0,r],t){if(t.length>31)throw"Attn sequence must be <= 31 bytes";if(t.some((function(e){return e>255})))throw"Attn sequence ("+t+") must be <256";this._data=t.concat([0])}}escape_ctrl_chars(){return!!(this._bytes4[3]&v.ESCCTL)}escape_8th_bit(){return!!(this._bytes4[3]&v.ESC8)}}class y extends i.Header{constructor(e){super(),e&&(this._bytes4=e.slice())}}y.prototype._hex_header_ending=c;const m={extended:{sparse:64},transport:[void 0,"compress","encrypt","rle"],management:[void 0,"newer_or_longer","crc","append","clobber","newer","mtime_or_length","protect","rename"],conversion:[void 0,"binary","text","resume"]},b=["extended","transport","management","conversion"];class C extends i.Header{get_options(){var e={sparse:!!(64&this._bytes4[0])},t=this._bytes4.slice(0);return b.forEach((function(r,i){if(m[r]instanceof Array)"management"===r&&(e.skip_if_absent=!!(128&t[i]),t[i]&=31),e[r]=m[r][t[i]];else for(var n in m[r])e[n]=!!(t[i]&m[r][n]),e[n]&&(t[i]^=m[r][n]);!e[r]&&t[i]&&(e[r]="unknown:"+t[i])})),e}}class S extends i.Header{}class w extends i.Header{}class E extends i.Header{}class A extends i.Header{}E.prototype._hex_header_ending=c;class R extends i.Header{constructor(e){super(),this._bytes4=i.ENCODELIB.pack_u32_le(e)}get_offset(){return i.ENCODELIB.unpack_u32_le(this._bytes4)}}class L extends R{}class x extends R{}class k extends R{}const T=[[f,"ZRQINIT"],[p,"ZRINIT"],[g,"ZSINIT"],[y,"ZACK"],[C,"ZFILE"],[S,"ZSKIP"],void 0,[w,"ZABORT"],[E,"ZFIN"],[L,"ZRPOS"],[x,"ZDATA"],[k,"ZEOF"],[A,"ZFERR"],void 0,void 0,void 0,void 0,void 0,void 0,void 0];for(var O={},D=0;D11&&(t="Invalid hex header - no LF detected within 12 bytes!")}i.Header.parse_hex=F},560:e=>{"use strict";e.exports.ZMLIB={ZDLE:24,XON:17,XOFF:19,ABORT_SEQUENCE:[24,24,24,24,24],strip_ignored_bytes:function(e){for(var t=e.length-1;t>=0;t--)switch(e[t]){case 17:case 145:case 19:case 147:e.splice(t,1);continue}return e},find_subarray:function(e,t){var r,i=0;Date.now();e:for(;-1!==i&&-1!==(i=e.indexOf(t[0],i));){for(r=1;r{Object.assign(e.exports,r(963))},597:(e,t,r)=>{"use strict";var i=e.exports;function n(e){if(e.aborted())throw new i.Error("aborted")}window.Zmodem=i,Object.assign(i,r(357)),i.Browser={send_files:function(e,t,r){r||(r={});for(var i=[],o=0,s=t.length-1;s>=0;s--){var a=t[s];o+=a.size,i[s]={obj:a,name:a.name,size:a.size,mtime:new Date(a.lastModified),files_remaining:t.length-s,bytes_remaining:o}}var c=0;return function t(){var o=i[c];return o?(c++,e.send_offer(o).then((function(i){return r.on_offer_response&&r.on_offer_response(o.obj,i),void 0===i?t():new Promise((function(s){var a,c=new FileReader;c.onerror=function(e){throw console.error("file read error",e),"File read error: "+e},c.onprogress=function(t){t.target.result&&(a=new Uint8Array(t.target.result,i.get_offset()),n(e),i.send(a),r.on_progress&&r.on_progress(o.obj,i,a))},c.onload=function(c){a=new Uint8Array(c.target.result,i,a),n(e),i.end(a).then((function(){r.on_progress&&a.length&&r.on_progress(o.obj,i,a),r.on_file_complete&&r.on_file_complete(o.obj,i),s(t())}))},c.readAsArrayBuffer(o.obj)}))}))):Promise.resolve()}()},save_to_disk:function(e,t){var r=new Blob(e),i=URL.createObjectURL(r),n=document.createElement("a");n.style.display="none",n.href=i,n.download=t,document.body.appendChild(n),n.click(),document.body.removeChild(n)}}},963:(e,t,r)=>{"use strict";var i=e.exports;Object.assign(i,r(560),r(246));const n=[42,42,24,66,48],o=["to_terminal","on_detect","on_retract","sender"];class s{constructor(e,t,r,i){this._confirmer=t,this._denier=r,this._is_valid=i,this._session_type=e}confirm(){return this._confirmer.apply(this,arguments)}deny(){return this._denier.apply(this,arguments)}is_valid(){return this._is_valid.apply(this,arguments)}get_session_role(){return this._session_type}}i.Sentry=class{constructor(e){if(!e)throw"Need options!";var t=this;o.forEach((function(r){if(!e[r])throw"Need “"+r+"”!";t["_"+r]=e[r]})),this._cache=[]}_after_session_end(){this._zsession=null}consume(e){if(e instanceof Array||(e=Array.prototype.slice.call(new Uint8Array(e))),this._zsession){var t=this._zsession;if(t.consume(e),!t.has_ended())return;e="receive"===t.type?t.get_trailing_bytes():[]}var r=this._parse(e),i=e;if(r){!!this._parsed_session&&(this._parsed_session.type===r.type&&(i=[]),this._on_retract()),this._parsed_session=r;var n=this;this._on_detect(new s(r.type,(function(){if(!this.is_valid())throw"Stale ZMODEM session!";return r.on("garbage",n._to_terminal),r.on("session_end",n._after_session_end.bind(n)),r.set_sender(n._sender),delete n._parsed_session,n._zsession=r}),this._send_abort.bind(this),(function(){return n._parsed_session===r})))}else{var o=this._parsed_session;this._parsed_session=null,o&&(1===i.length&&67===i[0]&&this._send_abort(),this._on_retract())}this._to_terminal(i)}get_confirmed_session(){return this._zsession||null}_send_abort(){this._sender(i.ZMLIB.ABORT_SEQUENCE)}_parse(e){var t=this._cache;for(t.push.apply(t,e);;){let e,r=i.ZMLIB.find_subarray(t,n);if(-1===r)break;t.splice(0,r);try{e=i.Session.parse(t)}catch(e){}if(!e)break;return 1===t.length&&t[0]===i.ZMLIB.XON&&t.shift(),t.length?null:e}return t.splice(21),null}}},246:(e,t,r)=>{"use strict";var i=e.exports;i.DEBUG=!1,Object.assign(i,r(444),r(956),r(80),r(560),r(547),r(270),r(792),r(595));const n=["CANFDX","CANOVIO","CANFC32"],o="spool_uint8array",s=[79,79],a=i.ZMLIB.ABORT_SEQUENCE;class c{constructor(){this._on_evt={},this._evt_once_index={}}_Add_event(e){this._on_evt[e]=[],this._evt_once_index[e]=[]}_get_evt_queue(e){if(!this._on_evt[e])throw"Bad event: "+e;return this._on_evt[e]}on(e,t){return this._get_evt_queue(e).push(t),this}off(e,t){var r=this._get_evt_queue(e);if(t){var i=r.indexOf(t);if(-1===i)throw"“"+t+"” is not in the “"+e+"” queue.";r.splice(i,1)}else r.pop();return this}_Happen(e){var t=this._get_evt_queue(e),r=Array.apply(null,arguments);r.shift();var i=this;return t.forEach((function(e){e.apply(i,r)})),t.length}}i.Session=class extends c{static parse(e){var t;try{t=i.Header.parse_hex(e)}catch(e){return}if(t)switch(t.NAME){case"ZRQINIT":return new i.Session.Receive;case"ZRINIT":return new i.Session.Send(t)}}set_sender(e){return this._sender=e,this}has_ended(){return this._has_ended()}consume(e){if(this._before_consume(e),this._aborted)throw new i.Error("already_aborted");e.length&&(this._strip_and_enqueue_input(e),this._check_for_abort_sequence(e)||this._consume_first())}aborted(){return!!this._aborted}constructor(){super(),this._config={},this._input_buffer=[],this._Add_event("receive"),this._Add_event("garbage"),this._Add_event("session_end")}get_role(){return this.type}_trim_leading_garbage_until_header(){var e=i.Header.trim_leading_garbage(this._input_buffer);e.length&&0===this._Happen("garbage",e)&&console.debug("Garbage: ",String.fromCharCode.apply(String,e),e)}_parse_and_consume_header(){this._trim_leading_garbage_until_header();var e=i.Header.parse(this._input_buffer);if(e)return i.DEBUG&&this._log_header("RECEIVED HEADER",e[0]),this._consume_header(e[0]),this._last_header_name=e[0].NAME,this._last_header_crc=e[1],e[0]}_log_header(e,t){console.debug(this.type,e,t.NAME,t._bytes4.join())}_consume_header(e){this._on_receive(e);var t=this._next_header_handler&&this._next_header_handler[e.NAME];if(!t)throw console.error("Unhandled header!",e,this._next_header_handler),new i.Error("Unhandled header: "+e.NAME);this._next_header_handler=null,t.call(this,e)}_check_for_abort_sequence(){var e=i.ZMLIB.find_subarray(this._input_buffer,a);if(-1!==e)throw this._input_buffer.splice(0,e+a.length),this._aborted=!0,this._on_session_end(),new i.Error("peer_aborted")}_send_header(e){if(!this._sender)throw"Need sender!";var t=Array.apply(null,arguments),r=this._create_header_bytes(t);i.DEBUG&&this._log_header("SENDING HEADER",r[1]),this._sender(r[0]),this._last_sent_header=r[1]}_create_header_bytes(e){var t=i.Header.build.apply(i.Header,e);return[t[this._get_header_formatter(e[0])](this._zencoder),t]}_strip_and_enqueue_input(e){i.ZMLIB.strip_ignored_bytes(e),this._input_buffer.push.apply(this._input_buffer,e)}abort(){this._sender(a.concat([8,8,8,8,8])),this._aborted=!0,this._sender=function(){throw new i.Error("already_aborted")},this._on_session_end()}_on_session_end(){this._Happen("session_end")}_on_receive(e){this._Happen("receive",e)}_before_consume(){}},i.Session.Receive=class extends i.Session{constructor(){super(),this._Add_event("offer"),this._Add_event("data_in"),this._Add_event("file_end")}_before_consume(e){if(this._bytes_after_OO)throw"PROTOCOL: Session is completed!";this._bytes_being_consumed=e}get_trailing_bytes(){if(this._aborted)return[];if(!this._bytes_after_OO)throw"PROTOCOL: Session is not completed!";return this._bytes_after_OO.slice(0)}_has_ended(){return this.aborted()||!!this._bytes_after_OO}_get_header_formatter(){return"to_hex"}_parse_and_consume_subpacket(){var e;e=16===this._last_header_crc?"parse16":"parse32";var t=i.Subpacket[e](this._input_buffer);return t&&(i.DEBUG&&console.debug(this.type,"RECEIVED SUBPACKET",t),this._consume_data(t),t.frame_end()&&(this._next_subpacket_handler=null)),t}_consume_first(){if(this._got_ZFIN){if(this._input_buffer.length<2)return;if(0===i.ZMLIB.find_subarray(this._input_buffer,s))return this._bytes_after_OO=(e=this._bytes_being_consumed.slice(0),0===i.ZMLIB.find_subarray(e,s)?e.splice(0,s.length):e[0]===s[s.length-1]&&e.splice(0,1),e),void this._on_session_end();throw"PROTOCOL: Only thing after ZFIN should be “OO” (79,79), not: "+this._input_buffer.join()}var e,t;do{t=this._next_subpacket_handler?this._parse_and_consume_subpacket():this._parse_and_consume_header()}while(t&&this._input_buffer.length)}_consume_data(e){if(this._on_receive(e),!this._next_subpacket_handler)throw"PROTOCOL: Received unexpected data packet after "+this._last_header_name+" header: "+e.get_payload().join();this._next_subpacket_handler.call(this,e)}_octets_to_string(e){return this._textdecoder||(this._textdecoder=new i.Text.Decoder),this._textdecoder.decode(new Uint8Array(e))}_consume_ZFILE_data(e,t){if(this._file_info)throw"PROTOCOL: second ZFILE data subpacket received";var r=t.get_payload(),i=r.indexOf(0),n=this._octets_to_string(r.slice(0,i)),o=this._octets_to_string(r.slice(1+i)).split(" "),s=o[1]&&parseInt(o[1],8)||void 0;s&&(s=new Date(1e3*s)),this._file_info={name:n,size:o[0]?parseInt(o[0],10):null,mtime:s||null,mode:o[2]&&parseInt(o[2],8)||null,serial:o[3]&&parseInt(o[3],10)||null,files_remaining:o[4]?parseInt(o[4],10):null,bytes_remaining:o[5]?parseInt(o[5],10):null};var a=new u(e.get_options(),this._file_info,this._accept.bind(this),this._skip.bind(this));this._current_transfer=a}_consume_ZDATA_data(e){if(!this._accepted_offer)throw"PROTOCOL: Received data without accepting!";if(!this._offset_ok)return console.warn("offset not ok!"),void _send_ZRPOS();this._file_offset+=e.get_payload().length,this._on_data_in(e),e.ack_expected()&&!e.frame_end()&&this._send_header("ZACK",i.ENCODELIB.pack_u32_le(this._file_offset))}_make_promise_for_between_files(){var e=this;return new Promise((function(t){var r={ZFILE:function(e){this._next_subpacket_handler=function(r){this._next_subpacket_handler=null,this._consume_ZFILE_data(e,r),this._Happen("offer",this._current_transfer),t(this._current_transfer)}},ZSINIT:function(t){e._next_subpacket_handler=function(t){e._next_subpacket_handler=null,e._consume_ZSINIT_data(t),e._send_header("ZACK"),e._next_header_handler=r}},ZFIN:function(){this._consume_ZFIN(),t()}};e._next_header_handler=r}))}_consume_ZSINIT_data(e){this._attn=e.get_payload()}start(){if(this._started)throw"Already started!";this._started=!0;var e=this._make_promise_for_between_files();return this._send_ZRINIT(),e}_accept(e){this._accepted_offer=!0,this._file_offset=e||0;var t=this,r=new Promise((function(e){t._next_header_handler={ZDATA:function(t){this._consume_ZDATA(t),this._next_subpacket_handler=this._consume_ZDATA_data,this._next_header_handler={ZEOF:function(t){this._consume_ZEOF(t),this._next_subpacket_handler=null,this._make_promise_for_between_files(),e(),this._send_ZRINIT()}}}}}));return this._send_ZRPOS(),r}_skip(){var e=this._make_promise_for_between_files();if(this._accepted_offer){if(!this._current_transfer)return;var t=function(){this._accepted_offer=!1,this._next_subpacket_handler=null,this._make_promise_for_between_files()}.bind(this);Object.assign(this._next_header_handler,{ZEOF:t,ZDATA:function(){t(),this._next_header_handler.ZEOF=t}.bind(this)})}return this._file_info=null,this._send_header("ZSKIP"),e}_send_ZRINIT(){this._send_header("ZRINIT",n)}_consume_ZFIN(){this._got_ZFIN=!0,this._send_header("ZFIN")}_consume_ZEOF(e){if(this._file_offset!==e.get_offset())throw"ZEOF offset mismatch; unimplemented (local: "+this._file_offset+"; ZEOF: "+e.get_offset()+")";this._on_file_end(),this._file_info=null,this._current_transfer=null}_consume_ZDATA(e){if(this._file_offset!==e.get_offset())throw"Error correction is unimplemented.";this._offset_ok=!0}_send_ZRPOS(){this._send_header("ZRPOS",this._file_offset)}_on_file_end(){this._Happen("file_end"),this._current_transfer&&(this._current_transfer._Happen("complete"),this._current_transfer=null)}_on_data_in(e){this._Happen("data_in",e),this._current_transfer&&this._current_transfer._Happen("input",e.get_payload())}},Object.assign(i.Session.Receive.prototype,{type:"receive"});var l={get_details:function(){return Object.assign({},this._file_info)},get_options:function(){return Object.assign({},this._zfile_opts)},get_offset:function(){return this._file_offset}};class h{constructor(e,t,r,i){this._file_info=e,this._file_offset=t||0,this._send=r,this._end=i}send(e){this._send(e),this._file_offset+=e.length}end(e){var t=this._end(e||[]);return e&&(this._file_offset+=e.length),t}}Object.assign(h.prototype,l);class u extends c{constructor(e,t,r,i){super(),this._zfile_opts=e,this._file_info=t,this._accept_func=r,this._skip_func=i,this._Add_event("input"),this._Add_event("complete"),this.on("input",this._input_handler)}_verify_not_skipped(){if(this._skipped)throw new i.Error("Already skipped!")}skip(){return this._verify_not_skipped(),this._skipped=!0,this._skip_func.apply(this,arguments)}accept(e){if(this._verify_not_skipped(),this._accepted)throw new i.Error("Already accepted!");switch(this._accepted=!0,e||(e={}),this._file_offset=e.offset||0,e.on_input){case null:case void 0:case"spool_array":case o:this._spool=[];break;default:if("function"!=typeof e.on_input)throw"Invalid “on_input”: "+e.on_input}return this._input_handler_mode=e.on_input||o,this._accept_func(this._file_offset).then(this._get_spool.bind(this))}_input_handler(e){if(this._file_offset+=e.length,"function"==typeof this._input_handler_mode)this._input_handler_mode(e);else{if(this._input_handler_mode===o)e=new Uint8Array(e);else if("spool_array"!==this._input_handler_mode)throw new i.Error("WTF?? _input_handler_mode = "+this._input_handler_mode);this._spool.push(e)}}_get_spool(){return this._spool}}Object.assign(u.prototype,l);const _={ZFILE:!0,ZDATA:!0};i.Session.Send=class extends i.Session{constructor(e){if(super(),!e)throw"Need first header!";if("ZRINIT"!==e.NAME)throw"First header should be ZRINIT, not "+e.NAME;this._last_header_name="ZRINIT",this._subpacket_encode_func="encode16",this._zencoder=new i.ZDLE,this._consume_ZRINIT(e),this._file_offset=0,this._start_keepalive_on_set_sender=!0}set_sender(e){return super.set_sender(e),this._start_keepalive_on_set_sender&&(this._start_keepalive_on_set_sender=!1,this._start_keepalive()),this}_get_header_formatter(e){return _[e]?"to_binary16":"to_hex"}_start_keepalive(){if(!this._keepalive_promise){var e=this;this._keepalive_promise=new Promise((function(t){e._keepalive_timeout=setTimeout(t,5e3)})).then((function(){e._next_header_handler={ZACK:function(){e._got_ZSINIT_ZACK=!0}},e._send_ZSINIT(),e._keepalive_promise=null,e._start_keepalive()}))}}_stop_keepalive(){this._keepalive_promise&&(clearTimeout(this._keepalive_timeout),this._keep_alive_promise=null)}_send_ZSINIT(){var e=[];this._zencoder.escapes_ctrl_chars()&&e.push("ESCCTL"),this._send_header_and_data(["ZSINIT",e],[0],"end_ack")}_consume_ZRINIT(e){if(this._last_ZRINIT=e,e.get_buffer_size())throw"Buffer size ("+e.get_buffer_size()+") is unsupported!";if(!e.can_full_duplex())throw"Half-duplex I/O is unsupported!";if(!e.can_overlap_io())throw"Non-overlap I/O is unsupported!";if(e.escape_8th_bit())throw"8-bit escaping is unsupported!";this._zencoder.set_escape_ctrl_chars(!0),e.escape_ctrl_chars()||console.debug("Peer didn’t request escape of all control characters. Will send ZSINIT to force recognition of escaped control characters.")}_ensure_receiver_escapes_ctrl_chars(){var e;if(this._last_ZRINIT.escape_ctrl_chars()||this._got_ZSINIT_ZACK)e=Promise.resolve();else{var t=this;e=new Promise((function(e){t._next_header_handler={ZACK:t=>{e()}},t._send_ZSINIT()}))}return e}_convert_params_to_offer_payload_array(e){var t=(e=i.Validation.offer_parameters(e)).name+"\0",r=[(e.size||0).toString(10),e.mtime?e.mtime.toString(8):"0",e.mode?(32768|e.mode).toString(8):"0","0"];return e.files_remaining&&(r.push(e.files_remaining),e.bytes_remaining&&r.push(e.bytes_remaining)),t+=r.join(" "),this._string_to_octets(t)}send_offer(e){if(i.DEBUG&&console.debug("SENDING OFFER",e),!e)throw"need file params!";if(this._sending_file)throw"Already sending file!";var t=this._convert_params_to_offer_payload_array(e);this._stop_keepalive();var r=this;function n(){r._next_header_handler={ZRPOS:function(e){i.DEBUG&&console.warn("Mid-transfer ZRPOS … implementation error?"),n()}}}return this._ensure_receiver_escapes_ctrl_chars().then((function(){var i=new Promise((function(t){r._next_header_handler={ZSKIP:function(){r._start_keepalive(),t()},ZRPOS:function(i){r._sending_file=!0,n(),t(new h(e,i.get_offset(),r._send_interim_file_piece.bind(r),r._end_file.bind(r)))}}}));return r._send_header_and_data(["ZFILE"],t,"end_ack"),delete r._sent_ZDATA,i}))}_send_header_and_data(e,t,r){var n=this._create_header_bytes(e),o=this._build_subpacket_bytes(t,r);n[0].push.apply(n[0],o),i.DEBUG&&(this._log_header("SENDING HEADER",n[1]),console.debug(this.type,"-- HEADER PAYLOAD:",r,o.length)),this._sender(n[0]),this._last_sent_header=n[1]}_build_subpacket_bytes(e,t){return i.Subpacket.build(e,t)[this._subpacket_encode_func](this._zencoder)}_build_and_send_subpacket(e,t){this._sender(this._build_subpacket_bytes(e,t))}_string_to_octets(e){this._textencoder||(this._textencoder=new i.Text.Encoder);var t=this._textencoder.encode(e);return Array.prototype.slice.call(t)}_send_interim_file_piece(e){return this._send_file_part(e,"no_end_no_ack"),Promise.resolve()}_ensure_we_are_sending(){if(!this._sending_file)throw"Not sending a file currently!"}_end_file(e){this._ensure_we_are_sending(),this._send_file_part(e,"end_no_ack");var t=this,r=new Promise((function(e){t._sending_file=!1,t._prepare_to_receive_ZRINIT(e)}));return this._send_header("ZEOF",this._file_offset),this._file_offset=0,r}_prepare_to_receive_ZRINIT(e){this._next_header_handler={ZRINIT:function(t){this._consume_ZRINIT(t),e&&e()}}}close(){var e="ZRINIT"===this._last_header_name;if(e||(e="ZSKIP"===this._last_header_name),e||(e="ZSINIT"===this._last_sent_header.name&&"ZACK"===this._last_header_name),!e)throw"Can’t close; last received header was “"+this._last_header_name+"”";var t=this,r=new Promise((function(e,r){t._next_header_handler={ZFIN:function(){t._sender(s),t._sent_OO=!0,t._on_session_end(),e()}}}));return this._send_header("ZFIN"),r}_has_ended(){return this.aborted()||!!this._sent_OO}_send_file_part(e,t){this._sent_ZDATA||(this._send_header("ZDATA",this._file_offset),this._sent_ZDATA=!0);for(var r=0,i=e.length;;){var n=Math.min(r+8192,i)-r,o=n+r>=i,s=e.slice(r,r+n);if(s instanceof Array||(s=Array.prototype.slice.call(s)),this._build_and_send_subpacket(s,o?t:"no_end_no_ack"),this._file_offset+=n,(r+=n)>=i)break}}_consume_first(){if(!this._parse_and_consume_header()&&"67"===this._input_buffer.join())throw"Receiver has fallen back to YMODEM."}_on_session_end(){this._stop_keepalive(),super._on_session_end()}},Object.assign(i.Session.Send.prototype,{type:"send"})},270:(e,t,r)=>{"use strict";var i,n=e.exports;Object.assign(n,r(724),r(80),r(560),r(595)),n.Subpacket=class e{static build(e,t){var r=i[t];if(!r)throw"No subpacket type “"+t+"” is defined! Try one of: "+Object.keys(i).join(", ");return new r(e)}encode16(e){return this._encode(e,n.CRC.crc16)}encode32(e){return this._encode(e,n.CRC.crc32)}get_payload(){return this._payload}static parse16(t){return e._parse(t,2)}static parse32(t){return e._parse(t,4)}constructor(e){this._payload=e}_encode(e,t){return e.encode(this._payload.slice(0)).concat([n.ZMLIB.ZDLE,this._frameend_num],e.encode(t(this._payload.concat(this._frameend_num))))}static _parse(e,t){for(var r,i,o={104:a,105:l,106:h,107:c},s=0;s{"use strict";var i=e.exports;Object.assign(i,r(595));const n=/\*\x18[AC]|\*\*\x18B/;function o(e,t){if(t<0)throw new i.Error("validation","“"+e+"” ("+t+") must be nonnegative.");if(t!==Math.floor(t))throw new i.Error("validation","“"+e+"” ("+t+") must be an integer.")}i.Validation={offer_parameters:function(e){if(!e.name)throw new i.Error("validation","Need “name”!");if("string"!=typeof e.name)throw new i.Error("validation","“name” ("+e.name+") must be a string!");if(e=Object.assign({},e),n.test(e.name)&&console.warn("The filename "+JSON.stringify(name)+" contains characters that look like a ZMODEM header. This could corrupt the ZMODEM session; consider renaming it so that the filename doesn’t contain control characters."),null!==e.serial&&void 0!==e.serial)throw new i.Error("validation","“serial” is meaningless.");if(e.serial=null,["size","mode","files_remaining","bytes_remaining"].forEach((function(t){var r;switch(typeof e[t]){case"object":r=null===e[t];break;case"undefined":e[t]=null,r=!0;break;case"number":o(t,e[t]),r=!0}if(!r)throw new i.Error("validation","“"+t+"” ("+e[t]+") must be null, undefined, or a number.")})),"number"==typeof e.mode&&(e.mode|=32768),0===e.files_remaining)throw new i.Error("validation","“files_remaining”, if given, must be positive.");var t;switch(typeof e.mtime){case"object":if(t=!0,e.mtime instanceof Date){var r=e.mtime;if(e.mtime=Math.floor(r.getTime()/1e3),e.mtime<0)throw new i.Error("validation","“mtime” ("+r+") must not be earlier than 1970.")}else null!==e.mtime&&(t=!1);break;case"undefined":e.mtime=null,t=!0;break;case"number":o("mtime",e.mtime),t=!0}if(!t)throw new i.Error("validation","“mtime” ("+e.mtime+") must be null, undefined, a Date, or a number.");return e}}},69:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Connection=t.ConnectionFactory=void 0;var r=function(){function e(e,t){this.url=e,this.protocols=t}return e.prototype.create=function(){return new i(this.url,this.protocols)},e}();t.ConnectionFactory=r;var i=function(){function e(e,t){this.bare=new WebSocket(e,t)}return e.prototype.open=function(){},e.prototype.close=function(){this.bare.close()},e.prototype.send=function(e){this.bare.send(e)},e.prototype.isOpen=function(){return this.bare.readyState==WebSocket.CONNECTING||this.bare.readyState==WebSocket.OPEN},e.prototype.onOpen=function(e){this.bare.onopen=function(t){e()}},e.prototype.onReceive=function(e){this.bare.onmessage=function(t){e(t.data)}},e.prototype.onClose=function(e){this.bare.onclose=function(t){e()}},e}();t.Connection=i},818:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebTTY=t.msgSetBufferSize=t.msgSetReconnect=t.msgSetPreferences=t.msgSetWindowTitle=t.msgPong=t.msgOutput=t.msgUnknownOutput=t.msgResizeTerminal=t.msgPing=t.msgInput=t.msgInputUnknown=t.protocols=void 0;var i=r(597);t.protocols=["webtty"],t.msgInputUnknown="0",t.msgInput="1",t.msgPing="2",t.msgResizeTerminal="3",t.msgUnknownOutput="0",t.msgOutput="1",t.msgPong="2",t.msgSetWindowTitle="3",t.msgSetPreferences="4",t.msgSetReconnect="5",t.msgSetBufferSize="6";var n=function(){function e(e,t,r,n){var o=this;this.term=e,this.connectionFactory=t,this.args=r,this.authToken=n,this.reconnect=-1,this.bufSize=1024,this.sentry=new i.Sentry({to_terminal:function(e){return o.term.output(e)},on_detect:function(e){return o.zmodemDetect(e)},sender:function(e){return o.sendInput(e)},on_retract:function(e){return alert("never mind!")}})}return e.prototype.zmodemDetect=function(e){var t=this,r=e.confirm();"send"===r.type?this.zmodemSend(r):(r.on("offer",(function(e){return t.zmodemOffer(e)})),r.start())},e.prototype.zmodemSend=function(e){var t=this.getFileSendDialog();t.style.display="block";var r=document.getElementById("sendFileSelector");null!=r&&(r.onchange=function(r){i.Browser.send_files(e,r.target.files).then((function(){return e.close()})).catch((function(e){return console.log(e)})),t.style.display="none"})},e.prototype.zmodemOffer=function(e){var t=this.getFileAcceptanceDialog();t.style.display="block";var r=document.getElementById("filename");null!=r&&(r.textContent=e.get_details().name);var n=document.getElementById("filesize");null!=n&&(n.textContent=e.get_details().size);var o=document.getElementById("skipTransfer");null!=o&&(o.onclick=function(r){e.skip(),t.style.display="none"});var s=document.getElementById("acceptTransfer");null!=s&&(s.onclick=function(r){t.style.display="none",e.accept().then((function(t){i.Browser.save_to_disk(t,e.get_details().name)}))})},e.prototype.sendInput=function(e){var r,i=this.bufSize-1;r=Array.isArray(e)?String.fromCharCode.apply(null,e):e;for(var n=3*Math.floor(i/4),o=0;oIncoming file transfer: ( bytes)

Accept Decline',document.body.appendChild(e)),e},e.prototype.getFileSendDialog=function(){var e=document.getElementById("sendFileDialog");return null==e&&((e=document.createElement("div")).id="sendFileDialog",e.className="fileDialog",e.innerHTML='

Remote ready to receive files.

',document.body.appendChild(e)),e},e.prototype.open=function(){var e,r,i=this,n=this.connectionFactory.create();this.connection=n;var o=function(){n.onOpen((function(){var r=i.term.info();n.send(JSON.stringify({Arguments:i.args,AuthToken:i.authToken}));var o=function(e,r){n.send(t.msgResizeTerminal+JSON.stringify({columns:e,rows:r}))};i.term.onResize(o),o(r.columns,r.rows),n.send("4base64"),i.term.onInput((function(e){i.sendInput(e)})),e=setInterval((function(){n.send(t.msgPing)}),3e4)})),n.onReceive((function(e){var r=e.slice(1);switch(e[0]){case t.msgOutput:i.sentry.consume(Uint8Array.from(atob(r),(function(e){return e.charCodeAt(0)})));break;case t.msgPong:break;case t.msgSetWindowTitle:i.term.setWindowTitle(r);break;case t.msgSetPreferences:var n=JSON.parse(r);i.term.setPreferences(n);break;case t.msgSetReconnect:var o=JSON.parse(r);console.log("Enabling reconnect: "+o+" seconds"),i.reconnect=o;break;case t.msgSetBufferSize:var s=JSON.parse(r);i.bufSize=s}})),n.onClose((function(){clearInterval(e),i.term.deactivate(),i.term.showMessage("Connection Closed",0),i.reconnect>0&&(r=setTimeout((function(){n=i.connectionFactory.create(),i.term.reset(),o()}),1e3*i.reconnect))})),n.open()};return o(),function(){clearTimeout(r),n.close()}},e}();t.WebTTY=n},949:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Xterm=void 0;var i=r(841),n=r(881),o=r(962),s=r(445),a=function(){function e(e){var t=this;this.elem=e,this.term=new i.Terminal,this.fitAddOn=new n.FitAddon,this.term.loadAddon(new o.WebLinksAddon),this.term.loadAddon(this.fitAddOn),this.message=e.ownerDocument.createElement("div"),this.message.className="xterm-overlay",this.messageTimeout=2e3,this.resizeListener=function(){t.fitAddOn.fit(),t.term.scrollToBottom(),t.showMessage(String(t.term.cols)+"x"+String(t.term.rows),t.messageTimeout)},this.term.open(e),this.term.focus(),this.resizeListener(),window.addEventListener("resize",(function(){t.resizeListener()}))}return e.prototype.info=function(){return{columns:this.term.cols,rows:this.term.rows}},e.prototype.output=function(e){this.term.write(e)},e.prototype.getMessage=function(){return this.message},e.prototype.showMessage=function(e,t){this.message.innerHTML=e,this.showMessageElem(t)},e.prototype.showMessageElem=function(e){var t=this;this.elem.appendChild(this.message),this.messageTimer&&clearTimeout(this.messageTimer),e>0&&(this.messageTimer=setTimeout((function(){t.elem.removeChild(t.message)}),e))},e.prototype.removeMessage=function(){this.message.parentNode==this.elem&&this.elem.removeChild(this.message)},e.prototype.setWindowTitle=function(e){document.title=e},e.prototype.setPreferences=function(e){var t=this;Object.keys(e).forEach((function(r){"EnableWebGL"==r&&r?t.term.loadAddon(new s.WebglAddon):"font-size"==r?t.term.setOption("fontSize",e[r]):"font-family"==r&&t.term.setOption("fontFamily",e[r])}))},e.prototype.onInput=function(e){this.onDataHandler=this.term.onData((function(t){e(t)}))},e.prototype.onResize=function(e){var t=this;this.onResizeHandler=this.term.onResize((function(){e(t.term.cols,t.term.rows)}))},e.prototype.deactivate=function(){this.onDataHandler.dispose(),this.onResizeHandler.dispose(),this.term.blur()},e.prototype.reset=function(){this.removeMessage(),this.term.clear()},e.prototype.close=function(){window.removeEventListener("resize",this.resizeListener),this.term.dispose()},e}();t.Xterm=a}},t={};function r(i){var n=t[i];if(void 0!==n)return n.exports;var o=t[i]={exports:{}};return e[i](o,o.exports,r),o.exports}(()=>{"use strict";var e=r(949),t=r(818),i=r(69),n=document.getElementById("terminal");if(null!==n){var o;o=new e.Xterm(n);var s=("https:"==window.location.protocol?"wss://":"ws://")+window.location.host+window.location.pathname+"ws",a=window.location.search,c=new i.ConnectionFactory(s,t.protocols),l=new t.WebTTY(o,c,a,gotty_auth_token).open();window.addEventListener("unload",(function(){l(),o.close()}))}})()})(); +(()=>{var t={169:(t,e,n)=>{"use strict";n.r(e),n.d(e,{Alert:()=>ve,Button:()=>_e,Carousel:()=>Te,Collapse:()=>Ye,Dropdown:()=>un,Modal:()=>Nn,Offcanvas:()=>Vn,Popover:()=>wr,ScrollSpy:()=>Lr,Tab:()=>Jr,Toast:()=>qr,Tooltip:()=>vr});var r={};n.r(r),n.d(r,{afterMain:()=>w,afterRead:()=>C,afterWrite:()=>B,applyStyles:()=>L,arrow:()=>V,auto:()=>l,basePlacements:()=>d,beforeMain:()=>_,beforeRead:()=>b,beforeWrite:()=>y,bottom:()=>i,clippingParents:()=>m,computeStyles:()=>et,createPopper:()=>$t,createPopperBase:()=>It,createPopperLite:()=>Pt,detectOverflow:()=>gt,end:()=>p,eventListeners:()=>rt,flip:()=>bt,hide:()=>_t,left:()=>s,main:()=>x,modifierPhases:()=>E,offset:()=>xt,placements:()=>g,popper:()=>f,popperGenerator:()=>Ot,popperOffsets:()=>wt,preventOverflow:()=>yt,read:()=>v,reference:()=>u,right:()=>a,start:()=>c,top:()=>o,variationPlacements:()=>h,viewport:()=>A,write:()=>k});var o="top",i="bottom",a="right",s="left",l="auto",d=[o,i,a,s],c="start",p="end",m="clippingParents",A="viewport",f="popper",u="reference",h=d.reduce((function(t,e){return t.concat([e+"-"+c,e+"-"+p])}),[]),g=[].concat(d,[l]).reduce((function(t,e){return t.concat([e,e+"-"+c,e+"-"+p])}),[]),b="beforeRead",v="read",C="afterRead",_="beforeMain",x="main",w="afterMain",y="beforeWrite",k="write",B="afterWrite",E=[b,v,C,_,x,w,y,k,B];function S(t){return t?(t.nodeName||"").toLowerCase():null}function O(t){if(null==t)return window;if("[object Window]"!==t.toString()){var e=t.ownerDocument;return e&&e.defaultView||window}return t}function I(t){return t instanceof O(t).Element||t instanceof Element}function $(t){return t instanceof O(t).HTMLElement||t instanceof HTMLElement}function P(t){return"undefined"!=typeof ShadowRoot&&(t instanceof O(t).ShadowRoot||t instanceof ShadowRoot)}const L={name:"applyStyles",enabled:!0,phase:"write",fn:function(t){var e=t.state;Object.keys(e.elements).forEach((function(t){var n=e.styles[t]||{},r=e.attributes[t]||{},o=e.elements[t];$(o)&&S(o)&&(Object.assign(o.style,n),Object.keys(r).forEach((function(t){var e=r[t];!1===e?o.removeAttribute(t):o.setAttribute(t,!0===e?"":e)})))}))},effect:function(t){var e=t.state,n={popper:{position:e.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(e.elements.popper.style,n.popper),e.styles=n,e.elements.arrow&&Object.assign(e.elements.arrow.style,n.arrow),function(){Object.keys(e.elements).forEach((function(t){var r=e.elements[t],o=e.attributes[t]||{},i=Object.keys(e.styles.hasOwnProperty(t)?e.styles[t]:n[t]).reduce((function(t,e){return t[e]="",t}),{});$(r)&&S(r)&&(Object.assign(r.style,i),Object.keys(o).forEach((function(t){r.removeAttribute(t)})))}))}},requires:["computeStyles"]};function D(t){return t.split("-")[0]}var M=Math.max,R=Math.min,T=Math.round;function F(t,e){void 0===e&&(e=!1);var n=t.getBoundingClientRect(),r=1,o=1;if($(t)&&e){var i=t.offsetHeight,a=t.offsetWidth;a>0&&(r=T(n.width)/a||1),i>0&&(o=T(n.height)/i||1)}return{width:n.width/r,height:n.height/o,top:n.top/o,right:n.right/r,bottom:n.bottom/o,left:n.left/r,x:n.left/r,y:n.top/o}}function J(t){var e=F(t),n=t.offsetWidth,r=t.offsetHeight;return Math.abs(e.width-n)<=1&&(n=e.width),Math.abs(e.height-r)<=1&&(r=e.height),{x:t.offsetLeft,y:t.offsetTop,width:n,height:r}}function z(t,e){var n=e.getRootNode&&e.getRootNode();if(t.contains(e))return!0;if(n&&P(n)){var r=e;do{if(r&&t.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function j(t){return O(t).getComputedStyle(t)}function U(t){return["table","td","th"].indexOf(S(t))>=0}function H(t){return((I(t)?t.ownerDocument:t.document)||window.document).documentElement}function N(t){return"html"===S(t)?t:t.assignedSlot||t.parentNode||(P(t)?t.host:null)||H(t)}function W(t){return $(t)&&"fixed"!==j(t).position?t.offsetParent:null}function q(t){for(var e=O(t),n=W(t);n&&U(n)&&"static"===j(n).position;)n=W(n);return n&&("html"===S(n)||"body"===S(n)&&"static"===j(n).position)?e:n||function(t){var e=-1!==navigator.userAgent.toLowerCase().indexOf("firefox");if(-1!==navigator.userAgent.indexOf("Trident")&&$(t)&&"fixed"===j(t).position)return null;var n=N(t);for(P(n)&&(n=n.host);$(n)&&["html","body"].indexOf(S(n))<0;){var r=j(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||e&&"filter"===r.willChange||e&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(t)||e}function G(t){return["top","bottom"].indexOf(t)>=0?"x":"y"}function Y(t,e,n){return M(t,R(e,n))}function K(t){return Object.assign({},{top:0,right:0,bottom:0,left:0},t)}function Q(t,e){return e.reduce((function(e,n){return e[n]=t,e}),{})}const V={name:"arrow",enabled:!0,phase:"main",fn:function(t){var e,n=t.state,r=t.name,l=t.options,c=n.elements.arrow,p=n.modifiersData.popperOffsets,m=D(n.placement),A=G(m),f=[s,a].indexOf(m)>=0?"height":"width";if(c&&p){var u=function(t,e){return K("number"!=typeof(t="function"==typeof t?t(Object.assign({},e.rects,{placement:e.placement})):t)?t:Q(t,d))}(l.padding,n),h=J(c),g="y"===A?o:s,b="y"===A?i:a,v=n.rects.reference[f]+n.rects.reference[A]-p[A]-n.rects.popper[f],C=p[A]-n.rects.reference[A],_=q(c),x=_?"y"===A?_.clientHeight||0:_.clientWidth||0:0,w=v/2-C/2,y=u[g],k=x-h[f]-u[b],B=x/2-h[f]/2+w,E=Y(y,B,k),S=A;n.modifiersData[r]=((e={})[S]=E,e.centerOffset=E-B,e)}},effect:function(t){var e=t.state,n=t.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=e.elements.popper.querySelector(r)))&&z(e.elements.popper,r)&&(e.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function Z(t){return t.split("-")[1]}var X={top:"auto",right:"auto",bottom:"auto",left:"auto"};function tt(t){var e,n=t.popper,r=t.popperRect,l=t.placement,d=t.variation,c=t.offsets,m=t.position,A=t.gpuAcceleration,f=t.adaptive,u=t.roundOffsets,h=t.isFixed,g=c.x,b=void 0===g?0:g,v=c.y,C=void 0===v?0:v,_="function"==typeof u?u({x:b,y:C}):{x:b,y:C};b=_.x,C=_.y;var x=c.hasOwnProperty("x"),w=c.hasOwnProperty("y"),y=s,k=o,B=window;if(f){var E=q(n),S="clientHeight",I="clientWidth";if(E===O(n)&&"static"!==j(E=H(n)).position&&"absolute"===m&&(S="scrollHeight",I="scrollWidth"),E=E,l===o||(l===s||l===a)&&d===p)k=i,C-=(h&&E===B&&B.visualViewport?B.visualViewport.height:E[S])-r.height,C*=A?1:-1;if(l===s||(l===o||l===i)&&d===p)y=a,b-=(h&&E===B&&B.visualViewport?B.visualViewport.width:E[I])-r.width,b*=A?1:-1}var $,P=Object.assign({position:m},f&&X),L=!0===u?function(t){var e=t.x,n=t.y,r=window.devicePixelRatio||1;return{x:T(e*r)/r||0,y:T(n*r)/r||0}}({x:b,y:C}):{x:b,y:C};return b=L.x,C=L.y,A?Object.assign({},P,(($={})[k]=w?"0":"",$[y]=x?"0":"",$.transform=(B.devicePixelRatio||1)<=1?"translate("+b+"px, "+C+"px)":"translate3d("+b+"px, "+C+"px, 0)",$)):Object.assign({},P,((e={})[k]=w?C+"px":"",e[y]=x?b+"px":"",e.transform="",e))}const et={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(t){var e=t.state,n=t.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,s=n.roundOffsets,l=void 0===s||s,d={placement:D(e.placement),variation:Z(e.placement),popper:e.elements.popper,popperRect:e.rects.popper,gpuAcceleration:o,isFixed:"fixed"===e.options.strategy};null!=e.modifiersData.popperOffsets&&(e.styles.popper=Object.assign({},e.styles.popper,tt(Object.assign({},d,{offsets:e.modifiersData.popperOffsets,position:e.options.strategy,adaptive:a,roundOffsets:l})))),null!=e.modifiersData.arrow&&(e.styles.arrow=Object.assign({},e.styles.arrow,tt(Object.assign({},d,{offsets:e.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-placement":e.placement})},data:{}};var nt={passive:!0};const rt={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(t){var e=t.state,n=t.instance,r=t.options,o=r.scroll,i=void 0===o||o,a=r.resize,s=void 0===a||a,l=O(e.elements.popper),d=[].concat(e.scrollParents.reference,e.scrollParents.popper);return i&&d.forEach((function(t){t.addEventListener("scroll",n.update,nt)})),s&&l.addEventListener("resize",n.update,nt),function(){i&&d.forEach((function(t){t.removeEventListener("scroll",n.update,nt)})),s&&l.removeEventListener("resize",n.update,nt)}},data:{}};var ot={left:"right",right:"left",bottom:"top",top:"bottom"};function it(t){return t.replace(/left|right|bottom|top/g,(function(t){return ot[t]}))}var at={start:"end",end:"start"};function st(t){return t.replace(/start|end/g,(function(t){return at[t]}))}function lt(t){var e=O(t);return{scrollLeft:e.pageXOffset,scrollTop:e.pageYOffset}}function dt(t){return F(H(t)).left+lt(t).scrollLeft}function ct(t){var e=j(t),n=e.overflow,r=e.overflowX,o=e.overflowY;return/auto|scroll|overlay|hidden/.test(n+o+r)}function pt(t){return["html","body","#document"].indexOf(S(t))>=0?t.ownerDocument.body:$(t)&&ct(t)?t:pt(N(t))}function mt(t,e){var n;void 0===e&&(e=[]);var r=pt(t),o=r===(null==(n=t.ownerDocument)?void 0:n.body),i=O(r),a=o?[i].concat(i.visualViewport||[],ct(r)?r:[]):r,s=e.concat(a);return o?s:s.concat(mt(N(a)))}function At(t){return Object.assign({},t,{left:t.x,top:t.y,right:t.x+t.width,bottom:t.y+t.height})}function ft(t,e){return e===A?At(function(t){var e=O(t),n=H(t),r=e.visualViewport,o=n.clientWidth,i=n.clientHeight,a=0,s=0;return r&&(o=r.width,i=r.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(a=r.offsetLeft,s=r.offsetTop)),{width:o,height:i,x:a+dt(t),y:s}}(t)):I(e)?function(t){var e=F(t);return e.top=e.top+t.clientTop,e.left=e.left+t.clientLeft,e.bottom=e.top+t.clientHeight,e.right=e.left+t.clientWidth,e.width=t.clientWidth,e.height=t.clientHeight,e.x=e.left,e.y=e.top,e}(e):At(function(t){var e,n=H(t),r=lt(t),o=null==(e=t.ownerDocument)?void 0:e.body,i=M(n.scrollWidth,n.clientWidth,o?o.scrollWidth:0,o?o.clientWidth:0),a=M(n.scrollHeight,n.clientHeight,o?o.scrollHeight:0,o?o.clientHeight:0),s=-r.scrollLeft+dt(t),l=-r.scrollTop;return"rtl"===j(o||n).direction&&(s+=M(n.clientWidth,o?o.clientWidth:0)-i),{width:i,height:a,x:s,y:l}}(H(t)))}function ut(t,e,n){var r="clippingParents"===e?function(t){var e=mt(N(t)),n=["absolute","fixed"].indexOf(j(t).position)>=0&&$(t)?q(t):t;return I(n)?e.filter((function(t){return I(t)&&z(t,n)&&"body"!==S(t)})):[]}(t):[].concat(e),o=[].concat(r,[n]),i=o[0],a=o.reduce((function(e,n){var r=ft(t,n);return e.top=M(r.top,e.top),e.right=R(r.right,e.right),e.bottom=R(r.bottom,e.bottom),e.left=M(r.left,e.left),e}),ft(t,i));return a.width=a.right-a.left,a.height=a.bottom-a.top,a.x=a.left,a.y=a.top,a}function ht(t){var e,n=t.reference,r=t.element,l=t.placement,d=l?D(l):null,m=l?Z(l):null,A=n.x+n.width/2-r.width/2,f=n.y+n.height/2-r.height/2;switch(d){case o:e={x:A,y:n.y-r.height};break;case i:e={x:A,y:n.y+n.height};break;case a:e={x:n.x+n.width,y:f};break;case s:e={x:n.x-r.width,y:f};break;default:e={x:n.x,y:n.y}}var u=d?G(d):null;if(null!=u){var h="y"===u?"height":"width";switch(m){case c:e[u]=e[u]-(n[h]/2-r[h]/2);break;case p:e[u]=e[u]+(n[h]/2-r[h]/2)}}return e}function gt(t,e){void 0===e&&(e={});var n=e,r=n.placement,s=void 0===r?t.placement:r,l=n.boundary,c=void 0===l?m:l,p=n.rootBoundary,h=void 0===p?A:p,g=n.elementContext,b=void 0===g?f:g,v=n.altBoundary,C=void 0!==v&&v,_=n.padding,x=void 0===_?0:_,w=K("number"!=typeof x?x:Q(x,d)),y=b===f?u:f,k=t.rects.popper,B=t.elements[C?y:b],E=ut(I(B)?B:B.contextElement||H(t.elements.popper),c,h),S=F(t.elements.reference),O=ht({reference:S,element:k,strategy:"absolute",placement:s}),$=At(Object.assign({},k,O)),P=b===f?$:S,L={top:E.top-P.top+w.top,bottom:P.bottom-E.bottom+w.bottom,left:E.left-P.left+w.left,right:P.right-E.right+w.right},D=t.modifiersData.offset;if(b===f&&D){var M=D[s];Object.keys(L).forEach((function(t){var e=[a,i].indexOf(t)>=0?1:-1,n=[o,i].indexOf(t)>=0?"y":"x";L[t]+=M[n]*e}))}return L}const bt={name:"flip",enabled:!0,phase:"main",fn:function(t){var e=t.state,n=t.options,r=t.name;if(!e.modifiersData[r]._skip){for(var p=n.mainAxis,m=void 0===p||p,A=n.altAxis,f=void 0===A||A,u=n.fallbackPlacements,b=n.padding,v=n.boundary,C=n.rootBoundary,_=n.altBoundary,x=n.flipVariations,w=void 0===x||x,y=n.allowedAutoPlacements,k=e.options.placement,B=D(k),E=u||(B===k||!w?[it(k)]:function(t){if(D(t)===l)return[];var e=it(t);return[st(t),e,st(e)]}(k)),S=[k].concat(E).reduce((function(t,n){return t.concat(D(n)===l?function(t,e){void 0===e&&(e={});var n=e,r=n.placement,o=n.boundary,i=n.rootBoundary,a=n.padding,s=n.flipVariations,l=n.allowedAutoPlacements,c=void 0===l?g:l,p=Z(r),m=p?s?h:h.filter((function(t){return Z(t)===p})):d,A=m.filter((function(t){return c.indexOf(t)>=0}));0===A.length&&(A=m);var f=A.reduce((function(e,n){return e[n]=gt(t,{placement:n,boundary:o,rootBoundary:i,padding:a})[D(n)],e}),{});return Object.keys(f).sort((function(t,e){return f[t]-f[e]}))}(e,{placement:n,boundary:v,rootBoundary:C,padding:b,flipVariations:w,allowedAutoPlacements:y}):n)}),[]),O=e.rects.reference,I=e.rects.popper,$=new Map,P=!0,L=S[0],M=0;M=0,z=J?"width":"height",j=gt(e,{placement:R,boundary:v,rootBoundary:C,altBoundary:_,padding:b}),U=J?F?a:s:F?i:o;O[z]>I[z]&&(U=it(U));var H=it(U),N=[];if(m&&N.push(j[T]<=0),f&&N.push(j[U]<=0,j[H]<=0),N.every((function(t){return t}))){L=R,P=!1;break}$.set(R,N)}if(P)for(var W=function(t){var e=S.find((function(e){var n=$.get(e);if(n)return n.slice(0,t).every((function(t){return t}))}));if(e)return L=e,"break"},q=w?3:1;q>0;q--){if("break"===W(q))break}e.placement!==L&&(e.modifiersData[r]._skip=!0,e.placement=L,e.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};function vt(t,e,n){return void 0===n&&(n={x:0,y:0}),{top:t.top-e.height-n.y,right:t.right-e.width+n.x,bottom:t.bottom-e.height+n.y,left:t.left-e.width-n.x}}function Ct(t){return[o,a,i,s].some((function(e){return t[e]>=0}))}const _t={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(t){var e=t.state,n=t.name,r=e.rects.reference,o=e.rects.popper,i=e.modifiersData.preventOverflow,a=gt(e,{elementContext:"reference"}),s=gt(e,{altBoundary:!0}),l=vt(a,r),d=vt(s,o,i),c=Ct(l),p=Ct(d);e.modifiersData[n]={referenceClippingOffsets:l,popperEscapeOffsets:d,isReferenceHidden:c,hasPopperEscaped:p},e.attributes.popper=Object.assign({},e.attributes.popper,{"data-popper-reference-hidden":c,"data-popper-escaped":p})}};const xt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(t){var e=t.state,n=t.options,r=t.name,i=n.offset,l=void 0===i?[0,0]:i,d=g.reduce((function(t,n){return t[n]=function(t,e,n){var r=D(t),i=[s,o].indexOf(r)>=0?-1:1,l="function"==typeof n?n(Object.assign({},e,{placement:t})):n,d=l[0],c=l[1];return d=d||0,c=(c||0)*i,[s,a].indexOf(r)>=0?{x:c,y:d}:{x:d,y:c}}(n,e.rects,l),t}),{}),c=d[e.placement],p=c.x,m=c.y;null!=e.modifiersData.popperOffsets&&(e.modifiersData.popperOffsets.x+=p,e.modifiersData.popperOffsets.y+=m),e.modifiersData[r]=d}};const wt={name:"popperOffsets",enabled:!0,phase:"read",fn:function(t){var e=t.state,n=t.name;e.modifiersData[n]=ht({reference:e.rects.reference,element:e.rects.popper,strategy:"absolute",placement:e.placement})},data:{}};const yt={name:"preventOverflow",enabled:!0,phase:"main",fn:function(t){var e=t.state,n=t.options,r=t.name,l=n.mainAxis,d=void 0===l||l,p=n.altAxis,m=void 0!==p&&p,A=n.boundary,f=n.rootBoundary,u=n.altBoundary,h=n.padding,g=n.tether,b=void 0===g||g,v=n.tetherOffset,C=void 0===v?0:v,_=gt(e,{boundary:A,rootBoundary:f,padding:h,altBoundary:u}),x=D(e.placement),w=Z(e.placement),y=!w,k=G(x),B="x"===k?"y":"x",E=e.modifiersData.popperOffsets,S=e.rects.reference,O=e.rects.popper,I="function"==typeof C?C(Object.assign({},e.rects,{placement:e.placement})):C,$="number"==typeof I?{mainAxis:I,altAxis:I}:Object.assign({mainAxis:0,altAxis:0},I),P=e.modifiersData.offset?e.modifiersData.offset[e.placement]:null,L={x:0,y:0};if(E){if(d){var T,F="y"===k?o:s,z="y"===k?i:a,j="y"===k?"height":"width",U=E[k],H=U+_[F],N=U-_[z],W=b?-O[j]/2:0,K=w===c?S[j]:O[j],Q=w===c?-O[j]:-S[j],V=e.elements.arrow,X=b&&V?J(V):{width:0,height:0},tt=e.modifiersData["arrow#persistent"]?e.modifiersData["arrow#persistent"].padding:{top:0,right:0,bottom:0,left:0},et=tt[F],nt=tt[z],rt=Y(0,S[j],X[j]),ot=y?S[j]/2-W-rt-et-$.mainAxis:K-rt-et-$.mainAxis,it=y?-S[j]/2+W+rt+nt+$.mainAxis:Q+rt+nt+$.mainAxis,at=e.elements.arrow&&q(e.elements.arrow),st=at?"y"===k?at.clientTop||0:at.clientLeft||0:0,lt=null!=(T=null==P?void 0:P[k])?T:0,dt=U+it-lt,ct=Y(b?R(H,U+ot-lt-st):H,U,b?M(N,dt):N);E[k]=ct,L[k]=ct-U}if(m){var pt,mt="x"===k?o:s,At="x"===k?i:a,ft=E[B],ut="y"===B?"height":"width",ht=ft+_[mt],bt=ft-_[At],vt=-1!==[o,s].indexOf(x),Ct=null!=(pt=null==P?void 0:P[B])?pt:0,_t=vt?ht:ft-S[ut]-O[ut]-Ct+$.altAxis,xt=vt?ft+S[ut]+O[ut]-Ct-$.altAxis:bt,wt=b&&vt?function(t,e,n){var r=Y(t,e,n);return r>n?n:r}(_t,ft,xt):Y(b?_t:ht,ft,b?xt:bt);E[B]=wt,L[B]=wt-ft}e.modifiersData[r]=L}},requiresIfExists:["offset"]};function kt(t,e,n){void 0===n&&(n=!1);var r,o,i=$(e),a=$(e)&&function(t){var e=t.getBoundingClientRect(),n=T(e.width)/t.offsetWidth||1,r=T(e.height)/t.offsetHeight||1;return 1!==n||1!==r}(e),s=H(e),l=F(t,a),d={scrollLeft:0,scrollTop:0},c={x:0,y:0};return(i||!i&&!n)&&(("body"!==S(e)||ct(s))&&(d=(r=e)!==O(r)&&$(r)?{scrollLeft:(o=r).scrollLeft,scrollTop:o.scrollTop}:lt(r)),$(e)?((c=F(e,!0)).x+=e.clientLeft,c.y+=e.clientTop):s&&(c.x=dt(s))),{x:l.left+d.scrollLeft-c.x,y:l.top+d.scrollTop-c.y,width:l.width,height:l.height}}function Bt(t){var e=new Map,n=new Set,r=[];function o(t){n.add(t.name),[].concat(t.requires||[],t.requiresIfExists||[]).forEach((function(t){if(!n.has(t)){var r=e.get(t);r&&o(r)}})),r.push(t)}return t.forEach((function(t){e.set(t.name,t)})),t.forEach((function(t){n.has(t.name)||o(t)})),r}var Et={placement:"bottom",modifiers:[],strategy:"absolute"};function St(){for(var t=arguments.length,e=new Array(t),n=0;n{let e=t.getAttribute("data-bs-target");if(!e||"#"===e){let n=t.getAttribute("href");if(!n||!n.includes("#")&&!n.startsWith("."))return null;n.includes("#")&&!n.startsWith("#")&&(n=`#${n.split("#")[1]}`),e=n&&"#"!==n?n.trim():null}return e},Mt=t=>{const e=Dt(t);return e&&document.querySelector(e)?e:null},Rt=t=>{const e=Dt(t);return e?document.querySelector(e):null},Tt=t=>{t.dispatchEvent(new Event(Lt))},Ft=t=>!(!t||"object"!=typeof t)&&(void 0!==t.jquery&&(t=t[0]),void 0!==t.nodeType),Jt=t=>Ft(t)?t.jquery?t[0]:t:"string"==typeof t&&t.length>0?document.querySelector(t):null,zt=(t,e,n)=>{Object.keys(n).forEach((r=>{const o=n[r],i=e[r],a=i&&Ft(i)?"element":null==(s=i)?`${s}`:{}.toString.call(s).match(/\s([a-z]+)/i)[1].toLowerCase();var s;if(!new RegExp(o).test(a))throw new TypeError(`${t.toUpperCase()}: Option "${r}" provided type "${a}" but expected type "${o}".`)}))},jt=t=>!(!Ft(t)||0===t.getClientRects().length)&&"visible"===getComputedStyle(t).getPropertyValue("visibility"),Ut=t=>!t||t.nodeType!==Node.ELEMENT_NODE||(!!t.classList.contains("disabled")||(void 0!==t.disabled?t.disabled:t.hasAttribute("disabled")&&"false"!==t.getAttribute("disabled"))),Ht=t=>{if(!document.documentElement.attachShadow)return null;if("function"==typeof t.getRootNode){const e=t.getRootNode();return e instanceof ShadowRoot?e:null}return t instanceof ShadowRoot?t:t.parentNode?Ht(t.parentNode):null},Nt=()=>{},Wt=t=>{t.offsetHeight},qt=()=>{const{jQuery:t}=window;return t&&!document.body.hasAttribute("data-bs-no-jquery")?t:null},Gt=[],Yt=()=>"rtl"===document.documentElement.dir,Kt=t=>{var e;e=()=>{const e=qt();if(e){const n=t.NAME,r=e.fn[n];e.fn[n]=t.jQueryInterface,e.fn[n].Constructor=t,e.fn[n].noConflict=()=>(e.fn[n]=r,t.jQueryInterface)}},"loading"===document.readyState?(Gt.length||document.addEventListener("DOMContentLoaded",(()=>{Gt.forEach((t=>t()))})),Gt.push(e)):e()},Qt=t=>{"function"==typeof t&&t()},Vt=(t,e,n=!0)=>{if(!n)return void Qt(t);const r=(t=>{if(!t)return 0;let{transitionDuration:e,transitionDelay:n}=window.getComputedStyle(t);const r=Number.parseFloat(e),o=Number.parseFloat(n);return r||o?(e=e.split(",")[0],n=n.split(",")[0],1e3*(Number.parseFloat(e)+Number.parseFloat(n))):0})(e)+5;let o=!1;const i=({target:n})=>{n===e&&(o=!0,e.removeEventListener(Lt,i),Qt(t))};e.addEventListener(Lt,i),setTimeout((()=>{o||Tt(e)}),r)},Zt=(t,e,n,r)=>{let o=t.indexOf(e);if(-1===o)return t[!n&&r?t.length-1:0];const i=t.length;return o+=n?1:-1,r&&(o=(o+i)%i),t[Math.max(0,Math.min(o,i-1))]},Xt=/[^.]*(?=\..*)\.|.*/,te=/\..*/,ee=/::\d+$/,ne={};let re=1;const oe={mouseenter:"mouseover",mouseleave:"mouseout"},ie=/^(mouseenter|mouseleave)/i,ae=new Set(["click","dblclick","mouseup","mousedown","contextmenu","mousewheel","DOMMouseScroll","mouseover","mouseout","mousemove","selectstart","selectend","keydown","keypress","keyup","orientationchange","touchstart","touchmove","touchend","touchcancel","pointerdown","pointermove","pointerup","pointerleave","pointercancel","gesturestart","gesturechange","gestureend","focus","blur","change","reset","select","submit","focusin","focusout","load","unload","beforeunload","resize","move","DOMContentLoaded","readystatechange","error","abort","scroll"]);function se(t,e){return e&&`${e}::${re++}`||t.uidEvent||re++}function le(t){const e=se(t);return t.uidEvent=e,ne[e]=ne[e]||{},ne[e]}function de(t,e,n=null){const r=Object.keys(t);for(let o=0,i=r.length;ofunction(e){if(!e.relatedTarget||e.relatedTarget!==e.delegateTarget&&!e.delegateTarget.contains(e.relatedTarget))return t.call(this,e)};r?r=t(r):n=t(n)}const[i,a,s]=ce(e,n,r),l=le(t),d=l[s]||(l[s]={}),c=de(d,a,i?n:null);if(c)return void(c.oneOff=c.oneOff&&o);const p=se(a,e.replace(Xt,"")),m=i?function(t,e,n){return function r(o){const i=t.querySelectorAll(e);for(let{target:a}=o;a&&a!==this;a=a.parentNode)for(let s=i.length;s--;)if(i[s]===a)return o.delegateTarget=a,r.oneOff&&fe.off(t,o.type,e,n),n.apply(a,[o]);return null}}(t,n,r):function(t,e){return function n(r){return r.delegateTarget=t,n.oneOff&&fe.off(t,r.type,e),e.apply(t,[r])}}(t,n);m.delegationSelector=i?n:null,m.originalHandler=a,m.oneOff=o,m.uidEvent=p,d[p]=m,t.addEventListener(s,m,i)}function me(t,e,n,r,o){const i=de(e[n],r,o);i&&(t.removeEventListener(n,i,Boolean(o)),delete e[n][i.uidEvent])}function Ae(t){return t=t.replace(te,""),oe[t]||t}const fe={on(t,e,n,r){pe(t,e,n,r,!1)},one(t,e,n,r){pe(t,e,n,r,!0)},off(t,e,n,r){if("string"!=typeof e||!t)return;const[o,i,a]=ce(e,n,r),s=a!==e,l=le(t),d=e.startsWith(".");if(void 0!==i){if(!l||!l[a])return;return void me(t,l,a,i,o?n:null)}d&&Object.keys(l).forEach((n=>{!function(t,e,n,r){const o=e[n]||{};Object.keys(o).forEach((i=>{if(i.includes(r)){const r=o[i];me(t,e,n,r.originalHandler,r.delegationSelector)}}))}(t,l,n,e.slice(1))}));const c=l[a]||{};Object.keys(c).forEach((n=>{const r=n.replace(ee,"");if(!s||e.includes(r)){const e=c[n];me(t,l,a,e.originalHandler,e.delegationSelector)}}))},trigger(t,e,n){if("string"!=typeof e||!t)return null;const r=qt(),o=Ae(e),i=e!==o,a=ae.has(o);let s,l=!0,d=!0,c=!1,p=null;return i&&r&&(s=r.Event(e,n),r(t).trigger(s),l=!s.isPropagationStopped(),d=!s.isImmediatePropagationStopped(),c=s.isDefaultPrevented()),a?(p=document.createEvent("HTMLEvents"),p.initEvent(o,l,!0)):p=new CustomEvent(e,{bubbles:l,cancelable:!0}),void 0!==n&&Object.keys(n).forEach((t=>{Object.defineProperty(p,t,{get:()=>n[t]})})),c&&p.preventDefault(),d&&t.dispatchEvent(p),p.defaultPrevented&&void 0!==s&&s.preventDefault(),p}},ue=new Map,he={set(t,e,n){ue.has(t)||ue.set(t,new Map);const r=ue.get(t);r.has(e)||0===r.size?r.set(e,n):console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(r.keys())[0]}.`)},get:(t,e)=>ue.has(t)&&ue.get(t).get(e)||null,remove(t,e){if(!ue.has(t))return;const n=ue.get(t);n.delete(e),0===n.size&&ue.delete(t)}};class ge{constructor(t){(t=Jt(t))&&(this._element=t,he.set(this._element,this.constructor.DATA_KEY,this))}dispose(){he.remove(this._element,this.constructor.DATA_KEY),fe.off(this._element,this.constructor.EVENT_KEY),Object.getOwnPropertyNames(this).forEach((t=>{this[t]=null}))}_queueCallback(t,e,n=!0){Vt(t,e,n)}static getInstance(t){return he.get(Jt(t),this.DATA_KEY)}static getOrCreateInstance(t,e={}){return this.getInstance(t)||new this(t,"object"==typeof e?e:null)}static get VERSION(){return"5.1.3"}static get NAME(){throw new Error('You have to implement the static method "NAME", for each component!')}static get DATA_KEY(){return`bs.${this.NAME}`}static get EVENT_KEY(){return`.${this.DATA_KEY}`}}const be=(t,e="hide")=>{const n=`click.dismiss${t.EVENT_KEY}`,r=t.NAME;fe.on(document,n,`[data-bs-dismiss="${r}"]`,(function(n){if(["A","AREA"].includes(this.tagName)&&n.preventDefault(),Ut(this))return;const o=Rt(this)||this.closest(`.${r}`);t.getOrCreateInstance(o)[e]()}))};class ve extends ge{static get NAME(){return"alert"}close(){if(fe.trigger(this._element,"close.bs.alert").defaultPrevented)return;this._element.classList.remove("show");const t=this._element.classList.contains("fade");this._queueCallback((()=>this._destroyElement()),this._element,t)}_destroyElement(){this._element.remove(),fe.trigger(this._element,"closed.bs.alert"),this.dispose()}static jQueryInterface(t){return this.each((function(){const e=ve.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}be(ve,"close"),Kt(ve);const Ce='[data-bs-toggle="button"]';class _e extends ge{static get NAME(){return"button"}toggle(){this._element.setAttribute("aria-pressed",this._element.classList.toggle("active"))}static jQueryInterface(t){return this.each((function(){const e=_e.getOrCreateInstance(this);"toggle"===t&&e[t]()}))}}function xe(t){return"true"===t||"false"!==t&&(t===Number(t).toString()?Number(t):""===t||"null"===t?null:t)}function we(t){return t.replace(/[A-Z]/g,(t=>`-${t.toLowerCase()}`))}fe.on(document,"click.bs.button.data-api",Ce,(t=>{t.preventDefault();const e=t.target.closest(Ce);_e.getOrCreateInstance(e).toggle()})),Kt(_e);const ye={setDataAttribute(t,e,n){t.setAttribute(`data-bs-${we(e)}`,n)},removeDataAttribute(t,e){t.removeAttribute(`data-bs-${we(e)}`)},getDataAttributes(t){if(!t)return{};const e={};return Object.keys(t.dataset).filter((t=>t.startsWith("bs"))).forEach((n=>{let r=n.replace(/^bs/,"");r=r.charAt(0).toLowerCase()+r.slice(1,r.length),e[r]=xe(t.dataset[n])})),e},getDataAttribute:(t,e)=>xe(t.getAttribute(`data-bs-${we(e)}`)),offset(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset,left:e.left+window.pageXOffset}},position:t=>({top:t.offsetTop,left:t.offsetLeft})},ke={find:(t,e=document.documentElement)=>[].concat(...Element.prototype.querySelectorAll.call(e,t)),findOne:(t,e=document.documentElement)=>Element.prototype.querySelector.call(e,t),children:(t,e)=>[].concat(...t.children).filter((t=>t.matches(e))),parents(t,e){const n=[];let r=t.parentNode;for(;r&&r.nodeType===Node.ELEMENT_NODE&&3!==r.nodeType;)r.matches(e)&&n.push(r),r=r.parentNode;return n},prev(t,e){let n=t.previousElementSibling;for(;n;){if(n.matches(e))return[n];n=n.previousElementSibling}return[]},next(t,e){let n=t.nextElementSibling;for(;n;){if(n.matches(e))return[n];n=n.nextElementSibling}return[]},focusableChildren(t){const e=["a","button","input","textarea","select","details","[tabindex]",'[contenteditable="true"]'].map((t=>`${t}:not([tabindex^="-"])`)).join(", ");return this.find(e,t).filter((t=>!Ut(t)&&jt(t)))}},Be="carousel",Ee={interval:5e3,keyboard:!0,slide:!1,pause:"hover",wrap:!0,touch:!0},Se={interval:"(number|boolean)",keyboard:"boolean",slide:"(boolean|string)",pause:"(string|boolean)",wrap:"boolean",touch:"boolean"},Oe="next",Ie="prev",$e="left",Pe="right",Le={ArrowLeft:Pe,ArrowRight:$e},De="slid.bs.carousel",Me="active",Re=".active.carousel-item";class Te extends ge{constructor(t,e){super(t),this._items=null,this._interval=null,this._activeElement=null,this._isPaused=!1,this._isSliding=!1,this.touchTimeout=null,this.touchStartX=0,this.touchDeltaX=0,this._config=this._getConfig(e),this._indicatorsElement=ke.findOne(".carousel-indicators",this._element),this._touchSupported="ontouchstart"in document.documentElement||navigator.maxTouchPoints>0,this._pointerEvent=Boolean(window.PointerEvent),this._addEventListeners()}static get Default(){return Ee}static get NAME(){return Be}next(){this._slide(Oe)}nextWhenVisible(){!document.hidden&&jt(this._element)&&this.next()}prev(){this._slide(Ie)}pause(t){t||(this._isPaused=!0),ke.findOne(".carousel-item-next, .carousel-item-prev",this._element)&&(Tt(this._element),this.cycle(!0)),clearInterval(this._interval),this._interval=null}cycle(t){t||(this._isPaused=!1),this._interval&&(clearInterval(this._interval),this._interval=null),this._config&&this._config.interval&&!this._isPaused&&(this._updateInterval(),this._interval=setInterval((document.visibilityState?this.nextWhenVisible:this.next).bind(this),this._config.interval))}to(t){this._activeElement=ke.findOne(Re,this._element);const e=this._getItemIndex(this._activeElement);if(t>this._items.length-1||t<0)return;if(this._isSliding)return void fe.one(this._element,De,(()=>this.to(t)));if(e===t)return this.pause(),void this.cycle();const n=t>e?Oe:Ie;this._slide(n,this._items[t])}_getConfig(t){return t={...Ee,...ye.getDataAttributes(this._element),..."object"==typeof t?t:{}},zt(Be,t,Se),t}_handleSwipe(){const t=Math.abs(this.touchDeltaX);if(t<=40)return;const e=t/this.touchDeltaX;this.touchDeltaX=0,e&&this._slide(e>0?Pe:$e)}_addEventListeners(){this._config.keyboard&&fe.on(this._element,"keydown.bs.carousel",(t=>this._keydown(t))),"hover"===this._config.pause&&(fe.on(this._element,"mouseenter.bs.carousel",(t=>this.pause(t))),fe.on(this._element,"mouseleave.bs.carousel",(t=>this.cycle(t)))),this._config.touch&&this._touchSupported&&this._addTouchEventListeners()}_addTouchEventListeners(){const t=t=>this._pointerEvent&&("pen"===t.pointerType||"touch"===t.pointerType),e=e=>{t(e)?this.touchStartX=e.clientX:this._pointerEvent||(this.touchStartX=e.touches[0].clientX)},n=t=>{this.touchDeltaX=t.touches&&t.touches.length>1?0:t.touches[0].clientX-this.touchStartX},r=e=>{t(e)&&(this.touchDeltaX=e.clientX-this.touchStartX),this._handleSwipe(),"hover"===this._config.pause&&(this.pause(),this.touchTimeout&&clearTimeout(this.touchTimeout),this.touchTimeout=setTimeout((t=>this.cycle(t)),500+this._config.interval))};ke.find(".carousel-item img",this._element).forEach((t=>{fe.on(t,"dragstart.bs.carousel",(t=>t.preventDefault()))})),this._pointerEvent?(fe.on(this._element,"pointerdown.bs.carousel",(t=>e(t))),fe.on(this._element,"pointerup.bs.carousel",(t=>r(t))),this._element.classList.add("pointer-event")):(fe.on(this._element,"touchstart.bs.carousel",(t=>e(t))),fe.on(this._element,"touchmove.bs.carousel",(t=>n(t))),fe.on(this._element,"touchend.bs.carousel",(t=>r(t))))}_keydown(t){if(/input|textarea/i.test(t.target.tagName))return;const e=Le[t.key];e&&(t.preventDefault(),this._slide(e))}_getItemIndex(t){return this._items=t&&t.parentNode?ke.find(".carousel-item",t.parentNode):[],this._items.indexOf(t)}_getItemByOrder(t,e){const n=t===Oe;return Zt(this._items,e,n,this._config.wrap)}_triggerSlideEvent(t,e){const n=this._getItemIndex(t),r=this._getItemIndex(ke.findOne(Re,this._element));return fe.trigger(this._element,"slide.bs.carousel",{relatedTarget:t,direction:e,from:r,to:n})}_setActiveIndicatorElement(t){if(this._indicatorsElement){const e=ke.findOne(".active",this._indicatorsElement);e.classList.remove(Me),e.removeAttribute("aria-current");const n=ke.find("[data-bs-target]",this._indicatorsElement);for(let e=0;e{fe.trigger(this._element,De,{relatedTarget:i,direction:p,from:o,to:a})};if(this._element.classList.contains("slide")){i.classList.add(c),Wt(i),r.classList.add(d),i.classList.add(d);const t=()=>{i.classList.remove(d,c),i.classList.add(Me),r.classList.remove(Me,c,d),this._isSliding=!1,setTimeout(m,0)};this._queueCallback(t,r,!0)}else r.classList.remove(Me),i.classList.add(Me),this._isSliding=!1,m();s&&this.cycle()}_directionToOrder(t){return[Pe,$e].includes(t)?Yt()?t===$e?Ie:Oe:t===$e?Oe:Ie:t}_orderToDirection(t){return[Oe,Ie].includes(t)?Yt()?t===Ie?$e:Pe:t===Ie?Pe:$e:t}static carouselInterface(t,e){const n=Te.getOrCreateInstance(t,e);let{_config:r}=n;"object"==typeof e&&(r={...r,...e});const o="string"==typeof e?e:r.slide;if("number"==typeof e)n.to(e);else if("string"==typeof o){if(void 0===n[o])throw new TypeError(`No method named "${o}"`);n[o]()}else r.interval&&r.ride&&(n.pause(),n.cycle())}static jQueryInterface(t){return this.each((function(){Te.carouselInterface(this,t)}))}static dataApiClickHandler(t){const e=Rt(this);if(!e||!e.classList.contains("carousel"))return;const n={...ye.getDataAttributes(e),...ye.getDataAttributes(this)},r=this.getAttribute("data-bs-slide-to");r&&(n.interval=!1),Te.carouselInterface(e,n),r&&Te.getInstance(e).to(r),t.preventDefault()}}fe.on(document,"click.bs.carousel.data-api","[data-bs-slide], [data-bs-slide-to]",Te.dataApiClickHandler),fe.on(window,"load.bs.carousel.data-api",(()=>{const t=ke.find('[data-bs-ride="carousel"]');for(let e=0,n=t.length;et===this._element));null!==r&&o.length&&(this._selector=r,this._triggerArray.push(e))}this._initializeChildren(),this._config.parent||this._addAriaAndCollapsedClass(this._triggerArray,this._isShown()),this._config.toggle&&this.toggle()}static get Default(){return ze}static get NAME(){return Fe}toggle(){this._isShown()?this.hide():this.show()}show(){if(this._isTransitioning||this._isShown())return;let t,e=[];if(this._config.parent){const t=ke.find(qe,this._config.parent);e=ke.find(".collapse.show, .collapse.collapsing",this._config.parent).filter((e=>!t.includes(e)))}const n=ke.findOne(this._selector);if(e.length){const r=e.find((t=>n!==t));if(t=r?Ye.getInstance(r):null,t&&t._isTransitioning)return}if(fe.trigger(this._element,"show.bs.collapse").defaultPrevented)return;e.forEach((e=>{n!==e&&Ye.getOrCreateInstance(e,{toggle:!1}).hide(),t||he.set(e,Je,null)}));const r=this._getDimension();this._element.classList.remove(He),this._element.classList.add(Ne),this._element.style[r]=0,this._addAriaAndCollapsedClass(this._triggerArray,!0),this._isTransitioning=!0;const o=`scroll${r[0].toUpperCase()+r.slice(1)}`;this._queueCallback((()=>{this._isTransitioning=!1,this._element.classList.remove(Ne),this._element.classList.add(He,Ue),this._element.style[r]="",fe.trigger(this._element,"shown.bs.collapse")}),this._element,!0),this._element.style[r]=`${this._element[o]}px`}hide(){if(this._isTransitioning||!this._isShown())return;if(fe.trigger(this._element,"hide.bs.collapse").defaultPrevented)return;const t=this._getDimension();this._element.style[t]=`${this._element.getBoundingClientRect()[t]}px`,Wt(this._element),this._element.classList.add(Ne),this._element.classList.remove(He,Ue);const e=this._triggerArray.length;for(let t=0;t{this._isTransitioning=!1,this._element.classList.remove(Ne),this._element.classList.add(He),fe.trigger(this._element,"hidden.bs.collapse")}),this._element,!0)}_isShown(t=this._element){return t.classList.contains(Ue)}_getConfig(t){return(t={...ze,...ye.getDataAttributes(this._element),...t}).toggle=Boolean(t.toggle),t.parent=Jt(t.parent),zt(Fe,t,je),t}_getDimension(){return this._element.classList.contains("collapse-horizontal")?"width":"height"}_initializeChildren(){if(!this._config.parent)return;const t=ke.find(qe,this._config.parent);ke.find(Ge,this._config.parent).filter((e=>!t.includes(e))).forEach((t=>{const e=Rt(t);e&&this._addAriaAndCollapsedClass([t],this._isShown(e))}))}_addAriaAndCollapsedClass(t,e){t.length&&t.forEach((t=>{e?t.classList.remove(We):t.classList.add(We),t.setAttribute("aria-expanded",e)}))}static jQueryInterface(t){return this.each((function(){const e={};"string"==typeof t&&/show|hide/.test(t)&&(e.toggle=!1);const n=Ye.getOrCreateInstance(this,e);if("string"==typeof t){if(void 0===n[t])throw new TypeError(`No method named "${t}"`);n[t]()}}))}}fe.on(document,"click.bs.collapse.data-api",Ge,(function(t){("A"===t.target.tagName||t.delegateTarget&&"A"===t.delegateTarget.tagName)&&t.preventDefault();const e=Mt(this);ke.find(e).forEach((t=>{Ye.getOrCreateInstance(t,{toggle:!1}).toggle()}))})),Kt(Ye);const Ke="dropdown",Qe="Escape",Ve="Space",Ze="ArrowUp",Xe="ArrowDown",tn=new RegExp("ArrowUp|ArrowDown|Escape"),en="click.bs.dropdown.data-api",nn="keydown.bs.dropdown.data-api",rn="show",on='[data-bs-toggle="dropdown"]',an=".dropdown-menu",sn=Yt()?"top-end":"top-start",ln=Yt()?"top-start":"top-end",dn=Yt()?"bottom-end":"bottom-start",cn=Yt()?"bottom-start":"bottom-end",pn=Yt()?"left-start":"right-start",mn=Yt()?"right-start":"left-start",An={offset:[0,2],boundary:"clippingParents",reference:"toggle",display:"dynamic",popperConfig:null,autoClose:!0},fn={offset:"(array|string|function)",boundary:"(string|element)",reference:"(string|element|object)",display:"string",popperConfig:"(null|object|function)",autoClose:"(boolean|string)"};class un extends ge{constructor(t,e){super(t),this._popper=null,this._config=this._getConfig(e),this._menu=this._getMenuElement(),this._inNavbar=this._detectNavbar()}static get Default(){return An}static get DefaultType(){return fn}static get NAME(){return Ke}toggle(){return this._isShown()?this.hide():this.show()}show(){if(Ut(this._element)||this._isShown(this._menu))return;const t={relatedTarget:this._element};if(fe.trigger(this._element,"show.bs.dropdown",t).defaultPrevented)return;const e=un.getParentFromElement(this._element);this._inNavbar?ye.setDataAttribute(this._menu,"popper","none"):this._createPopper(e),"ontouchstart"in document.documentElement&&!e.closest(".navbar-nav")&&[].concat(...document.body.children).forEach((t=>fe.on(t,"mouseover",Nt))),this._element.focus(),this._element.setAttribute("aria-expanded",!0),this._menu.classList.add(rn),this._element.classList.add(rn),fe.trigger(this._element,"shown.bs.dropdown",t)}hide(){if(Ut(this._element)||!this._isShown(this._menu))return;const t={relatedTarget:this._element};this._completeHide(t)}dispose(){this._popper&&this._popper.destroy(),super.dispose()}update(){this._inNavbar=this._detectNavbar(),this._popper&&this._popper.update()}_completeHide(t){fe.trigger(this._element,"hide.bs.dropdown",t).defaultPrevented||("ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>fe.off(t,"mouseover",Nt))),this._popper&&this._popper.destroy(),this._menu.classList.remove(rn),this._element.classList.remove(rn),this._element.setAttribute("aria-expanded","false"),ye.removeDataAttribute(this._menu,"popper"),fe.trigger(this._element,"hidden.bs.dropdown",t))}_getConfig(t){if(t={...this.constructor.Default,...ye.getDataAttributes(this._element),...t},zt(Ke,t,this.constructor.DefaultType),"object"==typeof t.reference&&!Ft(t.reference)&&"function"!=typeof t.reference.getBoundingClientRect)throw new TypeError(`${Ke.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);return t}_createPopper(t){if(void 0===r)throw new TypeError("Bootstrap's dropdowns require Popper (https://popper.js.org)");let e=this._element;"parent"===this._config.reference?e=t:Ft(this._config.reference)?e=Jt(this._config.reference):"object"==typeof this._config.reference&&(e=this._config.reference);const n=this._getPopperConfig(),o=n.modifiers.find((t=>"applyStyles"===t.name&&!1===t.enabled));this._popper=$t(e,this._menu,n),o&&ye.setDataAttribute(this._menu,"popper","static")}_isShown(t=this._element){return t.classList.contains(rn)}_getMenuElement(){return ke.next(this._element,an)[0]}_getPlacement(){const t=this._element.parentNode;if(t.classList.contains("dropend"))return pn;if(t.classList.contains("dropstart"))return mn;const e="end"===getComputedStyle(this._menu).getPropertyValue("--bs-position").trim();return t.classList.contains("dropup")?e?ln:sn:e?cn:dn}_detectNavbar(){return null!==this._element.closest(".navbar")}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_getPopperConfig(){const t={placement:this._getPlacement(),modifiers:[{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"offset",options:{offset:this._getOffset()}}]};return"static"===this._config.display&&(t.modifiers=[{name:"applyStyles",enabled:!1}]),{...t,..."function"==typeof this._config.popperConfig?this._config.popperConfig(t):this._config.popperConfig}}_selectMenuItem({key:t,target:e}){const n=ke.find(".dropdown-menu .dropdown-item:not(.disabled):not(:disabled)",this._menu).filter(jt);n.length&&Zt(n,e,t===Xe,!n.includes(e)).focus()}static jQueryInterface(t){return this.each((function(){const e=un.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}static clearMenus(t){if(t&&(2===t.button||"keyup"===t.type&&"Tab"!==t.key))return;const e=ke.find(on);for(let n=0,r=e.length;ne+t)),this._setElementAttributes(hn,"paddingRight",(e=>e+t)),this._setElementAttributes(gn,"marginRight",(e=>e-t))}_disableOverFlow(){this._saveInitialAttribute(this._element,"overflow"),this._element.style.overflow="hidden"}_setElementAttributes(t,e,n){const r=this.getWidth();this._applyManipulationCallback(t,(t=>{if(t!==this._element&&window.innerWidth>t.clientWidth+r)return;this._saveInitialAttribute(t,e);const o=window.getComputedStyle(t)[e];t.style[e]=`${n(Number.parseFloat(o))}px`}))}reset(){this._resetElementAttributes(this._element,"overflow"),this._resetElementAttributes(this._element,"paddingRight"),this._resetElementAttributes(hn,"paddingRight"),this._resetElementAttributes(gn,"marginRight")}_saveInitialAttribute(t,e){const n=t.style[e];n&&ye.setDataAttribute(t,e,n)}_resetElementAttributes(t,e){this._applyManipulationCallback(t,(t=>{const n=ye.getDataAttribute(t,e);void 0===n?t.style.removeProperty(e):(ye.removeDataAttribute(t,e),t.style[e]=n)}))}_applyManipulationCallback(t,e){Ft(t)?e(t):ke.find(t,this._element).forEach(e)}isOverflowing(){return this.getWidth()>0}}const vn={className:"modal-backdrop",isVisible:!0,isAnimated:!1,rootElement:"body",clickCallback:null},Cn={className:"string",isVisible:"boolean",isAnimated:"boolean",rootElement:"(element|string)",clickCallback:"(function|null)"},_n="backdrop",xn="show",wn="mousedown.bs.backdrop";class yn{constructor(t){this._config=this._getConfig(t),this._isAppended=!1,this._element=null}show(t){this._config.isVisible?(this._append(),this._config.isAnimated&&Wt(this._getElement()),this._getElement().classList.add(xn),this._emulateAnimation((()=>{Qt(t)}))):Qt(t)}hide(t){this._config.isVisible?(this._getElement().classList.remove(xn),this._emulateAnimation((()=>{this.dispose(),Qt(t)}))):Qt(t)}_getElement(){if(!this._element){const t=document.createElement("div");t.className=this._config.className,this._config.isAnimated&&t.classList.add("fade"),this._element=t}return this._element}_getConfig(t){return(t={...vn,..."object"==typeof t?t:{}}).rootElement=Jt(t.rootElement),zt(_n,t,Cn),t}_append(){this._isAppended||(this._config.rootElement.append(this._getElement()),fe.on(this._getElement(),wn,(()=>{Qt(this._config.clickCallback)})),this._isAppended=!0)}dispose(){this._isAppended&&(fe.off(this._element,wn),this._element.remove(),this._isAppended=!1)}_emulateAnimation(t){Vt(t,this._getElement(),this._config.isAnimated)}}const kn={trapElement:null,autofocus:!0},Bn={trapElement:"element",autofocus:"boolean"},En=".bs.focustrap",Sn="backward";class On{constructor(t){this._config=this._getConfig(t),this._isActive=!1,this._lastTabNavDirection=null}activate(){const{trapElement:t,autofocus:e}=this._config;this._isActive||(e&&t.focus(),fe.off(document,En),fe.on(document,"focusin.bs.focustrap",(t=>this._handleFocusin(t))),fe.on(document,"keydown.tab.bs.focustrap",(t=>this._handleKeydown(t))),this._isActive=!0)}deactivate(){this._isActive&&(this._isActive=!1,fe.off(document,En))}_handleFocusin(t){const{target:e}=t,{trapElement:n}=this._config;if(e===document||e===n||n.contains(e))return;const r=ke.focusableChildren(n);0===r.length?n.focus():this._lastTabNavDirection===Sn?r[r.length-1].focus():r[0].focus()}_handleKeydown(t){"Tab"===t.key&&(this._lastTabNavDirection=t.shiftKey?Sn:"forward")}_getConfig(t){return t={...kn,..."object"==typeof t?t:{}},zt("focustrap",t,Bn),t}}const In="modal",$n=".bs.modal",Pn="Escape",Ln={backdrop:!0,keyboard:!0,focus:!0},Dn={backdrop:"(boolean|string)",keyboard:"boolean",focus:"boolean"},Mn="hidden.bs.modal",Rn="show.bs.modal",Tn="resize.bs.modal",Fn="click.dismiss.bs.modal",Jn="keydown.dismiss.bs.modal",zn="mousedown.dismiss.bs.modal",jn="modal-open",Un="show",Hn="modal-static";class Nn extends ge{constructor(t,e){super(t),this._config=this._getConfig(e),this._dialog=ke.findOne(".modal-dialog",this._element),this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._isShown=!1,this._ignoreBackdropClick=!1,this._isTransitioning=!1,this._scrollBar=new bn}static get Default(){return Ln}static get NAME(){return In}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){if(this._isShown||this._isTransitioning)return;fe.trigger(this._element,Rn,{relatedTarget:t}).defaultPrevented||(this._isShown=!0,this._isAnimated()&&(this._isTransitioning=!0),this._scrollBar.hide(),document.body.classList.add(jn),this._adjustDialog(),this._setEscapeEvent(),this._setResizeEvent(),fe.on(this._dialog,zn,(()=>{fe.one(this._element,"mouseup.dismiss.bs.modal",(t=>{t.target===this._element&&(this._ignoreBackdropClick=!0)}))})),this._showBackdrop((()=>this._showElement(t))))}hide(){if(!this._isShown||this._isTransitioning)return;if(fe.trigger(this._element,"hide.bs.modal").defaultPrevented)return;this._isShown=!1;const t=this._isAnimated();t&&(this._isTransitioning=!0),this._setEscapeEvent(),this._setResizeEvent(),this._focustrap.deactivate(),this._element.classList.remove(Un),fe.off(this._element,Fn),fe.off(this._dialog,zn),this._queueCallback((()=>this._hideModal()),this._element,t)}dispose(){[window,this._dialog].forEach((t=>fe.off(t,$n))),this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}handleUpdate(){this._adjustDialog()}_initializeBackDrop(){return new yn({isVisible:Boolean(this._config.backdrop),isAnimated:this._isAnimated()})}_initializeFocusTrap(){return new On({trapElement:this._element})}_getConfig(t){return t={...Ln,...ye.getDataAttributes(this._element),..."object"==typeof t?t:{}},zt(In,t,Dn),t}_showElement(t){const e=this._isAnimated(),n=ke.findOne(".modal-body",this._dialog);this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE||document.body.append(this._element),this._element.style.display="block",this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.scrollTop=0,n&&(n.scrollTop=0),e&&Wt(this._element),this._element.classList.add(Un);this._queueCallback((()=>{this._config.focus&&this._focustrap.activate(),this._isTransitioning=!1,fe.trigger(this._element,"shown.bs.modal",{relatedTarget:t})}),this._dialog,e)}_setEscapeEvent(){this._isShown?fe.on(this._element,Jn,(t=>{this._config.keyboard&&t.key===Pn?(t.preventDefault(),this.hide()):this._config.keyboard||t.key!==Pn||this._triggerBackdropTransition()})):fe.off(this._element,Jn)}_setResizeEvent(){this._isShown?fe.on(window,Tn,(()=>this._adjustDialog())):fe.off(window,Tn)}_hideModal(){this._element.style.display="none",this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._isTransitioning=!1,this._backdrop.hide((()=>{document.body.classList.remove(jn),this._resetAdjustments(),this._scrollBar.reset(),fe.trigger(this._element,Mn)}))}_showBackdrop(t){fe.on(this._element,Fn,(t=>{this._ignoreBackdropClick?this._ignoreBackdropClick=!1:t.target===t.currentTarget&&(!0===this._config.backdrop?this.hide():"static"===this._config.backdrop&&this._triggerBackdropTransition())})),this._backdrop.show(t)}_isAnimated(){return this._element.classList.contains("fade")}_triggerBackdropTransition(){if(fe.trigger(this._element,"hidePrevented.bs.modal").defaultPrevented)return;const{classList:t,scrollHeight:e,style:n}=this._element,r=e>document.documentElement.clientHeight;!r&&"hidden"===n.overflowY||t.contains(Hn)||(r||(n.overflowY="hidden"),t.add(Hn),this._queueCallback((()=>{t.remove(Hn),r||this._queueCallback((()=>{n.overflowY=""}),this._dialog)}),this._dialog),this._element.focus())}_adjustDialog(){const t=this._element.scrollHeight>document.documentElement.clientHeight,e=this._scrollBar.getWidth(),n=e>0;(!n&&t&&!Yt()||n&&!t&&Yt())&&(this._element.style.paddingLeft=`${e}px`),(n&&!t&&!Yt()||!n&&t&&Yt())&&(this._element.style.paddingRight=`${e}px`)}_resetAdjustments(){this._element.style.paddingLeft="",this._element.style.paddingRight=""}static jQueryInterface(t,e){return this.each((function(){const n=Nn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===n[t])throw new TypeError(`No method named "${t}"`);n[t](e)}}))}}fe.on(document,"click.bs.modal.data-api",'[data-bs-toggle="modal"]',(function(t){const e=Rt(this);["A","AREA"].includes(this.tagName)&&t.preventDefault(),fe.one(e,Rn,(t=>{t.defaultPrevented||fe.one(e,Mn,(()=>{jt(this)&&this.focus()}))}));const n=ke.findOne(".modal.show");n&&Nn.getInstance(n).hide();Nn.getOrCreateInstance(e).toggle(this)})),be(Nn),Kt(Nn);const Wn="offcanvas",qn={backdrop:!0,keyboard:!0,scroll:!1},Gn={backdrop:"boolean",keyboard:"boolean",scroll:"boolean"},Yn="show",Kn=".offcanvas.show",Qn="hidden.bs.offcanvas";class Vn extends ge{constructor(t,e){super(t),this._config=this._getConfig(e),this._isShown=!1,this._backdrop=this._initializeBackDrop(),this._focustrap=this._initializeFocusTrap(),this._addEventListeners()}static get NAME(){return Wn}static get Default(){return qn}toggle(t){return this._isShown?this.hide():this.show(t)}show(t){if(this._isShown)return;if(fe.trigger(this._element,"show.bs.offcanvas",{relatedTarget:t}).defaultPrevented)return;this._isShown=!0,this._element.style.visibility="visible",this._backdrop.show(),this._config.scroll||(new bn).hide(),this._element.removeAttribute("aria-hidden"),this._element.setAttribute("aria-modal",!0),this._element.setAttribute("role","dialog"),this._element.classList.add(Yn);this._queueCallback((()=>{this._config.scroll||this._focustrap.activate(),fe.trigger(this._element,"shown.bs.offcanvas",{relatedTarget:t})}),this._element,!0)}hide(){if(!this._isShown)return;if(fe.trigger(this._element,"hide.bs.offcanvas").defaultPrevented)return;this._focustrap.deactivate(),this._element.blur(),this._isShown=!1,this._element.classList.remove(Yn),this._backdrop.hide();this._queueCallback((()=>{this._element.setAttribute("aria-hidden",!0),this._element.removeAttribute("aria-modal"),this._element.removeAttribute("role"),this._element.style.visibility="hidden",this._config.scroll||(new bn).reset(),fe.trigger(this._element,Qn)}),this._element,!0)}dispose(){this._backdrop.dispose(),this._focustrap.deactivate(),super.dispose()}_getConfig(t){return t={...qn,...ye.getDataAttributes(this._element),..."object"==typeof t?t:{}},zt(Wn,t,Gn),t}_initializeBackDrop(){return new yn({className:"offcanvas-backdrop",isVisible:this._config.backdrop,isAnimated:!0,rootElement:this._element.parentNode,clickCallback:()=>this.hide()})}_initializeFocusTrap(){return new On({trapElement:this._element})}_addEventListeners(){fe.on(this._element,"keydown.dismiss.bs.offcanvas",(t=>{this._config.keyboard&&"Escape"===t.key&&this.hide()}))}static jQueryInterface(t){return this.each((function(){const e=Vn.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t]||t.startsWith("_")||"constructor"===t)throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}fe.on(document,"click.bs.offcanvas.data-api",'[data-bs-toggle="offcanvas"]',(function(t){const e=Rt(this);if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),Ut(this))return;fe.one(e,Qn,(()=>{jt(this)&&this.focus()}));const n=ke.findOne(Kn);n&&n!==e&&Vn.getInstance(n).hide();Vn.getOrCreateInstance(e).toggle(this)})),fe.on(window,"load.bs.offcanvas.data-api",(()=>ke.find(Kn).forEach((t=>Vn.getOrCreateInstance(t).show())))),be(Vn),Kt(Vn);const Zn=new Set(["background","cite","href","itemtype","longdesc","poster","src","xlink:href"]),Xn=/^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i,tr=/^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i,er=(t,e)=>{const n=t.nodeName.toLowerCase();if(e.includes(n))return!Zn.has(n)||Boolean(Xn.test(t.nodeValue)||tr.test(t.nodeValue));const r=e.filter((t=>t instanceof RegExp));for(let t=0,e=r.length;t{er(t,a)||n.removeAttribute(t.nodeName)}))}return r.body.innerHTML}const or="tooltip",ir=new Set(["sanitize","allowList","sanitizeFn"]),ar={animation:"boolean",template:"string",title:"(string|element|function)",trigger:"string",delay:"(number|object)",html:"boolean",selector:"(string|boolean)",placement:"(string|function)",offset:"(array|string|function)",container:"(string|element|boolean)",fallbackPlacements:"array",boundary:"(string|element)",customClass:"(string|function)",sanitize:"boolean",sanitizeFn:"(null|function)",allowList:"object",popperConfig:"(null|object|function)"},sr={AUTO:"auto",TOP:"top",RIGHT:Yt()?"left":"right",BOTTOM:"bottom",LEFT:Yt()?"right":"left"},lr={animation:!0,template:'',trigger:"hover focus",title:"",delay:0,html:!1,selector:!1,placement:"top",offset:[0,0],container:!1,fallbackPlacements:["top","right","bottom","left"],boundary:"clippingParents",customClass:"",sanitize:!0,sanitizeFn:null,allowList:nr,popperConfig:null},dr={HIDE:"hide.bs.tooltip",HIDDEN:"hidden.bs.tooltip",SHOW:"show.bs.tooltip",SHOWN:"shown.bs.tooltip",INSERTED:"inserted.bs.tooltip",CLICK:"click.bs.tooltip",FOCUSIN:"focusin.bs.tooltip",FOCUSOUT:"focusout.bs.tooltip",MOUSEENTER:"mouseenter.bs.tooltip",MOUSELEAVE:"mouseleave.bs.tooltip"},cr="fade",pr="show",mr="show",Ar="out",fr=".tooltip-inner",ur=".modal",hr="hide.bs.modal",gr="hover",br="focus";class vr extends ge{constructor(t,e){if(void 0===r)throw new TypeError("Bootstrap's tooltips require Popper (https://popper.js.org)");super(t),this._isEnabled=!0,this._timeout=0,this._hoverState="",this._activeTrigger={},this._popper=null,this._config=this._getConfig(e),this.tip=null,this._setListeners()}static get Default(){return lr}static get NAME(){return or}static get Event(){return dr}static get DefaultType(){return ar}enable(){this._isEnabled=!0}disable(){this._isEnabled=!1}toggleEnabled(){this._isEnabled=!this._isEnabled}toggle(t){if(this._isEnabled)if(t){const e=this._initializeOnDelegatedTarget(t);e._activeTrigger.click=!e._activeTrigger.click,e._isWithActiveTrigger()?e._enter(null,e):e._leave(null,e)}else{if(this.getTipElement().classList.contains(pr))return void this._leave(null,this);this._enter(null,this)}}dispose(){clearTimeout(this._timeout),fe.off(this._element.closest(ur),hr,this._hideModalHandler),this.tip&&this.tip.remove(),this._disposePopper(),super.dispose()}show(){if("none"===this._element.style.display)throw new Error("Please use show on visible elements");if(!this.isWithContent()||!this._isEnabled)return;const t=fe.trigger(this._element,this.constructor.Event.SHOW),e=Ht(this._element),n=null===e?this._element.ownerDocument.documentElement.contains(this._element):e.contains(this._element);if(t.defaultPrevented||!n)return;"tooltip"===this.constructor.NAME&&this.tip&&this.getTitle()!==this.tip.querySelector(fr).innerHTML&&(this._disposePopper(),this.tip.remove(),this.tip=null);const r=this.getTipElement(),o=(t=>{do{t+=Math.floor(1e6*Math.random())}while(document.getElementById(t));return t})(this.constructor.NAME);r.setAttribute("id",o),this._element.setAttribute("aria-describedby",o),this._config.animation&&r.classList.add(cr);const i="function"==typeof this._config.placement?this._config.placement.call(this,r,this._element):this._config.placement,a=this._getAttachment(i);this._addAttachmentClass(a);const{container:s}=this._config;he.set(r,this.constructor.DATA_KEY,this),this._element.ownerDocument.documentElement.contains(this.tip)||(s.append(r),fe.trigger(this._element,this.constructor.Event.INSERTED)),this._popper?this._popper.update():this._popper=$t(this._element,r,this._getPopperConfig(a)),r.classList.add(pr);const l=this._resolvePossibleFunction(this._config.customClass);l&&r.classList.add(...l.split(" ")),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>{fe.on(t,"mouseover",Nt)}));const d=this.tip.classList.contains(cr);this._queueCallback((()=>{const t=this._hoverState;this._hoverState=null,fe.trigger(this._element,this.constructor.Event.SHOWN),t===Ar&&this._leave(null,this)}),this.tip,d)}hide(){if(!this._popper)return;const t=this.getTipElement();if(fe.trigger(this._element,this.constructor.Event.HIDE).defaultPrevented)return;t.classList.remove(pr),"ontouchstart"in document.documentElement&&[].concat(...document.body.children).forEach((t=>fe.off(t,"mouseover",Nt))),this._activeTrigger.click=!1,this._activeTrigger.focus=!1,this._activeTrigger.hover=!1;const e=this.tip.classList.contains(cr);this._queueCallback((()=>{this._isWithActiveTrigger()||(this._hoverState!==mr&&t.remove(),this._cleanTipClass(),this._element.removeAttribute("aria-describedby"),fe.trigger(this._element,this.constructor.Event.HIDDEN),this._disposePopper())}),this.tip,e),this._hoverState=""}update(){null!==this._popper&&this._popper.update()}isWithContent(){return Boolean(this.getTitle())}getTipElement(){if(this.tip)return this.tip;const t=document.createElement("div");t.innerHTML=this._config.template;const e=t.children[0];return this.setContent(e),e.classList.remove(cr,pr),this.tip=e,this.tip}setContent(t){this._sanitizeAndSetContent(t,this.getTitle(),fr)}_sanitizeAndSetContent(t,e,n){const r=ke.findOne(n,t);e||!r?this.setElementContent(r,e):r.remove()}setElementContent(t,e){if(null!==t)return Ft(e)?(e=Jt(e),void(this._config.html?e.parentNode!==t&&(t.innerHTML="",t.append(e)):t.textContent=e.textContent)):void(this._config.html?(this._config.sanitize&&(e=rr(e,this._config.allowList,this._config.sanitizeFn)),t.innerHTML=e):t.textContent=e)}getTitle(){const t=this._element.getAttribute("data-bs-original-title")||this._config.title;return this._resolvePossibleFunction(t)}updateAttachment(t){return"right"===t?"end":"left"===t?"start":t}_initializeOnDelegatedTarget(t,e){return e||this.constructor.getOrCreateInstance(t.delegateTarget,this._getDelegateConfig())}_getOffset(){const{offset:t}=this._config;return"string"==typeof t?t.split(",").map((t=>Number.parseInt(t,10))):"function"==typeof t?e=>t(e,this._element):t}_resolvePossibleFunction(t){return"function"==typeof t?t.call(this._element):t}_getPopperConfig(t){const e={placement:t,modifiers:[{name:"flip",options:{fallbackPlacements:this._config.fallbackPlacements}},{name:"offset",options:{offset:this._getOffset()}},{name:"preventOverflow",options:{boundary:this._config.boundary}},{name:"arrow",options:{element:`.${this.constructor.NAME}-arrow`}},{name:"onChange",enabled:!0,phase:"afterWrite",fn:t=>this._handlePopperPlacementChange(t)}],onFirstUpdate:t=>{t.options.placement!==t.placement&&this._handlePopperPlacementChange(t)}};return{...e,..."function"==typeof this._config.popperConfig?this._config.popperConfig(e):this._config.popperConfig}}_addAttachmentClass(t){this.getTipElement().classList.add(`${this._getBasicClassPrefix()}-${this.updateAttachment(t)}`)}_getAttachment(t){return sr[t.toUpperCase()]}_setListeners(){this._config.trigger.split(" ").forEach((t=>{if("click"===t)fe.on(this._element,this.constructor.Event.CLICK,this._config.selector,(t=>this.toggle(t)));else if("manual"!==t){const e=t===gr?this.constructor.Event.MOUSEENTER:this.constructor.Event.FOCUSIN,n=t===gr?this.constructor.Event.MOUSELEAVE:this.constructor.Event.FOCUSOUT;fe.on(this._element,e,this._config.selector,(t=>this._enter(t))),fe.on(this._element,n,this._config.selector,(t=>this._leave(t)))}})),this._hideModalHandler=()=>{this._element&&this.hide()},fe.on(this._element.closest(ur),hr,this._hideModalHandler),this._config.selector?this._config={...this._config,trigger:"manual",selector:""}:this._fixTitle()}_fixTitle(){const t=this._element.getAttribute("title"),e=typeof this._element.getAttribute("data-bs-original-title");(t||"string"!==e)&&(this._element.setAttribute("data-bs-original-title",t||""),!t||this._element.getAttribute("aria-label")||this._element.textContent||this._element.setAttribute("aria-label",t),this._element.setAttribute("title",""))}_enter(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusin"===t.type?br:gr]=!0),e.getTipElement().classList.contains(pr)||e._hoverState===mr?e._hoverState=mr:(clearTimeout(e._timeout),e._hoverState=mr,e._config.delay&&e._config.delay.show?e._timeout=setTimeout((()=>{e._hoverState===mr&&e.show()}),e._config.delay.show):e.show())}_leave(t,e){e=this._initializeOnDelegatedTarget(t,e),t&&(e._activeTrigger["focusout"===t.type?br:gr]=e._element.contains(t.relatedTarget)),e._isWithActiveTrigger()||(clearTimeout(e._timeout),e._hoverState=Ar,e._config.delay&&e._config.delay.hide?e._timeout=setTimeout((()=>{e._hoverState===Ar&&e.hide()}),e._config.delay.hide):e.hide())}_isWithActiveTrigger(){for(const t in this._activeTrigger)if(this._activeTrigger[t])return!0;return!1}_getConfig(t){const e=ye.getDataAttributes(this._element);return Object.keys(e).forEach((t=>{ir.has(t)&&delete e[t]})),(t={...this.constructor.Default,...e,..."object"==typeof t&&t?t:{}}).container=!1===t.container?document.body:Jt(t.container),"number"==typeof t.delay&&(t.delay={show:t.delay,hide:t.delay}),"number"==typeof t.title&&(t.title=t.title.toString()),"number"==typeof t.content&&(t.content=t.content.toString()),zt(or,t,this.constructor.DefaultType),t.sanitize&&(t.template=rr(t.template,t.allowList,t.sanitizeFn)),t}_getDelegateConfig(){const t={};for(const e in this._config)this.constructor.Default[e]!==this._config[e]&&(t[e]=this._config[e]);return t}_cleanTipClass(){const t=this.getTipElement(),e=new RegExp(`(^|\\s)${this._getBasicClassPrefix()}\\S+`,"g"),n=t.getAttribute("class").match(e);null!==n&&n.length>0&&n.map((t=>t.trim())).forEach((e=>t.classList.remove(e)))}_getBasicClassPrefix(){return"bs-tooltip"}_handlePopperPlacementChange(t){const{state:e}=t;e&&(this.tip=e.elements.popper,this._cleanTipClass(),this._addAttachmentClass(this._getAttachment(e.placement)))}_disposePopper(){this._popper&&(this._popper.destroy(),this._popper=null)}static jQueryInterface(t){return this.each((function(){const e=vr.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}Kt(vr);const Cr={...vr.Default,placement:"right",offset:[0,8],trigger:"click",content:"",template:''},_r={...vr.DefaultType,content:"(string|element|function)"},xr={HIDE:"hide.bs.popover",HIDDEN:"hidden.bs.popover",SHOW:"show.bs.popover",SHOWN:"shown.bs.popover",INSERTED:"inserted.bs.popover",CLICK:"click.bs.popover",FOCUSIN:"focusin.bs.popover",FOCUSOUT:"focusout.bs.popover",MOUSEENTER:"mouseenter.bs.popover",MOUSELEAVE:"mouseleave.bs.popover"};class wr extends vr{static get Default(){return Cr}static get NAME(){return"popover"}static get Event(){return xr}static get DefaultType(){return _r}isWithContent(){return this.getTitle()||this._getContent()}setContent(t){this._sanitizeAndSetContent(t,this.getTitle(),".popover-header"),this._sanitizeAndSetContent(t,this._getContent(),".popover-body")}_getContent(){return this._resolvePossibleFunction(this._config.content)}_getBasicClassPrefix(){return"bs-popover"}static jQueryInterface(t){return this.each((function(){const e=wr.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}Kt(wr);const yr="scrollspy",kr=".bs.scrollspy",Br={offset:10,method:"auto",target:""},Er={offset:"number",method:"string",target:"(string|element)"},Sr="dropdown-item",Or="active",Ir=".nav-link",$r=".nav-link, .list-group-item, .dropdown-item",Pr="position";class Lr extends ge{constructor(t,e){super(t),this._scrollElement="BODY"===this._element.tagName?window:this._element,this._config=this._getConfig(e),this._offsets=[],this._targets=[],this._activeTarget=null,this._scrollHeight=0,fe.on(this._scrollElement,"scroll.bs.scrollspy",(()=>this._process())),this.refresh(),this._process()}static get Default(){return Br}static get NAME(){return yr}refresh(){const t=this._scrollElement===this._scrollElement.window?"offset":Pr,e="auto"===this._config.method?t:this._config.method,n=e===Pr?this._getScrollTop():0;this._offsets=[],this._targets=[],this._scrollHeight=this._getScrollHeight();ke.find($r,this._config.target).map((t=>{const r=Mt(t),o=r?ke.findOne(r):null;if(o){const t=o.getBoundingClientRect();if(t.width||t.height)return[ye[e](o).top+n,r]}return null})).filter((t=>t)).sort(((t,e)=>t[0]-e[0])).forEach((t=>{this._offsets.push(t[0]),this._targets.push(t[1])}))}dispose(){fe.off(this._scrollElement,kr),super.dispose()}_getConfig(t){return(t={...Br,...ye.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}}).target=Jt(t.target)||document.documentElement,zt(yr,t,Er),t}_getScrollTop(){return this._scrollElement===window?this._scrollElement.pageYOffset:this._scrollElement.scrollTop}_getScrollHeight(){return this._scrollElement.scrollHeight||Math.max(document.body.scrollHeight,document.documentElement.scrollHeight)}_getOffsetHeight(){return this._scrollElement===window?window.innerHeight:this._scrollElement.getBoundingClientRect().height}_process(){const t=this._getScrollTop()+this._config.offset,e=this._getScrollHeight(),n=this._config.offset+e-this._getOffsetHeight();if(this._scrollHeight!==e&&this.refresh(),t>=n){const t=this._targets[this._targets.length-1];this._activeTarget!==t&&this._activate(t)}else{if(this._activeTarget&&t0)return this._activeTarget=null,void this._clear();for(let e=this._offsets.length;e--;){this._activeTarget!==this._targets[e]&&t>=this._offsets[e]&&(void 0===this._offsets[e+1]||t`${e}[data-bs-target="${t}"],${e}[href="${t}"]`)),n=ke.findOne(e.join(","),this._config.target);n.classList.add(Or),n.classList.contains(Sr)?ke.findOne(".dropdown-toggle",n.closest(".dropdown")).classList.add(Or):ke.parents(n,".nav, .list-group").forEach((t=>{ke.prev(t,".nav-link, .list-group-item").forEach((t=>t.classList.add(Or))),ke.prev(t,".nav-item").forEach((t=>{ke.children(t,Ir).forEach((t=>t.classList.add(Or)))}))})),fe.trigger(this._scrollElement,"activate.bs.scrollspy",{relatedTarget:t})}_clear(){ke.find($r,this._config.target).filter((t=>t.classList.contains(Or))).forEach((t=>t.classList.remove(Or)))}static jQueryInterface(t){return this.each((function(){const e=Lr.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}fe.on(window,"load.bs.scrollspy.data-api",(()=>{ke.find('[data-bs-spy="scroll"]').forEach((t=>new Lr(t)))})),Kt(Lr);const Dr="active",Mr="fade",Rr="show",Tr=".active",Fr=":scope > li > .active";class Jr extends ge{static get NAME(){return"tab"}show(){if(this._element.parentNode&&this._element.parentNode.nodeType===Node.ELEMENT_NODE&&this._element.classList.contains(Dr))return;let t;const e=Rt(this._element),n=this._element.closest(".nav, .list-group");if(n){const e="UL"===n.nodeName||"OL"===n.nodeName?Fr:Tr;t=ke.find(e,n),t=t[t.length-1]}const r=t?fe.trigger(t,"hide.bs.tab",{relatedTarget:this._element}):null;if(fe.trigger(this._element,"show.bs.tab",{relatedTarget:t}).defaultPrevented||null!==r&&r.defaultPrevented)return;this._activate(this._element,n);const o=()=>{fe.trigger(t,"hidden.bs.tab",{relatedTarget:this._element}),fe.trigger(this._element,"shown.bs.tab",{relatedTarget:t})};e?this._activate(e,e.parentNode,o):o()}_activate(t,e,n){const r=(!e||"UL"!==e.nodeName&&"OL"!==e.nodeName?ke.children(e,Tr):ke.find(Fr,e))[0],o=n&&r&&r.classList.contains(Mr),i=()=>this._transitionComplete(t,r,n);r&&o?(r.classList.remove(Rr),this._queueCallback(i,t,!0)):i()}_transitionComplete(t,e,n){if(e){e.classList.remove(Dr);const t=ke.findOne(":scope > .dropdown-menu .active",e.parentNode);t&&t.classList.remove(Dr),"tab"===e.getAttribute("role")&&e.setAttribute("aria-selected",!1)}t.classList.add(Dr),"tab"===t.getAttribute("role")&&t.setAttribute("aria-selected",!0),Wt(t),t.classList.contains(Mr)&&t.classList.add(Rr);let r=t.parentNode;if(r&&"LI"===r.nodeName&&(r=r.parentNode),r&&r.classList.contains("dropdown-menu")){const e=t.closest(".dropdown");e&&ke.find(".dropdown-toggle",e).forEach((t=>t.classList.add(Dr))),t.setAttribute("aria-expanded",!0)}n&&n()}static jQueryInterface(t){return this.each((function(){const e=Jr.getOrCreateInstance(this);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t]()}}))}}fe.on(document,"click.bs.tab.data-api",'[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]',(function(t){if(["A","AREA"].includes(this.tagName)&&t.preventDefault(),Ut(this))return;Jr.getOrCreateInstance(this).show()})),Kt(Jr);const zr="toast",jr="hide",Ur="show",Hr="showing",Nr={animation:"boolean",autohide:"boolean",delay:"number"},Wr={animation:!0,autohide:!0,delay:5e3};class qr extends ge{constructor(t,e){super(t),this._config=this._getConfig(e),this._timeout=null,this._hasMouseInteraction=!1,this._hasKeyboardInteraction=!1,this._setListeners()}static get DefaultType(){return Nr}static get Default(){return Wr}static get NAME(){return zr}show(){if(fe.trigger(this._element,"show.bs.toast").defaultPrevented)return;this._clearTimeout(),this._config.animation&&this._element.classList.add("fade");this._element.classList.remove(jr),Wt(this._element),this._element.classList.add(Ur),this._element.classList.add(Hr),this._queueCallback((()=>{this._element.classList.remove(Hr),fe.trigger(this._element,"shown.bs.toast"),this._maybeScheduleHide()}),this._element,this._config.animation)}hide(){if(!this._element.classList.contains(Ur))return;if(fe.trigger(this._element,"hide.bs.toast").defaultPrevented)return;this._element.classList.add(Hr),this._queueCallback((()=>{this._element.classList.add(jr),this._element.classList.remove(Hr),this._element.classList.remove(Ur),fe.trigger(this._element,"hidden.bs.toast")}),this._element,this._config.animation)}dispose(){this._clearTimeout(),this._element.classList.contains(Ur)&&this._element.classList.remove(Ur),super.dispose()}_getConfig(t){return t={...Wr,...ye.getDataAttributes(this._element),..."object"==typeof t&&t?t:{}},zt(zr,t,this.constructor.DefaultType),t}_maybeScheduleHide(){this._config.autohide&&(this._hasMouseInteraction||this._hasKeyboardInteraction||(this._timeout=setTimeout((()=>{this.hide()}),this._config.delay)))}_onInteraction(t,e){switch(t.type){case"mouseover":case"mouseout":this._hasMouseInteraction=e;break;case"focusin":case"focusout":this._hasKeyboardInteraction=e}if(e)return void this._clearTimeout();const n=t.relatedTarget;this._element===n||this._element.contains(n)||this._maybeScheduleHide()}_setListeners(){fe.on(this._element,"mouseover.bs.toast",(t=>this._onInteraction(t,!0))),fe.on(this._element,"mouseout.bs.toast",(t=>this._onInteraction(t,!1))),fe.on(this._element,"focusin.bs.toast",(t=>this._onInteraction(t,!0))),fe.on(this._element,"focusout.bs.toast",(t=>this._onInteraction(t,!1)))}_clearTimeout(){clearTimeout(this._timeout),this._timeout=null}static jQueryInterface(t){return this.each((function(){const e=qr.getOrCreateInstance(this,t);if("string"==typeof t){if(void 0===e[t])throw new TypeError(`No method named "${t}"`);e[t](this)}}))}}be(qr),Kt(qr)},606:(t,e)=>{var n;n=function(t){t.version="1.2.2";var e=function(){for(var t=0,e=new Array(256),n=0;256!=n;++n)t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=1&(t=n)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1)?-306674912^t>>>1:t>>>1,e[n]=t;return"undefined"!=typeof Int32Array?new Int32Array(e):e}(),n=function(t){var e=0,n=0,r=0,o="undefined"!=typeof Int32Array?new Int32Array(4096):new Array(4096);for(r=0;256!=r;++r)o[r]=t[r];for(r=0;256!=r;++r)for(n=t[r],e=256+r;e<4096;e+=256)n=o[e]=n>>>8^t[255&n];var i=[];for(r=1;16!=r;++r)i[r-1]="undefined"!=typeof Int32Array?o.subarray(256*r,256*r+256):o.slice(256*r,256*r+256);return i}(e),r=n[0],o=n[1],i=n[2],a=n[3],s=n[4],l=n[5],d=n[6],c=n[7],p=n[8],m=n[9],A=n[10],f=n[11],u=n[12],h=n[13],g=n[14];t.table=e,t.bstr=function(t,n){for(var r=-1^n,o=0,i=t.length;o>>8^e[255&(r^t.charCodeAt(o++))];return~r},t.buf=function(t,n){for(var b=-1^n,v=t.length-15,C=0;C>8&255]^u[t[C++]^b>>16&255]^f[t[C++]^b>>>24]^A[t[C++]]^m[t[C++]]^p[t[C++]]^c[t[C++]]^d[t[C++]]^l[t[C++]]^s[t[C++]]^a[t[C++]]^i[t[C++]]^o[t[C++]]^r[t[C++]]^e[t[C++]];for(v+=15;C>>8^e[255&(b^t[C++])];return~b},t.str=function(t,n){for(var r=-1^n,o=0,i=t.length,a=0,s=0;o>>8^e[255&(r^a)]:a<2048?r=(r=r>>>8^e[255&(r^(192|a>>6&31))])>>>8^e[255&(r^(128|63&a))]:a>=55296&&a<57344?(a=64+(1023&a),s=1023&t.charCodeAt(o++),r=(r=(r=(r=r>>>8^e[255&(r^(240|a>>8&7))])>>>8^e[255&(r^(128|a>>2&63))])>>>8^e[255&(r^(128|s>>6&15|(3&a)<<4))])>>>8^e[255&(r^(128|63&s))]):r=(r=(r=r>>>8^e[255&(r^(224|a>>12&15))])>>>8^e[255&(r^(128|a>>6&63))])>>>8^e[255&(r^(128|63&a))];return~r}},"undefined"==typeof DO_NOT_EXPORT_CRC?n(e):n({})},666:(t,e,n)=>{"use strict";n.d(e,{Z:()=>s});var r=n(15),o=n.n(r),i=n(645),a=n.n(i)()(o());a.push([t.id,"@charset \"UTF-8\";/*!\n * Bootstrap v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,\"Noto Sans\",\"Liberation Sans\",sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:\"— \"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:#6c757d}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{width:100%;padding-right:var(--bs-gutter-x,.75rem);padding-left:var(--bs-gutter-x,.75rem);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-bg:transparent;--bs-table-accent-bg:transparent;--bs-table-striped-color:#212529;--bs-table-striped-bg:rgba(0, 0, 0, 0.05);--bs-table-active-color:#212529;--bs-table-active-bg:rgba(0, 0, 0, 0.1);--bs-table-hover-color:#212529;--bs-table-hover-bg:rgba(0, 0, 0, 0.075);width:100%;margin-bottom:1rem;color:#212529;vertical-align:top;border-color:#dee2e6}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:first-child){border-top:2px solid currentColor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg:var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg:var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-bg:#cfe2ff;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:#000;border-color:#bacbe6}.table-secondary{--bs-table-bg:#e2e3e5;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:#000;border-color:#cbccce}.table-success{--bs-table-bg:#d1e7dd;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:#000;border-color:#bcd0c7}.table-info{--bs-table-bg:#cff4fc;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:#000;border-color:#badce3}.table-warning{--bs-table-bg:#fff3cd;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:#000;border-color:#e6dbb9}.table-danger{--bs-table-bg:#f8d7da;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:#000;border-color:#dfc2c4}.table-light{--bs-table-bg:#f8f9fa;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:#000;border-color:#dfe0e1}.table-dark{--bs-table-bg:#212529;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:#fff;border-color:#373b3e}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{width:3rem;height:auto;padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{height:1.5em;border-radius:.25rem}.form-control-color::-webkit-color-swatch{height:1.5em;border-radius:.25rem}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(0.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size=\"1\"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:.2rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:.3rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e\")}.form-check-input:checked[type=radio]{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\")}.form-switch .form-check-input:checked{background-position:right center;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\")}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;height:100%;padding:1rem .75rem;pointer-events:none;border:1px solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control{padding:1rem .75rem}.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus{z-index:3}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:3}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(25,135,84,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#198754;padding-right:calc(1.5em + .75rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:#198754}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size=\"1\"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size=\"1\"]{padding-right:4.125rem;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\"),url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:#198754}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:#198754}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group .form-control.is-valid,.input-group .form-select.is-valid,.was-validated .input-group .form-control:valid,.was-validated .input-group .form-select:valid{z-index:1}.input-group .form-control.is-valid:focus,.input-group .form-select.is-valid:focus,.was-validated .input-group .form-control:valid:focus,.was-validated .input-group .form-select:valid:focus{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:#dc3545}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size=\"1\"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size=\"1\"]{padding-right:4.125rem;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\"),url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:#dc3545}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:#dc3545}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group .form-control.is-invalid,.input-group .form-select.is-invalid,.was-validated .input-group .form-control:invalid,.was-validated .input-group .form-select:invalid{z-index:2}.input-group .form-control.is-invalid:focus,.input-group .form-select.is-invalid:focus,.was-validated .input-group .form-control:invalid:focus,.was-validated .input-group .form-select:invalid:focus{z-index:3}.btn{display:inline-block;font-weight:400;line-height:1.5;color:#212529;text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529}.btn-check:focus+.btn,.btn:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{pointer-events:none;opacity:.65}.btn-primary{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-primary:hover{color:#fff;background-color:#0b5ed7;border-color:#0a58ca}.btn-check:focus+.btn-primary,.btn-primary:focus{color:#fff;background-color:#0b5ed7;border-color:#0a58ca;box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-check:active+.btn-primary,.btn-check:checked+.btn-primary,.btn-primary.active,.btn-primary:active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0a58ca;border-color:#0a53be}.btn-check:active+.btn-primary:focus,.btn-check:checked+.btn-primary:focus,.btn-primary.active:focus,.btn-primary:active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5c636a;border-color:#565e64}.btn-check:focus+.btn-secondary,.btn-secondary:focus{color:#fff;background-color:#5c636a;border-color:#565e64;box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-check:active+.btn-secondary,.btn-check:checked+.btn-secondary,.btn-secondary.active,.btn-secondary:active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#565e64;border-color:#51585e}.btn-check:active+.btn-secondary:focus,.btn-check:checked+.btn-secondary:focus,.btn-secondary.active:focus,.btn-secondary:active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-success{color:#fff;background-color:#198754;border-color:#198754}.btn-success:hover{color:#fff;background-color:#157347;border-color:#146c43}.btn-check:focus+.btn-success,.btn-success:focus{color:#fff;background-color:#157347;border-color:#146c43;box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-check:active+.btn-success,.btn-check:checked+.btn-success,.btn-success.active,.btn-success:active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#146c43;border-color:#13653f}.btn-check:active+.btn-success:focus,.btn-check:checked+.btn-success:focus,.btn-success.active:focus,.btn-success:active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#198754;border-color:#198754}.btn-info{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-info:hover{color:#000;background-color:#31d2f2;border-color:#25cff2}.btn-check:focus+.btn-info,.btn-info:focus{color:#000;background-color:#31d2f2;border-color:#25cff2;box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-check:active+.btn-info,.btn-check:checked+.btn-info,.btn-info.active,.btn-info:active,.show>.btn-info.dropdown-toggle{color:#000;background-color:#3dd5f3;border-color:#25cff2}.btn-check:active+.btn-info:focus,.btn-check:checked+.btn-info:focus,.btn-info.active:focus,.btn-info:active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-info.disabled,.btn-info:disabled{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-warning{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#000;background-color:#ffca2c;border-color:#ffc720}.btn-check:focus+.btn-warning,.btn-warning:focus{color:#000;background-color:#ffca2c;border-color:#ffc720;box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-check:active+.btn-warning,.btn-check:checked+.btn-warning,.btn-warning.active,.btn-warning:active,.show>.btn-warning.dropdown-toggle{color:#000;background-color:#ffcd39;border-color:#ffc720}.btn-check:active+.btn-warning:focus,.btn-check:checked+.btn-warning:focus,.btn-warning.active:focus,.btn-warning:active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#bb2d3b;border-color:#b02a37}.btn-check:focus+.btn-danger,.btn-danger:focus{color:#fff;background-color:#bb2d3b;border-color:#b02a37;box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-check:active+.btn-danger,.btn-check:checked+.btn-danger,.btn-danger.active,.btn-danger:active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#b02a37;border-color:#a52834}.btn-check:active+.btn-danger:focus,.btn-check:checked+.btn-danger:focus,.btn-danger.active:focus,.btn-danger:active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-light{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:focus+.btn-light,.btn-light:focus{color:#000;background-color:#f9fafb;border-color:#f9fafb;box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-check:active+.btn-light,.btn-check:checked+.btn-light,.btn-light.active,.btn-light:active,.show>.btn-light.dropdown-toggle{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:active+.btn-light:focus,.btn-check:checked+.btn-light:focus,.btn-light.active:focus,.btn-light:active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-light.disabled,.btn-light:disabled{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-dark{color:#fff;background-color:#212529;border-color:#212529}.btn-dark:hover{color:#fff;background-color:#1c1f23;border-color:#1a1e21}.btn-check:focus+.btn-dark,.btn-dark:focus{color:#fff;background-color:#1c1f23;border-color:#1a1e21;box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-check:active+.btn-dark,.btn-check:checked+.btn-dark,.btn-dark.active,.btn-dark:active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1a1e21;border-color:#191c1f}.btn-check:active+.btn-dark:focus,.btn-check:checked+.btn-dark:focus,.btn-dark.active:focus,.btn-dark:active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#212529;border-color:#212529}.btn-outline-primary{color:#0d6efd;border-color:#0d6efd}.btn-outline-primary:hover{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-check:active+.btn-outline-primary,.btn-check:checked+.btn-outline-primary,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show,.btn-outline-primary:active{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:active+.btn-outline-primary:focus,.btn-check:checked+.btn-outline-primary:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus,.btn-outline-primary:active:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#0d6efd;background-color:transparent}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-check:active+.btn-outline-secondary,.btn-check:checked+.btn-outline-secondary,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show,.btn-outline-secondary:active{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:active+.btn-outline-secondary:focus,.btn-check:checked+.btn-outline-secondary:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus,.btn-outline-secondary:active:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-success{color:#198754;border-color:#198754}.btn-outline-success:hover{color:#fff;background-color:#198754;border-color:#198754}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:active+.btn-outline-success,.btn-check:checked+.btn-outline-success,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show,.btn-outline-success:active{color:#fff;background-color:#198754;border-color:#198754}.btn-check:active+.btn-outline-success:focus,.btn-check:checked+.btn-outline-success:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus,.btn-outline-success:active:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#198754;background-color:transparent}.btn-outline-info{color:#0dcaf0;border-color:#0dcaf0}.btn-outline-info:hover{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:active+.btn-outline-info,.btn-check:checked+.btn-outline-info,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show,.btn-outline-info:active{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:active+.btn-outline-info:focus,.btn-check:checked+.btn-outline-info:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus,.btn-outline-info:active:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#0dcaf0;background-color:transparent}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:active+.btn-outline-warning,.btn-check:checked+.btn-outline-warning,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show,.btn-outline-warning:active{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:active+.btn-outline-warning:focus,.btn-check:checked+.btn-outline-warning:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus,.btn-outline-warning:active:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:active+.btn-outline-danger,.btn-check:checked+.btn-outline-danger,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show,.btn-outline-danger:active{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:active+.btn-outline-danger:focus,.btn-check:checked+.btn-outline-danger:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus,.btn-outline-danger:active:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-check:active+.btn-outline-light,.btn-check:checked+.btn-outline-light,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show,.btn-outline-light:active{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:active+.btn-outline-light:focus,.btn-check:checked+.btn-outline-light:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus,.btn-outline-light:active:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-dark{color:#212529;border-color:#212529}.btn-outline-dark:hover{color:#fff;background-color:#212529;border-color:#212529}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-check:active+.btn-outline-dark,.btn-check:checked+.btn-outline-dark,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show,.btn-outline-dark:active{color:#fff;background-color:#212529;border-color:#212529}.btn-check:active+.btn-outline-dark:focus,.btn-check:checked+.btn-outline-dark:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus,.btn-outline-dark:active:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#212529;background-color:transparent}.btn-link{font-weight:400;color:#0d6efd;text-decoration:underline}.btn-link:hover{color:#0a58ca}.btn-link.disabled,.btn-link:disabled{color:#6c757d}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropend,.dropstart,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;z-index:1000;display:none;min-width:10rem;padding:.5rem 0;margin:0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:.125rem}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\"}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid rgba(0,0,0,.15)}.dropdown-item{display:block;width:100%;padding:.25rem 1rem;clear:both;font-weight:400;color:#212529;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#1e2125;background-color:#e9ecef}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#0d6efd}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1rem;color:#212529}.dropdown-menu-dark{color:#dee2e6;background-color:#343a40;border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:focus,.dropdown-menu-dark .dropdown-item:hover{color:#fff;background-color:rgba(255,255,255,.15)}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{color:#fff;background-color:#0d6efd}.dropdown-menu-dark .dropdown-item.disabled,.dropdown-menu-dark .dropdown-item:disabled{color:#adb5bd}.dropdown-menu-dark .dropdown-divider{border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item-text{color:#dee2e6}.dropdown-menu-dark .dropdown-header{color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem;color:#0d6efd;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:#0a58ca}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{margin-bottom:-1px;background:0 0;border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{background:0 0;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#0d6efd}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-top:.5rem;padding-bottom:.5rem}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;text-decoration:none;white-space:nowrap}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem;transition:box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 .25rem}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas-header{display:none}.navbar-expand-sm .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-sm .offcanvas-bottom,.navbar-expand-sm .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas-header{display:none}.navbar-expand-md .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-md .offcanvas-bottom,.navbar-expand-md .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas-header{display:none}.navbar-expand-lg .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-lg .offcanvas-bottom,.navbar-expand-lg .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas-header{display:none}.navbar-expand-xl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xl .offcanvas-bottom,.navbar-expand-xl .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xxl .offcanvas-bottom,.navbar-expand-xxl .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas-header{display:none}.navbar-expand .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand .offcanvas-bottom,.navbar-expand .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.55)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.55);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\")}.navbar-light .navbar-text{color:rgba(0,0,0,.55)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.55)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.55);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\")}.navbar-dark .navbar-text{color:rgba(255,255,255,.55)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:1rem 1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-.25rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:1rem}.card-header{padding:.5rem 1rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.5rem;margin-bottom:-.5rem;margin-left:-.5rem;border-bottom:0}.card-header-pills{margin-right:-.5rem;margin-left:-.5rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-group>.card{margin-bottom:.75rem}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:1rem 1.25rem;font-size:1rem;color:#212529;text-align:left;background-color:#fff;border:0;border-radius:0;overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:#0c63e4;background-color:#e7f1ff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125)}.accordion-button:not(.collapsed)::after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");transform:rotate(-180deg)}.accordion-button::after{flex-shrink:0;width:1.25rem;height:1.25rem;margin-left:auto;content:\"\";background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-size:1.25rem;transition:transform .2s ease-in-out}@media (prefers-reduced-motion:reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item:first-of-type .accordion-button{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button{border-radius:0}.breadcrumb{display:flex;flex-wrap:wrap;padding:0 0;margin-bottom:1rem;list-style:none}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:.5rem;color:#6c757d;content:var(--bs-breadcrumb-divider, \"/\")}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;color:#0d6efd;text-decoration:none;background-color:#fff;border:1px solid #dee2e6;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:#0a58ca;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;color:#0a58ca;background-color:#e9ecef;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{z-index:3;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;background-color:#fff;border-color:#dee2e6}.page-link{padding:.375rem .75rem}.page-item:first-child .page-link{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.35em .65em;font-size:.75em;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{position:relative;padding:1rem 1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{color:#084298;background-color:#cfe2ff;border-color:#b6d4fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{color:#41464b;background-color:#e2e3e5;border-color:#d3d6d8}.alert-secondary .alert-link{color:#34383c}.alert-success{color:#0f5132;background-color:#d1e7dd;border-color:#badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{color:#055160;background-color:#cff4fc;border-color:#b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{color:#664d03;background-color:#fff3cd;border-color:#ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{color:#842029;background-color:#f8d7da;border-color:#f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{color:#636464;background-color:#fefefe;border-color:#fdfdfe}.alert-light .alert-link{color:#4f5050}.alert-dark{color:#141619;background-color:#d3d3d4;border-color:#bcbebf}.alert-dark .alert-link{color:#101214}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#0d6efd;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:1s linear infinite progress-bar-stripes;animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>li::before{content:counters(section, \".\") \". \";counter-increment:section}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.5rem 1rem;color:#212529;text-decoration:none;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#084298;background-color:#bacbe6}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#084298;border-color:#084298}.list-group-item-secondary{color:#41464b;background-color:#e2e3e5}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#41464b;background-color:#cbccce}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#41464b;border-color:#41464b}.list-group-item-success{color:#0f5132;background-color:#d1e7dd}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#0f5132;background-color:#bcd0c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0f5132;border-color:#0f5132}.list-group-item-info{color:#055160;background-color:#cff4fc}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#055160;background-color:#badce3}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#055160;border-color:#055160}.list-group-item-warning{color:#664d03;background-color:#fff3cd}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#664d03;background-color:#e6dbb9}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#664d03;border-color:#664d03}.list-group-item-danger{color:#842029;background-color:#f8d7da}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#842029;background-color:#dfc2c4}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#842029;border-color:#842029}.list-group-item-light{color:#636464;background-color:#fefefe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#636464;background-color:#e5e5e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#636464;border-color:#636464}.list-group-item-dark{color:#141619;background-color:#d3d3d4}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#141619;background-color:#bebebf}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#141619;border-color:#141619}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:#000;background:transparent url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e\") center/1em auto no-repeat;border:0;border-radius:.25rem;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);opacity:1}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{width:350px;max-width:100%;font-size:.875rem;pointer-events:auto;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .5rem 1rem rgba(0,0,0,.15);border-radius:.25rem}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{display:flex;align-items:center;padding:.5rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-header .btn-close{margin-right:-.375rem;margin-left:.75rem}.toast-body{padding:.75rem;word-wrap:break-word}.modal{position:fixed;top:0;left:0;z-index:1055;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1050;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .btn-close{padding:.5rem .5rem;margin:-.5rem -.5rem -.5rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;flex-shrink:0;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{height:calc(100% - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}.modal-fullscreen .modal-footer{border-radius:0}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}.modal-fullscreen-sm-down .modal-footer{border-radius:0}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}.modal-fullscreen-md-down .modal-footer{border-radius:0}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}.modal-fullscreen-lg-down .modal-footer{border-radius:0}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}.modal-fullscreen-xl-down .modal-footer{border-radius:0}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}.modal-fullscreen-xxl-down .modal-footer{border-radius:0}}.tooltip{position:absolute;z-index:1080;display:block;margin:0;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .tooltip-arrow::before{position:absolute;content:\"\";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before{top:-1px;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[data-popper-placement^=right],.bs-tooltip-end{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before{right:-1px;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[data-popper-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before{bottom:-1px;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[data-popper-placement^=left],.bs-tooltip-start{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before{left:-1px;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1070;display:block;max-width:276px;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .popover-arrow{position:absolute;display:block;width:1rem;height:.5rem}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:\"\";border-color:transparent;border-style:solid}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-top>.popover-arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-end>.popover-arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:\"\";border-bottom:1px solid #f0f0f0}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-start>.popover-arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem 1rem;margin-bottom:0;font-size:1rem;background-color:#f0f0f0;border-bottom:1px solid rgba(0,0,0,.2);border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:1rem 1rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:\"\"}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\")}.carousel-control-next-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@-webkit-keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:.75s linear infinite spinner-border;animation:.75s linear infinite spinner-border}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:.75s linear infinite spinner-grow;animation:.75s linear infinite spinner-grow}.spinner-grow-sm{width:1rem;height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{-webkit-animation-duration:1.5s;animation-duration:1.5s}}.offcanvas{position:fixed;bottom:0;z-index:1045;display:flex;flex-direction:column;max-width:100%;visibility:hidden;background-color:#fff;background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem}.offcanvas-header .btn-close{padding:.5rem .5rem;margin-top:-.5rem;margin-right:-.5rem;margin-bottom:-.5rem}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:1rem 1rem;overflow-y:auto}.offcanvas-start{top:0;left:0;width:400px;border-right:1px solid rgba(0,0,0,.2);transform:translateX(-100%)}.offcanvas-end{top:0;right:0;width:400px;border-left:1px solid rgba(0,0,0,.2);transform:translateX(100%)}.offcanvas-top{top:0;right:0;left:0;height:30vh;max-height:100%;border-bottom:1px solid rgba(0,0,0,.2);transform:translateY(-100%)}.offcanvas-bottom{right:0;left:0;height:30vh;max-height:100%;border-top:1px solid rgba(0,0,0,.2);transform:translateY(100%)}.offcanvas.show{transform:none}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentColor;opacity:.5}.placeholder.btn::before{display:inline-block;content:\"\"}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{-webkit-animation:placeholder-glow 2s ease-in-out infinite;animation:placeholder-glow 2s ease-in-out infinite}@-webkit-keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;-webkit-animation:placeholder-wave 2s linear infinite;animation:placeholder-wave 2s linear infinite}@-webkit-keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:\"\"}.link-primary{color:#0d6efd}.link-primary:focus,.link-primary:hover{color:#0a58ca}.link-secondary{color:#6c757d}.link-secondary:focus,.link-secondary:hover{color:#565e64}.link-success{color:#198754}.link-success:focus,.link-success:hover{color:#146c43}.link-info{color:#0dcaf0}.link-info:focus,.link-info:hover{color:#3dd5f3}.link-warning{color:#ffc107}.link-warning:focus,.link-warning:hover{color:#ffcd39}.link-danger{color:#dc3545}.link-danger:focus,.link-danger:hover{color:#b02a37}.link-light{color:#f8f9fa}.link-light:focus,.link-light:hover{color:#f9fafb}.link-dark{color:#212529}.link-dark:focus,.link-dark:hover{color:#1a1e21}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:\"\"}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:\"\"}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentColor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translateX(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:1px solid #dee2e6!important}.border-0{border:0!important}.border-top{border-top:1px solid #dee2e6!important}.border-top-0{border-top:0!important}.border-end{border-right:1px solid #dee2e6!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:1px solid #dee2e6!important}.border-start-0{border-left:0!important}.border-primary{border-color:#0d6efd!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#198754!important}.border-info{border-color:#0dcaf0!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#212529!important}.border-white{border-color:#fff!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-light{font-weight:300!important}.fw-lighter{font-weight:lighter!important}.fw-normal{font-weight:400!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:#6c757d!important}.text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--bs-text-opacity:1;color:rgba(255,255,255,.5)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:0.25}.text-opacity-50{--bs-text-opacity:0.5}.text-opacity-75{--bs-text-opacity:0.75}.text-opacity-100{--bs-text-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-opacity-10{--bs-bg-opacity:0.1}.bg-opacity-25{--bs-bg-opacity:0.25}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:.25rem!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:.2rem!important}.rounded-2{border-radius:.25rem!important}.rounded-3{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-end{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-start{border-bottom-left-radius:.25rem!important;border-top-left-radius:.25rem!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}\n/*# sourceMappingURL=bootstrap.min.css.map */","",{version:3,sources:["webpack://./node_modules/bootstrap/dist/css/bootstrap.min.css","webpack://./node_modules/bootstrap/scss/bootstrap.scss","webpack://./node_modules/bootstrap/scss/_root.scss","webpack://./node_modules/bootstrap/dist/css/dist/css/bootstrap.css","webpack://./node_modules/bootstrap/scss/_reboot.scss","webpack://./node_modules/bootstrap/scss/vendor/_rfs.scss","webpack://./node_modules/bootstrap/scss/mixins/_border-radius.scss","webpack://./node_modules/bootstrap/scss/_type.scss","webpack://./node_modules/bootstrap/scss/mixins/_lists.scss","webpack://./node_modules/bootstrap/scss/_images.scss","webpack://./node_modules/bootstrap/scss/mixins/_image.scss","webpack://./node_modules/bootstrap/scss/_containers.scss","webpack://./node_modules/bootstrap/scss/mixins/_container.scss","webpack://./node_modules/bootstrap/scss/mixins/_breakpoints.scss","webpack://./node_modules/bootstrap/scss/_grid.scss","webpack://./node_modules/bootstrap/scss/mixins/_grid.scss","webpack://./node_modules/bootstrap/scss/_tables.scss","webpack://./node_modules/bootstrap/scss/mixins/_table-variants.scss","webpack://./node_modules/bootstrap/scss/forms/_labels.scss","webpack://./node_modules/bootstrap/scss/forms/_form-text.scss","webpack://./node_modules/bootstrap/scss/forms/_form-control.scss","webpack://./node_modules/bootstrap/scss/mixins/_transition.scss","webpack://./node_modules/bootstrap/scss/mixins/_gradients.scss","webpack://./node_modules/bootstrap/scss/forms/_form-select.scss","webpack://./node_modules/bootstrap/scss/forms/_form-check.scss","webpack://./node_modules/bootstrap/scss/forms/_form-range.scss","webpack://./node_modules/bootstrap/scss/forms/_floating-labels.scss","webpack://./node_modules/bootstrap/scss/forms/_input-group.scss","webpack://./node_modules/bootstrap/scss/mixins/_forms.scss","webpack://./node_modules/bootstrap/scss/_buttons.scss","webpack://./node_modules/bootstrap/scss/mixins/_buttons.scss","webpack://./node_modules/bootstrap/scss/_transitions.scss","webpack://./node_modules/bootstrap/scss/_dropdown.scss","webpack://./node_modules/bootstrap/scss/mixins/_caret.scss","webpack://./node_modules/bootstrap/scss/_button-group.scss","webpack://./node_modules/bootstrap/scss/_nav.scss","webpack://./node_modules/bootstrap/scss/_navbar.scss","webpack://./node_modules/bootstrap/scss/_card.scss","webpack://./node_modules/bootstrap/scss/_accordion.scss","webpack://./node_modules/bootstrap/scss/_breadcrumb.scss","webpack://./node_modules/bootstrap/scss/_pagination.scss","webpack://./node_modules/bootstrap/scss/mixins/_pagination.scss","webpack://./node_modules/bootstrap/scss/_badge.scss","webpack://./node_modules/bootstrap/scss/_alert.scss","webpack://./node_modules/bootstrap/scss/mixins/_alert.scss","webpack://./node_modules/bootstrap/scss/_progress.scss","webpack://./node_modules/bootstrap/scss/_list-group.scss","webpack://./node_modules/bootstrap/scss/mixins/_list-group.scss","webpack://./node_modules/bootstrap/scss/_close.scss","webpack://./node_modules/bootstrap/scss/_toasts.scss","webpack://./node_modules/bootstrap/scss/_modal.scss","webpack://./node_modules/bootstrap/scss/mixins/_backdrop.scss","webpack://./node_modules/bootstrap/scss/_tooltip.scss","webpack://./node_modules/bootstrap/scss/mixins/_reset-text.scss","webpack://./node_modules/bootstrap/scss/_popover.scss","webpack://./node_modules/bootstrap/scss/_carousel.scss","webpack://./node_modules/bootstrap/scss/mixins/_clearfix.scss","webpack://./node_modules/bootstrap/scss/_spinners.scss","webpack://./node_modules/bootstrap/scss/_offcanvas.scss","webpack://./node_modules/bootstrap/scss/_placeholders.scss","webpack://./node_modules/bootstrap/scss/helpers/_colored-links.scss","webpack://./node_modules/bootstrap/scss/helpers/_ratio.scss","webpack://./node_modules/bootstrap/scss/helpers/_position.scss","webpack://./node_modules/bootstrap/scss/helpers/_stacks.scss","webpack://./node_modules/bootstrap/scss/helpers/_visually-hidden.scss","webpack://./node_modules/bootstrap/scss/mixins/_visually-hidden.scss","webpack://./node_modules/bootstrap/scss/helpers/_stretched-link.scss","webpack://./node_modules/bootstrap/scss/helpers/_text-truncation.scss","webpack://./node_modules/bootstrap/scss/mixins/_text-truncate.scss","webpack://./node_modules/bootstrap/scss/helpers/_vr.scss","webpack://./node_modules/bootstrap/scss/mixins/_utilities.scss","webpack://./node_modules/bootstrap/scss/utilities/_api.scss"],names:[],mappings:"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",sourcesContent:["@charset \"UTF-8\";/*!\n * Bootstrap v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */:root{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13,110,253;--bs-secondary-rgb:108,117,125;--bs-success-rgb:25,135,84;--bs-info-rgb:13,202,240;--bs-warning-rgb:255,193,7;--bs-danger-rgb:220,53,69;--bs-light-rgb:248,249,250;--bs-dark-rgb:33,37,41;--bs-white-rgb:255,255,255;--bs-black-rgb:0,0,0;--bs-body-color-rgb:33,37,41;--bs-body-bg-rgb:255,255,255;--bs-font-sans-serif:system-ui,-apple-system,\"Segoe UI\",Roboto,\"Helvetica Neue\",Arial,\"Noto Sans\",\"Liberation Sans\",sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\",\"Segoe UI Symbol\",\"Noto Color Emoji\";--bs-font-monospace:SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",\"Courier New\",monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-bg:#fff}*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:var(--bs-body-font-family);font-size:var(--bs-body-font-size);font-weight:var(--bs-body-font-weight);line-height:var(--bs-body-line-height);color:var(--bs-body-color);text-align:var(--bs-body-text-align);background-color:var(--bs-body-bg);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}.h1,h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){.h1,h1{font-size:2.5rem}}.h2,h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){.h2,h2{font-size:2rem}}.h3,h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){.h3,h3{font-size:1.75rem}}.h4,h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){.h4,h4{font-size:1.5rem}}.h5,h5{font-size:1.25rem}.h6,h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}.small,small{font-size:.875em}.mark,mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:var(--bs-font-monospace);font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::-webkit-file-upload-button{font:inherit}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}.lead{font-size:1.25rem;font-weight:300}.display-1{font-size:calc(1.625rem + 4.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-1{font-size:5rem}}.display-2{font-size:calc(1.575rem + 3.9vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-2{font-size:4.5rem}}.display-3{font-size:calc(1.525rem + 3.3vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-3{font-size:4rem}}.display-4{font-size:calc(1.475rem + 2.7vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-4{font-size:3.5rem}}.display-5{font-size:calc(1.425rem + 2.1vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-5{font-size:3rem}}.display-6{font-size:calc(1.375rem + 1.5vw);font-weight:300;line-height:1.2}@media (min-width:1200px){.display-6{font-size:2.5rem}}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;list-style:none}.list-inline-item{display:inline-block}.list-inline-item:not(:last-child){margin-right:.5rem}.initialism{font-size:.875em;text-transform:uppercase}.blockquote{margin-bottom:1rem;font-size:1.25rem}.blockquote>:last-child{margin-bottom:0}.blockquote-footer{margin-top:-1rem;margin-bottom:1rem;font-size:.875em;color:#6c757d}.blockquote-footer::before{content:\"— \"}.img-fluid{max-width:100%;height:auto}.img-thumbnail{padding:.25rem;background-color:#fff;border:1px solid #dee2e6;border-radius:.25rem;max-width:100%;height:auto}.figure{display:inline-block}.figure-img{margin-bottom:.5rem;line-height:1}.figure-caption{font-size:.875em;color:#6c757d}.container,.container-fluid,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{width:100%;padding-right:var(--bs-gutter-x,.75rem);padding-left:var(--bs-gutter-x,.75rem);margin-right:auto;margin-left:auto}@media (min-width:576px){.container,.container-sm{max-width:540px}}@media (min-width:768px){.container,.container-md,.container-sm{max-width:720px}}@media (min-width:992px){.container,.container-lg,.container-md,.container-sm{max-width:960px}}@media (min-width:1200px){.container,.container-lg,.container-md,.container-sm,.container-xl{max-width:1140px}}@media (min-width:1400px){.container,.container-lg,.container-md,.container-sm,.container-xl,.container-xxl{max-width:1320px}}.row{--bs-gutter-x:1.5rem;--bs-gutter-y:0;display:flex;flex-wrap:wrap;margin-top:calc(-1 * var(--bs-gutter-y));margin-right:calc(-.5 * var(--bs-gutter-x));margin-left:calc(-.5 * var(--bs-gutter-x))}.row>*{flex-shrink:0;width:100%;max-width:100%;padding-right:calc(var(--bs-gutter-x) * .5);padding-left:calc(var(--bs-gutter-x) * .5);margin-top:var(--bs-gutter-y)}.col{flex:1 0 0%}.row-cols-auto>*{flex:0 0 auto;width:auto}.row-cols-1>*{flex:0 0 auto;width:100%}.row-cols-2>*{flex:0 0 auto;width:50%}.row-cols-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-4>*{flex:0 0 auto;width:25%}.row-cols-5>*{flex:0 0 auto;width:20%}.row-cols-6>*{flex:0 0 auto;width:16.6666666667%}.col-auto{flex:0 0 auto;width:auto}.col-1{flex:0 0 auto;width:8.33333333%}.col-2{flex:0 0 auto;width:16.66666667%}.col-3{flex:0 0 auto;width:25%}.col-4{flex:0 0 auto;width:33.33333333%}.col-5{flex:0 0 auto;width:41.66666667%}.col-6{flex:0 0 auto;width:50%}.col-7{flex:0 0 auto;width:58.33333333%}.col-8{flex:0 0 auto;width:66.66666667%}.col-9{flex:0 0 auto;width:75%}.col-10{flex:0 0 auto;width:83.33333333%}.col-11{flex:0 0 auto;width:91.66666667%}.col-12{flex:0 0 auto;width:100%}.offset-1{margin-left:8.33333333%}.offset-2{margin-left:16.66666667%}.offset-3{margin-left:25%}.offset-4{margin-left:33.33333333%}.offset-5{margin-left:41.66666667%}.offset-6{margin-left:50%}.offset-7{margin-left:58.33333333%}.offset-8{margin-left:66.66666667%}.offset-9{margin-left:75%}.offset-10{margin-left:83.33333333%}.offset-11{margin-left:91.66666667%}.g-0,.gx-0{--bs-gutter-x:0}.g-0,.gy-0{--bs-gutter-y:0}.g-1,.gx-1{--bs-gutter-x:0.25rem}.g-1,.gy-1{--bs-gutter-y:0.25rem}.g-2,.gx-2{--bs-gutter-x:0.5rem}.g-2,.gy-2{--bs-gutter-y:0.5rem}.g-3,.gx-3{--bs-gutter-x:1rem}.g-3,.gy-3{--bs-gutter-y:1rem}.g-4,.gx-4{--bs-gutter-x:1.5rem}.g-4,.gy-4{--bs-gutter-y:1.5rem}.g-5,.gx-5{--bs-gutter-x:3rem}.g-5,.gy-5{--bs-gutter-y:3rem}@media (min-width:576px){.col-sm{flex:1 0 0%}.row-cols-sm-auto>*{flex:0 0 auto;width:auto}.row-cols-sm-1>*{flex:0 0 auto;width:100%}.row-cols-sm-2>*{flex:0 0 auto;width:50%}.row-cols-sm-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-sm-4>*{flex:0 0 auto;width:25%}.row-cols-sm-5>*{flex:0 0 auto;width:20%}.row-cols-sm-6>*{flex:0 0 auto;width:16.6666666667%}.col-sm-auto{flex:0 0 auto;width:auto}.col-sm-1{flex:0 0 auto;width:8.33333333%}.col-sm-2{flex:0 0 auto;width:16.66666667%}.col-sm-3{flex:0 0 auto;width:25%}.col-sm-4{flex:0 0 auto;width:33.33333333%}.col-sm-5{flex:0 0 auto;width:41.66666667%}.col-sm-6{flex:0 0 auto;width:50%}.col-sm-7{flex:0 0 auto;width:58.33333333%}.col-sm-8{flex:0 0 auto;width:66.66666667%}.col-sm-9{flex:0 0 auto;width:75%}.col-sm-10{flex:0 0 auto;width:83.33333333%}.col-sm-11{flex:0 0 auto;width:91.66666667%}.col-sm-12{flex:0 0 auto;width:100%}.offset-sm-0{margin-left:0}.offset-sm-1{margin-left:8.33333333%}.offset-sm-2{margin-left:16.66666667%}.offset-sm-3{margin-left:25%}.offset-sm-4{margin-left:33.33333333%}.offset-sm-5{margin-left:41.66666667%}.offset-sm-6{margin-left:50%}.offset-sm-7{margin-left:58.33333333%}.offset-sm-8{margin-left:66.66666667%}.offset-sm-9{margin-left:75%}.offset-sm-10{margin-left:83.33333333%}.offset-sm-11{margin-left:91.66666667%}.g-sm-0,.gx-sm-0{--bs-gutter-x:0}.g-sm-0,.gy-sm-0{--bs-gutter-y:0}.g-sm-1,.gx-sm-1{--bs-gutter-x:0.25rem}.g-sm-1,.gy-sm-1{--bs-gutter-y:0.25rem}.g-sm-2,.gx-sm-2{--bs-gutter-x:0.5rem}.g-sm-2,.gy-sm-2{--bs-gutter-y:0.5rem}.g-sm-3,.gx-sm-3{--bs-gutter-x:1rem}.g-sm-3,.gy-sm-3{--bs-gutter-y:1rem}.g-sm-4,.gx-sm-4{--bs-gutter-x:1.5rem}.g-sm-4,.gy-sm-4{--bs-gutter-y:1.5rem}.g-sm-5,.gx-sm-5{--bs-gutter-x:3rem}.g-sm-5,.gy-sm-5{--bs-gutter-y:3rem}}@media (min-width:768px){.col-md{flex:1 0 0%}.row-cols-md-auto>*{flex:0 0 auto;width:auto}.row-cols-md-1>*{flex:0 0 auto;width:100%}.row-cols-md-2>*{flex:0 0 auto;width:50%}.row-cols-md-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-md-4>*{flex:0 0 auto;width:25%}.row-cols-md-5>*{flex:0 0 auto;width:20%}.row-cols-md-6>*{flex:0 0 auto;width:16.6666666667%}.col-md-auto{flex:0 0 auto;width:auto}.col-md-1{flex:0 0 auto;width:8.33333333%}.col-md-2{flex:0 0 auto;width:16.66666667%}.col-md-3{flex:0 0 auto;width:25%}.col-md-4{flex:0 0 auto;width:33.33333333%}.col-md-5{flex:0 0 auto;width:41.66666667%}.col-md-6{flex:0 0 auto;width:50%}.col-md-7{flex:0 0 auto;width:58.33333333%}.col-md-8{flex:0 0 auto;width:66.66666667%}.col-md-9{flex:0 0 auto;width:75%}.col-md-10{flex:0 0 auto;width:83.33333333%}.col-md-11{flex:0 0 auto;width:91.66666667%}.col-md-12{flex:0 0 auto;width:100%}.offset-md-0{margin-left:0}.offset-md-1{margin-left:8.33333333%}.offset-md-2{margin-left:16.66666667%}.offset-md-3{margin-left:25%}.offset-md-4{margin-left:33.33333333%}.offset-md-5{margin-left:41.66666667%}.offset-md-6{margin-left:50%}.offset-md-7{margin-left:58.33333333%}.offset-md-8{margin-left:66.66666667%}.offset-md-9{margin-left:75%}.offset-md-10{margin-left:83.33333333%}.offset-md-11{margin-left:91.66666667%}.g-md-0,.gx-md-0{--bs-gutter-x:0}.g-md-0,.gy-md-0{--bs-gutter-y:0}.g-md-1,.gx-md-1{--bs-gutter-x:0.25rem}.g-md-1,.gy-md-1{--bs-gutter-y:0.25rem}.g-md-2,.gx-md-2{--bs-gutter-x:0.5rem}.g-md-2,.gy-md-2{--bs-gutter-y:0.5rem}.g-md-3,.gx-md-3{--bs-gutter-x:1rem}.g-md-3,.gy-md-3{--bs-gutter-y:1rem}.g-md-4,.gx-md-4{--bs-gutter-x:1.5rem}.g-md-4,.gy-md-4{--bs-gutter-y:1.5rem}.g-md-5,.gx-md-5{--bs-gutter-x:3rem}.g-md-5,.gy-md-5{--bs-gutter-y:3rem}}@media (min-width:992px){.col-lg{flex:1 0 0%}.row-cols-lg-auto>*{flex:0 0 auto;width:auto}.row-cols-lg-1>*{flex:0 0 auto;width:100%}.row-cols-lg-2>*{flex:0 0 auto;width:50%}.row-cols-lg-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-lg-4>*{flex:0 0 auto;width:25%}.row-cols-lg-5>*{flex:0 0 auto;width:20%}.row-cols-lg-6>*{flex:0 0 auto;width:16.6666666667%}.col-lg-auto{flex:0 0 auto;width:auto}.col-lg-1{flex:0 0 auto;width:8.33333333%}.col-lg-2{flex:0 0 auto;width:16.66666667%}.col-lg-3{flex:0 0 auto;width:25%}.col-lg-4{flex:0 0 auto;width:33.33333333%}.col-lg-5{flex:0 0 auto;width:41.66666667%}.col-lg-6{flex:0 0 auto;width:50%}.col-lg-7{flex:0 0 auto;width:58.33333333%}.col-lg-8{flex:0 0 auto;width:66.66666667%}.col-lg-9{flex:0 0 auto;width:75%}.col-lg-10{flex:0 0 auto;width:83.33333333%}.col-lg-11{flex:0 0 auto;width:91.66666667%}.col-lg-12{flex:0 0 auto;width:100%}.offset-lg-0{margin-left:0}.offset-lg-1{margin-left:8.33333333%}.offset-lg-2{margin-left:16.66666667%}.offset-lg-3{margin-left:25%}.offset-lg-4{margin-left:33.33333333%}.offset-lg-5{margin-left:41.66666667%}.offset-lg-6{margin-left:50%}.offset-lg-7{margin-left:58.33333333%}.offset-lg-8{margin-left:66.66666667%}.offset-lg-9{margin-left:75%}.offset-lg-10{margin-left:83.33333333%}.offset-lg-11{margin-left:91.66666667%}.g-lg-0,.gx-lg-0{--bs-gutter-x:0}.g-lg-0,.gy-lg-0{--bs-gutter-y:0}.g-lg-1,.gx-lg-1{--bs-gutter-x:0.25rem}.g-lg-1,.gy-lg-1{--bs-gutter-y:0.25rem}.g-lg-2,.gx-lg-2{--bs-gutter-x:0.5rem}.g-lg-2,.gy-lg-2{--bs-gutter-y:0.5rem}.g-lg-3,.gx-lg-3{--bs-gutter-x:1rem}.g-lg-3,.gy-lg-3{--bs-gutter-y:1rem}.g-lg-4,.gx-lg-4{--bs-gutter-x:1.5rem}.g-lg-4,.gy-lg-4{--bs-gutter-y:1.5rem}.g-lg-5,.gx-lg-5{--bs-gutter-x:3rem}.g-lg-5,.gy-lg-5{--bs-gutter-y:3rem}}@media (min-width:1200px){.col-xl{flex:1 0 0%}.row-cols-xl-auto>*{flex:0 0 auto;width:auto}.row-cols-xl-1>*{flex:0 0 auto;width:100%}.row-cols-xl-2>*{flex:0 0 auto;width:50%}.row-cols-xl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xl-4>*{flex:0 0 auto;width:25%}.row-cols-xl-5>*{flex:0 0 auto;width:20%}.row-cols-xl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xl-auto{flex:0 0 auto;width:auto}.col-xl-1{flex:0 0 auto;width:8.33333333%}.col-xl-2{flex:0 0 auto;width:16.66666667%}.col-xl-3{flex:0 0 auto;width:25%}.col-xl-4{flex:0 0 auto;width:33.33333333%}.col-xl-5{flex:0 0 auto;width:41.66666667%}.col-xl-6{flex:0 0 auto;width:50%}.col-xl-7{flex:0 0 auto;width:58.33333333%}.col-xl-8{flex:0 0 auto;width:66.66666667%}.col-xl-9{flex:0 0 auto;width:75%}.col-xl-10{flex:0 0 auto;width:83.33333333%}.col-xl-11{flex:0 0 auto;width:91.66666667%}.col-xl-12{flex:0 0 auto;width:100%}.offset-xl-0{margin-left:0}.offset-xl-1{margin-left:8.33333333%}.offset-xl-2{margin-left:16.66666667%}.offset-xl-3{margin-left:25%}.offset-xl-4{margin-left:33.33333333%}.offset-xl-5{margin-left:41.66666667%}.offset-xl-6{margin-left:50%}.offset-xl-7{margin-left:58.33333333%}.offset-xl-8{margin-left:66.66666667%}.offset-xl-9{margin-left:75%}.offset-xl-10{margin-left:83.33333333%}.offset-xl-11{margin-left:91.66666667%}.g-xl-0,.gx-xl-0{--bs-gutter-x:0}.g-xl-0,.gy-xl-0{--bs-gutter-y:0}.g-xl-1,.gx-xl-1{--bs-gutter-x:0.25rem}.g-xl-1,.gy-xl-1{--bs-gutter-y:0.25rem}.g-xl-2,.gx-xl-2{--bs-gutter-x:0.5rem}.g-xl-2,.gy-xl-2{--bs-gutter-y:0.5rem}.g-xl-3,.gx-xl-3{--bs-gutter-x:1rem}.g-xl-3,.gy-xl-3{--bs-gutter-y:1rem}.g-xl-4,.gx-xl-4{--bs-gutter-x:1.5rem}.g-xl-4,.gy-xl-4{--bs-gutter-y:1.5rem}.g-xl-5,.gx-xl-5{--bs-gutter-x:3rem}.g-xl-5,.gy-xl-5{--bs-gutter-y:3rem}}@media (min-width:1400px){.col-xxl{flex:1 0 0%}.row-cols-xxl-auto>*{flex:0 0 auto;width:auto}.row-cols-xxl-1>*{flex:0 0 auto;width:100%}.row-cols-xxl-2>*{flex:0 0 auto;width:50%}.row-cols-xxl-3>*{flex:0 0 auto;width:33.3333333333%}.row-cols-xxl-4>*{flex:0 0 auto;width:25%}.row-cols-xxl-5>*{flex:0 0 auto;width:20%}.row-cols-xxl-6>*{flex:0 0 auto;width:16.6666666667%}.col-xxl-auto{flex:0 0 auto;width:auto}.col-xxl-1{flex:0 0 auto;width:8.33333333%}.col-xxl-2{flex:0 0 auto;width:16.66666667%}.col-xxl-3{flex:0 0 auto;width:25%}.col-xxl-4{flex:0 0 auto;width:33.33333333%}.col-xxl-5{flex:0 0 auto;width:41.66666667%}.col-xxl-6{flex:0 0 auto;width:50%}.col-xxl-7{flex:0 0 auto;width:58.33333333%}.col-xxl-8{flex:0 0 auto;width:66.66666667%}.col-xxl-9{flex:0 0 auto;width:75%}.col-xxl-10{flex:0 0 auto;width:83.33333333%}.col-xxl-11{flex:0 0 auto;width:91.66666667%}.col-xxl-12{flex:0 0 auto;width:100%}.offset-xxl-0{margin-left:0}.offset-xxl-1{margin-left:8.33333333%}.offset-xxl-2{margin-left:16.66666667%}.offset-xxl-3{margin-left:25%}.offset-xxl-4{margin-left:33.33333333%}.offset-xxl-5{margin-left:41.66666667%}.offset-xxl-6{margin-left:50%}.offset-xxl-7{margin-left:58.33333333%}.offset-xxl-8{margin-left:66.66666667%}.offset-xxl-9{margin-left:75%}.offset-xxl-10{margin-left:83.33333333%}.offset-xxl-11{margin-left:91.66666667%}.g-xxl-0,.gx-xxl-0{--bs-gutter-x:0}.g-xxl-0,.gy-xxl-0{--bs-gutter-y:0}.g-xxl-1,.gx-xxl-1{--bs-gutter-x:0.25rem}.g-xxl-1,.gy-xxl-1{--bs-gutter-y:0.25rem}.g-xxl-2,.gx-xxl-2{--bs-gutter-x:0.5rem}.g-xxl-2,.gy-xxl-2{--bs-gutter-y:0.5rem}.g-xxl-3,.gx-xxl-3{--bs-gutter-x:1rem}.g-xxl-3,.gy-xxl-3{--bs-gutter-y:1rem}.g-xxl-4,.gx-xxl-4{--bs-gutter-x:1.5rem}.g-xxl-4,.gy-xxl-4{--bs-gutter-y:1.5rem}.g-xxl-5,.gx-xxl-5{--bs-gutter-x:3rem}.g-xxl-5,.gy-xxl-5{--bs-gutter-y:3rem}}.table{--bs-table-bg:transparent;--bs-table-accent-bg:transparent;--bs-table-striped-color:#212529;--bs-table-striped-bg:rgba(0, 0, 0, 0.05);--bs-table-active-color:#212529;--bs-table-active-bg:rgba(0, 0, 0, 0.1);--bs-table-hover-color:#212529;--bs-table-hover-bg:rgba(0, 0, 0, 0.075);width:100%;margin-bottom:1rem;color:#212529;vertical-align:top;border-color:#dee2e6}.table>:not(caption)>*>*{padding:.5rem .5rem;background-color:var(--bs-table-bg);border-bottom-width:1px;box-shadow:inset 0 0 0 9999px var(--bs-table-accent-bg)}.table>tbody{vertical-align:inherit}.table>thead{vertical-align:bottom}.table>:not(:first-child){border-top:2px solid currentColor}.caption-top{caption-side:top}.table-sm>:not(caption)>*>*{padding:.25rem .25rem}.table-bordered>:not(caption)>*{border-width:1px 0}.table-bordered>:not(caption)>*>*{border-width:0 1px}.table-borderless>:not(caption)>*>*{border-bottom-width:0}.table-borderless>:not(:first-child){border-top-width:0}.table-striped>tbody>tr:nth-of-type(odd)>*{--bs-table-accent-bg:var(--bs-table-striped-bg);color:var(--bs-table-striped-color)}.table-active{--bs-table-accent-bg:var(--bs-table-active-bg);color:var(--bs-table-active-color)}.table-hover>tbody>tr:hover>*{--bs-table-accent-bg:var(--bs-table-hover-bg);color:var(--bs-table-hover-color)}.table-primary{--bs-table-bg:#cfe2ff;--bs-table-striped-bg:#c5d7f2;--bs-table-striped-color:#000;--bs-table-active-bg:#bacbe6;--bs-table-active-color:#000;--bs-table-hover-bg:#bfd1ec;--bs-table-hover-color:#000;color:#000;border-color:#bacbe6}.table-secondary{--bs-table-bg:#e2e3e5;--bs-table-striped-bg:#d7d8da;--bs-table-striped-color:#000;--bs-table-active-bg:#cbccce;--bs-table-active-color:#000;--bs-table-hover-bg:#d1d2d4;--bs-table-hover-color:#000;color:#000;border-color:#cbccce}.table-success{--bs-table-bg:#d1e7dd;--bs-table-striped-bg:#c7dbd2;--bs-table-striped-color:#000;--bs-table-active-bg:#bcd0c7;--bs-table-active-color:#000;--bs-table-hover-bg:#c1d6cc;--bs-table-hover-color:#000;color:#000;border-color:#bcd0c7}.table-info{--bs-table-bg:#cff4fc;--bs-table-striped-bg:#c5e8ef;--bs-table-striped-color:#000;--bs-table-active-bg:#badce3;--bs-table-active-color:#000;--bs-table-hover-bg:#bfe2e9;--bs-table-hover-color:#000;color:#000;border-color:#badce3}.table-warning{--bs-table-bg:#fff3cd;--bs-table-striped-bg:#f2e7c3;--bs-table-striped-color:#000;--bs-table-active-bg:#e6dbb9;--bs-table-active-color:#000;--bs-table-hover-bg:#ece1be;--bs-table-hover-color:#000;color:#000;border-color:#e6dbb9}.table-danger{--bs-table-bg:#f8d7da;--bs-table-striped-bg:#eccccf;--bs-table-striped-color:#000;--bs-table-active-bg:#dfc2c4;--bs-table-active-color:#000;--bs-table-hover-bg:#e5c7ca;--bs-table-hover-color:#000;color:#000;border-color:#dfc2c4}.table-light{--bs-table-bg:#f8f9fa;--bs-table-striped-bg:#ecedee;--bs-table-striped-color:#000;--bs-table-active-bg:#dfe0e1;--bs-table-active-color:#000;--bs-table-hover-bg:#e5e6e7;--bs-table-hover-color:#000;color:#000;border-color:#dfe0e1}.table-dark{--bs-table-bg:#212529;--bs-table-striped-bg:#2c3034;--bs-table-striped-color:#fff;--bs-table-active-bg:#373b3e;--bs-table-active-color:#fff;--bs-table-hover-bg:#323539;--bs-table-hover-color:#fff;color:#fff;border-color:#373b3e}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}@media (max-width:575.98px){.table-responsive-sm{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:767.98px){.table-responsive-md{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:991.98px){.table-responsive-lg{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1199.98px){.table-responsive-xl{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media (max-width:1399.98px){.table-responsive-xxl{overflow-x:auto;-webkit-overflow-scrolling:touch}}.form-label{margin-bottom:.5rem}.col-form-label{padding-top:calc(.375rem + 1px);padding-bottom:calc(.375rem + 1px);margin-bottom:0;font-size:inherit;line-height:1.5}.col-form-label-lg{padding-top:calc(.5rem + 1px);padding-bottom:calc(.5rem + 1px);font-size:1.25rem}.col-form-label-sm{padding-top:calc(.25rem + 1px);padding-bottom:calc(.25rem + 1px);font-size:.875rem}.form-text{margin-top:.25rem;font-size:.875em;color:#6c757d}.form-control{display:block;width:100%;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-clip:padding-box;border:1px solid #ced4da;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control{transition:none}}.form-control[type=file]{overflow:hidden}.form-control[type=file]:not(:disabled):not([readonly]){cursor:pointer}.form-control:focus{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-control::-webkit-date-and-time-value{height:1.5em}.form-control::-moz-placeholder{color:#6c757d;opacity:1}.form-control::placeholder{color:#6c757d;opacity:1}.form-control:disabled,.form-control[readonly]{background-color:#e9ecef;opacity:1}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}.form-control::file-selector-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}.form-control::file-selector-button{transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control:hover:not(:disabled):not([readonly])::file-selector-button{background-color:#dde0e3}.form-control::-webkit-file-upload-button{padding:.375rem .75rem;margin:-.375rem -.75rem;-webkit-margin-end:.75rem;margin-inline-end:.75rem;color:#212529;background-color:#e9ecef;pointer-events:none;border-color:inherit;border-style:solid;border-width:0;border-inline-end-width:1px;border-radius:0;-webkit-transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-control::-webkit-file-upload-button{-webkit-transition:none;transition:none}}.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button{background-color:#dde0e3}.form-control-plaintext{display:block;width:100%;padding:.375rem 0;margin-bottom:0;line-height:1.5;color:#212529;background-color:transparent;border:solid transparent;border-width:1px 0}.form-control-plaintext.form-control-lg,.form-control-plaintext.form-control-sm{padding-right:0;padding-left:0}.form-control-sm{min-height:calc(1.5em + .5rem + 2px);padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::file-selector-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-sm::-webkit-file-upload-button{padding:.25rem .5rem;margin:-.25rem -.5rem;-webkit-margin-end:.5rem;margin-inline-end:.5rem}.form-control-lg{min-height:calc(1.5em + 1rem + 2px);padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::file-selector-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}.form-control-lg::-webkit-file-upload-button{padding:.5rem 1rem;margin:-.5rem -1rem;-webkit-margin-end:1rem;margin-inline-end:1rem}textarea.form-control{min-height:calc(1.5em + .75rem + 2px)}textarea.form-control-sm{min-height:calc(1.5em + .5rem + 2px)}textarea.form-control-lg{min-height:calc(1.5em + 1rem + 2px)}.form-control-color{width:3rem;height:auto;padding:.375rem}.form-control-color:not(:disabled):not([readonly]){cursor:pointer}.form-control-color::-moz-color-swatch{height:1.5em;border-radius:.25rem}.form-control-color::-webkit-color-swatch{height:1.5em;border-radius:.25rem}.form-select{display:block;width:100%;padding:.375rem 2.25rem .375rem .75rem;-moz-padding-start:calc(0.75rem - 3px);font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right .75rem center;background-size:16px 12px;border:1px solid #ced4da;border-radius:.25rem;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-select{transition:none}}.form-select:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-select[multiple],.form-select[size]:not([size=\"1\"]){padding-right:.75rem;background-image:none}.form-select:disabled{background-color:#e9ecef}.form-select:-moz-focusring{color:transparent;text-shadow:0 0 0 #212529}.form-select-sm{padding-top:.25rem;padding-bottom:.25rem;padding-left:.5rem;font-size:.875rem;border-radius:.2rem}.form-select-lg{padding-top:.5rem;padding-bottom:.5rem;padding-left:1rem;font-size:1.25rem;border-radius:.3rem}.form-check{display:block;min-height:1.5rem;padding-left:1.5em;margin-bottom:.125rem}.form-check .form-check-input{float:left;margin-left:-1.5em}.form-check-input{width:1em;height:1em;margin-top:.25em;vertical-align:top;background-color:#fff;background-repeat:no-repeat;background-position:center;background-size:contain;border:1px solid rgba(0,0,0,.25);-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-print-color-adjust:exact;color-adjust:exact}.form-check-input[type=checkbox]{border-radius:.25em}.form-check-input[type=radio]{border-radius:50%}.form-check-input:active{filter:brightness(90%)}.form-check-input:focus{border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.form-check-input:checked{background-color:#0d6efd;border-color:#0d6efd}.form-check-input:checked[type=checkbox]{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e\")}.form-check-input:checked[type=radio]{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\")}.form-check-input[type=checkbox]:indeterminate{background-color:#0d6efd;border-color:#0d6efd;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\")}.form-check-input:disabled{pointer-events:none;filter:none;opacity:.5}.form-check-input:disabled~.form-check-label,.form-check-input[disabled]~.form-check-label{opacity:.5}.form-switch{padding-left:2.5em}.form-switch .form-check-input{width:2em;margin-left:-2.5em;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");background-position:left center;border-radius:2em;transition:background-position .15s ease-in-out}@media (prefers-reduced-motion:reduce){.form-switch .form-check-input{transition:none}}.form-switch .form-check-input:focus{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\")}.form-switch .form-check-input:checked{background-position:right center;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\")}.form-check-inline{display:inline-block;margin-right:1rem}.btn-check{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.btn-check:disabled+.btn,.btn-check[disabled]+.btn{pointer-events:none;filter:none;opacity:.65}.form-range{width:100%;height:1.5rem;padding:0;background-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.form-range:focus{outline:0}.form-range:focus::-webkit-slider-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range:focus::-moz-range-thumb{box-shadow:0 0 0 1px #fff,0 0 0 .25rem rgba(13,110,253,.25)}.form-range::-moz-focus-outer{border:0}.form-range::-webkit-slider-thumb{width:1rem;height:1rem;margin-top:-.25rem;background-color:#0d6efd;border:0;border-radius:1rem;-webkit-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-webkit-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-webkit-slider-thumb{-webkit-transition:none;transition:none}}.form-range::-webkit-slider-thumb:active{background-color:#b6d4fe}.form-range::-webkit-slider-runnable-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range::-moz-range-thumb{width:1rem;height:1rem;background-color:#0d6efd;border:0;border-radius:1rem;-moz-transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;transition:background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out;-moz-appearance:none;appearance:none}@media (prefers-reduced-motion:reduce){.form-range::-moz-range-thumb{-moz-transition:none;transition:none}}.form-range::-moz-range-thumb:active{background-color:#b6d4fe}.form-range::-moz-range-track{width:100%;height:.5rem;color:transparent;cursor:pointer;background-color:#dee2e6;border-color:transparent;border-radius:1rem}.form-range:disabled{pointer-events:none}.form-range:disabled::-webkit-slider-thumb{background-color:#adb5bd}.form-range:disabled::-moz-range-thumb{background-color:#adb5bd}.form-floating{position:relative}.form-floating>.form-control,.form-floating>.form-select{height:calc(3.5rem + 2px);line-height:1.25}.form-floating>label{position:absolute;top:0;left:0;height:100%;padding:1rem .75rem;pointer-events:none;border:1px solid transparent;transform-origin:0 0;transition:opacity .1s ease-in-out,transform .1s ease-in-out}@media (prefers-reduced-motion:reduce){.form-floating>label{transition:none}}.form-floating>.form-control{padding:1rem .75rem}.form-floating>.form-control::-moz-placeholder{color:transparent}.form-floating>.form-control::placeholder{color:transparent}.form-floating>.form-control:not(:-moz-placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:focus,.form-floating>.form-control:not(:placeholder-shown){padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:-webkit-autofill{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-select{padding-top:1.625rem;padding-bottom:.625rem}.form-floating>.form-control:not(:-moz-placeholder-shown)~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:focus~label,.form-floating>.form-control:not(:placeholder-shown)~label,.form-floating>.form-select~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.form-floating>.form-control:-webkit-autofill~label{opacity:.65;transform:scale(.85) translateY(-.5rem) translateX(.15rem)}.input-group{position:relative;display:flex;flex-wrap:wrap;align-items:stretch;width:100%}.input-group>.form-control,.input-group>.form-select{position:relative;flex:1 1 auto;width:1%;min-width:0}.input-group>.form-control:focus,.input-group>.form-select:focus{z-index:3}.input-group .btn{position:relative;z-index:2}.input-group .btn:focus{z-index:3}.input-group-text{display:flex;align-items:center;padding:.375rem .75rem;font-size:1rem;font-weight:400;line-height:1.5;color:#212529;text-align:center;white-space:nowrap;background-color:#e9ecef;border:1px solid #ced4da;border-radius:.25rem}.input-group-lg>.btn,.input-group-lg>.form-control,.input-group-lg>.form-select,.input-group-lg>.input-group-text{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.input-group-sm>.btn,.input-group-sm>.form-control,.input-group-sm>.form-select,.input-group-sm>.input-group-text{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.input-group-lg>.form-select,.input-group-sm>.form-select{padding-right:3rem}.input-group:not(.has-validation)>.dropdown-toggle:nth-last-child(n+3),.input-group:not(.has-validation)>:not(:last-child):not(.dropdown-toggle):not(.dropdown-menu){border-top-right-radius:0;border-bottom-right-radius:0}.input-group.has-validation>.dropdown-toggle:nth-last-child(n+4),.input-group.has-validation>:nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu){border-top-right-radius:0;border-bottom-right-radius:0}.input-group>:not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback){margin-left:-1px;border-top-left-radius:0;border-bottom-left-radius:0}.valid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#198754}.valid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(25,135,84,.9);border-radius:.25rem}.is-valid~.valid-feedback,.is-valid~.valid-tooltip,.was-validated :valid~.valid-feedback,.was-validated :valid~.valid-tooltip{display:block}.form-control.is-valid,.was-validated .form-control:valid{border-color:#198754;padding-right:calc(1.5em + .75rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-valid:focus,.was-validated .form-control:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.was-validated textarea.form-control:valid,textarea.form-control.is-valid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-valid,.was-validated .form-select:valid{border-color:#198754}.form-select.is-valid:not([multiple]):not([size]),.form-select.is-valid:not([multiple])[size=\"1\"],.was-validated .form-select:valid:not([multiple]):not([size]),.was-validated .form-select:valid:not([multiple])[size=\"1\"]{padding-right:4.125rem;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\"),url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-valid:focus,.was-validated .form-select:valid:focus{border-color:#198754;box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid,.was-validated .form-check-input:valid{border-color:#198754}.form-check-input.is-valid:checked,.was-validated .form-check-input:valid:checked{background-color:#198754}.form-check-input.is-valid:focus,.was-validated .form-check-input:valid:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.25)}.form-check-input.is-valid~.form-check-label,.was-validated .form-check-input:valid~.form-check-label{color:#198754}.form-check-inline .form-check-input~.valid-feedback{margin-left:.5em}.input-group .form-control.is-valid,.input-group .form-select.is-valid,.was-validated .input-group .form-control:valid,.was-validated .input-group .form-select:valid{z-index:1}.input-group .form-control.is-valid:focus,.input-group .form-select.is-valid:focus,.was-validated .input-group .form-control:valid:focus,.was-validated .input-group .form-select:valid:focus{z-index:3}.invalid-feedback{display:none;width:100%;margin-top:.25rem;font-size:.875em;color:#dc3545}.invalid-tooltip{position:absolute;top:100%;z-index:5;display:none;max-width:100%;padding:.25rem .5rem;margin-top:.1rem;font-size:.875rem;color:#fff;background-color:rgba(220,53,69,.9);border-radius:.25rem}.is-invalid~.invalid-feedback,.is-invalid~.invalid-tooltip,.was-validated :invalid~.invalid-feedback,.was-validated :invalid~.invalid-tooltip{display:block}.form-control.is-invalid,.was-validated .form-control:invalid{border-color:#dc3545;padding-right:calc(1.5em + .75rem);background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-position:right calc(.375em + .1875rem) center;background-size:calc(.75em + .375rem) calc(.75em + .375rem)}.form-control.is-invalid:focus,.was-validated .form-control:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.was-validated textarea.form-control:invalid,textarea.form-control.is-invalid{padding-right:calc(1.5em + .75rem);background-position:top calc(.375em + .1875rem) right calc(.375em + .1875rem)}.form-select.is-invalid,.was-validated .form-select:invalid{border-color:#dc3545}.form-select.is-invalid:not([multiple]):not([size]),.form-select.is-invalid:not([multiple])[size=\"1\"],.was-validated .form-select:invalid:not([multiple]):not([size]),.was-validated .form-select:invalid:not([multiple])[size=\"1\"]{padding-right:4.125rem;background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\"),url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");background-position:right .75rem center,center right 2.25rem;background-size:16px 12px,calc(.75em + .375rem) calc(.75em + .375rem)}.form-select.is-invalid:focus,.was-validated .form-select:invalid:focus{border-color:#dc3545;box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid,.was-validated .form-check-input:invalid{border-color:#dc3545}.form-check-input.is-invalid:checked,.was-validated .form-check-input:invalid:checked{background-color:#dc3545}.form-check-input.is-invalid:focus,.was-validated .form-check-input:invalid:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.25)}.form-check-input.is-invalid~.form-check-label,.was-validated .form-check-input:invalid~.form-check-label{color:#dc3545}.form-check-inline .form-check-input~.invalid-feedback{margin-left:.5em}.input-group .form-control.is-invalid,.input-group .form-select.is-invalid,.was-validated .input-group .form-control:invalid,.was-validated .input-group .form-select:invalid{z-index:2}.input-group .form-control.is-invalid:focus,.input-group .form-select.is-invalid:focus,.was-validated .input-group .form-control:invalid:focus,.was-validated .input-group .form-select:invalid:focus{z-index:3}.btn{display:inline-block;font-weight:400;line-height:1.5;color:#212529;text-align:center;text-decoration:none;vertical-align:middle;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;background-color:transparent;border:1px solid transparent;padding:.375rem .75rem;font-size:1rem;border-radius:.25rem;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.btn{transition:none}}.btn:hover{color:#212529}.btn-check:focus+.btn,.btn:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.btn.disabled,.btn:disabled,fieldset:disabled .btn{pointer-events:none;opacity:.65}.btn-primary{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-primary:hover{color:#fff;background-color:#0b5ed7;border-color:#0a58ca}.btn-check:focus+.btn-primary,.btn-primary:focus{color:#fff;background-color:#0b5ed7;border-color:#0a58ca;box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-check:active+.btn-primary,.btn-check:checked+.btn-primary,.btn-primary.active,.btn-primary:active,.show>.btn-primary.dropdown-toggle{color:#fff;background-color:#0a58ca;border-color:#0a53be}.btn-check:active+.btn-primary:focus,.btn-check:checked+.btn-primary:focus,.btn-primary.active:focus,.btn-primary:active:focus,.show>.btn-primary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(49,132,253,.5)}.btn-primary.disabled,.btn-primary:disabled{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-secondary{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-secondary:hover{color:#fff;background-color:#5c636a;border-color:#565e64}.btn-check:focus+.btn-secondary,.btn-secondary:focus{color:#fff;background-color:#5c636a;border-color:#565e64;box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-check:active+.btn-secondary,.btn-check:checked+.btn-secondary,.btn-secondary.active,.btn-secondary:active,.show>.btn-secondary.dropdown-toggle{color:#fff;background-color:#565e64;border-color:#51585e}.btn-check:active+.btn-secondary:focus,.btn-check:checked+.btn-secondary:focus,.btn-secondary.active:focus,.btn-secondary:active:focus,.show>.btn-secondary.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(130,138,145,.5)}.btn-secondary.disabled,.btn-secondary:disabled{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-success{color:#fff;background-color:#198754;border-color:#198754}.btn-success:hover{color:#fff;background-color:#157347;border-color:#146c43}.btn-check:focus+.btn-success,.btn-success:focus{color:#fff;background-color:#157347;border-color:#146c43;box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-check:active+.btn-success,.btn-check:checked+.btn-success,.btn-success.active,.btn-success:active,.show>.btn-success.dropdown-toggle{color:#fff;background-color:#146c43;border-color:#13653f}.btn-check:active+.btn-success:focus,.btn-check:checked+.btn-success:focus,.btn-success.active:focus,.btn-success:active:focus,.show>.btn-success.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(60,153,110,.5)}.btn-success.disabled,.btn-success:disabled{color:#fff;background-color:#198754;border-color:#198754}.btn-info{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-info:hover{color:#000;background-color:#31d2f2;border-color:#25cff2}.btn-check:focus+.btn-info,.btn-info:focus{color:#000;background-color:#31d2f2;border-color:#25cff2;box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-check:active+.btn-info,.btn-check:checked+.btn-info,.btn-info.active,.btn-info:active,.show>.btn-info.dropdown-toggle{color:#000;background-color:#3dd5f3;border-color:#25cff2}.btn-check:active+.btn-info:focus,.btn-check:checked+.btn-info:focus,.btn-info.active:focus,.btn-info:active:focus,.show>.btn-info.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(11,172,204,.5)}.btn-info.disabled,.btn-info:disabled{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-warning{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-warning:hover{color:#000;background-color:#ffca2c;border-color:#ffc720}.btn-check:focus+.btn-warning,.btn-warning:focus{color:#000;background-color:#ffca2c;border-color:#ffc720;box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-check:active+.btn-warning,.btn-check:checked+.btn-warning,.btn-warning.active,.btn-warning:active,.show>.btn-warning.dropdown-toggle{color:#000;background-color:#ffcd39;border-color:#ffc720}.btn-check:active+.btn-warning:focus,.btn-check:checked+.btn-warning:focus,.btn-warning.active:focus,.btn-warning:active:focus,.show>.btn-warning.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(217,164,6,.5)}.btn-warning.disabled,.btn-warning:disabled{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-danger{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-danger:hover{color:#fff;background-color:#bb2d3b;border-color:#b02a37}.btn-check:focus+.btn-danger,.btn-danger:focus{color:#fff;background-color:#bb2d3b;border-color:#b02a37;box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-check:active+.btn-danger,.btn-check:checked+.btn-danger,.btn-danger.active,.btn-danger:active,.show>.btn-danger.dropdown-toggle{color:#fff;background-color:#b02a37;border-color:#a52834}.btn-check:active+.btn-danger:focus,.btn-check:checked+.btn-danger:focus,.btn-danger.active:focus,.btn-danger:active:focus,.show>.btn-danger.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(225,83,97,.5)}.btn-danger.disabled,.btn-danger:disabled{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-light{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-light:hover{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:focus+.btn-light,.btn-light:focus{color:#000;background-color:#f9fafb;border-color:#f9fafb;box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-check:active+.btn-light,.btn-check:checked+.btn-light,.btn-light.active,.btn-light:active,.show>.btn-light.dropdown-toggle{color:#000;background-color:#f9fafb;border-color:#f9fafb}.btn-check:active+.btn-light:focus,.btn-check:checked+.btn-light:focus,.btn-light.active:focus,.btn-light:active:focus,.show>.btn-light.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(211,212,213,.5)}.btn-light.disabled,.btn-light:disabled{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-dark{color:#fff;background-color:#212529;border-color:#212529}.btn-dark:hover{color:#fff;background-color:#1c1f23;border-color:#1a1e21}.btn-check:focus+.btn-dark,.btn-dark:focus{color:#fff;background-color:#1c1f23;border-color:#1a1e21;box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-check:active+.btn-dark,.btn-check:checked+.btn-dark,.btn-dark.active,.btn-dark:active,.show>.btn-dark.dropdown-toggle{color:#fff;background-color:#1a1e21;border-color:#191c1f}.btn-check:active+.btn-dark:focus,.btn-check:checked+.btn-dark:focus,.btn-dark.active:focus,.btn-dark:active:focus,.show>.btn-dark.dropdown-toggle:focus{box-shadow:0 0 0 .25rem rgba(66,70,73,.5)}.btn-dark.disabled,.btn-dark:disabled{color:#fff;background-color:#212529;border-color:#212529}.btn-outline-primary{color:#0d6efd;border-color:#0d6efd}.btn-outline-primary:hover{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:focus+.btn-outline-primary,.btn-outline-primary:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-check:active+.btn-outline-primary,.btn-check:checked+.btn-outline-primary,.btn-outline-primary.active,.btn-outline-primary.dropdown-toggle.show,.btn-outline-primary:active{color:#fff;background-color:#0d6efd;border-color:#0d6efd}.btn-check:active+.btn-outline-primary:focus,.btn-check:checked+.btn-outline-primary:focus,.btn-outline-primary.active:focus,.btn-outline-primary.dropdown-toggle.show:focus,.btn-outline-primary:active:focus{box-shadow:0 0 0 .25rem rgba(13,110,253,.5)}.btn-outline-primary.disabled,.btn-outline-primary:disabled{color:#0d6efd;background-color:transparent}.btn-outline-secondary{color:#6c757d;border-color:#6c757d}.btn-outline-secondary:hover{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:focus+.btn-outline-secondary,.btn-outline-secondary:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-check:active+.btn-outline-secondary,.btn-check:checked+.btn-outline-secondary,.btn-outline-secondary.active,.btn-outline-secondary.dropdown-toggle.show,.btn-outline-secondary:active{color:#fff;background-color:#6c757d;border-color:#6c757d}.btn-check:active+.btn-outline-secondary:focus,.btn-check:checked+.btn-outline-secondary:focus,.btn-outline-secondary.active:focus,.btn-outline-secondary.dropdown-toggle.show:focus,.btn-outline-secondary:active:focus{box-shadow:0 0 0 .25rem rgba(108,117,125,.5)}.btn-outline-secondary.disabled,.btn-outline-secondary:disabled{color:#6c757d;background-color:transparent}.btn-outline-success{color:#198754;border-color:#198754}.btn-outline-success:hover{color:#fff;background-color:#198754;border-color:#198754}.btn-check:focus+.btn-outline-success,.btn-outline-success:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-check:active+.btn-outline-success,.btn-check:checked+.btn-outline-success,.btn-outline-success.active,.btn-outline-success.dropdown-toggle.show,.btn-outline-success:active{color:#fff;background-color:#198754;border-color:#198754}.btn-check:active+.btn-outline-success:focus,.btn-check:checked+.btn-outline-success:focus,.btn-outline-success.active:focus,.btn-outline-success.dropdown-toggle.show:focus,.btn-outline-success:active:focus{box-shadow:0 0 0 .25rem rgba(25,135,84,.5)}.btn-outline-success.disabled,.btn-outline-success:disabled{color:#198754;background-color:transparent}.btn-outline-info{color:#0dcaf0;border-color:#0dcaf0}.btn-outline-info:hover{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:focus+.btn-outline-info,.btn-outline-info:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-check:active+.btn-outline-info,.btn-check:checked+.btn-outline-info,.btn-outline-info.active,.btn-outline-info.dropdown-toggle.show,.btn-outline-info:active{color:#000;background-color:#0dcaf0;border-color:#0dcaf0}.btn-check:active+.btn-outline-info:focus,.btn-check:checked+.btn-outline-info:focus,.btn-outline-info.active:focus,.btn-outline-info.dropdown-toggle.show:focus,.btn-outline-info:active:focus{box-shadow:0 0 0 .25rem rgba(13,202,240,.5)}.btn-outline-info.disabled,.btn-outline-info:disabled{color:#0dcaf0;background-color:transparent}.btn-outline-warning{color:#ffc107;border-color:#ffc107}.btn-outline-warning:hover{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:focus+.btn-outline-warning,.btn-outline-warning:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-check:active+.btn-outline-warning,.btn-check:checked+.btn-outline-warning,.btn-outline-warning.active,.btn-outline-warning.dropdown-toggle.show,.btn-outline-warning:active{color:#000;background-color:#ffc107;border-color:#ffc107}.btn-check:active+.btn-outline-warning:focus,.btn-check:checked+.btn-outline-warning:focus,.btn-outline-warning.active:focus,.btn-outline-warning.dropdown-toggle.show:focus,.btn-outline-warning:active:focus{box-shadow:0 0 0 .25rem rgba(255,193,7,.5)}.btn-outline-warning.disabled,.btn-outline-warning:disabled{color:#ffc107;background-color:transparent}.btn-outline-danger{color:#dc3545;border-color:#dc3545}.btn-outline-danger:hover{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:focus+.btn-outline-danger,.btn-outline-danger:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-check:active+.btn-outline-danger,.btn-check:checked+.btn-outline-danger,.btn-outline-danger.active,.btn-outline-danger.dropdown-toggle.show,.btn-outline-danger:active{color:#fff;background-color:#dc3545;border-color:#dc3545}.btn-check:active+.btn-outline-danger:focus,.btn-check:checked+.btn-outline-danger:focus,.btn-outline-danger.active:focus,.btn-outline-danger.dropdown-toggle.show:focus,.btn-outline-danger:active:focus{box-shadow:0 0 0 .25rem rgba(220,53,69,.5)}.btn-outline-danger.disabled,.btn-outline-danger:disabled{color:#dc3545;background-color:transparent}.btn-outline-light{color:#f8f9fa;border-color:#f8f9fa}.btn-outline-light:hover{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:focus+.btn-outline-light,.btn-outline-light:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-check:active+.btn-outline-light,.btn-check:checked+.btn-outline-light,.btn-outline-light.active,.btn-outline-light.dropdown-toggle.show,.btn-outline-light:active{color:#000;background-color:#f8f9fa;border-color:#f8f9fa}.btn-check:active+.btn-outline-light:focus,.btn-check:checked+.btn-outline-light:focus,.btn-outline-light.active:focus,.btn-outline-light.dropdown-toggle.show:focus,.btn-outline-light:active:focus{box-shadow:0 0 0 .25rem rgba(248,249,250,.5)}.btn-outline-light.disabled,.btn-outline-light:disabled{color:#f8f9fa;background-color:transparent}.btn-outline-dark{color:#212529;border-color:#212529}.btn-outline-dark:hover{color:#fff;background-color:#212529;border-color:#212529}.btn-check:focus+.btn-outline-dark,.btn-outline-dark:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-check:active+.btn-outline-dark,.btn-check:checked+.btn-outline-dark,.btn-outline-dark.active,.btn-outline-dark.dropdown-toggle.show,.btn-outline-dark:active{color:#fff;background-color:#212529;border-color:#212529}.btn-check:active+.btn-outline-dark:focus,.btn-check:checked+.btn-outline-dark:focus,.btn-outline-dark.active:focus,.btn-outline-dark.dropdown-toggle.show:focus,.btn-outline-dark:active:focus{box-shadow:0 0 0 .25rem rgba(33,37,41,.5)}.btn-outline-dark.disabled,.btn-outline-dark:disabled{color:#212529;background-color:transparent}.btn-link{font-weight:400;color:#0d6efd;text-decoration:underline}.btn-link:hover{color:#0a58ca}.btn-link.disabled,.btn-link:disabled{color:#6c757d}.btn-group-lg>.btn,.btn-lg{padding:.5rem 1rem;font-size:1.25rem;border-radius:.3rem}.btn-group-sm>.btn,.btn-sm{padding:.25rem .5rem;font-size:.875rem;border-radius:.2rem}.fade{transition:opacity .15s linear}@media (prefers-reduced-motion:reduce){.fade{transition:none}}.fade:not(.show){opacity:0}.collapse:not(.show){display:none}.collapsing{height:0;overflow:hidden;transition:height .35s ease}@media (prefers-reduced-motion:reduce){.collapsing{transition:none}}.collapsing.collapse-horizontal{width:0;height:auto;transition:width .35s ease}@media (prefers-reduced-motion:reduce){.collapsing.collapse-horizontal{transition:none}}.dropdown,.dropend,.dropstart,.dropup{position:relative}.dropdown-toggle{white-space:nowrap}.dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid;border-right:.3em solid transparent;border-bottom:0;border-left:.3em solid transparent}.dropdown-toggle:empty::after{margin-left:0}.dropdown-menu{position:absolute;z-index:1000;display:none;min-width:10rem;padding:.5rem 0;margin:0;font-size:1rem;color:#212529;text-align:left;list-style:none;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.15);border-radius:.25rem}.dropdown-menu[data-bs-popper]{top:100%;left:0;margin-top:.125rem}.dropdown-menu-start{--bs-position:start}.dropdown-menu-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-end{--bs-position:end}.dropdown-menu-end[data-bs-popper]{right:0;left:auto}@media (min-width:576px){.dropdown-menu-sm-start{--bs-position:start}.dropdown-menu-sm-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-sm-end{--bs-position:end}.dropdown-menu-sm-end[data-bs-popper]{right:0;left:auto}}@media (min-width:768px){.dropdown-menu-md-start{--bs-position:start}.dropdown-menu-md-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-md-end{--bs-position:end}.dropdown-menu-md-end[data-bs-popper]{right:0;left:auto}}@media (min-width:992px){.dropdown-menu-lg-start{--bs-position:start}.dropdown-menu-lg-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-lg-end{--bs-position:end}.dropdown-menu-lg-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1200px){.dropdown-menu-xl-start{--bs-position:start}.dropdown-menu-xl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xl-end{--bs-position:end}.dropdown-menu-xl-end[data-bs-popper]{right:0;left:auto}}@media (min-width:1400px){.dropdown-menu-xxl-start{--bs-position:start}.dropdown-menu-xxl-start[data-bs-popper]{right:auto;left:0}.dropdown-menu-xxl-end{--bs-position:end}.dropdown-menu-xxl-end[data-bs-popper]{right:0;left:auto}}.dropup .dropdown-menu[data-bs-popper]{top:auto;bottom:100%;margin-top:0;margin-bottom:.125rem}.dropup .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:0;border-right:.3em solid transparent;border-bottom:.3em solid;border-left:.3em solid transparent}.dropup .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-menu[data-bs-popper]{top:0;right:auto;left:100%;margin-top:0;margin-left:.125rem}.dropend .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid transparent;border-right:0;border-bottom:.3em solid transparent;border-left:.3em solid}.dropend .dropdown-toggle:empty::after{margin-left:0}.dropend .dropdown-toggle::after{vertical-align:0}.dropstart .dropdown-menu[data-bs-popper]{top:0;right:100%;left:auto;margin-top:0;margin-right:.125rem}.dropstart .dropdown-toggle::after{display:inline-block;margin-left:.255em;vertical-align:.255em;content:\"\"}.dropstart .dropdown-toggle::after{display:none}.dropstart .dropdown-toggle::before{display:inline-block;margin-right:.255em;vertical-align:.255em;content:\"\";border-top:.3em solid transparent;border-right:.3em solid;border-bottom:.3em solid transparent}.dropstart .dropdown-toggle:empty::after{margin-left:0}.dropstart .dropdown-toggle::before{vertical-align:0}.dropdown-divider{height:0;margin:.5rem 0;overflow:hidden;border-top:1px solid rgba(0,0,0,.15)}.dropdown-item{display:block;width:100%;padding:.25rem 1rem;clear:both;font-weight:400;color:#212529;text-align:inherit;text-decoration:none;white-space:nowrap;background-color:transparent;border:0}.dropdown-item:focus,.dropdown-item:hover{color:#1e2125;background-color:#e9ecef}.dropdown-item.active,.dropdown-item:active{color:#fff;text-decoration:none;background-color:#0d6efd}.dropdown-item.disabled,.dropdown-item:disabled{color:#adb5bd;pointer-events:none;background-color:transparent}.dropdown-menu.show{display:block}.dropdown-header{display:block;padding:.5rem 1rem;margin-bottom:0;font-size:.875rem;color:#6c757d;white-space:nowrap}.dropdown-item-text{display:block;padding:.25rem 1rem;color:#212529}.dropdown-menu-dark{color:#dee2e6;background-color:#343a40;border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item{color:#dee2e6}.dropdown-menu-dark .dropdown-item:focus,.dropdown-menu-dark .dropdown-item:hover{color:#fff;background-color:rgba(255,255,255,.15)}.dropdown-menu-dark .dropdown-item.active,.dropdown-menu-dark .dropdown-item:active{color:#fff;background-color:#0d6efd}.dropdown-menu-dark .dropdown-item.disabled,.dropdown-menu-dark .dropdown-item:disabled{color:#adb5bd}.dropdown-menu-dark .dropdown-divider{border-color:rgba(0,0,0,.15)}.dropdown-menu-dark .dropdown-item-text{color:#dee2e6}.dropdown-menu-dark .dropdown-header{color:#adb5bd}.btn-group,.btn-group-vertical{position:relative;display:inline-flex;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;flex:1 1 auto}.btn-group-vertical>.btn-check:checked+.btn,.btn-group-vertical>.btn-check:focus+.btn,.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn-check:checked+.btn,.btn-group>.btn-check:focus+.btn,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:1}.btn-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-start}.btn-toolbar .input-group{width:auto}.btn-group>.btn-group:not(:first-child),.btn-group>.btn:not(:first-child){margin-left:-1px}.btn-group>.btn-group:not(:last-child)>.btn,.btn-group>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:not(:first-child)>.btn,.btn-group>.btn:nth-child(n+3),.btn-group>:not(.btn-check)+.btn{border-top-left-radius:0;border-bottom-left-radius:0}.dropdown-toggle-split{padding-right:.5625rem;padding-left:.5625rem}.dropdown-toggle-split::after,.dropend .dropdown-toggle-split::after,.dropup .dropdown-toggle-split::after{margin-left:0}.dropstart .dropdown-toggle-split::before{margin-right:0}.btn-group-sm>.btn+.dropdown-toggle-split,.btn-sm+.dropdown-toggle-split{padding-right:.375rem;padding-left:.375rem}.btn-group-lg>.btn+.dropdown-toggle-split,.btn-lg+.dropdown-toggle-split{padding-right:.75rem;padding-left:.75rem}.btn-group-vertical{flex-direction:column;align-items:flex-start;justify-content:center}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group{width:100%}.btn-group-vertical>.btn-group:not(:first-child),.btn-group-vertical>.btn:not(:first-child){margin-top:-1px}.btn-group-vertical>.btn-group:not(:last-child)>.btn,.btn-group-vertical>.btn:not(:last-child):not(.dropdown-toggle){border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:not(:first-child)>.btn,.btn-group-vertical>.btn~.btn{border-top-left-radius:0;border-top-right-radius:0}.nav{display:flex;flex-wrap:wrap;padding-left:0;margin-bottom:0;list-style:none}.nav-link{display:block;padding:.5rem 1rem;color:#0d6efd;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media (prefers-reduced-motion:reduce){.nav-link{transition:none}}.nav-link:focus,.nav-link:hover{color:#0a58ca}.nav-link.disabled{color:#6c757d;pointer-events:none;cursor:default}.nav-tabs{border-bottom:1px solid #dee2e6}.nav-tabs .nav-link{margin-bottom:-1px;background:0 0;border:1px solid transparent;border-top-left-radius:.25rem;border-top-right-radius:.25rem}.nav-tabs .nav-link:focus,.nav-tabs .nav-link:hover{border-color:#e9ecef #e9ecef #dee2e6;isolation:isolate}.nav-tabs .nav-link.disabled{color:#6c757d;background-color:transparent;border-color:transparent}.nav-tabs .nav-item.show .nav-link,.nav-tabs .nav-link.active{color:#495057;background-color:#fff;border-color:#dee2e6 #dee2e6 #fff}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.nav-pills .nav-link{background:0 0;border:0;border-radius:.25rem}.nav-pills .nav-link.active,.nav-pills .show>.nav-link{color:#fff;background-color:#0d6efd}.nav-fill .nav-item,.nav-fill>.nav-link{flex:1 1 auto;text-align:center}.nav-justified .nav-item,.nav-justified>.nav-link{flex-basis:0;flex-grow:1;text-align:center}.nav-fill .nav-item .nav-link,.nav-justified .nav-item .nav-link{width:100%}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.navbar{position:relative;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;padding-top:.5rem;padding-bottom:.5rem}.navbar>.container,.navbar>.container-fluid,.navbar>.container-lg,.navbar>.container-md,.navbar>.container-sm,.navbar>.container-xl,.navbar>.container-xxl{display:flex;flex-wrap:inherit;align-items:center;justify-content:space-between}.navbar-brand{padding-top:.3125rem;padding-bottom:.3125rem;margin-right:1rem;font-size:1.25rem;text-decoration:none;white-space:nowrap}.navbar-nav{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;list-style:none}.navbar-nav .nav-link{padding-right:0;padding-left:0}.navbar-nav .dropdown-menu{position:static}.navbar-text{padding-top:.5rem;padding-bottom:.5rem}.navbar-collapse{flex-basis:100%;flex-grow:1;align-items:center}.navbar-toggler{padding:.25rem .75rem;font-size:1.25rem;line-height:1;background-color:transparent;border:1px solid transparent;border-radius:.25rem;transition:box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.navbar-toggler{transition:none}}.navbar-toggler:hover{text-decoration:none}.navbar-toggler:focus{text-decoration:none;outline:0;box-shadow:0 0 0 .25rem}.navbar-toggler-icon{display:inline-block;width:1.5em;height:1.5em;vertical-align:middle;background-repeat:no-repeat;background-position:center;background-size:100%}.navbar-nav-scroll{max-height:var(--bs-scroll-height,75vh);overflow-y:auto}@media (min-width:576px){.navbar-expand-sm{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-sm .navbar-nav{flex-direction:row}.navbar-expand-sm .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-sm .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-sm .navbar-nav-scroll{overflow:visible}.navbar-expand-sm .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-sm .navbar-toggler{display:none}.navbar-expand-sm .offcanvas-header{display:none}.navbar-expand-sm .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-sm .offcanvas-bottom,.navbar-expand-sm .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-sm .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:768px){.navbar-expand-md{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-md .navbar-nav{flex-direction:row}.navbar-expand-md .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-md .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-md .navbar-nav-scroll{overflow:visible}.navbar-expand-md .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-md .navbar-toggler{display:none}.navbar-expand-md .offcanvas-header{display:none}.navbar-expand-md .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-md .offcanvas-bottom,.navbar-expand-md .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-md .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:992px){.navbar-expand-lg{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-lg .navbar-nav{flex-direction:row}.navbar-expand-lg .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-lg .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-lg .navbar-nav-scroll{overflow:visible}.navbar-expand-lg .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-lg .navbar-toggler{display:none}.navbar-expand-lg .offcanvas-header{display:none}.navbar-expand-lg .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-lg .offcanvas-bottom,.navbar-expand-lg .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-lg .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1200px){.navbar-expand-xl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xl .navbar-nav{flex-direction:row}.navbar-expand-xl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xl .navbar-nav-scroll{overflow:visible}.navbar-expand-xl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xl .navbar-toggler{display:none}.navbar-expand-xl .offcanvas-header{display:none}.navbar-expand-xl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xl .offcanvas-bottom,.navbar-expand-xl .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-xl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}@media (min-width:1400px){.navbar-expand-xxl{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand-xxl .navbar-nav{flex-direction:row}.navbar-expand-xxl .navbar-nav .dropdown-menu{position:absolute}.navbar-expand-xxl .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand-xxl .navbar-nav-scroll{overflow:visible}.navbar-expand-xxl .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand-xxl .navbar-toggler{display:none}.navbar-expand-xxl .offcanvas-header{display:none}.navbar-expand-xxl .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand-xxl .offcanvas-bottom,.navbar-expand-xxl .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand-xxl .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}}.navbar-expand{flex-wrap:nowrap;justify-content:flex-start}.navbar-expand .navbar-nav{flex-direction:row}.navbar-expand .navbar-nav .dropdown-menu{position:absolute}.navbar-expand .navbar-nav .nav-link{padding-right:.5rem;padding-left:.5rem}.navbar-expand .navbar-nav-scroll{overflow:visible}.navbar-expand .navbar-collapse{display:flex!important;flex-basis:auto}.navbar-expand .navbar-toggler{display:none}.navbar-expand .offcanvas-header{display:none}.navbar-expand .offcanvas{position:inherit;bottom:0;z-index:1000;flex-grow:1;visibility:visible!important;background-color:transparent;border-right:0;border-left:0;transition:none;transform:none}.navbar-expand .offcanvas-bottom,.navbar-expand .offcanvas-top{height:auto;border-top:0;border-bottom:0}.navbar-expand .offcanvas-body{display:flex;flex-grow:0;padding:0;overflow-y:visible}.navbar-light .navbar-brand{color:rgba(0,0,0,.9)}.navbar-light .navbar-brand:focus,.navbar-light .navbar-brand:hover{color:rgba(0,0,0,.9)}.navbar-light .navbar-nav .nav-link{color:rgba(0,0,0,.55)}.navbar-light .navbar-nav .nav-link:focus,.navbar-light .navbar-nav .nav-link:hover{color:rgba(0,0,0,.7)}.navbar-light .navbar-nav .nav-link.disabled{color:rgba(0,0,0,.3)}.navbar-light .navbar-nav .nav-link.active,.navbar-light .navbar-nav .show>.nav-link{color:rgba(0,0,0,.9)}.navbar-light .navbar-toggler{color:rgba(0,0,0,.55);border-color:rgba(0,0,0,.1)}.navbar-light .navbar-toggler-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\")}.navbar-light .navbar-text{color:rgba(0,0,0,.55)}.navbar-light .navbar-text a,.navbar-light .navbar-text a:focus,.navbar-light .navbar-text a:hover{color:rgba(0,0,0,.9)}.navbar-dark .navbar-brand{color:#fff}.navbar-dark .navbar-brand:focus,.navbar-dark .navbar-brand:hover{color:#fff}.navbar-dark .navbar-nav .nav-link{color:rgba(255,255,255,.55)}.navbar-dark .navbar-nav .nav-link:focus,.navbar-dark .navbar-nav .nav-link:hover{color:rgba(255,255,255,.75)}.navbar-dark .navbar-nav .nav-link.disabled{color:rgba(255,255,255,.25)}.navbar-dark .navbar-nav .nav-link.active,.navbar-dark .navbar-nav .show>.nav-link{color:#fff}.navbar-dark .navbar-toggler{color:rgba(255,255,255,.55);border-color:rgba(255,255,255,.1)}.navbar-dark .navbar-toggler-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\")}.navbar-dark .navbar-text{color:rgba(255,255,255,.55)}.navbar-dark .navbar-text a,.navbar-dark .navbar-text a:focus,.navbar-dark .navbar-text a:hover{color:#fff}.card{position:relative;display:flex;flex-direction:column;min-width:0;word-wrap:break-word;background-color:#fff;background-clip:border-box;border:1px solid rgba(0,0,0,.125);border-radius:.25rem}.card>hr{margin-right:0;margin-left:0}.card>.list-group{border-top:inherit;border-bottom:inherit}.card>.list-group:first-child{border-top-width:0;border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card>.list-group:last-child{border-bottom-width:0;border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card>.card-header+.list-group,.card>.list-group+.card-footer{border-top:0}.card-body{flex:1 1 auto;padding:1rem 1rem}.card-title{margin-bottom:.5rem}.card-subtitle{margin-top:-.25rem;margin-bottom:0}.card-text:last-child{margin-bottom:0}.card-link+.card-link{margin-left:1rem}.card-header{padding:.5rem 1rem;margin-bottom:0;background-color:rgba(0,0,0,.03);border-bottom:1px solid rgba(0,0,0,.125)}.card-header:first-child{border-radius:calc(.25rem - 1px) calc(.25rem - 1px) 0 0}.card-footer{padding:.5rem 1rem;background-color:rgba(0,0,0,.03);border-top:1px solid rgba(0,0,0,.125)}.card-footer:last-child{border-radius:0 0 calc(.25rem - 1px) calc(.25rem - 1px)}.card-header-tabs{margin-right:-.5rem;margin-bottom:-.5rem;margin-left:-.5rem;border-bottom:0}.card-header-pills{margin-right:-.5rem;margin-left:-.5rem}.card-img-overlay{position:absolute;top:0;right:0;bottom:0;left:0;padding:1rem;border-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom,.card-img-top{width:100%}.card-img,.card-img-top{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.card-img,.card-img-bottom{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.card-group>.card{margin-bottom:.75rem}@media (min-width:576px){.card-group{display:flex;flex-flow:row wrap}.card-group>.card{flex:1 0 0%;margin-bottom:0}.card-group>.card+.card{margin-left:0;border-left:0}.card-group>.card:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.card-group>.card:not(:last-child) .card-header,.card-group>.card:not(:last-child) .card-img-top{border-top-right-radius:0}.card-group>.card:not(:last-child) .card-footer,.card-group>.card:not(:last-child) .card-img-bottom{border-bottom-right-radius:0}.card-group>.card:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.card-group>.card:not(:first-child) .card-header,.card-group>.card:not(:first-child) .card-img-top{border-top-left-radius:0}.card-group>.card:not(:first-child) .card-footer,.card-group>.card:not(:first-child) .card-img-bottom{border-bottom-left-radius:0}}.accordion-button{position:relative;display:flex;align-items:center;width:100%;padding:1rem 1.25rem;font-size:1rem;color:#212529;text-align:left;background-color:#fff;border:0;border-radius:0;overflow-anchor:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out,border-radius .15s ease}@media (prefers-reduced-motion:reduce){.accordion-button{transition:none}}.accordion-button:not(.collapsed){color:#0c63e4;background-color:#e7f1ff;box-shadow:inset 0 -1px 0 rgba(0,0,0,.125)}.accordion-button:not(.collapsed)::after{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");transform:rotate(-180deg)}.accordion-button::after{flex-shrink:0;width:1.25rem;height:1.25rem;margin-left:auto;content:\"\";background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");background-repeat:no-repeat;background-size:1.25rem;transition:transform .2s ease-in-out}@media (prefers-reduced-motion:reduce){.accordion-button::after{transition:none}}.accordion-button:hover{z-index:2}.accordion-button:focus{z-index:3;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.accordion-header{margin-bottom:0}.accordion-item{background-color:#fff;border:1px solid rgba(0,0,0,.125)}.accordion-item:first-of-type{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.accordion-item:first-of-type .accordion-button{border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.accordion-item:not(:first-of-type){border-top:0}.accordion-item:last-of-type{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-item:last-of-type .accordion-button.collapsed{border-bottom-right-radius:calc(.25rem - 1px);border-bottom-left-radius:calc(.25rem - 1px)}.accordion-item:last-of-type .accordion-collapse{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.accordion-body{padding:1rem 1.25rem}.accordion-flush .accordion-collapse{border-width:0}.accordion-flush .accordion-item{border-right:0;border-left:0;border-radius:0}.accordion-flush .accordion-item:first-child{border-top:0}.accordion-flush .accordion-item:last-child{border-bottom:0}.accordion-flush .accordion-item .accordion-button{border-radius:0}.breadcrumb{display:flex;flex-wrap:wrap;padding:0 0;margin-bottom:1rem;list-style:none}.breadcrumb-item+.breadcrumb-item{padding-left:.5rem}.breadcrumb-item+.breadcrumb-item::before{float:left;padding-right:.5rem;color:#6c757d;content:var(--bs-breadcrumb-divider, \"/\")}.breadcrumb-item.active{color:#6c757d}.pagination{display:flex;padding-left:0;list-style:none}.page-link{position:relative;display:block;color:#0d6efd;text-decoration:none;background-color:#fff;border:1px solid #dee2e6;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2;color:#0a58ca;background-color:#e9ecef;border-color:#dee2e6}.page-link:focus{z-index:3;color:#0a58ca;background-color:#e9ecef;outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25)}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{z-index:3;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.page-item.disabled .page-link{color:#6c757d;pointer-events:none;background-color:#fff;border-color:#dee2e6}.page-link{padding:.375rem .75rem}.page-item:first-child .page-link{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.page-item:last-child .page-link{border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.pagination-lg .page-link{padding:.75rem 1.5rem;font-size:1.25rem}.pagination-lg .page-item:first-child .page-link{border-top-left-radius:.3rem;border-bottom-left-radius:.3rem}.pagination-lg .page-item:last-child .page-link{border-top-right-radius:.3rem;border-bottom-right-radius:.3rem}.pagination-sm .page-link{padding:.25rem .5rem;font-size:.875rem}.pagination-sm .page-item:first-child .page-link{border-top-left-radius:.2rem;border-bottom-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-top-right-radius:.2rem;border-bottom-right-radius:.2rem}.badge{display:inline-block;padding:.35em .65em;font-size:.75em;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25rem}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.alert{position:relative;padding:1rem 1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:.25rem}.alert-heading{color:inherit}.alert-link{font-weight:700}.alert-dismissible{padding-right:3rem}.alert-dismissible .btn-close{position:absolute;top:0;right:0;z-index:2;padding:1.25rem 1rem}.alert-primary{color:#084298;background-color:#cfe2ff;border-color:#b6d4fe}.alert-primary .alert-link{color:#06357a}.alert-secondary{color:#41464b;background-color:#e2e3e5;border-color:#d3d6d8}.alert-secondary .alert-link{color:#34383c}.alert-success{color:#0f5132;background-color:#d1e7dd;border-color:#badbcc}.alert-success .alert-link{color:#0c4128}.alert-info{color:#055160;background-color:#cff4fc;border-color:#b6effb}.alert-info .alert-link{color:#04414d}.alert-warning{color:#664d03;background-color:#fff3cd;border-color:#ffecb5}.alert-warning .alert-link{color:#523e02}.alert-danger{color:#842029;background-color:#f8d7da;border-color:#f5c2c7}.alert-danger .alert-link{color:#6a1a21}.alert-light{color:#636464;background-color:#fefefe;border-color:#fdfdfe}.alert-light .alert-link{color:#4f5050}.alert-dark{color:#141619;background-color:#d3d3d4;border-color:#bcbebf}.alert-dark .alert-link{color:#101214}@-webkit-keyframes progress-bar-stripes{0%{background-position-x:1rem}}@keyframes progress-bar-stripes{0%{background-position-x:1rem}}.progress{display:flex;height:1rem;overflow:hidden;font-size:.75rem;background-color:#e9ecef;border-radius:.25rem}.progress-bar{display:flex;flex-direction:column;justify-content:center;overflow:hidden;color:#fff;text-align:center;white-space:nowrap;background-color:#0d6efd;transition:width .6s ease}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}.progress-bar-striped{background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-size:1rem 1rem}.progress-bar-animated{-webkit-animation:1s linear infinite progress-bar-stripes;animation:1s linear infinite progress-bar-stripes}@media (prefers-reduced-motion:reduce){.progress-bar-animated{-webkit-animation:none;animation:none}}.list-group{display:flex;flex-direction:column;padding-left:0;margin-bottom:0;border-radius:.25rem}.list-group-numbered{list-style-type:none;counter-reset:section}.list-group-numbered>li::before{content:counters(section, \".\") \". \";counter-increment:section}.list-group-item-action{width:100%;color:#495057;text-align:inherit}.list-group-item-action:focus,.list-group-item-action:hover{z-index:1;color:#495057;text-decoration:none;background-color:#f8f9fa}.list-group-item-action:active{color:#212529;background-color:#e9ecef}.list-group-item{position:relative;display:block;padding:.5rem 1rem;color:#212529;text-decoration:none;background-color:#fff;border:1px solid rgba(0,0,0,.125)}.list-group-item:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit}.list-group-item:last-child{border-bottom-right-radius:inherit;border-bottom-left-radius:inherit}.list-group-item.disabled,.list-group-item:disabled{color:#6c757d;pointer-events:none;background-color:#fff}.list-group-item.active{z-index:2;color:#fff;background-color:#0d6efd;border-color:#0d6efd}.list-group-item+.list-group-item{border-top-width:0}.list-group-item+.list-group-item.active{margin-top:-1px;border-top-width:1px}.list-group-horizontal{flex-direction:row}.list-group-horizontal>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal>.list-group-item.active{margin-top:0}.list-group-horizontal>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}@media (min-width:576px){.list-group-horizontal-sm{flex-direction:row}.list-group-horizontal-sm>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-sm>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-sm>.list-group-item.active{margin-top:0}.list-group-horizontal-sm>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-sm>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:768px){.list-group-horizontal-md{flex-direction:row}.list-group-horizontal-md>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-md>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-md>.list-group-item.active{margin-top:0}.list-group-horizontal-md>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-md>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:992px){.list-group-horizontal-lg{flex-direction:row}.list-group-horizontal-lg>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-lg>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-lg>.list-group-item.active{margin-top:0}.list-group-horizontal-lg>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-lg>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1200px){.list-group-horizontal-xl{flex-direction:row}.list-group-horizontal-xl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xl>.list-group-item.active{margin-top:0}.list-group-horizontal-xl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}@media (min-width:1400px){.list-group-horizontal-xxl{flex-direction:row}.list-group-horizontal-xxl>.list-group-item:first-child{border-bottom-left-radius:.25rem;border-top-right-radius:0}.list-group-horizontal-xxl>.list-group-item:last-child{border-top-right-radius:.25rem;border-bottom-left-radius:0}.list-group-horizontal-xxl>.list-group-item.active{margin-top:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item{border-top-width:1px;border-left-width:0}.list-group-horizontal-xxl>.list-group-item+.list-group-item.active{margin-left:-1px;border-left-width:1px}}.list-group-flush{border-radius:0}.list-group-flush>.list-group-item{border-width:0 0 1px}.list-group-flush>.list-group-item:last-child{border-bottom-width:0}.list-group-item-primary{color:#084298;background-color:#cfe2ff}.list-group-item-primary.list-group-item-action:focus,.list-group-item-primary.list-group-item-action:hover{color:#084298;background-color:#bacbe6}.list-group-item-primary.list-group-item-action.active{color:#fff;background-color:#084298;border-color:#084298}.list-group-item-secondary{color:#41464b;background-color:#e2e3e5}.list-group-item-secondary.list-group-item-action:focus,.list-group-item-secondary.list-group-item-action:hover{color:#41464b;background-color:#cbccce}.list-group-item-secondary.list-group-item-action.active{color:#fff;background-color:#41464b;border-color:#41464b}.list-group-item-success{color:#0f5132;background-color:#d1e7dd}.list-group-item-success.list-group-item-action:focus,.list-group-item-success.list-group-item-action:hover{color:#0f5132;background-color:#bcd0c7}.list-group-item-success.list-group-item-action.active{color:#fff;background-color:#0f5132;border-color:#0f5132}.list-group-item-info{color:#055160;background-color:#cff4fc}.list-group-item-info.list-group-item-action:focus,.list-group-item-info.list-group-item-action:hover{color:#055160;background-color:#badce3}.list-group-item-info.list-group-item-action.active{color:#fff;background-color:#055160;border-color:#055160}.list-group-item-warning{color:#664d03;background-color:#fff3cd}.list-group-item-warning.list-group-item-action:focus,.list-group-item-warning.list-group-item-action:hover{color:#664d03;background-color:#e6dbb9}.list-group-item-warning.list-group-item-action.active{color:#fff;background-color:#664d03;border-color:#664d03}.list-group-item-danger{color:#842029;background-color:#f8d7da}.list-group-item-danger.list-group-item-action:focus,.list-group-item-danger.list-group-item-action:hover{color:#842029;background-color:#dfc2c4}.list-group-item-danger.list-group-item-action.active{color:#fff;background-color:#842029;border-color:#842029}.list-group-item-light{color:#636464;background-color:#fefefe}.list-group-item-light.list-group-item-action:focus,.list-group-item-light.list-group-item-action:hover{color:#636464;background-color:#e5e5e5}.list-group-item-light.list-group-item-action.active{color:#fff;background-color:#636464;border-color:#636464}.list-group-item-dark{color:#141619;background-color:#d3d3d4}.list-group-item-dark.list-group-item-action:focus,.list-group-item-dark.list-group-item-action:hover{color:#141619;background-color:#bebebf}.list-group-item-dark.list-group-item-action.active{color:#fff;background-color:#141619;border-color:#141619}.btn-close{box-sizing:content-box;width:1em;height:1em;padding:.25em .25em;color:#000;background:transparent url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e\") center/1em auto no-repeat;border:0;border-radius:.25rem;opacity:.5}.btn-close:hover{color:#000;text-decoration:none;opacity:.75}.btn-close:focus{outline:0;box-shadow:0 0 0 .25rem rgba(13,110,253,.25);opacity:1}.btn-close.disabled,.btn-close:disabled{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;opacity:.25}.btn-close-white{filter:invert(1) grayscale(100%) brightness(200%)}.toast{width:350px;max-width:100%;font-size:.875rem;pointer-events:auto;background-color:rgba(255,255,255,.85);background-clip:padding-box;border:1px solid rgba(0,0,0,.1);box-shadow:0 .5rem 1rem rgba(0,0,0,.15);border-radius:.25rem}.toast.showing{opacity:0}.toast:not(.show){display:none}.toast-container{width:-webkit-max-content;width:-moz-max-content;width:max-content;max-width:100%;pointer-events:none}.toast-container>:not(:last-child){margin-bottom:.75rem}.toast-header{display:flex;align-items:center;padding:.5rem .75rem;color:#6c757d;background-color:rgba(255,255,255,.85);background-clip:padding-box;border-bottom:1px solid rgba(0,0,0,.05);border-top-left-radius:calc(.25rem - 1px);border-top-right-radius:calc(.25rem - 1px)}.toast-header .btn-close{margin-right:-.375rem;margin-left:.75rem}.toast-body{padding:.75rem;word-wrap:break-word}.modal{position:fixed;top:0;left:0;z-index:1055;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:auto;margin:.5rem;pointer-events:none}.modal.fade .modal-dialog{transition:transform .3s ease-out;transform:translate(0,-50px)}@media (prefers-reduced-motion:reduce){.modal.fade .modal-dialog{transition:none}}.modal.show .modal-dialog{transform:none}.modal.modal-static .modal-dialog{transform:scale(1.02)}.modal-dialog-scrollable{height:calc(100% - 1rem)}.modal-dialog-scrollable .modal-content{max-height:100%;overflow:hidden}.modal-dialog-scrollable .modal-body{overflow-y:auto}.modal-dialog-centered{display:flex;align-items:center;min-height:calc(100% - 1rem)}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;pointer-events:auto;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem;outline:0}.modal-backdrop{position:fixed;top:0;left:0;z-index:1050;width:100vw;height:100vh;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop.show{opacity:.5}.modal-header{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;padding:1rem 1rem;border-bottom:1px solid #dee2e6;border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.modal-header .btn-close{padding:.5rem .5rem;margin:-.5rem -.5rem -.5rem auto}.modal-title{margin-bottom:0;line-height:1.5}.modal-body{position:relative;flex:1 1 auto;padding:1rem}.modal-footer{display:flex;flex-wrap:wrap;flex-shrink:0;align-items:center;justify-content:flex-end;padding:.75rem;border-top:1px solid #dee2e6;border-bottom-right-radius:calc(.3rem - 1px);border-bottom-left-radius:calc(.3rem - 1px)}.modal-footer>*{margin:.25rem}@media (min-width:576px){.modal-dialog{max-width:500px;margin:1.75rem auto}.modal-dialog-scrollable{height:calc(100% - 3.5rem)}.modal-dialog-centered{min-height:calc(100% - 3.5rem)}.modal-sm{max-width:300px}}@media (min-width:992px){.modal-lg,.modal-xl{max-width:800px}}@media (min-width:1200px){.modal-xl{max-width:1140px}}.modal-fullscreen{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen .modal-header{border-radius:0}.modal-fullscreen .modal-body{overflow-y:auto}.modal-fullscreen .modal-footer{border-radius:0}@media (max-width:575.98px){.modal-fullscreen-sm-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-sm-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-sm-down .modal-header{border-radius:0}.modal-fullscreen-sm-down .modal-body{overflow-y:auto}.modal-fullscreen-sm-down .modal-footer{border-radius:0}}@media (max-width:767.98px){.modal-fullscreen-md-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-md-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-md-down .modal-header{border-radius:0}.modal-fullscreen-md-down .modal-body{overflow-y:auto}.modal-fullscreen-md-down .modal-footer{border-radius:0}}@media (max-width:991.98px){.modal-fullscreen-lg-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-lg-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-lg-down .modal-header{border-radius:0}.modal-fullscreen-lg-down .modal-body{overflow-y:auto}.modal-fullscreen-lg-down .modal-footer{border-radius:0}}@media (max-width:1199.98px){.modal-fullscreen-xl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xl-down .modal-header{border-radius:0}.modal-fullscreen-xl-down .modal-body{overflow-y:auto}.modal-fullscreen-xl-down .modal-footer{border-radius:0}}@media (max-width:1399.98px){.modal-fullscreen-xxl-down{width:100vw;max-width:none;height:100%;margin:0}.modal-fullscreen-xxl-down .modal-content{height:100%;border:0;border-radius:0}.modal-fullscreen-xxl-down .modal-header{border-radius:0}.modal-fullscreen-xxl-down .modal-body{overflow-y:auto}.modal-fullscreen-xxl-down .modal-footer{border-radius:0}}.tooltip{position:absolute;z-index:1080;display:block;margin:0;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;opacity:0}.tooltip.show{opacity:.9}.tooltip .tooltip-arrow{position:absolute;display:block;width:.8rem;height:.4rem}.tooltip .tooltip-arrow::before{position:absolute;content:\"\";border-color:transparent;border-style:solid}.bs-tooltip-auto[data-popper-placement^=top],.bs-tooltip-top{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow,.bs-tooltip-top .tooltip-arrow{bottom:0}.bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before,.bs-tooltip-top .tooltip-arrow::before{top:-1px;border-width:.4rem .4rem 0;border-top-color:#000}.bs-tooltip-auto[data-popper-placement^=right],.bs-tooltip-end{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow,.bs-tooltip-end .tooltip-arrow{left:0;width:.4rem;height:.8rem}.bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before,.bs-tooltip-end .tooltip-arrow::before{right:-1px;border-width:.4rem .4rem .4rem 0;border-right-color:#000}.bs-tooltip-auto[data-popper-placement^=bottom],.bs-tooltip-bottom{padding:.4rem 0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow,.bs-tooltip-bottom .tooltip-arrow{top:0}.bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before,.bs-tooltip-bottom .tooltip-arrow::before{bottom:-1px;border-width:0 .4rem .4rem;border-bottom-color:#000}.bs-tooltip-auto[data-popper-placement^=left],.bs-tooltip-start{padding:0 .4rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow,.bs-tooltip-start .tooltip-arrow{right:0;width:.4rem;height:.8rem}.bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before,.bs-tooltip-start .tooltip-arrow::before{left:-1px;border-width:.4rem 0 .4rem .4rem;border-left-color:#000}.tooltip-inner{max-width:200px;padding:.25rem .5rem;color:#fff;text-align:center;background-color:#000;border-radius:.25rem}.popover{position:absolute;top:0;left:0;z-index:1070;display:block;max-width:276px;font-family:var(--bs-font-sans-serif);font-style:normal;font-weight:400;line-height:1.5;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;white-space:normal;line-break:auto;font-size:.875rem;word-wrap:break-word;background-color:#fff;background-clip:padding-box;border:1px solid rgba(0,0,0,.2);border-radius:.3rem}.popover .popover-arrow{position:absolute;display:block;width:1rem;height:.5rem}.popover .popover-arrow::after,.popover .popover-arrow::before{position:absolute;display:block;content:\"\";border-color:transparent;border-style:solid}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow,.bs-popover-top>.popover-arrow{bottom:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::before,.bs-popover-top>.popover-arrow::before{bottom:0;border-width:.5rem .5rem 0;border-top-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=top]>.popover-arrow::after,.bs-popover-top>.popover-arrow::after{bottom:1px;border-width:.5rem .5rem 0;border-top-color:#fff}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow,.bs-popover-end>.popover-arrow{left:calc(-.5rem - 1px);width:.5rem;height:1rem}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::before,.bs-popover-end>.popover-arrow::before{left:0;border-width:.5rem .5rem .5rem 0;border-right-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=right]>.popover-arrow::after,.bs-popover-end>.popover-arrow::after{left:1px;border-width:.5rem .5rem .5rem 0;border-right-color:#fff}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow,.bs-popover-bottom>.popover-arrow{top:calc(-.5rem - 1px)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::before,.bs-popover-bottom>.popover-arrow::before{top:0;border-width:0 .5rem .5rem .5rem;border-bottom-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=bottom]>.popover-arrow::after,.bs-popover-bottom>.popover-arrow::after{top:1px;border-width:0 .5rem .5rem .5rem;border-bottom-color:#fff}.bs-popover-auto[data-popper-placement^=bottom] .popover-header::before,.bs-popover-bottom .popover-header::before{position:absolute;top:0;left:50%;display:block;width:1rem;margin-left:-.5rem;content:\"\";border-bottom:1px solid #f0f0f0}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow,.bs-popover-start>.popover-arrow{right:calc(-.5rem - 1px);width:.5rem;height:1rem}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::before,.bs-popover-start>.popover-arrow::before{right:0;border-width:.5rem 0 .5rem .5rem;border-left-color:rgba(0,0,0,.25)}.bs-popover-auto[data-popper-placement^=left]>.popover-arrow::after,.bs-popover-start>.popover-arrow::after{right:1px;border-width:.5rem 0 .5rem .5rem;border-left-color:#fff}.popover-header{padding:.5rem 1rem;margin-bottom:0;font-size:1rem;background-color:#f0f0f0;border-bottom:1px solid rgba(0,0,0,.2);border-top-left-radius:calc(.3rem - 1px);border-top-right-radius:calc(.3rem - 1px)}.popover-header:empty{display:none}.popover-body{padding:1rem 1rem;color:#212529}.carousel{position:relative}.carousel.pointer-event{touch-action:pan-y}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner::after{display:block;clear:both;content:\"\"}.carousel-item{position:relative;display:none;float:left;width:100%;margin-right:-100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;transition:transform .6s ease-in-out}@media (prefers-reduced-motion:reduce){.carousel-item{transition:none}}.carousel-item-next,.carousel-item-prev,.carousel-item.active{display:block}.active.carousel-item-end,.carousel-item-next:not(.carousel-item-start){transform:translateX(100%)}.active.carousel-item-start,.carousel-item-prev:not(.carousel-item-end){transform:translateX(-100%)}.carousel-fade .carousel-item{opacity:0;transition-property:opacity;transform:none}.carousel-fade .carousel-item-next.carousel-item-start,.carousel-fade .carousel-item-prev.carousel-item-end,.carousel-fade .carousel-item.active{z-index:1;opacity:1}.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{z-index:0;opacity:0;transition:opacity 0s .6s}@media (prefers-reduced-motion:reduce){.carousel-fade .active.carousel-item-end,.carousel-fade .active.carousel-item-start{transition:none}}.carousel-control-next,.carousel-control-prev{position:absolute;top:0;bottom:0;z-index:1;display:flex;align-items:center;justify-content:center;width:15%;padding:0;color:#fff;text-align:center;background:0 0;border:0;opacity:.5;transition:opacity .15s ease}@media (prefers-reduced-motion:reduce){.carousel-control-next,.carousel-control-prev{transition:none}}.carousel-control-next:focus,.carousel-control-next:hover,.carousel-control-prev:focus,.carousel-control-prev:hover{color:#fff;text-decoration:none;outline:0;opacity:.9}.carousel-control-prev{left:0}.carousel-control-next{right:0}.carousel-control-next-icon,.carousel-control-prev-icon{display:inline-block;width:2rem;height:2rem;background-repeat:no-repeat;background-position:50%;background-size:100% 100%}.carousel-control-prev-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\")}.carousel-control-next-icon{background-image:url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\")}.carousel-indicators{position:absolute;right:0;bottom:0;left:0;z-index:2;display:flex;justify-content:center;padding:0;margin-right:15%;margin-bottom:1rem;margin-left:15%;list-style:none}.carousel-indicators [data-bs-target]{box-sizing:content-box;flex:0 1 auto;width:30px;height:3px;padding:0;margin-right:3px;margin-left:3px;text-indent:-999px;cursor:pointer;background-color:#fff;background-clip:padding-box;border:0;border-top:10px solid transparent;border-bottom:10px solid transparent;opacity:.5;transition:opacity .6s ease}@media (prefers-reduced-motion:reduce){.carousel-indicators [data-bs-target]{transition:none}}.carousel-indicators .active{opacity:1}.carousel-caption{position:absolute;right:15%;bottom:1.25rem;left:15%;padding-top:1.25rem;padding-bottom:1.25rem;color:#fff;text-align:center}.carousel-dark .carousel-control-next-icon,.carousel-dark .carousel-control-prev-icon{filter:invert(1) grayscale(100)}.carousel-dark .carousel-indicators [data-bs-target]{background-color:#000}.carousel-dark .carousel-caption{color:#000}@-webkit-keyframes spinner-border{to{transform:rotate(360deg)}}@keyframes spinner-border{to{transform:rotate(360deg)}}.spinner-border{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;border:.25em solid currentColor;border-right-color:transparent;border-radius:50%;-webkit-animation:.75s linear infinite spinner-border;animation:.75s linear infinite spinner-border}.spinner-border-sm{width:1rem;height:1rem;border-width:.2em}@-webkit-keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{display:inline-block;width:2rem;height:2rem;vertical-align:-.125em;background-color:currentColor;border-radius:50%;opacity:0;-webkit-animation:.75s linear infinite spinner-grow;animation:.75s linear infinite spinner-grow}.spinner-grow-sm{width:1rem;height:1rem}@media (prefers-reduced-motion:reduce){.spinner-border,.spinner-grow{-webkit-animation-duration:1.5s;animation-duration:1.5s}}.offcanvas{position:fixed;bottom:0;z-index:1045;display:flex;flex-direction:column;max-width:100%;visibility:hidden;background-color:#fff;background-clip:padding-box;outline:0;transition:transform .3s ease-in-out}@media (prefers-reduced-motion:reduce){.offcanvas{transition:none}}.offcanvas-backdrop{position:fixed;top:0;left:0;z-index:1040;width:100vw;height:100vh;background-color:#000}.offcanvas-backdrop.fade{opacity:0}.offcanvas-backdrop.show{opacity:.5}.offcanvas-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1rem}.offcanvas-header .btn-close{padding:.5rem .5rem;margin-top:-.5rem;margin-right:-.5rem;margin-bottom:-.5rem}.offcanvas-title{margin-bottom:0;line-height:1.5}.offcanvas-body{flex-grow:1;padding:1rem 1rem;overflow-y:auto}.offcanvas-start{top:0;left:0;width:400px;border-right:1px solid rgba(0,0,0,.2);transform:translateX(-100%)}.offcanvas-end{top:0;right:0;width:400px;border-left:1px solid rgba(0,0,0,.2);transform:translateX(100%)}.offcanvas-top{top:0;right:0;left:0;height:30vh;max-height:100%;border-bottom:1px solid rgba(0,0,0,.2);transform:translateY(-100%)}.offcanvas-bottom{right:0;left:0;height:30vh;max-height:100%;border-top:1px solid rgba(0,0,0,.2);transform:translateY(100%)}.offcanvas.show{transform:none}.placeholder{display:inline-block;min-height:1em;vertical-align:middle;cursor:wait;background-color:currentColor;opacity:.5}.placeholder.btn::before{display:inline-block;content:\"\"}.placeholder-xs{min-height:.6em}.placeholder-sm{min-height:.8em}.placeholder-lg{min-height:1.2em}.placeholder-glow .placeholder{-webkit-animation:placeholder-glow 2s ease-in-out infinite;animation:placeholder-glow 2s ease-in-out infinite}@-webkit-keyframes placeholder-glow{50%{opacity:.2}}@keyframes placeholder-glow{50%{opacity:.2}}.placeholder-wave{-webkit-mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);mask-image:linear-gradient(130deg,#000 55%,rgba(0,0,0,0.8) 75%,#000 95%);-webkit-mask-size:200% 100%;mask-size:200% 100%;-webkit-animation:placeholder-wave 2s linear infinite;animation:placeholder-wave 2s linear infinite}@-webkit-keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}@keyframes placeholder-wave{100%{-webkit-mask-position:-200% 0%;mask-position:-200% 0%}}.clearfix::after{display:block;clear:both;content:\"\"}.link-primary{color:#0d6efd}.link-primary:focus,.link-primary:hover{color:#0a58ca}.link-secondary{color:#6c757d}.link-secondary:focus,.link-secondary:hover{color:#565e64}.link-success{color:#198754}.link-success:focus,.link-success:hover{color:#146c43}.link-info{color:#0dcaf0}.link-info:focus,.link-info:hover{color:#3dd5f3}.link-warning{color:#ffc107}.link-warning:focus,.link-warning:hover{color:#ffcd39}.link-danger{color:#dc3545}.link-danger:focus,.link-danger:hover{color:#b02a37}.link-light{color:#f8f9fa}.link-light:focus,.link-light:hover{color:#f9fafb}.link-dark{color:#212529}.link-dark:focus,.link-dark:hover{color:#1a1e21}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:\"\"}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}@media (min-width:576px){.sticky-sm-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:768px){.sticky-md-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:992px){.sticky-lg-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1200px){.sticky-xl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}@media (min-width:1400px){.sticky-xxl-top{position:-webkit-sticky;position:sticky;top:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:\"\"}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:1px;min-height:1em;background-color:currentColor;opacity:.25}.align-baseline{vertical-align:baseline!important}.align-top{vertical-align:top!important}.align-middle{vertical-align:middle!important}.align-bottom{vertical-align:bottom!important}.align-text-bottom{vertical-align:text-bottom!important}.align-text-top{vertical-align:text-top!important}.float-start{float:left!important}.float-end{float:right!important}.float-none{float:none!important}.opacity-0{opacity:0!important}.opacity-25{opacity:.25!important}.opacity-50{opacity:.5!important}.opacity-75{opacity:.75!important}.opacity-100{opacity:1!important}.overflow-auto{overflow:auto!important}.overflow-hidden{overflow:hidden!important}.overflow-visible{overflow:visible!important}.overflow-scroll{overflow:scroll!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-grid{display:grid!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:flex!important}.d-inline-flex{display:inline-flex!important}.d-none{display:none!important}.shadow{box-shadow:0 .5rem 1rem rgba(0,0,0,.15)!important}.shadow-sm{box-shadow:0 .125rem .25rem rgba(0,0,0,.075)!important}.shadow-lg{box-shadow:0 1rem 3rem rgba(0,0,0,.175)!important}.shadow-none{box-shadow:none!important}.position-static{position:static!important}.position-relative{position:relative!important}.position-absolute{position:absolute!important}.position-fixed{position:fixed!important}.position-sticky{position:-webkit-sticky!important;position:sticky!important}.top-0{top:0!important}.top-50{top:50%!important}.top-100{top:100%!important}.bottom-0{bottom:0!important}.bottom-50{bottom:50%!important}.bottom-100{bottom:100%!important}.start-0{left:0!important}.start-50{left:50%!important}.start-100{left:100%!important}.end-0{right:0!important}.end-50{right:50%!important}.end-100{right:100%!important}.translate-middle{transform:translate(-50%,-50%)!important}.translate-middle-x{transform:translateX(-50%)!important}.translate-middle-y{transform:translateY(-50%)!important}.border{border:1px solid #dee2e6!important}.border-0{border:0!important}.border-top{border-top:1px solid #dee2e6!important}.border-top-0{border-top:0!important}.border-end{border-right:1px solid #dee2e6!important}.border-end-0{border-right:0!important}.border-bottom{border-bottom:1px solid #dee2e6!important}.border-bottom-0{border-bottom:0!important}.border-start{border-left:1px solid #dee2e6!important}.border-start-0{border-left:0!important}.border-primary{border-color:#0d6efd!important}.border-secondary{border-color:#6c757d!important}.border-success{border-color:#198754!important}.border-info{border-color:#0dcaf0!important}.border-warning{border-color:#ffc107!important}.border-danger{border-color:#dc3545!important}.border-light{border-color:#f8f9fa!important}.border-dark{border-color:#212529!important}.border-white{border-color:#fff!important}.border-1{border-width:1px!important}.border-2{border-width:2px!important}.border-3{border-width:3px!important}.border-4{border-width:4px!important}.border-5{border-width:5px!important}.w-25{width:25%!important}.w-50{width:50%!important}.w-75{width:75%!important}.w-100{width:100%!important}.w-auto{width:auto!important}.mw-100{max-width:100%!important}.vw-100{width:100vw!important}.min-vw-100{min-width:100vw!important}.h-25{height:25%!important}.h-50{height:50%!important}.h-75{height:75%!important}.h-100{height:100%!important}.h-auto{height:auto!important}.mh-100{max-height:100%!important}.vh-100{height:100vh!important}.min-vh-100{min-height:100vh!important}.flex-fill{flex:1 1 auto!important}.flex-row{flex-direction:row!important}.flex-column{flex-direction:column!important}.flex-row-reverse{flex-direction:row-reverse!important}.flex-column-reverse{flex-direction:column-reverse!important}.flex-grow-0{flex-grow:0!important}.flex-grow-1{flex-grow:1!important}.flex-shrink-0{flex-shrink:0!important}.flex-shrink-1{flex-shrink:1!important}.flex-wrap{flex-wrap:wrap!important}.flex-nowrap{flex-wrap:nowrap!important}.flex-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-0{gap:0!important}.gap-1{gap:.25rem!important}.gap-2{gap:.5rem!important}.gap-3{gap:1rem!important}.gap-4{gap:1.5rem!important}.gap-5{gap:3rem!important}.justify-content-start{justify-content:flex-start!important}.justify-content-end{justify-content:flex-end!important}.justify-content-center{justify-content:center!important}.justify-content-between{justify-content:space-between!important}.justify-content-around{justify-content:space-around!important}.justify-content-evenly{justify-content:space-evenly!important}.align-items-start{align-items:flex-start!important}.align-items-end{align-items:flex-end!important}.align-items-center{align-items:center!important}.align-items-baseline{align-items:baseline!important}.align-items-stretch{align-items:stretch!important}.align-content-start{align-content:flex-start!important}.align-content-end{align-content:flex-end!important}.align-content-center{align-content:center!important}.align-content-between{align-content:space-between!important}.align-content-around{align-content:space-around!important}.align-content-stretch{align-content:stretch!important}.align-self-auto{align-self:auto!important}.align-self-start{align-self:flex-start!important}.align-self-end{align-self:flex-end!important}.align-self-center{align-self:center!important}.align-self-baseline{align-self:baseline!important}.align-self-stretch{align-self:stretch!important}.order-first{order:-1!important}.order-0{order:0!important}.order-1{order:1!important}.order-2{order:2!important}.order-3{order:3!important}.order-4{order:4!important}.order-5{order:5!important}.order-last{order:6!important}.m-0{margin:0!important}.m-1{margin:.25rem!important}.m-2{margin:.5rem!important}.m-3{margin:1rem!important}.m-4{margin:1.5rem!important}.m-5{margin:3rem!important}.m-auto{margin:auto!important}.mx-0{margin-right:0!important;margin-left:0!important}.mx-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-3{margin-right:1rem!important;margin-left:1rem!important}.mx-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-5{margin-right:3rem!important;margin-left:3rem!important}.mx-auto{margin-right:auto!important;margin-left:auto!important}.my-0{margin-top:0!important;margin-bottom:0!important}.my-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-0{margin-top:0!important}.mt-1{margin-top:.25rem!important}.mt-2{margin-top:.5rem!important}.mt-3{margin-top:1rem!important}.mt-4{margin-top:1.5rem!important}.mt-5{margin-top:3rem!important}.mt-auto{margin-top:auto!important}.me-0{margin-right:0!important}.me-1{margin-right:.25rem!important}.me-2{margin-right:.5rem!important}.me-3{margin-right:1rem!important}.me-4{margin-right:1.5rem!important}.me-5{margin-right:3rem!important}.me-auto{margin-right:auto!important}.mb-0{margin-bottom:0!important}.mb-1{margin-bottom:.25rem!important}.mb-2{margin-bottom:.5rem!important}.mb-3{margin-bottom:1rem!important}.mb-4{margin-bottom:1.5rem!important}.mb-5{margin-bottom:3rem!important}.mb-auto{margin-bottom:auto!important}.ms-0{margin-left:0!important}.ms-1{margin-left:.25rem!important}.ms-2{margin-left:.5rem!important}.ms-3{margin-left:1rem!important}.ms-4{margin-left:1.5rem!important}.ms-5{margin-left:3rem!important}.ms-auto{margin-left:auto!important}.p-0{padding:0!important}.p-1{padding:.25rem!important}.p-2{padding:.5rem!important}.p-3{padding:1rem!important}.p-4{padding:1.5rem!important}.p-5{padding:3rem!important}.px-0{padding-right:0!important;padding-left:0!important}.px-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-3{padding-right:1rem!important;padding-left:1rem!important}.px-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-5{padding-right:3rem!important;padding-left:3rem!important}.py-0{padding-top:0!important;padding-bottom:0!important}.py-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-0{padding-top:0!important}.pt-1{padding-top:.25rem!important}.pt-2{padding-top:.5rem!important}.pt-3{padding-top:1rem!important}.pt-4{padding-top:1.5rem!important}.pt-5{padding-top:3rem!important}.pe-0{padding-right:0!important}.pe-1{padding-right:.25rem!important}.pe-2{padding-right:.5rem!important}.pe-3{padding-right:1rem!important}.pe-4{padding-right:1.5rem!important}.pe-5{padding-right:3rem!important}.pb-0{padding-bottom:0!important}.pb-1{padding-bottom:.25rem!important}.pb-2{padding-bottom:.5rem!important}.pb-3{padding-bottom:1rem!important}.pb-4{padding-bottom:1.5rem!important}.pb-5{padding-bottom:3rem!important}.ps-0{padding-left:0!important}.ps-1{padding-left:.25rem!important}.ps-2{padding-left:.5rem!important}.ps-3{padding-left:1rem!important}.ps-4{padding-left:1.5rem!important}.ps-5{padding-left:3rem!important}.font-monospace{font-family:var(--bs-font-monospace)!important}.fs-1{font-size:calc(1.375rem + 1.5vw)!important}.fs-2{font-size:calc(1.325rem + .9vw)!important}.fs-3{font-size:calc(1.3rem + .6vw)!important}.fs-4{font-size:calc(1.275rem + .3vw)!important}.fs-5{font-size:1.25rem!important}.fs-6{font-size:1rem!important}.fst-italic{font-style:italic!important}.fst-normal{font-style:normal!important}.fw-light{font-weight:300!important}.fw-lighter{font-weight:lighter!important}.fw-normal{font-weight:400!important}.fw-bold{font-weight:700!important}.fw-bolder{font-weight:bolder!important}.lh-1{line-height:1!important}.lh-sm{line-height:1.25!important}.lh-base{line-height:1.5!important}.lh-lg{line-height:2!important}.text-start{text-align:left!important}.text-end{text-align:right!important}.text-center{text-align:center!important}.text-decoration-none{text-decoration:none!important}.text-decoration-underline{text-decoration:underline!important}.text-decoration-line-through{text-decoration:line-through!important}.text-lowercase{text-transform:lowercase!important}.text-uppercase{text-transform:uppercase!important}.text-capitalize{text-transform:capitalize!important}.text-wrap{white-space:normal!important}.text-nowrap{white-space:nowrap!important}.text-break{word-wrap:break-word!important;word-break:break-word!important}.text-primary{--bs-text-opacity:1;color:rgba(var(--bs-primary-rgb),var(--bs-text-opacity))!important}.text-secondary{--bs-text-opacity:1;color:rgba(var(--bs-secondary-rgb),var(--bs-text-opacity))!important}.text-success{--bs-text-opacity:1;color:rgba(var(--bs-success-rgb),var(--bs-text-opacity))!important}.text-info{--bs-text-opacity:1;color:rgba(var(--bs-info-rgb),var(--bs-text-opacity))!important}.text-warning{--bs-text-opacity:1;color:rgba(var(--bs-warning-rgb),var(--bs-text-opacity))!important}.text-danger{--bs-text-opacity:1;color:rgba(var(--bs-danger-rgb),var(--bs-text-opacity))!important}.text-light{--bs-text-opacity:1;color:rgba(var(--bs-light-rgb),var(--bs-text-opacity))!important}.text-dark{--bs-text-opacity:1;color:rgba(var(--bs-dark-rgb),var(--bs-text-opacity))!important}.text-black{--bs-text-opacity:1;color:rgba(var(--bs-black-rgb),var(--bs-text-opacity))!important}.text-white{--bs-text-opacity:1;color:rgba(var(--bs-white-rgb),var(--bs-text-opacity))!important}.text-body{--bs-text-opacity:1;color:rgba(var(--bs-body-color-rgb),var(--bs-text-opacity))!important}.text-muted{--bs-text-opacity:1;color:#6c757d!important}.text-black-50{--bs-text-opacity:1;color:rgba(0,0,0,.5)!important}.text-white-50{--bs-text-opacity:1;color:rgba(255,255,255,.5)!important}.text-reset{--bs-text-opacity:1;color:inherit!important}.text-opacity-25{--bs-text-opacity:0.25}.text-opacity-50{--bs-text-opacity:0.5}.text-opacity-75{--bs-text-opacity:0.75}.text-opacity-100{--bs-text-opacity:1}.bg-primary{--bs-bg-opacity:1;background-color:rgba(var(--bs-primary-rgb),var(--bs-bg-opacity))!important}.bg-secondary{--bs-bg-opacity:1;background-color:rgba(var(--bs-secondary-rgb),var(--bs-bg-opacity))!important}.bg-success{--bs-bg-opacity:1;background-color:rgba(var(--bs-success-rgb),var(--bs-bg-opacity))!important}.bg-info{--bs-bg-opacity:1;background-color:rgba(var(--bs-info-rgb),var(--bs-bg-opacity))!important}.bg-warning{--bs-bg-opacity:1;background-color:rgba(var(--bs-warning-rgb),var(--bs-bg-opacity))!important}.bg-danger{--bs-bg-opacity:1;background-color:rgba(var(--bs-danger-rgb),var(--bs-bg-opacity))!important}.bg-light{--bs-bg-opacity:1;background-color:rgba(var(--bs-light-rgb),var(--bs-bg-opacity))!important}.bg-dark{--bs-bg-opacity:1;background-color:rgba(var(--bs-dark-rgb),var(--bs-bg-opacity))!important}.bg-black{--bs-bg-opacity:1;background-color:rgba(var(--bs-black-rgb),var(--bs-bg-opacity))!important}.bg-white{--bs-bg-opacity:1;background-color:rgba(var(--bs-white-rgb),var(--bs-bg-opacity))!important}.bg-body{--bs-bg-opacity:1;background-color:rgba(var(--bs-body-bg-rgb),var(--bs-bg-opacity))!important}.bg-transparent{--bs-bg-opacity:1;background-color:transparent!important}.bg-opacity-10{--bs-bg-opacity:0.1}.bg-opacity-25{--bs-bg-opacity:0.25}.bg-opacity-50{--bs-bg-opacity:0.5}.bg-opacity-75{--bs-bg-opacity:0.75}.bg-opacity-100{--bs-bg-opacity:1}.bg-gradient{background-image:var(--bs-gradient)!important}.user-select-all{-webkit-user-select:all!important;-moz-user-select:all!important;user-select:all!important}.user-select-auto{-webkit-user-select:auto!important;-moz-user-select:auto!important;user-select:auto!important}.user-select-none{-webkit-user-select:none!important;-moz-user-select:none!important;user-select:none!important}.pe-none{pointer-events:none!important}.pe-auto{pointer-events:auto!important}.rounded{border-radius:.25rem!important}.rounded-0{border-radius:0!important}.rounded-1{border-radius:.2rem!important}.rounded-2{border-radius:.25rem!important}.rounded-3{border-radius:.3rem!important}.rounded-circle{border-radius:50%!important}.rounded-pill{border-radius:50rem!important}.rounded-top{border-top-left-radius:.25rem!important;border-top-right-radius:.25rem!important}.rounded-end{border-top-right-radius:.25rem!important;border-bottom-right-radius:.25rem!important}.rounded-bottom{border-bottom-right-radius:.25rem!important;border-bottom-left-radius:.25rem!important}.rounded-start{border-bottom-left-radius:.25rem!important;border-top-left-radius:.25rem!important}.visible{visibility:visible!important}.invisible{visibility:hidden!important}@media (min-width:576px){.float-sm-start{float:left!important}.float-sm-end{float:right!important}.float-sm-none{float:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-grid{display:grid!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:flex!important}.d-sm-inline-flex{display:inline-flex!important}.d-sm-none{display:none!important}.flex-sm-fill{flex:1 1 auto!important}.flex-sm-row{flex-direction:row!important}.flex-sm-column{flex-direction:column!important}.flex-sm-row-reverse{flex-direction:row-reverse!important}.flex-sm-column-reverse{flex-direction:column-reverse!important}.flex-sm-grow-0{flex-grow:0!important}.flex-sm-grow-1{flex-grow:1!important}.flex-sm-shrink-0{flex-shrink:0!important}.flex-sm-shrink-1{flex-shrink:1!important}.flex-sm-wrap{flex-wrap:wrap!important}.flex-sm-nowrap{flex-wrap:nowrap!important}.flex-sm-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-sm-0{gap:0!important}.gap-sm-1{gap:.25rem!important}.gap-sm-2{gap:.5rem!important}.gap-sm-3{gap:1rem!important}.gap-sm-4{gap:1.5rem!important}.gap-sm-5{gap:3rem!important}.justify-content-sm-start{justify-content:flex-start!important}.justify-content-sm-end{justify-content:flex-end!important}.justify-content-sm-center{justify-content:center!important}.justify-content-sm-between{justify-content:space-between!important}.justify-content-sm-around{justify-content:space-around!important}.justify-content-sm-evenly{justify-content:space-evenly!important}.align-items-sm-start{align-items:flex-start!important}.align-items-sm-end{align-items:flex-end!important}.align-items-sm-center{align-items:center!important}.align-items-sm-baseline{align-items:baseline!important}.align-items-sm-stretch{align-items:stretch!important}.align-content-sm-start{align-content:flex-start!important}.align-content-sm-end{align-content:flex-end!important}.align-content-sm-center{align-content:center!important}.align-content-sm-between{align-content:space-between!important}.align-content-sm-around{align-content:space-around!important}.align-content-sm-stretch{align-content:stretch!important}.align-self-sm-auto{align-self:auto!important}.align-self-sm-start{align-self:flex-start!important}.align-self-sm-end{align-self:flex-end!important}.align-self-sm-center{align-self:center!important}.align-self-sm-baseline{align-self:baseline!important}.align-self-sm-stretch{align-self:stretch!important}.order-sm-first{order:-1!important}.order-sm-0{order:0!important}.order-sm-1{order:1!important}.order-sm-2{order:2!important}.order-sm-3{order:3!important}.order-sm-4{order:4!important}.order-sm-5{order:5!important}.order-sm-last{order:6!important}.m-sm-0{margin:0!important}.m-sm-1{margin:.25rem!important}.m-sm-2{margin:.5rem!important}.m-sm-3{margin:1rem!important}.m-sm-4{margin:1.5rem!important}.m-sm-5{margin:3rem!important}.m-sm-auto{margin:auto!important}.mx-sm-0{margin-right:0!important;margin-left:0!important}.mx-sm-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-sm-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-sm-3{margin-right:1rem!important;margin-left:1rem!important}.mx-sm-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-sm-5{margin-right:3rem!important;margin-left:3rem!important}.mx-sm-auto{margin-right:auto!important;margin-left:auto!important}.my-sm-0{margin-top:0!important;margin-bottom:0!important}.my-sm-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-sm-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-sm-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-sm-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-sm-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-sm-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-sm-0{margin-top:0!important}.mt-sm-1{margin-top:.25rem!important}.mt-sm-2{margin-top:.5rem!important}.mt-sm-3{margin-top:1rem!important}.mt-sm-4{margin-top:1.5rem!important}.mt-sm-5{margin-top:3rem!important}.mt-sm-auto{margin-top:auto!important}.me-sm-0{margin-right:0!important}.me-sm-1{margin-right:.25rem!important}.me-sm-2{margin-right:.5rem!important}.me-sm-3{margin-right:1rem!important}.me-sm-4{margin-right:1.5rem!important}.me-sm-5{margin-right:3rem!important}.me-sm-auto{margin-right:auto!important}.mb-sm-0{margin-bottom:0!important}.mb-sm-1{margin-bottom:.25rem!important}.mb-sm-2{margin-bottom:.5rem!important}.mb-sm-3{margin-bottom:1rem!important}.mb-sm-4{margin-bottom:1.5rem!important}.mb-sm-5{margin-bottom:3rem!important}.mb-sm-auto{margin-bottom:auto!important}.ms-sm-0{margin-left:0!important}.ms-sm-1{margin-left:.25rem!important}.ms-sm-2{margin-left:.5rem!important}.ms-sm-3{margin-left:1rem!important}.ms-sm-4{margin-left:1.5rem!important}.ms-sm-5{margin-left:3rem!important}.ms-sm-auto{margin-left:auto!important}.p-sm-0{padding:0!important}.p-sm-1{padding:.25rem!important}.p-sm-2{padding:.5rem!important}.p-sm-3{padding:1rem!important}.p-sm-4{padding:1.5rem!important}.p-sm-5{padding:3rem!important}.px-sm-0{padding-right:0!important;padding-left:0!important}.px-sm-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-sm-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-sm-3{padding-right:1rem!important;padding-left:1rem!important}.px-sm-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-sm-5{padding-right:3rem!important;padding-left:3rem!important}.py-sm-0{padding-top:0!important;padding-bottom:0!important}.py-sm-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-sm-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-sm-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-sm-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-sm-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-sm-0{padding-top:0!important}.pt-sm-1{padding-top:.25rem!important}.pt-sm-2{padding-top:.5rem!important}.pt-sm-3{padding-top:1rem!important}.pt-sm-4{padding-top:1.5rem!important}.pt-sm-5{padding-top:3rem!important}.pe-sm-0{padding-right:0!important}.pe-sm-1{padding-right:.25rem!important}.pe-sm-2{padding-right:.5rem!important}.pe-sm-3{padding-right:1rem!important}.pe-sm-4{padding-right:1.5rem!important}.pe-sm-5{padding-right:3rem!important}.pb-sm-0{padding-bottom:0!important}.pb-sm-1{padding-bottom:.25rem!important}.pb-sm-2{padding-bottom:.5rem!important}.pb-sm-3{padding-bottom:1rem!important}.pb-sm-4{padding-bottom:1.5rem!important}.pb-sm-5{padding-bottom:3rem!important}.ps-sm-0{padding-left:0!important}.ps-sm-1{padding-left:.25rem!important}.ps-sm-2{padding-left:.5rem!important}.ps-sm-3{padding-left:1rem!important}.ps-sm-4{padding-left:1.5rem!important}.ps-sm-5{padding-left:3rem!important}.text-sm-start{text-align:left!important}.text-sm-end{text-align:right!important}.text-sm-center{text-align:center!important}}@media (min-width:768px){.float-md-start{float:left!important}.float-md-end{float:right!important}.float-md-none{float:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-grid{display:grid!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:flex!important}.d-md-inline-flex{display:inline-flex!important}.d-md-none{display:none!important}.flex-md-fill{flex:1 1 auto!important}.flex-md-row{flex-direction:row!important}.flex-md-column{flex-direction:column!important}.flex-md-row-reverse{flex-direction:row-reverse!important}.flex-md-column-reverse{flex-direction:column-reverse!important}.flex-md-grow-0{flex-grow:0!important}.flex-md-grow-1{flex-grow:1!important}.flex-md-shrink-0{flex-shrink:0!important}.flex-md-shrink-1{flex-shrink:1!important}.flex-md-wrap{flex-wrap:wrap!important}.flex-md-nowrap{flex-wrap:nowrap!important}.flex-md-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-md-0{gap:0!important}.gap-md-1{gap:.25rem!important}.gap-md-2{gap:.5rem!important}.gap-md-3{gap:1rem!important}.gap-md-4{gap:1.5rem!important}.gap-md-5{gap:3rem!important}.justify-content-md-start{justify-content:flex-start!important}.justify-content-md-end{justify-content:flex-end!important}.justify-content-md-center{justify-content:center!important}.justify-content-md-between{justify-content:space-between!important}.justify-content-md-around{justify-content:space-around!important}.justify-content-md-evenly{justify-content:space-evenly!important}.align-items-md-start{align-items:flex-start!important}.align-items-md-end{align-items:flex-end!important}.align-items-md-center{align-items:center!important}.align-items-md-baseline{align-items:baseline!important}.align-items-md-stretch{align-items:stretch!important}.align-content-md-start{align-content:flex-start!important}.align-content-md-end{align-content:flex-end!important}.align-content-md-center{align-content:center!important}.align-content-md-between{align-content:space-between!important}.align-content-md-around{align-content:space-around!important}.align-content-md-stretch{align-content:stretch!important}.align-self-md-auto{align-self:auto!important}.align-self-md-start{align-self:flex-start!important}.align-self-md-end{align-self:flex-end!important}.align-self-md-center{align-self:center!important}.align-self-md-baseline{align-self:baseline!important}.align-self-md-stretch{align-self:stretch!important}.order-md-first{order:-1!important}.order-md-0{order:0!important}.order-md-1{order:1!important}.order-md-2{order:2!important}.order-md-3{order:3!important}.order-md-4{order:4!important}.order-md-5{order:5!important}.order-md-last{order:6!important}.m-md-0{margin:0!important}.m-md-1{margin:.25rem!important}.m-md-2{margin:.5rem!important}.m-md-3{margin:1rem!important}.m-md-4{margin:1.5rem!important}.m-md-5{margin:3rem!important}.m-md-auto{margin:auto!important}.mx-md-0{margin-right:0!important;margin-left:0!important}.mx-md-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-md-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-md-3{margin-right:1rem!important;margin-left:1rem!important}.mx-md-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-md-5{margin-right:3rem!important;margin-left:3rem!important}.mx-md-auto{margin-right:auto!important;margin-left:auto!important}.my-md-0{margin-top:0!important;margin-bottom:0!important}.my-md-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-md-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-md-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-md-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-md-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-md-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-md-0{margin-top:0!important}.mt-md-1{margin-top:.25rem!important}.mt-md-2{margin-top:.5rem!important}.mt-md-3{margin-top:1rem!important}.mt-md-4{margin-top:1.5rem!important}.mt-md-5{margin-top:3rem!important}.mt-md-auto{margin-top:auto!important}.me-md-0{margin-right:0!important}.me-md-1{margin-right:.25rem!important}.me-md-2{margin-right:.5rem!important}.me-md-3{margin-right:1rem!important}.me-md-4{margin-right:1.5rem!important}.me-md-5{margin-right:3rem!important}.me-md-auto{margin-right:auto!important}.mb-md-0{margin-bottom:0!important}.mb-md-1{margin-bottom:.25rem!important}.mb-md-2{margin-bottom:.5rem!important}.mb-md-3{margin-bottom:1rem!important}.mb-md-4{margin-bottom:1.5rem!important}.mb-md-5{margin-bottom:3rem!important}.mb-md-auto{margin-bottom:auto!important}.ms-md-0{margin-left:0!important}.ms-md-1{margin-left:.25rem!important}.ms-md-2{margin-left:.5rem!important}.ms-md-3{margin-left:1rem!important}.ms-md-4{margin-left:1.5rem!important}.ms-md-5{margin-left:3rem!important}.ms-md-auto{margin-left:auto!important}.p-md-0{padding:0!important}.p-md-1{padding:.25rem!important}.p-md-2{padding:.5rem!important}.p-md-3{padding:1rem!important}.p-md-4{padding:1.5rem!important}.p-md-5{padding:3rem!important}.px-md-0{padding-right:0!important;padding-left:0!important}.px-md-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-md-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-md-3{padding-right:1rem!important;padding-left:1rem!important}.px-md-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-md-5{padding-right:3rem!important;padding-left:3rem!important}.py-md-0{padding-top:0!important;padding-bottom:0!important}.py-md-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-md-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-md-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-md-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-md-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-md-0{padding-top:0!important}.pt-md-1{padding-top:.25rem!important}.pt-md-2{padding-top:.5rem!important}.pt-md-3{padding-top:1rem!important}.pt-md-4{padding-top:1.5rem!important}.pt-md-5{padding-top:3rem!important}.pe-md-0{padding-right:0!important}.pe-md-1{padding-right:.25rem!important}.pe-md-2{padding-right:.5rem!important}.pe-md-3{padding-right:1rem!important}.pe-md-4{padding-right:1.5rem!important}.pe-md-5{padding-right:3rem!important}.pb-md-0{padding-bottom:0!important}.pb-md-1{padding-bottom:.25rem!important}.pb-md-2{padding-bottom:.5rem!important}.pb-md-3{padding-bottom:1rem!important}.pb-md-4{padding-bottom:1.5rem!important}.pb-md-5{padding-bottom:3rem!important}.ps-md-0{padding-left:0!important}.ps-md-1{padding-left:.25rem!important}.ps-md-2{padding-left:.5rem!important}.ps-md-3{padding-left:1rem!important}.ps-md-4{padding-left:1.5rem!important}.ps-md-5{padding-left:3rem!important}.text-md-start{text-align:left!important}.text-md-end{text-align:right!important}.text-md-center{text-align:center!important}}@media (min-width:992px){.float-lg-start{float:left!important}.float-lg-end{float:right!important}.float-lg-none{float:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-grid{display:grid!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:flex!important}.d-lg-inline-flex{display:inline-flex!important}.d-lg-none{display:none!important}.flex-lg-fill{flex:1 1 auto!important}.flex-lg-row{flex-direction:row!important}.flex-lg-column{flex-direction:column!important}.flex-lg-row-reverse{flex-direction:row-reverse!important}.flex-lg-column-reverse{flex-direction:column-reverse!important}.flex-lg-grow-0{flex-grow:0!important}.flex-lg-grow-1{flex-grow:1!important}.flex-lg-shrink-0{flex-shrink:0!important}.flex-lg-shrink-1{flex-shrink:1!important}.flex-lg-wrap{flex-wrap:wrap!important}.flex-lg-nowrap{flex-wrap:nowrap!important}.flex-lg-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-lg-0{gap:0!important}.gap-lg-1{gap:.25rem!important}.gap-lg-2{gap:.5rem!important}.gap-lg-3{gap:1rem!important}.gap-lg-4{gap:1.5rem!important}.gap-lg-5{gap:3rem!important}.justify-content-lg-start{justify-content:flex-start!important}.justify-content-lg-end{justify-content:flex-end!important}.justify-content-lg-center{justify-content:center!important}.justify-content-lg-between{justify-content:space-between!important}.justify-content-lg-around{justify-content:space-around!important}.justify-content-lg-evenly{justify-content:space-evenly!important}.align-items-lg-start{align-items:flex-start!important}.align-items-lg-end{align-items:flex-end!important}.align-items-lg-center{align-items:center!important}.align-items-lg-baseline{align-items:baseline!important}.align-items-lg-stretch{align-items:stretch!important}.align-content-lg-start{align-content:flex-start!important}.align-content-lg-end{align-content:flex-end!important}.align-content-lg-center{align-content:center!important}.align-content-lg-between{align-content:space-between!important}.align-content-lg-around{align-content:space-around!important}.align-content-lg-stretch{align-content:stretch!important}.align-self-lg-auto{align-self:auto!important}.align-self-lg-start{align-self:flex-start!important}.align-self-lg-end{align-self:flex-end!important}.align-self-lg-center{align-self:center!important}.align-self-lg-baseline{align-self:baseline!important}.align-self-lg-stretch{align-self:stretch!important}.order-lg-first{order:-1!important}.order-lg-0{order:0!important}.order-lg-1{order:1!important}.order-lg-2{order:2!important}.order-lg-3{order:3!important}.order-lg-4{order:4!important}.order-lg-5{order:5!important}.order-lg-last{order:6!important}.m-lg-0{margin:0!important}.m-lg-1{margin:.25rem!important}.m-lg-2{margin:.5rem!important}.m-lg-3{margin:1rem!important}.m-lg-4{margin:1.5rem!important}.m-lg-5{margin:3rem!important}.m-lg-auto{margin:auto!important}.mx-lg-0{margin-right:0!important;margin-left:0!important}.mx-lg-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-lg-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-lg-3{margin-right:1rem!important;margin-left:1rem!important}.mx-lg-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-lg-5{margin-right:3rem!important;margin-left:3rem!important}.mx-lg-auto{margin-right:auto!important;margin-left:auto!important}.my-lg-0{margin-top:0!important;margin-bottom:0!important}.my-lg-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-lg-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-lg-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-lg-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-lg-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-lg-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-lg-0{margin-top:0!important}.mt-lg-1{margin-top:.25rem!important}.mt-lg-2{margin-top:.5rem!important}.mt-lg-3{margin-top:1rem!important}.mt-lg-4{margin-top:1.5rem!important}.mt-lg-5{margin-top:3rem!important}.mt-lg-auto{margin-top:auto!important}.me-lg-0{margin-right:0!important}.me-lg-1{margin-right:.25rem!important}.me-lg-2{margin-right:.5rem!important}.me-lg-3{margin-right:1rem!important}.me-lg-4{margin-right:1.5rem!important}.me-lg-5{margin-right:3rem!important}.me-lg-auto{margin-right:auto!important}.mb-lg-0{margin-bottom:0!important}.mb-lg-1{margin-bottom:.25rem!important}.mb-lg-2{margin-bottom:.5rem!important}.mb-lg-3{margin-bottom:1rem!important}.mb-lg-4{margin-bottom:1.5rem!important}.mb-lg-5{margin-bottom:3rem!important}.mb-lg-auto{margin-bottom:auto!important}.ms-lg-0{margin-left:0!important}.ms-lg-1{margin-left:.25rem!important}.ms-lg-2{margin-left:.5rem!important}.ms-lg-3{margin-left:1rem!important}.ms-lg-4{margin-left:1.5rem!important}.ms-lg-5{margin-left:3rem!important}.ms-lg-auto{margin-left:auto!important}.p-lg-0{padding:0!important}.p-lg-1{padding:.25rem!important}.p-lg-2{padding:.5rem!important}.p-lg-3{padding:1rem!important}.p-lg-4{padding:1.5rem!important}.p-lg-5{padding:3rem!important}.px-lg-0{padding-right:0!important;padding-left:0!important}.px-lg-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-lg-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-lg-3{padding-right:1rem!important;padding-left:1rem!important}.px-lg-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-lg-5{padding-right:3rem!important;padding-left:3rem!important}.py-lg-0{padding-top:0!important;padding-bottom:0!important}.py-lg-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-lg-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-lg-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-lg-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-lg-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-lg-0{padding-top:0!important}.pt-lg-1{padding-top:.25rem!important}.pt-lg-2{padding-top:.5rem!important}.pt-lg-3{padding-top:1rem!important}.pt-lg-4{padding-top:1.5rem!important}.pt-lg-5{padding-top:3rem!important}.pe-lg-0{padding-right:0!important}.pe-lg-1{padding-right:.25rem!important}.pe-lg-2{padding-right:.5rem!important}.pe-lg-3{padding-right:1rem!important}.pe-lg-4{padding-right:1.5rem!important}.pe-lg-5{padding-right:3rem!important}.pb-lg-0{padding-bottom:0!important}.pb-lg-1{padding-bottom:.25rem!important}.pb-lg-2{padding-bottom:.5rem!important}.pb-lg-3{padding-bottom:1rem!important}.pb-lg-4{padding-bottom:1.5rem!important}.pb-lg-5{padding-bottom:3rem!important}.ps-lg-0{padding-left:0!important}.ps-lg-1{padding-left:.25rem!important}.ps-lg-2{padding-left:.5rem!important}.ps-lg-3{padding-left:1rem!important}.ps-lg-4{padding-left:1.5rem!important}.ps-lg-5{padding-left:3rem!important}.text-lg-start{text-align:left!important}.text-lg-end{text-align:right!important}.text-lg-center{text-align:center!important}}@media (min-width:1200px){.float-xl-start{float:left!important}.float-xl-end{float:right!important}.float-xl-none{float:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-grid{display:grid!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:flex!important}.d-xl-inline-flex{display:inline-flex!important}.d-xl-none{display:none!important}.flex-xl-fill{flex:1 1 auto!important}.flex-xl-row{flex-direction:row!important}.flex-xl-column{flex-direction:column!important}.flex-xl-row-reverse{flex-direction:row-reverse!important}.flex-xl-column-reverse{flex-direction:column-reverse!important}.flex-xl-grow-0{flex-grow:0!important}.flex-xl-grow-1{flex-grow:1!important}.flex-xl-shrink-0{flex-shrink:0!important}.flex-xl-shrink-1{flex-shrink:1!important}.flex-xl-wrap{flex-wrap:wrap!important}.flex-xl-nowrap{flex-wrap:nowrap!important}.flex-xl-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-xl-0{gap:0!important}.gap-xl-1{gap:.25rem!important}.gap-xl-2{gap:.5rem!important}.gap-xl-3{gap:1rem!important}.gap-xl-4{gap:1.5rem!important}.gap-xl-5{gap:3rem!important}.justify-content-xl-start{justify-content:flex-start!important}.justify-content-xl-end{justify-content:flex-end!important}.justify-content-xl-center{justify-content:center!important}.justify-content-xl-between{justify-content:space-between!important}.justify-content-xl-around{justify-content:space-around!important}.justify-content-xl-evenly{justify-content:space-evenly!important}.align-items-xl-start{align-items:flex-start!important}.align-items-xl-end{align-items:flex-end!important}.align-items-xl-center{align-items:center!important}.align-items-xl-baseline{align-items:baseline!important}.align-items-xl-stretch{align-items:stretch!important}.align-content-xl-start{align-content:flex-start!important}.align-content-xl-end{align-content:flex-end!important}.align-content-xl-center{align-content:center!important}.align-content-xl-between{align-content:space-between!important}.align-content-xl-around{align-content:space-around!important}.align-content-xl-stretch{align-content:stretch!important}.align-self-xl-auto{align-self:auto!important}.align-self-xl-start{align-self:flex-start!important}.align-self-xl-end{align-self:flex-end!important}.align-self-xl-center{align-self:center!important}.align-self-xl-baseline{align-self:baseline!important}.align-self-xl-stretch{align-self:stretch!important}.order-xl-first{order:-1!important}.order-xl-0{order:0!important}.order-xl-1{order:1!important}.order-xl-2{order:2!important}.order-xl-3{order:3!important}.order-xl-4{order:4!important}.order-xl-5{order:5!important}.order-xl-last{order:6!important}.m-xl-0{margin:0!important}.m-xl-1{margin:.25rem!important}.m-xl-2{margin:.5rem!important}.m-xl-3{margin:1rem!important}.m-xl-4{margin:1.5rem!important}.m-xl-5{margin:3rem!important}.m-xl-auto{margin:auto!important}.mx-xl-0{margin-right:0!important;margin-left:0!important}.mx-xl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xl-auto{margin-right:auto!important;margin-left:auto!important}.my-xl-0{margin-top:0!important;margin-bottom:0!important}.my-xl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xl-0{margin-top:0!important}.mt-xl-1{margin-top:.25rem!important}.mt-xl-2{margin-top:.5rem!important}.mt-xl-3{margin-top:1rem!important}.mt-xl-4{margin-top:1.5rem!important}.mt-xl-5{margin-top:3rem!important}.mt-xl-auto{margin-top:auto!important}.me-xl-0{margin-right:0!important}.me-xl-1{margin-right:.25rem!important}.me-xl-2{margin-right:.5rem!important}.me-xl-3{margin-right:1rem!important}.me-xl-4{margin-right:1.5rem!important}.me-xl-5{margin-right:3rem!important}.me-xl-auto{margin-right:auto!important}.mb-xl-0{margin-bottom:0!important}.mb-xl-1{margin-bottom:.25rem!important}.mb-xl-2{margin-bottom:.5rem!important}.mb-xl-3{margin-bottom:1rem!important}.mb-xl-4{margin-bottom:1.5rem!important}.mb-xl-5{margin-bottom:3rem!important}.mb-xl-auto{margin-bottom:auto!important}.ms-xl-0{margin-left:0!important}.ms-xl-1{margin-left:.25rem!important}.ms-xl-2{margin-left:.5rem!important}.ms-xl-3{margin-left:1rem!important}.ms-xl-4{margin-left:1.5rem!important}.ms-xl-5{margin-left:3rem!important}.ms-xl-auto{margin-left:auto!important}.p-xl-0{padding:0!important}.p-xl-1{padding:.25rem!important}.p-xl-2{padding:.5rem!important}.p-xl-3{padding:1rem!important}.p-xl-4{padding:1.5rem!important}.p-xl-5{padding:3rem!important}.px-xl-0{padding-right:0!important;padding-left:0!important}.px-xl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xl-0{padding-top:0!important;padding-bottom:0!important}.py-xl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xl-0{padding-top:0!important}.pt-xl-1{padding-top:.25rem!important}.pt-xl-2{padding-top:.5rem!important}.pt-xl-3{padding-top:1rem!important}.pt-xl-4{padding-top:1.5rem!important}.pt-xl-5{padding-top:3rem!important}.pe-xl-0{padding-right:0!important}.pe-xl-1{padding-right:.25rem!important}.pe-xl-2{padding-right:.5rem!important}.pe-xl-3{padding-right:1rem!important}.pe-xl-4{padding-right:1.5rem!important}.pe-xl-5{padding-right:3rem!important}.pb-xl-0{padding-bottom:0!important}.pb-xl-1{padding-bottom:.25rem!important}.pb-xl-2{padding-bottom:.5rem!important}.pb-xl-3{padding-bottom:1rem!important}.pb-xl-4{padding-bottom:1.5rem!important}.pb-xl-5{padding-bottom:3rem!important}.ps-xl-0{padding-left:0!important}.ps-xl-1{padding-left:.25rem!important}.ps-xl-2{padding-left:.5rem!important}.ps-xl-3{padding-left:1rem!important}.ps-xl-4{padding-left:1.5rem!important}.ps-xl-5{padding-left:3rem!important}.text-xl-start{text-align:left!important}.text-xl-end{text-align:right!important}.text-xl-center{text-align:center!important}}@media (min-width:1400px){.float-xxl-start{float:left!important}.float-xxl-end{float:right!important}.float-xxl-none{float:none!important}.d-xxl-inline{display:inline!important}.d-xxl-inline-block{display:inline-block!important}.d-xxl-block{display:block!important}.d-xxl-grid{display:grid!important}.d-xxl-table{display:table!important}.d-xxl-table-row{display:table-row!important}.d-xxl-table-cell{display:table-cell!important}.d-xxl-flex{display:flex!important}.d-xxl-inline-flex{display:inline-flex!important}.d-xxl-none{display:none!important}.flex-xxl-fill{flex:1 1 auto!important}.flex-xxl-row{flex-direction:row!important}.flex-xxl-column{flex-direction:column!important}.flex-xxl-row-reverse{flex-direction:row-reverse!important}.flex-xxl-column-reverse{flex-direction:column-reverse!important}.flex-xxl-grow-0{flex-grow:0!important}.flex-xxl-grow-1{flex-grow:1!important}.flex-xxl-shrink-0{flex-shrink:0!important}.flex-xxl-shrink-1{flex-shrink:1!important}.flex-xxl-wrap{flex-wrap:wrap!important}.flex-xxl-nowrap{flex-wrap:nowrap!important}.flex-xxl-wrap-reverse{flex-wrap:wrap-reverse!important}.gap-xxl-0{gap:0!important}.gap-xxl-1{gap:.25rem!important}.gap-xxl-2{gap:.5rem!important}.gap-xxl-3{gap:1rem!important}.gap-xxl-4{gap:1.5rem!important}.gap-xxl-5{gap:3rem!important}.justify-content-xxl-start{justify-content:flex-start!important}.justify-content-xxl-end{justify-content:flex-end!important}.justify-content-xxl-center{justify-content:center!important}.justify-content-xxl-between{justify-content:space-between!important}.justify-content-xxl-around{justify-content:space-around!important}.justify-content-xxl-evenly{justify-content:space-evenly!important}.align-items-xxl-start{align-items:flex-start!important}.align-items-xxl-end{align-items:flex-end!important}.align-items-xxl-center{align-items:center!important}.align-items-xxl-baseline{align-items:baseline!important}.align-items-xxl-stretch{align-items:stretch!important}.align-content-xxl-start{align-content:flex-start!important}.align-content-xxl-end{align-content:flex-end!important}.align-content-xxl-center{align-content:center!important}.align-content-xxl-between{align-content:space-between!important}.align-content-xxl-around{align-content:space-around!important}.align-content-xxl-stretch{align-content:stretch!important}.align-self-xxl-auto{align-self:auto!important}.align-self-xxl-start{align-self:flex-start!important}.align-self-xxl-end{align-self:flex-end!important}.align-self-xxl-center{align-self:center!important}.align-self-xxl-baseline{align-self:baseline!important}.align-self-xxl-stretch{align-self:stretch!important}.order-xxl-first{order:-1!important}.order-xxl-0{order:0!important}.order-xxl-1{order:1!important}.order-xxl-2{order:2!important}.order-xxl-3{order:3!important}.order-xxl-4{order:4!important}.order-xxl-5{order:5!important}.order-xxl-last{order:6!important}.m-xxl-0{margin:0!important}.m-xxl-1{margin:.25rem!important}.m-xxl-2{margin:.5rem!important}.m-xxl-3{margin:1rem!important}.m-xxl-4{margin:1.5rem!important}.m-xxl-5{margin:3rem!important}.m-xxl-auto{margin:auto!important}.mx-xxl-0{margin-right:0!important;margin-left:0!important}.mx-xxl-1{margin-right:.25rem!important;margin-left:.25rem!important}.mx-xxl-2{margin-right:.5rem!important;margin-left:.5rem!important}.mx-xxl-3{margin-right:1rem!important;margin-left:1rem!important}.mx-xxl-4{margin-right:1.5rem!important;margin-left:1.5rem!important}.mx-xxl-5{margin-right:3rem!important;margin-left:3rem!important}.mx-xxl-auto{margin-right:auto!important;margin-left:auto!important}.my-xxl-0{margin-top:0!important;margin-bottom:0!important}.my-xxl-1{margin-top:.25rem!important;margin-bottom:.25rem!important}.my-xxl-2{margin-top:.5rem!important;margin-bottom:.5rem!important}.my-xxl-3{margin-top:1rem!important;margin-bottom:1rem!important}.my-xxl-4{margin-top:1.5rem!important;margin-bottom:1.5rem!important}.my-xxl-5{margin-top:3rem!important;margin-bottom:3rem!important}.my-xxl-auto{margin-top:auto!important;margin-bottom:auto!important}.mt-xxl-0{margin-top:0!important}.mt-xxl-1{margin-top:.25rem!important}.mt-xxl-2{margin-top:.5rem!important}.mt-xxl-3{margin-top:1rem!important}.mt-xxl-4{margin-top:1.5rem!important}.mt-xxl-5{margin-top:3rem!important}.mt-xxl-auto{margin-top:auto!important}.me-xxl-0{margin-right:0!important}.me-xxl-1{margin-right:.25rem!important}.me-xxl-2{margin-right:.5rem!important}.me-xxl-3{margin-right:1rem!important}.me-xxl-4{margin-right:1.5rem!important}.me-xxl-5{margin-right:3rem!important}.me-xxl-auto{margin-right:auto!important}.mb-xxl-0{margin-bottom:0!important}.mb-xxl-1{margin-bottom:.25rem!important}.mb-xxl-2{margin-bottom:.5rem!important}.mb-xxl-3{margin-bottom:1rem!important}.mb-xxl-4{margin-bottom:1.5rem!important}.mb-xxl-5{margin-bottom:3rem!important}.mb-xxl-auto{margin-bottom:auto!important}.ms-xxl-0{margin-left:0!important}.ms-xxl-1{margin-left:.25rem!important}.ms-xxl-2{margin-left:.5rem!important}.ms-xxl-3{margin-left:1rem!important}.ms-xxl-4{margin-left:1.5rem!important}.ms-xxl-5{margin-left:3rem!important}.ms-xxl-auto{margin-left:auto!important}.p-xxl-0{padding:0!important}.p-xxl-1{padding:.25rem!important}.p-xxl-2{padding:.5rem!important}.p-xxl-3{padding:1rem!important}.p-xxl-4{padding:1.5rem!important}.p-xxl-5{padding:3rem!important}.px-xxl-0{padding-right:0!important;padding-left:0!important}.px-xxl-1{padding-right:.25rem!important;padding-left:.25rem!important}.px-xxl-2{padding-right:.5rem!important;padding-left:.5rem!important}.px-xxl-3{padding-right:1rem!important;padding-left:1rem!important}.px-xxl-4{padding-right:1.5rem!important;padding-left:1.5rem!important}.px-xxl-5{padding-right:3rem!important;padding-left:3rem!important}.py-xxl-0{padding-top:0!important;padding-bottom:0!important}.py-xxl-1{padding-top:.25rem!important;padding-bottom:.25rem!important}.py-xxl-2{padding-top:.5rem!important;padding-bottom:.5rem!important}.py-xxl-3{padding-top:1rem!important;padding-bottom:1rem!important}.py-xxl-4{padding-top:1.5rem!important;padding-bottom:1.5rem!important}.py-xxl-5{padding-top:3rem!important;padding-bottom:3rem!important}.pt-xxl-0{padding-top:0!important}.pt-xxl-1{padding-top:.25rem!important}.pt-xxl-2{padding-top:.5rem!important}.pt-xxl-3{padding-top:1rem!important}.pt-xxl-4{padding-top:1.5rem!important}.pt-xxl-5{padding-top:3rem!important}.pe-xxl-0{padding-right:0!important}.pe-xxl-1{padding-right:.25rem!important}.pe-xxl-2{padding-right:.5rem!important}.pe-xxl-3{padding-right:1rem!important}.pe-xxl-4{padding-right:1.5rem!important}.pe-xxl-5{padding-right:3rem!important}.pb-xxl-0{padding-bottom:0!important}.pb-xxl-1{padding-bottom:.25rem!important}.pb-xxl-2{padding-bottom:.5rem!important}.pb-xxl-3{padding-bottom:1rem!important}.pb-xxl-4{padding-bottom:1.5rem!important}.pb-xxl-5{padding-bottom:3rem!important}.ps-xxl-0{padding-left:0!important}.ps-xxl-1{padding-left:.25rem!important}.ps-xxl-2{padding-left:.5rem!important}.ps-xxl-3{padding-left:1rem!important}.ps-xxl-4{padding-left:1.5rem!important}.ps-xxl-5{padding-left:3rem!important}.text-xxl-start{text-align:left!important}.text-xxl-end{text-align:right!important}.text-xxl-center{text-align:center!important}}@media (min-width:1200px){.fs-1{font-size:2.5rem!important}.fs-2{font-size:2rem!important}.fs-3{font-size:1.75rem!important}.fs-4{font-size:1.5rem!important}}@media print{.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-grid{display:grid!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:flex!important}.d-print-inline-flex{display:inline-flex!important}.d-print-none{display:none!important}}\n/*# sourceMappingURL=bootstrap.min.css.map */",'/*!\n * Bootstrap v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n\n// scss-docs-start import-stack\n// Configuration\n@import "functions";\n@import "variables";\n@import "mixins";\n@import "utilities";\n\n// Layout & components\n@import "root";\n@import "reboot";\n@import "type";\n@import "images";\n@import "containers";\n@import "grid";\n@import "tables";\n@import "forms";\n@import "buttons";\n@import "transitions";\n@import "dropdown";\n@import "button-group";\n@import "nav";\n@import "navbar";\n@import "card";\n@import "accordion";\n@import "breadcrumb";\n@import "pagination";\n@import "badge";\n@import "alert";\n@import "progress";\n@import "list-group";\n@import "close";\n@import "toasts";\n@import "modal";\n@import "tooltip";\n@import "popover";\n@import "carousel";\n@import "spinners";\n@import "offcanvas";\n@import "placeholders";\n\n// Helpers\n@import "helpers";\n\n// Utilities\n@import "utilities/api";\n// scss-docs-end import-stack\n',":root {\n // Note: Custom variable values only support SassScript inside `#{}`.\n\n // Colors\n //\n // Generate palettes for full colors, grays, and theme colors.\n\n @each $color, $value in $colors {\n --#{$variable-prefix}#{$color}: #{$value};\n }\n\n @each $color, $value in $grays {\n --#{$variable-prefix}gray-#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors {\n --#{$variable-prefix}#{$color}: #{$value};\n }\n\n @each $color, $value in $theme-colors-rgb {\n --#{$variable-prefix}#{$color}-rgb: #{$value};\n }\n\n --#{$variable-prefix}white-rgb: #{to-rgb($white)};\n --#{$variable-prefix}black-rgb: #{to-rgb($black)};\n --#{$variable-prefix}body-color-rgb: #{to-rgb($body-color)};\n --#{$variable-prefix}body-bg-rgb: #{to-rgb($body-bg)};\n\n // Fonts\n\n // Note: Use `inspect` for lists so that quoted items keep the quotes.\n // See https://github.com/sass/sass/issues/2383#issuecomment-336349172\n --#{$variable-prefix}font-sans-serif: #{inspect($font-family-sans-serif)};\n --#{$variable-prefix}font-monospace: #{inspect($font-family-monospace)};\n --#{$variable-prefix}gradient: #{$gradient};\n\n // Root and body\n // stylelint-disable custom-property-empty-line-before\n // scss-docs-start root-body-variables\n @if $font-size-root != null {\n --#{$variable-prefix}root-font-size: #{$font-size-root};\n }\n --#{$variable-prefix}body-font-family: #{$font-family-base};\n --#{$variable-prefix}body-font-size: #{$font-size-base};\n --#{$variable-prefix}body-font-weight: #{$font-weight-base};\n --#{$variable-prefix}body-line-height: #{$line-height-base};\n --#{$variable-prefix}body-color: #{$body-color};\n @if $body-text-align != null {\n --#{$variable-prefix}body-text-align: #{$body-text-align};\n }\n --#{$variable-prefix}body-bg: #{$body-bg};\n // scss-docs-end root-body-variables\n // stylelint-enable custom-property-empty-line-before\n}\n","@charset \"UTF-8\";\n/*!\n * Bootstrap v5.1.3 (https://getbootstrap.com/)\n * Copyright 2011-2021 The Bootstrap Authors\n * Copyright 2011-2021 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n */\n:root {\n --bs-blue: #0d6efd;\n --bs-indigo: #6610f2;\n --bs-purple: #6f42c1;\n --bs-pink: #d63384;\n --bs-red: #dc3545;\n --bs-orange: #fd7e14;\n --bs-yellow: #ffc107;\n --bs-green: #198754;\n --bs-teal: #20c997;\n --bs-cyan: #0dcaf0;\n --bs-white: #fff;\n --bs-gray: #6c757d;\n --bs-gray-dark: #343a40;\n --bs-gray-100: #f8f9fa;\n --bs-gray-200: #e9ecef;\n --bs-gray-300: #dee2e6;\n --bs-gray-400: #ced4da;\n --bs-gray-500: #adb5bd;\n --bs-gray-600: #6c757d;\n --bs-gray-700: #495057;\n --bs-gray-800: #343a40;\n --bs-gray-900: #212529;\n --bs-primary: #0d6efd;\n --bs-secondary: #6c757d;\n --bs-success: #198754;\n --bs-info: #0dcaf0;\n --bs-warning: #ffc107;\n --bs-danger: #dc3545;\n --bs-light: #f8f9fa;\n --bs-dark: #212529;\n --bs-primary-rgb: 13, 110, 253;\n --bs-secondary-rgb: 108, 117, 125;\n --bs-success-rgb: 25, 135, 84;\n --bs-info-rgb: 13, 202, 240;\n --bs-warning-rgb: 255, 193, 7;\n --bs-danger-rgb: 220, 53, 69;\n --bs-light-rgb: 248, 249, 250;\n --bs-dark-rgb: 33, 37, 41;\n --bs-white-rgb: 255, 255, 255;\n --bs-black-rgb: 0, 0, 0;\n --bs-body-color-rgb: 33, 37, 41;\n --bs-body-bg-rgb: 255, 255, 255;\n --bs-font-sans-serif: system-ui, -apple-system, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", \"Liberation Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\";\n --bs-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace;\n --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));\n --bs-body-font-family: var(--bs-font-sans-serif);\n --bs-body-font-size: 1rem;\n --bs-body-font-weight: 400;\n --bs-body-line-height: 1.5;\n --bs-body-color: #212529;\n --bs-body-bg: #fff;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n :root {\n scroll-behavior: smooth;\n }\n}\n\nbody {\n margin: 0;\n font-family: var(--bs-body-font-family);\n font-size: var(--bs-body-font-size);\n font-weight: var(--bs-body-font-weight);\n line-height: var(--bs-body-line-height);\n color: var(--bs-body-color);\n text-align: var(--bs-body-text-align);\n background-color: var(--bs-body-bg);\n -webkit-text-size-adjust: 100%;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\nhr {\n margin: 1rem 0;\n color: inherit;\n background-color: currentColor;\n border: 0;\n opacity: 0.25;\n}\n\nhr:not([size]) {\n height: 1px;\n}\n\nh6, .h6, h5, .h5, h4, .h4, h3, .h3, h2, .h2, h1, .h1 {\n margin-top: 0;\n margin-bottom: 0.5rem;\n font-weight: 500;\n line-height: 1.2;\n}\n\nh1, .h1 {\n font-size: calc(1.375rem + 1.5vw);\n}\n@media (min-width: 1200px) {\n h1, .h1 {\n font-size: 2.5rem;\n }\n}\n\nh2, .h2 {\n font-size: calc(1.325rem + 0.9vw);\n}\n@media (min-width: 1200px) {\n h2, .h2 {\n font-size: 2rem;\n }\n}\n\nh3, .h3 {\n font-size: calc(1.3rem + 0.6vw);\n}\n@media (min-width: 1200px) {\n h3, .h3 {\n font-size: 1.75rem;\n }\n}\n\nh4, .h4 {\n font-size: calc(1.275rem + 0.3vw);\n}\n@media (min-width: 1200px) {\n h4, .h4 {\n font-size: 1.5rem;\n }\n}\n\nh5, .h5 {\n font-size: 1.25rem;\n}\n\nh6, .h6 {\n font-size: 1rem;\n}\n\np {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nabbr[title],\nabbr[data-bs-original-title] {\n -webkit-text-decoration: underline dotted;\n text-decoration: underline dotted;\n cursor: help;\n -webkit-text-decoration-skip-ink: none;\n text-decoration-skip-ink: none;\n}\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\nol,\nul {\n padding-left: 2rem;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: 700;\n}\n\ndd {\n margin-bottom: 0.5rem;\n margin-left: 0;\n}\n\nblockquote {\n margin: 0 0 1rem;\n}\n\nb,\nstrong {\n font-weight: bolder;\n}\n\nsmall, .small {\n font-size: 0.875em;\n}\n\nmark, .mark {\n padding: 0.2em;\n background-color: #fcf8e3;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 0.75em;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub {\n bottom: -0.25em;\n}\n\nsup {\n top: -0.5em;\n}\n\na {\n color: #0d6efd;\n text-decoration: underline;\n}\na:hover {\n color: #0a58ca;\n}\n\na:not([href]):not([class]), a:not([href]):not([class]):hover {\n color: inherit;\n text-decoration: none;\n}\n\npre,\ncode,\nkbd,\nsamp {\n font-family: var(--bs-font-monospace);\n font-size: 1em;\n direction: ltr /* rtl:ignore */;\n unicode-bidi: bidi-override;\n}\n\npre {\n display: block;\n margin-top: 0;\n margin-bottom: 1rem;\n overflow: auto;\n font-size: 0.875em;\n}\npre code {\n font-size: inherit;\n color: inherit;\n word-break: normal;\n}\n\ncode {\n font-size: 0.875em;\n color: #d63384;\n word-wrap: break-word;\n}\na > code {\n color: inherit;\n}\n\nkbd {\n padding: 0.2rem 0.4rem;\n font-size: 0.875em;\n color: #fff;\n background-color: #212529;\n border-radius: 0.2rem;\n}\nkbd kbd {\n padding: 0;\n font-size: 1em;\n font-weight: 700;\n}\n\nfigure {\n margin: 0 0 1rem;\n}\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n color: #6c757d;\n text-align: left;\n}\n\nth {\n text-align: inherit;\n text-align: -webkit-match-parent;\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\nlabel {\n display: inline-block;\n}\n\nbutton {\n border-radius: 0;\n}\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0;\n font-family: inherit;\n font-size: inherit;\n line-height: inherit;\n}\n\nbutton,\nselect {\n text-transform: none;\n}\n\n[role=button] {\n cursor: pointer;\n}\n\nselect {\n word-wrap: normal;\n}\nselect:disabled {\n opacity: 1;\n}\n\n[list]::-webkit-calendar-picker-indicator {\n display: none;\n}\n\nbutton,\n[type=button],\n[type=reset],\n[type=submit] {\n -webkit-appearance: button;\n}\nbutton:not(:disabled),\n[type=button]:not(:disabled),\n[type=reset]:not(:disabled),\n[type=submit]:not(:disabled) {\n cursor: pointer;\n}\n\n::-moz-focus-inner {\n padding: 0;\n border-style: none;\n}\n\ntextarea {\n resize: vertical;\n}\n\nfieldset {\n min-width: 0;\n padding: 0;\n margin: 0;\n border: 0;\n}\n\nlegend {\n float: left;\n width: 100%;\n padding: 0;\n margin-bottom: 0.5rem;\n font-size: calc(1.275rem + 0.3vw);\n line-height: inherit;\n}\n@media (min-width: 1200px) {\n legend {\n font-size: 1.5rem;\n }\n}\nlegend + * {\n clear: left;\n}\n\n::-webkit-datetime-edit-fields-wrapper,\n::-webkit-datetime-edit-text,\n::-webkit-datetime-edit-minute,\n::-webkit-datetime-edit-hour-field,\n::-webkit-datetime-edit-day-field,\n::-webkit-datetime-edit-month-field,\n::-webkit-datetime-edit-year-field {\n padding: 0;\n}\n\n::-webkit-inner-spin-button {\n height: auto;\n}\n\n[type=search] {\n outline-offset: -2px;\n -webkit-appearance: textfield;\n}\n\n/* rtl:raw:\n[type=\"tel\"],\n[type=\"url\"],\n[type=\"email\"],\n[type=\"number\"] {\n direction: ltr;\n}\n*/\n::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n::-webkit-color-swatch-wrapper {\n padding: 0;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n}\n\n::file-selector-button {\n font: inherit;\n}\n\n::-webkit-file-upload-button {\n font: inherit;\n -webkit-appearance: button;\n}\n\noutput {\n display: inline-block;\n}\n\niframe {\n border: 0;\n}\n\nsummary {\n display: list-item;\n cursor: pointer;\n}\n\nprogress {\n vertical-align: baseline;\n}\n\n[hidden] {\n display: none !important;\n}\n\n.lead {\n font-size: 1.25rem;\n font-weight: 300;\n}\n\n.display-1 {\n font-size: calc(1.625rem + 4.5vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-1 {\n font-size: 5rem;\n }\n}\n\n.display-2 {\n font-size: calc(1.575rem + 3.9vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-2 {\n font-size: 4.5rem;\n }\n}\n\n.display-3 {\n font-size: calc(1.525rem + 3.3vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-3 {\n font-size: 4rem;\n }\n}\n\n.display-4 {\n font-size: calc(1.475rem + 2.7vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-4 {\n font-size: 3.5rem;\n }\n}\n\n.display-5 {\n font-size: calc(1.425rem + 2.1vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-5 {\n font-size: 3rem;\n }\n}\n\n.display-6 {\n font-size: calc(1.375rem + 1.5vw);\n font-weight: 300;\n line-height: 1.2;\n}\n@media (min-width: 1200px) {\n .display-6 {\n font-size: 2.5rem;\n }\n}\n\n.list-unstyled {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline {\n padding-left: 0;\n list-style: none;\n}\n\n.list-inline-item {\n display: inline-block;\n}\n.list-inline-item:not(:last-child) {\n margin-right: 0.5rem;\n}\n\n.initialism {\n font-size: 0.875em;\n text-transform: uppercase;\n}\n\n.blockquote {\n margin-bottom: 1rem;\n font-size: 1.25rem;\n}\n.blockquote > :last-child {\n margin-bottom: 0;\n}\n\n.blockquote-footer {\n margin-top: -1rem;\n margin-bottom: 1rem;\n font-size: 0.875em;\n color: #6c757d;\n}\n.blockquote-footer::before {\n content: \"— \";\n}\n\n.img-fluid {\n max-width: 100%;\n height: auto;\n}\n\n.img-thumbnail {\n padding: 0.25rem;\n background-color: #fff;\n border: 1px solid #dee2e6;\n border-radius: 0.25rem;\n max-width: 100%;\n height: auto;\n}\n\n.figure {\n display: inline-block;\n}\n\n.figure-img {\n margin-bottom: 0.5rem;\n line-height: 1;\n}\n\n.figure-caption {\n font-size: 0.875em;\n color: #6c757d;\n}\n\n.container,\n.container-fluid,\n.container-xxl,\n.container-xl,\n.container-lg,\n.container-md,\n.container-sm {\n width: 100%;\n padding-right: var(--bs-gutter-x, 0.75rem);\n padding-left: var(--bs-gutter-x, 0.75rem);\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container-sm, .container {\n max-width: 540px;\n }\n}\n@media (min-width: 768px) {\n .container-md, .container-sm, .container {\n max-width: 720px;\n }\n}\n@media (min-width: 992px) {\n .container-lg, .container-md, .container-sm, .container {\n max-width: 960px;\n }\n}\n@media (min-width: 1200px) {\n .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1140px;\n }\n}\n@media (min-width: 1400px) {\n .container-xxl, .container-xl, .container-lg, .container-md, .container-sm, .container {\n max-width: 1320px;\n }\n}\n.row {\n --bs-gutter-x: 1.5rem;\n --bs-gutter-y: 0;\n display: flex;\n flex-wrap: wrap;\n margin-top: calc(-1 * var(--bs-gutter-y));\n margin-right: calc(-0.5 * var(--bs-gutter-x));\n margin-left: calc(-0.5 * var(--bs-gutter-x));\n}\n.row > * {\n flex-shrink: 0;\n width: 100%;\n max-width: 100%;\n padding-right: calc(var(--bs-gutter-x) * 0.5);\n padding-left: calc(var(--bs-gutter-x) * 0.5);\n margin-top: var(--bs-gutter-y);\n}\n\n.col {\n flex: 1 0 0%;\n}\n\n.row-cols-auto > * {\n flex: 0 0 auto;\n width: auto;\n}\n\n.row-cols-1 > * {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.row-cols-2 > * {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.row-cols-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n}\n\n.row-cols-4 > * {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.row-cols-5 > * {\n flex: 0 0 auto;\n width: 20%;\n}\n\n.row-cols-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n}\n\n.col-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n}\n\n.col-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n}\n\n.col-3 {\n flex: 0 0 auto;\n width: 25%;\n}\n\n.col-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n}\n\n.col-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n}\n\n.col-6 {\n flex: 0 0 auto;\n width: 50%;\n}\n\n.col-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n}\n\n.col-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n}\n\n.col-9 {\n flex: 0 0 auto;\n width: 75%;\n}\n\n.col-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n}\n\n.col-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n}\n\n.col-12 {\n flex: 0 0 auto;\n width: 100%;\n}\n\n.offset-1 {\n margin-left: 8.33333333%;\n}\n\n.offset-2 {\n margin-left: 16.66666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.33333333%;\n}\n\n.offset-5 {\n margin-left: 41.66666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.33333333%;\n}\n\n.offset-8 {\n margin-left: 66.66666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.33333333%;\n}\n\n.offset-11 {\n margin-left: 91.66666667%;\n}\n\n.g-0,\n.gx-0 {\n --bs-gutter-x: 0;\n}\n\n.g-0,\n.gy-0 {\n --bs-gutter-y: 0;\n}\n\n.g-1,\n.gx-1 {\n --bs-gutter-x: 0.25rem;\n}\n\n.g-1,\n.gy-1 {\n --bs-gutter-y: 0.25rem;\n}\n\n.g-2,\n.gx-2 {\n --bs-gutter-x: 0.5rem;\n}\n\n.g-2,\n.gy-2 {\n --bs-gutter-y: 0.5rem;\n}\n\n.g-3,\n.gx-3 {\n --bs-gutter-x: 1rem;\n}\n\n.g-3,\n.gy-3 {\n --bs-gutter-y: 1rem;\n}\n\n.g-4,\n.gx-4 {\n --bs-gutter-x: 1.5rem;\n}\n\n.g-4,\n.gy-4 {\n --bs-gutter-y: 1.5rem;\n}\n\n.g-5,\n.gx-5 {\n --bs-gutter-x: 3rem;\n}\n\n.g-5,\n.gy-5 {\n --bs-gutter-y: 3rem;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex: 1 0 0%;\n }\n\n .row-cols-sm-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n\n .row-cols-sm-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .row-cols-sm-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .row-cols-sm-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n\n .row-cols-sm-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .row-cols-sm-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n\n .row-cols-sm-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n }\n\n .col-sm-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n\n .col-sm-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n\n .col-sm-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .col-sm-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n\n .col-sm-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n\n .col-sm-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .col-sm-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n\n .col-sm-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n\n .col-sm-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n\n .col-sm-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n\n .col-sm-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n\n .col-sm-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .offset-sm-0 {\n margin-left: 0;\n }\n\n .offset-sm-1 {\n margin-left: 8.33333333%;\n }\n\n .offset-sm-2 {\n margin-left: 16.66666667%;\n }\n\n .offset-sm-3 {\n margin-left: 25%;\n }\n\n .offset-sm-4 {\n margin-left: 33.33333333%;\n }\n\n .offset-sm-5 {\n margin-left: 41.66666667%;\n }\n\n .offset-sm-6 {\n margin-left: 50%;\n }\n\n .offset-sm-7 {\n margin-left: 58.33333333%;\n }\n\n .offset-sm-8 {\n margin-left: 66.66666667%;\n }\n\n .offset-sm-9 {\n margin-left: 75%;\n }\n\n .offset-sm-10 {\n margin-left: 83.33333333%;\n }\n\n .offset-sm-11 {\n margin-left: 91.66666667%;\n }\n\n .g-sm-0,\n.gx-sm-0 {\n --bs-gutter-x: 0;\n }\n\n .g-sm-0,\n.gy-sm-0 {\n --bs-gutter-y: 0;\n }\n\n .g-sm-1,\n.gx-sm-1 {\n --bs-gutter-x: 0.25rem;\n }\n\n .g-sm-1,\n.gy-sm-1 {\n --bs-gutter-y: 0.25rem;\n }\n\n .g-sm-2,\n.gx-sm-2 {\n --bs-gutter-x: 0.5rem;\n }\n\n .g-sm-2,\n.gy-sm-2 {\n --bs-gutter-y: 0.5rem;\n }\n\n .g-sm-3,\n.gx-sm-3 {\n --bs-gutter-x: 1rem;\n }\n\n .g-sm-3,\n.gy-sm-3 {\n --bs-gutter-y: 1rem;\n }\n\n .g-sm-4,\n.gx-sm-4 {\n --bs-gutter-x: 1.5rem;\n }\n\n .g-sm-4,\n.gy-sm-4 {\n --bs-gutter-y: 1.5rem;\n }\n\n .g-sm-5,\n.gx-sm-5 {\n --bs-gutter-x: 3rem;\n }\n\n .g-sm-5,\n.gy-sm-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 768px) {\n .col-md {\n flex: 1 0 0%;\n }\n\n .row-cols-md-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n\n .row-cols-md-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .row-cols-md-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .row-cols-md-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n\n .row-cols-md-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .row-cols-md-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n\n .row-cols-md-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n }\n\n .col-md-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n\n .col-md-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n\n .col-md-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .col-md-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n\n .col-md-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n\n .col-md-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .col-md-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n\n .col-md-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n\n .col-md-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n\n .col-md-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n\n .col-md-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n\n .col-md-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .offset-md-0 {\n margin-left: 0;\n }\n\n .offset-md-1 {\n margin-left: 8.33333333%;\n }\n\n .offset-md-2 {\n margin-left: 16.66666667%;\n }\n\n .offset-md-3 {\n margin-left: 25%;\n }\n\n .offset-md-4 {\n margin-left: 33.33333333%;\n }\n\n .offset-md-5 {\n margin-left: 41.66666667%;\n }\n\n .offset-md-6 {\n margin-left: 50%;\n }\n\n .offset-md-7 {\n margin-left: 58.33333333%;\n }\n\n .offset-md-8 {\n margin-left: 66.66666667%;\n }\n\n .offset-md-9 {\n margin-left: 75%;\n }\n\n .offset-md-10 {\n margin-left: 83.33333333%;\n }\n\n .offset-md-11 {\n margin-left: 91.66666667%;\n }\n\n .g-md-0,\n.gx-md-0 {\n --bs-gutter-x: 0;\n }\n\n .g-md-0,\n.gy-md-0 {\n --bs-gutter-y: 0;\n }\n\n .g-md-1,\n.gx-md-1 {\n --bs-gutter-x: 0.25rem;\n }\n\n .g-md-1,\n.gy-md-1 {\n --bs-gutter-y: 0.25rem;\n }\n\n .g-md-2,\n.gx-md-2 {\n --bs-gutter-x: 0.5rem;\n }\n\n .g-md-2,\n.gy-md-2 {\n --bs-gutter-y: 0.5rem;\n }\n\n .g-md-3,\n.gx-md-3 {\n --bs-gutter-x: 1rem;\n }\n\n .g-md-3,\n.gy-md-3 {\n --bs-gutter-y: 1rem;\n }\n\n .g-md-4,\n.gx-md-4 {\n --bs-gutter-x: 1.5rem;\n }\n\n .g-md-4,\n.gy-md-4 {\n --bs-gutter-y: 1.5rem;\n }\n\n .g-md-5,\n.gx-md-5 {\n --bs-gutter-x: 3rem;\n }\n\n .g-md-5,\n.gy-md-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 992px) {\n .col-lg {\n flex: 1 0 0%;\n }\n\n .row-cols-lg-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n\n .row-cols-lg-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .row-cols-lg-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .row-cols-lg-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n\n .row-cols-lg-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .row-cols-lg-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n\n .row-cols-lg-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n }\n\n .col-lg-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n\n .col-lg-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n\n .col-lg-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .col-lg-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n\n .col-lg-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n\n .col-lg-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .col-lg-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n\n .col-lg-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n\n .col-lg-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n\n .col-lg-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n\n .col-lg-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n\n .col-lg-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .offset-lg-0 {\n margin-left: 0;\n }\n\n .offset-lg-1 {\n margin-left: 8.33333333%;\n }\n\n .offset-lg-2 {\n margin-left: 16.66666667%;\n }\n\n .offset-lg-3 {\n margin-left: 25%;\n }\n\n .offset-lg-4 {\n margin-left: 33.33333333%;\n }\n\n .offset-lg-5 {\n margin-left: 41.66666667%;\n }\n\n .offset-lg-6 {\n margin-left: 50%;\n }\n\n .offset-lg-7 {\n margin-left: 58.33333333%;\n }\n\n .offset-lg-8 {\n margin-left: 66.66666667%;\n }\n\n .offset-lg-9 {\n margin-left: 75%;\n }\n\n .offset-lg-10 {\n margin-left: 83.33333333%;\n }\n\n .offset-lg-11 {\n margin-left: 91.66666667%;\n }\n\n .g-lg-0,\n.gx-lg-0 {\n --bs-gutter-x: 0;\n }\n\n .g-lg-0,\n.gy-lg-0 {\n --bs-gutter-y: 0;\n }\n\n .g-lg-1,\n.gx-lg-1 {\n --bs-gutter-x: 0.25rem;\n }\n\n .g-lg-1,\n.gy-lg-1 {\n --bs-gutter-y: 0.25rem;\n }\n\n .g-lg-2,\n.gx-lg-2 {\n --bs-gutter-x: 0.5rem;\n }\n\n .g-lg-2,\n.gy-lg-2 {\n --bs-gutter-y: 0.5rem;\n }\n\n .g-lg-3,\n.gx-lg-3 {\n --bs-gutter-x: 1rem;\n }\n\n .g-lg-3,\n.gy-lg-3 {\n --bs-gutter-y: 1rem;\n }\n\n .g-lg-4,\n.gx-lg-4 {\n --bs-gutter-x: 1.5rem;\n }\n\n .g-lg-4,\n.gy-lg-4 {\n --bs-gutter-y: 1.5rem;\n }\n\n .g-lg-5,\n.gx-lg-5 {\n --bs-gutter-x: 3rem;\n }\n\n .g-lg-5,\n.gy-lg-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1200px) {\n .col-xl {\n flex: 1 0 0%;\n }\n\n .row-cols-xl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n\n .row-cols-xl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .row-cols-xl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .row-cols-xl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n\n .row-cols-xl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .row-cols-xl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n\n .row-cols-xl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n\n .col-xl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n\n .col-xl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n\n .col-xl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .col-xl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n\n .col-xl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n\n .col-xl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .col-xl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n\n .col-xl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n\n .col-xl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n\n .col-xl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n\n .col-xl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n\n .col-xl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .offset-xl-0 {\n margin-left: 0;\n }\n\n .offset-xl-1 {\n margin-left: 8.33333333%;\n }\n\n .offset-xl-2 {\n margin-left: 16.66666667%;\n }\n\n .offset-xl-3 {\n margin-left: 25%;\n }\n\n .offset-xl-4 {\n margin-left: 33.33333333%;\n }\n\n .offset-xl-5 {\n margin-left: 41.66666667%;\n }\n\n .offset-xl-6 {\n margin-left: 50%;\n }\n\n .offset-xl-7 {\n margin-left: 58.33333333%;\n }\n\n .offset-xl-8 {\n margin-left: 66.66666667%;\n }\n\n .offset-xl-9 {\n margin-left: 75%;\n }\n\n .offset-xl-10 {\n margin-left: 83.33333333%;\n }\n\n .offset-xl-11 {\n margin-left: 91.66666667%;\n }\n\n .g-xl-0,\n.gx-xl-0 {\n --bs-gutter-x: 0;\n }\n\n .g-xl-0,\n.gy-xl-0 {\n --bs-gutter-y: 0;\n }\n\n .g-xl-1,\n.gx-xl-1 {\n --bs-gutter-x: 0.25rem;\n }\n\n .g-xl-1,\n.gy-xl-1 {\n --bs-gutter-y: 0.25rem;\n }\n\n .g-xl-2,\n.gx-xl-2 {\n --bs-gutter-x: 0.5rem;\n }\n\n .g-xl-2,\n.gy-xl-2 {\n --bs-gutter-y: 0.5rem;\n }\n\n .g-xl-3,\n.gx-xl-3 {\n --bs-gutter-x: 1rem;\n }\n\n .g-xl-3,\n.gy-xl-3 {\n --bs-gutter-y: 1rem;\n }\n\n .g-xl-4,\n.gx-xl-4 {\n --bs-gutter-x: 1.5rem;\n }\n\n .g-xl-4,\n.gy-xl-4 {\n --bs-gutter-y: 1.5rem;\n }\n\n .g-xl-5,\n.gx-xl-5 {\n --bs-gutter-x: 3rem;\n }\n\n .g-xl-5,\n.gy-xl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n@media (min-width: 1400px) {\n .col-xxl {\n flex: 1 0 0%;\n }\n\n .row-cols-xxl-auto > * {\n flex: 0 0 auto;\n width: auto;\n }\n\n .row-cols-xxl-1 > * {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .row-cols-xxl-2 > * {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .row-cols-xxl-3 > * {\n flex: 0 0 auto;\n width: 33.3333333333%;\n }\n\n .row-cols-xxl-4 > * {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .row-cols-xxl-5 > * {\n flex: 0 0 auto;\n width: 20%;\n }\n\n .row-cols-xxl-6 > * {\n flex: 0 0 auto;\n width: 16.6666666667%;\n }\n\n .col-xxl-auto {\n flex: 0 0 auto;\n width: auto;\n }\n\n .col-xxl-1 {\n flex: 0 0 auto;\n width: 8.33333333%;\n }\n\n .col-xxl-2 {\n flex: 0 0 auto;\n width: 16.66666667%;\n }\n\n .col-xxl-3 {\n flex: 0 0 auto;\n width: 25%;\n }\n\n .col-xxl-4 {\n flex: 0 0 auto;\n width: 33.33333333%;\n }\n\n .col-xxl-5 {\n flex: 0 0 auto;\n width: 41.66666667%;\n }\n\n .col-xxl-6 {\n flex: 0 0 auto;\n width: 50%;\n }\n\n .col-xxl-7 {\n flex: 0 0 auto;\n width: 58.33333333%;\n }\n\n .col-xxl-8 {\n flex: 0 0 auto;\n width: 66.66666667%;\n }\n\n .col-xxl-9 {\n flex: 0 0 auto;\n width: 75%;\n }\n\n .col-xxl-10 {\n flex: 0 0 auto;\n width: 83.33333333%;\n }\n\n .col-xxl-11 {\n flex: 0 0 auto;\n width: 91.66666667%;\n }\n\n .col-xxl-12 {\n flex: 0 0 auto;\n width: 100%;\n }\n\n .offset-xxl-0 {\n margin-left: 0;\n }\n\n .offset-xxl-1 {\n margin-left: 8.33333333%;\n }\n\n .offset-xxl-2 {\n margin-left: 16.66666667%;\n }\n\n .offset-xxl-3 {\n margin-left: 25%;\n }\n\n .offset-xxl-4 {\n margin-left: 33.33333333%;\n }\n\n .offset-xxl-5 {\n margin-left: 41.66666667%;\n }\n\n .offset-xxl-6 {\n margin-left: 50%;\n }\n\n .offset-xxl-7 {\n margin-left: 58.33333333%;\n }\n\n .offset-xxl-8 {\n margin-left: 66.66666667%;\n }\n\n .offset-xxl-9 {\n margin-left: 75%;\n }\n\n .offset-xxl-10 {\n margin-left: 83.33333333%;\n }\n\n .offset-xxl-11 {\n margin-left: 91.66666667%;\n }\n\n .g-xxl-0,\n.gx-xxl-0 {\n --bs-gutter-x: 0;\n }\n\n .g-xxl-0,\n.gy-xxl-0 {\n --bs-gutter-y: 0;\n }\n\n .g-xxl-1,\n.gx-xxl-1 {\n --bs-gutter-x: 0.25rem;\n }\n\n .g-xxl-1,\n.gy-xxl-1 {\n --bs-gutter-y: 0.25rem;\n }\n\n .g-xxl-2,\n.gx-xxl-2 {\n --bs-gutter-x: 0.5rem;\n }\n\n .g-xxl-2,\n.gy-xxl-2 {\n --bs-gutter-y: 0.5rem;\n }\n\n .g-xxl-3,\n.gx-xxl-3 {\n --bs-gutter-x: 1rem;\n }\n\n .g-xxl-3,\n.gy-xxl-3 {\n --bs-gutter-y: 1rem;\n }\n\n .g-xxl-4,\n.gx-xxl-4 {\n --bs-gutter-x: 1.5rem;\n }\n\n .g-xxl-4,\n.gy-xxl-4 {\n --bs-gutter-y: 1.5rem;\n }\n\n .g-xxl-5,\n.gx-xxl-5 {\n --bs-gutter-x: 3rem;\n }\n\n .g-xxl-5,\n.gy-xxl-5 {\n --bs-gutter-y: 3rem;\n }\n}\n.table {\n --bs-table-bg: transparent;\n --bs-table-accent-bg: transparent;\n --bs-table-striped-color: #212529;\n --bs-table-striped-bg: rgba(0, 0, 0, 0.05);\n --bs-table-active-color: #212529;\n --bs-table-active-bg: rgba(0, 0, 0, 0.1);\n --bs-table-hover-color: #212529;\n --bs-table-hover-bg: rgba(0, 0, 0, 0.075);\n width: 100%;\n margin-bottom: 1rem;\n color: #212529;\n vertical-align: top;\n border-color: #dee2e6;\n}\n.table > :not(caption) > * > * {\n padding: 0.5rem 0.5rem;\n background-color: var(--bs-table-bg);\n border-bottom-width: 1px;\n box-shadow: inset 0 0 0 9999px var(--bs-table-accent-bg);\n}\n.table > tbody {\n vertical-align: inherit;\n}\n.table > thead {\n vertical-align: bottom;\n}\n.table > :not(:first-child) {\n border-top: 2px solid currentColor;\n}\n\n.caption-top {\n caption-side: top;\n}\n\n.table-sm > :not(caption) > * > * {\n padding: 0.25rem 0.25rem;\n}\n\n.table-bordered > :not(caption) > * {\n border-width: 1px 0;\n}\n.table-bordered > :not(caption) > * > * {\n border-width: 0 1px;\n}\n\n.table-borderless > :not(caption) > * > * {\n border-bottom-width: 0;\n}\n.table-borderless > :not(:first-child) {\n border-top-width: 0;\n}\n\n.table-striped > tbody > tr:nth-of-type(odd) > * {\n --bs-table-accent-bg: var(--bs-table-striped-bg);\n color: var(--bs-table-striped-color);\n}\n\n.table-active {\n --bs-table-accent-bg: var(--bs-table-active-bg);\n color: var(--bs-table-active-color);\n}\n\n.table-hover > tbody > tr:hover > * {\n --bs-table-accent-bg: var(--bs-table-hover-bg);\n color: var(--bs-table-hover-color);\n}\n\n.table-primary {\n --bs-table-bg: #cfe2ff;\n --bs-table-striped-bg: #c5d7f2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bacbe6;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfd1ec;\n --bs-table-hover-color: #000;\n color: #000;\n border-color: #bacbe6;\n}\n\n.table-secondary {\n --bs-table-bg: #e2e3e5;\n --bs-table-striped-bg: #d7d8da;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #cbccce;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #d1d2d4;\n --bs-table-hover-color: #000;\n color: #000;\n border-color: #cbccce;\n}\n\n.table-success {\n --bs-table-bg: #d1e7dd;\n --bs-table-striped-bg: #c7dbd2;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #bcd0c7;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #c1d6cc;\n --bs-table-hover-color: #000;\n color: #000;\n border-color: #bcd0c7;\n}\n\n.table-info {\n --bs-table-bg: #cff4fc;\n --bs-table-striped-bg: #c5e8ef;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #badce3;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #bfe2e9;\n --bs-table-hover-color: #000;\n color: #000;\n border-color: #badce3;\n}\n\n.table-warning {\n --bs-table-bg: #fff3cd;\n --bs-table-striped-bg: #f2e7c3;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #e6dbb9;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #ece1be;\n --bs-table-hover-color: #000;\n color: #000;\n border-color: #e6dbb9;\n}\n\n.table-danger {\n --bs-table-bg: #f8d7da;\n --bs-table-striped-bg: #eccccf;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfc2c4;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5c7ca;\n --bs-table-hover-color: #000;\n color: #000;\n border-color: #dfc2c4;\n}\n\n.table-light {\n --bs-table-bg: #f8f9fa;\n --bs-table-striped-bg: #ecedee;\n --bs-table-striped-color: #000;\n --bs-table-active-bg: #dfe0e1;\n --bs-table-active-color: #000;\n --bs-table-hover-bg: #e5e6e7;\n --bs-table-hover-color: #000;\n color: #000;\n border-color: #dfe0e1;\n}\n\n.table-dark {\n --bs-table-bg: #212529;\n --bs-table-striped-bg: #2c3034;\n --bs-table-striped-color: #fff;\n --bs-table-active-bg: #373b3e;\n --bs-table-active-color: #fff;\n --bs-table-hover-bg: #323539;\n --bs-table-hover-color: #fff;\n color: #fff;\n border-color: #373b3e;\n}\n\n.table-responsive {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n}\n\n@media (max-width: 575.98px) {\n .table-responsive-sm {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 767.98px) {\n .table-responsive-md {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 991.98px) {\n .table-responsive-lg {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1199.98px) {\n .table-responsive-xl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n@media (max-width: 1399.98px) {\n .table-responsive-xxl {\n overflow-x: auto;\n -webkit-overflow-scrolling: touch;\n }\n}\n.form-label {\n margin-bottom: 0.5rem;\n}\n\n.col-form-label {\n padding-top: calc(0.375rem + 1px);\n padding-bottom: calc(0.375rem + 1px);\n margin-bottom: 0;\n font-size: inherit;\n line-height: 1.5;\n}\n\n.col-form-label-lg {\n padding-top: calc(0.5rem + 1px);\n padding-bottom: calc(0.5rem + 1px);\n font-size: 1.25rem;\n}\n\n.col-form-label-sm {\n padding-top: calc(0.25rem + 1px);\n padding-bottom: calc(0.25rem + 1px);\n font-size: 0.875rem;\n}\n\n.form-text {\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: #6c757d;\n}\n\n.form-control {\n display: block;\n width: 100%;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid #ced4da;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n border-radius: 0.25rem;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control {\n transition: none;\n }\n}\n.form-control[type=file] {\n overflow: hidden;\n}\n.form-control[type=file]:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control:focus {\n color: #212529;\n background-color: #fff;\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-control::-webkit-date-and-time-value {\n height: 1.5em;\n}\n.form-control::-moz-placeholder {\n color: #6c757d;\n opacity: 1;\n}\n.form-control::placeholder {\n color: #6c757d;\n opacity: 1;\n}\n.form-control:disabled, .form-control[readonly] {\n background-color: #e9ecef;\n opacity: 1;\n}\n.form-control::-webkit-file-upload-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: #212529;\n background-color: #e9ecef;\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: 1px;\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n.form-control::file-selector-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: #212529;\n background-color: #e9ecef;\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: 1px;\n border-radius: 0;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::-webkit-file-upload-button {\n -webkit-transition: none;\n transition: none;\n }\n .form-control::file-selector-button {\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n background-color: #dde0e3;\n}\n.form-control:hover:not(:disabled):not([readonly])::file-selector-button {\n background-color: #dde0e3;\n}\n.form-control::-webkit-file-upload-button {\n padding: 0.375rem 0.75rem;\n margin: -0.375rem -0.75rem;\n -webkit-margin-end: 0.75rem;\n margin-inline-end: 0.75rem;\n color: #212529;\n background-color: #e9ecef;\n pointer-events: none;\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n border-inline-end-width: 1px;\n border-radius: 0;\n -webkit-transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-control::-webkit-file-upload-button {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-control:hover:not(:disabled):not([readonly])::-webkit-file-upload-button {\n background-color: #dde0e3;\n}\n\n.form-control-plaintext {\n display: block;\n width: 100%;\n padding: 0.375rem 0;\n margin-bottom: 0;\n line-height: 1.5;\n color: #212529;\n background-color: transparent;\n border: solid transparent;\n border-width: 1px 0;\n}\n.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {\n padding-right: 0;\n padding-left: 0;\n}\n\n.form-control-sm {\n min-height: calc(1.5em + 0.5rem + 2px);\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: 0.2rem;\n}\n.form-control-sm::-webkit-file-upload-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-sm::file-selector-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n.form-control-sm::-webkit-file-upload-button {\n padding: 0.25rem 0.5rem;\n margin: -0.25rem -0.5rem;\n -webkit-margin-end: 0.5rem;\n margin-inline-end: 0.5rem;\n}\n\n.form-control-lg {\n min-height: calc(1.5em + 1rem + 2px);\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: 0.3rem;\n}\n.form-control-lg::-webkit-file-upload-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n.form-control-lg::file-selector-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n.form-control-lg::-webkit-file-upload-button {\n padding: 0.5rem 1rem;\n margin: -0.5rem -1rem;\n -webkit-margin-end: 1rem;\n margin-inline-end: 1rem;\n}\n\ntextarea.form-control {\n min-height: calc(1.5em + 0.75rem + 2px);\n}\ntextarea.form-control-sm {\n min-height: calc(1.5em + 0.5rem + 2px);\n}\ntextarea.form-control-lg {\n min-height: calc(1.5em + 1rem + 2px);\n}\n\n.form-control-color {\n width: 3rem;\n height: auto;\n padding: 0.375rem;\n}\n.form-control-color:not(:disabled):not([readonly]) {\n cursor: pointer;\n}\n.form-control-color::-moz-color-swatch {\n height: 1.5em;\n border-radius: 0.25rem;\n}\n.form-control-color::-webkit-color-swatch {\n height: 1.5em;\n border-radius: 0.25rem;\n}\n\n.form-select {\n display: block;\n width: 100%;\n padding: 0.375rem 2.25rem 0.375rem 0.75rem;\n -moz-padding-start: calc(0.75rem - 3px);\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n background-color: #fff;\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right 0.75rem center;\n background-size: 16px 12px;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-select {\n transition: none;\n }\n}\n.form-select:focus {\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-select[multiple], .form-select[size]:not([size=\"1\"]) {\n padding-right: 0.75rem;\n background-image: none;\n}\n.form-select:disabled {\n background-color: #e9ecef;\n}\n.form-select:-moz-focusring {\n color: transparent;\n text-shadow: 0 0 0 #212529;\n}\n\n.form-select-sm {\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n padding-left: 0.5rem;\n font-size: 0.875rem;\n border-radius: 0.2rem;\n}\n\n.form-select-lg {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n padding-left: 1rem;\n font-size: 1.25rem;\n border-radius: 0.3rem;\n}\n\n.form-check {\n display: block;\n min-height: 1.5rem;\n padding-left: 1.5em;\n margin-bottom: 0.125rem;\n}\n.form-check .form-check-input {\n float: left;\n margin-left: -1.5em;\n}\n\n.form-check-input {\n width: 1em;\n height: 1em;\n margin-top: 0.25em;\n vertical-align: top;\n background-color: #fff;\n background-repeat: no-repeat;\n background-position: center;\n background-size: contain;\n border: 1px solid rgba(0, 0, 0, 0.25);\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n -webkit-print-color-adjust: exact;\n color-adjust: exact;\n}\n.form-check-input[type=checkbox] {\n border-radius: 0.25em;\n}\n.form-check-input[type=radio] {\n border-radius: 50%;\n}\n.form-check-input:active {\n filter: brightness(90%);\n}\n.form-check-input:focus {\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-check-input:checked {\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.form-check-input:checked[type=checkbox] {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3l6-6'/%3e%3c/svg%3e\");\n}\n.form-check-input:checked[type=radio] {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='2' fill='%23fff'/%3e%3c/svg%3e\");\n}\n.form-check-input[type=checkbox]:indeterminate {\n background-color: #0d6efd;\n border-color: #0d6efd;\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e\");\n}\n.form-check-input:disabled {\n pointer-events: none;\n filter: none;\n opacity: 0.5;\n}\n.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {\n opacity: 0.5;\n}\n\n.form-switch {\n padding-left: 2.5em;\n}\n.form-switch .form-check-input {\n width: 2em;\n margin-left: -2.5em;\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e\");\n background-position: left center;\n border-radius: 2em;\n transition: background-position 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-switch .form-check-input {\n transition: none;\n }\n}\n.form-switch .form-check-input:focus {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e\");\n}\n.form-switch .form-check-input:checked {\n background-position: right center;\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e\");\n}\n\n.form-check-inline {\n display: inline-block;\n margin-right: 1rem;\n}\n\n.btn-check {\n position: absolute;\n clip: rect(0, 0, 0, 0);\n pointer-events: none;\n}\n.btn-check[disabled] + .btn, .btn-check:disabled + .btn {\n pointer-events: none;\n filter: none;\n opacity: 0.65;\n}\n\n.form-range {\n width: 100%;\n height: 1.5rem;\n padding: 0;\n background-color: transparent;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n}\n.form-range:focus {\n outline: 0;\n}\n.form-range:focus::-webkit-slider-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range:focus::-moz-range-thumb {\n box-shadow: 0 0 0 1px #fff, 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.form-range::-moz-focus-outer {\n border: 0;\n}\n.form-range::-webkit-slider-thumb {\n width: 1rem;\n height: 1rem;\n margin-top: -0.25rem;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -webkit-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-webkit-slider-thumb {\n -webkit-transition: none;\n transition: none;\n }\n}\n.form-range::-webkit-slider-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-webkit-slider-runnable-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range::-moz-range-thumb {\n width: 1rem;\n height: 1rem;\n background-color: #0d6efd;\n border: 0;\n border-radius: 1rem;\n -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n -moz-appearance: none;\n appearance: none;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-range::-moz-range-thumb {\n -moz-transition: none;\n transition: none;\n }\n}\n.form-range::-moz-range-thumb:active {\n background-color: #b6d4fe;\n}\n.form-range::-moz-range-track {\n width: 100%;\n height: 0.5rem;\n color: transparent;\n cursor: pointer;\n background-color: #dee2e6;\n border-color: transparent;\n border-radius: 1rem;\n}\n.form-range:disabled {\n pointer-events: none;\n}\n.form-range:disabled::-webkit-slider-thumb {\n background-color: #adb5bd;\n}\n.form-range:disabled::-moz-range-thumb {\n background-color: #adb5bd;\n}\n\n.form-floating {\n position: relative;\n}\n.form-floating > .form-control,\n.form-floating > .form-select {\n height: calc(3.5rem + 2px);\n line-height: 1.25;\n}\n.form-floating > label {\n position: absolute;\n top: 0;\n left: 0;\n height: 100%;\n padding: 1rem 0.75rem;\n pointer-events: none;\n border: 1px solid transparent;\n transform-origin: 0 0;\n transition: opacity 0.1s ease-in-out, transform 0.1s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .form-floating > label {\n transition: none;\n }\n}\n.form-floating > .form-control {\n padding: 1rem 0.75rem;\n}\n.form-floating > .form-control::-moz-placeholder {\n color: transparent;\n}\n.form-floating > .form-control::placeholder {\n color: transparent;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:focus, .form-floating > .form-control:not(:placeholder-shown) {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:-webkit-autofill {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-select {\n padding-top: 1.625rem;\n padding-bottom: 0.625rem;\n}\n.form-floating > .form-control:not(:-moz-placeholder-shown) ~ label {\n opacity: 0.65;\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:focus ~ label,\n.form-floating > .form-control:not(:placeholder-shown) ~ label,\n.form-floating > .form-select ~ label {\n opacity: 0.65;\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n.form-floating > .form-control:-webkit-autofill ~ label {\n opacity: 0.65;\n transform: scale(0.85) translateY(-0.5rem) translateX(0.15rem);\n}\n\n.input-group {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: stretch;\n width: 100%;\n}\n.input-group > .form-control,\n.input-group > .form-select {\n position: relative;\n flex: 1 1 auto;\n width: 1%;\n min-width: 0;\n}\n.input-group > .form-control:focus,\n.input-group > .form-select:focus {\n z-index: 3;\n}\n.input-group .btn {\n position: relative;\n z-index: 2;\n}\n.input-group .btn:focus {\n z-index: 3;\n}\n\n.input-group-text {\n display: flex;\n align-items: center;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: center;\n white-space: nowrap;\n background-color: #e9ecef;\n border: 1px solid #ced4da;\n border-radius: 0.25rem;\n}\n\n.input-group-lg > .form-control,\n.input-group-lg > .form-select,\n.input-group-lg > .input-group-text,\n.input-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: 0.3rem;\n}\n\n.input-group-sm > .form-control,\n.input-group-sm > .form-select,\n.input-group-sm > .input-group-text,\n.input-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: 0.2rem;\n}\n\n.input-group-lg > .form-select,\n.input-group-sm > .form-select {\n padding-right: 3rem;\n}\n\n.input-group:not(.has-validation) > :not(:last-child):not(.dropdown-toggle):not(.dropdown-menu),\n.input-group:not(.has-validation) > .dropdown-toggle:nth-last-child(n+3) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group.has-validation > :nth-last-child(n+3):not(.dropdown-toggle):not(.dropdown-menu),\n.input-group.has-validation > .dropdown-toggle:nth-last-child(n+4) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.input-group > :not(:first-child):not(.dropdown-menu):not(.valid-tooltip):not(.valid-feedback):not(.invalid-tooltip):not(.invalid-feedback) {\n margin-left: -1px;\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.valid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: #198754;\n}\n\n.valid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: rgba(25, 135, 84, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated :valid ~ .valid-feedback,\n.was-validated :valid ~ .valid-tooltip,\n.is-valid ~ .valid-feedback,\n.is-valid ~ .valid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:valid, .form-control.is-valid {\n border-color: #198754;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:valid:focus, .form-control.is-valid:focus {\n border-color: #198754;\n box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);\n}\n\n.was-validated textarea.form-control:valid, textarea.form-control.is-valid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .form-select:valid, .form-select.is-valid {\n border-color: #198754;\n}\n.was-validated .form-select:valid:not([multiple]):not([size]), .was-validated .form-select:valid:not([multiple])[size=\"1\"], .form-select.is-valid:not([multiple]):not([size]), .form-select.is-valid:not([multiple])[size=\"1\"] {\n padding-right: 4.125rem;\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\"), url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23198754' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e\");\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:valid:focus, .form-select.is-valid:focus {\n border-color: #198754;\n box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);\n}\n\n.was-validated .form-check-input:valid, .form-check-input.is-valid {\n border-color: #198754;\n}\n.was-validated .form-check-input:valid:checked, .form-check-input.is-valid:checked {\n background-color: #198754;\n}\n.was-validated .form-check-input:valid:focus, .form-check-input.is-valid:focus {\n box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.25);\n}\n.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {\n color: #198754;\n}\n\n.form-check-inline .form-check-input ~ .valid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group .form-control:valid, .input-group .form-control.is-valid,\n.was-validated .input-group .form-select:valid,\n.input-group .form-select.is-valid {\n z-index: 1;\n}\n.was-validated .input-group .form-control:valid:focus, .input-group .form-control.is-valid:focus,\n.was-validated .input-group .form-select:valid:focus,\n.input-group .form-select.is-valid:focus {\n z-index: 3;\n}\n\n.invalid-feedback {\n display: none;\n width: 100%;\n margin-top: 0.25rem;\n font-size: 0.875em;\n color: #dc3545;\n}\n\n.invalid-tooltip {\n position: absolute;\n top: 100%;\n z-index: 5;\n display: none;\n max-width: 100%;\n padding: 0.25rem 0.5rem;\n margin-top: 0.1rem;\n font-size: 0.875rem;\n color: #fff;\n background-color: rgba(220, 53, 69, 0.9);\n border-radius: 0.25rem;\n}\n\n.was-validated :invalid ~ .invalid-feedback,\n.was-validated :invalid ~ .invalid-tooltip,\n.is-invalid ~ .invalid-feedback,\n.is-invalid ~ .invalid-tooltip {\n display: block;\n}\n\n.was-validated .form-control:invalid, .form-control.is-invalid {\n border-color: #dc3545;\n padding-right: calc(1.5em + 0.75rem);\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-position: right calc(0.375em + 0.1875rem) center;\n background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {\n padding-right: calc(1.5em + 0.75rem);\n background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);\n}\n\n.was-validated .form-select:invalid, .form-select.is-invalid {\n border-color: #dc3545;\n}\n.was-validated .form-select:invalid:not([multiple]):not([size]), .was-validated .form-select:invalid:not([multiple])[size=\"1\"], .form-select.is-invalid:not([multiple]):not([size]), .form-select.is-invalid:not([multiple])[size=\"1\"] {\n padding-right: 4.125rem;\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e\"), url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' width='12' height='12' fill='none' stroke='%23dc3545'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e\");\n background-position: right 0.75rem center, center right 2.25rem;\n background-size: 16px 12px, calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);\n}\n.was-validated .form-select:invalid:focus, .form-select.is-invalid:focus {\n border-color: #dc3545;\n box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);\n}\n\n.was-validated .form-check-input:invalid, .form-check-input.is-invalid {\n border-color: #dc3545;\n}\n.was-validated .form-check-input:invalid:checked, .form-check-input.is-invalid:checked {\n background-color: #dc3545;\n}\n.was-validated .form-check-input:invalid:focus, .form-check-input.is-invalid:focus {\n box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.25);\n}\n.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {\n color: #dc3545;\n}\n\n.form-check-inline .form-check-input ~ .invalid-feedback {\n margin-left: 0.5em;\n}\n\n.was-validated .input-group .form-control:invalid, .input-group .form-control.is-invalid,\n.was-validated .input-group .form-select:invalid,\n.input-group .form-select.is-invalid {\n z-index: 2;\n}\n.was-validated .input-group .form-control:invalid:focus, .input-group .form-control.is-invalid:focus,\n.was-validated .input-group .form-select:invalid:focus,\n.input-group .form-select.is-invalid:focus {\n z-index: 3;\n}\n\n.btn {\n display: inline-block;\n font-weight: 400;\n line-height: 1.5;\n color: #212529;\n text-align: center;\n text-decoration: none;\n vertical-align: middle;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n background-color: transparent;\n border: 1px solid transparent;\n padding: 0.375rem 0.75rem;\n font-size: 1rem;\n border-radius: 0.25rem;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .btn {\n transition: none;\n }\n}\n.btn:hover {\n color: #212529;\n}\n.btn-check:focus + .btn, .btn:focus {\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n.btn:disabled, .btn.disabled, fieldset:disabled .btn {\n pointer-events: none;\n opacity: 0.65;\n}\n\n.btn-primary {\n color: #fff;\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.btn-primary:hover {\n color: #fff;\n background-color: #0b5ed7;\n border-color: #0a58ca;\n}\n.btn-check:focus + .btn-primary, .btn-primary:focus {\n color: #fff;\n background-color: #0b5ed7;\n border-color: #0a58ca;\n box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);\n}\n.btn-check:checked + .btn-primary, .btn-check:active + .btn-primary, .btn-primary:active, .btn-primary.active, .show > .btn-primary.dropdown-toggle {\n color: #fff;\n background-color: #0a58ca;\n border-color: #0a53be;\n}\n.btn-check:checked + .btn-primary:focus, .btn-check:active + .btn-primary:focus, .btn-primary:active:focus, .btn-primary.active:focus, .show > .btn-primary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(49, 132, 253, 0.5);\n}\n.btn-primary:disabled, .btn-primary.disabled {\n color: #fff;\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n\n.btn-secondary {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n.btn-secondary:hover {\n color: #fff;\n background-color: #5c636a;\n border-color: #565e64;\n}\n.btn-check:focus + .btn-secondary, .btn-secondary:focus {\n color: #fff;\n background-color: #5c636a;\n border-color: #565e64;\n box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);\n}\n.btn-check:checked + .btn-secondary, .btn-check:active + .btn-secondary, .btn-secondary:active, .btn-secondary.active, .show > .btn-secondary.dropdown-toggle {\n color: #fff;\n background-color: #565e64;\n border-color: #51585e;\n}\n.btn-check:checked + .btn-secondary:focus, .btn-check:active + .btn-secondary:focus, .btn-secondary:active:focus, .btn-secondary.active:focus, .show > .btn-secondary.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(130, 138, 145, 0.5);\n}\n.btn-secondary:disabled, .btn-secondary.disabled {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n\n.btn-success {\n color: #fff;\n background-color: #198754;\n border-color: #198754;\n}\n.btn-success:hover {\n color: #fff;\n background-color: #157347;\n border-color: #146c43;\n}\n.btn-check:focus + .btn-success, .btn-success:focus {\n color: #fff;\n background-color: #157347;\n border-color: #146c43;\n box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);\n}\n.btn-check:checked + .btn-success, .btn-check:active + .btn-success, .btn-success:active, .btn-success.active, .show > .btn-success.dropdown-toggle {\n color: #fff;\n background-color: #146c43;\n border-color: #13653f;\n}\n.btn-check:checked + .btn-success:focus, .btn-check:active + .btn-success:focus, .btn-success:active:focus, .btn-success.active:focus, .show > .btn-success.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(60, 153, 110, 0.5);\n}\n.btn-success:disabled, .btn-success.disabled {\n color: #fff;\n background-color: #198754;\n border-color: #198754;\n}\n\n.btn-info {\n color: #000;\n background-color: #0dcaf0;\n border-color: #0dcaf0;\n}\n.btn-info:hover {\n color: #000;\n background-color: #31d2f2;\n border-color: #25cff2;\n}\n.btn-check:focus + .btn-info, .btn-info:focus {\n color: #000;\n background-color: #31d2f2;\n border-color: #25cff2;\n box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);\n}\n.btn-check:checked + .btn-info, .btn-check:active + .btn-info, .btn-info:active, .btn-info.active, .show > .btn-info.dropdown-toggle {\n color: #000;\n background-color: #3dd5f3;\n border-color: #25cff2;\n}\n.btn-check:checked + .btn-info:focus, .btn-check:active + .btn-info:focus, .btn-info:active:focus, .btn-info.active:focus, .show > .btn-info.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(11, 172, 204, 0.5);\n}\n.btn-info:disabled, .btn-info.disabled {\n color: #000;\n background-color: #0dcaf0;\n border-color: #0dcaf0;\n}\n\n.btn-warning {\n color: #000;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n.btn-warning:hover {\n color: #000;\n background-color: #ffca2c;\n border-color: #ffc720;\n}\n.btn-check:focus + .btn-warning, .btn-warning:focus {\n color: #000;\n background-color: #ffca2c;\n border-color: #ffc720;\n box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);\n}\n.btn-check:checked + .btn-warning, .btn-check:active + .btn-warning, .btn-warning:active, .btn-warning.active, .show > .btn-warning.dropdown-toggle {\n color: #000;\n background-color: #ffcd39;\n border-color: #ffc720;\n}\n.btn-check:checked + .btn-warning:focus, .btn-check:active + .btn-warning:focus, .btn-warning:active:focus, .btn-warning.active:focus, .show > .btn-warning.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(217, 164, 6, 0.5);\n}\n.btn-warning:disabled, .btn-warning.disabled {\n color: #000;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n\n.btn-danger {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n.btn-danger:hover {\n color: #fff;\n background-color: #bb2d3b;\n border-color: #b02a37;\n}\n.btn-check:focus + .btn-danger, .btn-danger:focus {\n color: #fff;\n background-color: #bb2d3b;\n border-color: #b02a37;\n box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);\n}\n.btn-check:checked + .btn-danger, .btn-check:active + .btn-danger, .btn-danger:active, .btn-danger.active, .show > .btn-danger.dropdown-toggle {\n color: #fff;\n background-color: #b02a37;\n border-color: #a52834;\n}\n.btn-check:checked + .btn-danger:focus, .btn-check:active + .btn-danger:focus, .btn-danger:active:focus, .btn-danger.active:focus, .show > .btn-danger.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(225, 83, 97, 0.5);\n}\n.btn-danger:disabled, .btn-danger.disabled {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n\n.btn-light {\n color: #000;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n.btn-light:hover {\n color: #000;\n background-color: #f9fafb;\n border-color: #f9fafb;\n}\n.btn-check:focus + .btn-light, .btn-light:focus {\n color: #000;\n background-color: #f9fafb;\n border-color: #f9fafb;\n box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);\n}\n.btn-check:checked + .btn-light, .btn-check:active + .btn-light, .btn-light:active, .btn-light.active, .show > .btn-light.dropdown-toggle {\n color: #000;\n background-color: #f9fafb;\n border-color: #f9fafb;\n}\n.btn-check:checked + .btn-light:focus, .btn-check:active + .btn-light:focus, .btn-light:active:focus, .btn-light.active:focus, .show > .btn-light.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(211, 212, 213, 0.5);\n}\n.btn-light:disabled, .btn-light.disabled {\n color: #000;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n\n.btn-dark {\n color: #fff;\n background-color: #212529;\n border-color: #212529;\n}\n.btn-dark:hover {\n color: #fff;\n background-color: #1c1f23;\n border-color: #1a1e21;\n}\n.btn-check:focus + .btn-dark, .btn-dark:focus {\n color: #fff;\n background-color: #1c1f23;\n border-color: #1a1e21;\n box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);\n}\n.btn-check:checked + .btn-dark, .btn-check:active + .btn-dark, .btn-dark:active, .btn-dark.active, .show > .btn-dark.dropdown-toggle {\n color: #fff;\n background-color: #1a1e21;\n border-color: #191c1f;\n}\n.btn-check:checked + .btn-dark:focus, .btn-check:active + .btn-dark:focus, .btn-dark:active:focus, .btn-dark.active:focus, .show > .btn-dark.dropdown-toggle:focus {\n box-shadow: 0 0 0 0.25rem rgba(66, 70, 73, 0.5);\n}\n.btn-dark:disabled, .btn-dark.disabled {\n color: #fff;\n background-color: #212529;\n border-color: #212529;\n}\n\n.btn-outline-primary {\n color: #0d6efd;\n border-color: #0d6efd;\n}\n.btn-outline-primary:hover {\n color: #fff;\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.btn-check:focus + .btn-outline-primary, .btn-outline-primary:focus {\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);\n}\n.btn-check:checked + .btn-outline-primary, .btn-check:active + .btn-outline-primary, .btn-outline-primary:active, .btn-outline-primary.active, .btn-outline-primary.dropdown-toggle.show {\n color: #fff;\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.btn-check:checked + .btn-outline-primary:focus, .btn-check:active + .btn-outline-primary:focus, .btn-outline-primary:active:focus, .btn-outline-primary.active:focus, .btn-outline-primary.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.5);\n}\n.btn-outline-primary:disabled, .btn-outline-primary.disabled {\n color: #0d6efd;\n background-color: transparent;\n}\n\n.btn-outline-secondary {\n color: #6c757d;\n border-color: #6c757d;\n}\n.btn-outline-secondary:hover {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n.btn-check:focus + .btn-outline-secondary, .btn-outline-secondary:focus {\n box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);\n}\n.btn-check:checked + .btn-outline-secondary, .btn-check:active + .btn-outline-secondary, .btn-outline-secondary:active, .btn-outline-secondary.active, .btn-outline-secondary.dropdown-toggle.show {\n color: #fff;\n background-color: #6c757d;\n border-color: #6c757d;\n}\n.btn-check:checked + .btn-outline-secondary:focus, .btn-check:active + .btn-outline-secondary:focus, .btn-outline-secondary:active:focus, .btn-outline-secondary.active:focus, .btn-outline-secondary.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(108, 117, 125, 0.5);\n}\n.btn-outline-secondary:disabled, .btn-outline-secondary.disabled {\n color: #6c757d;\n background-color: transparent;\n}\n\n.btn-outline-success {\n color: #198754;\n border-color: #198754;\n}\n.btn-outline-success:hover {\n color: #fff;\n background-color: #198754;\n border-color: #198754;\n}\n.btn-check:focus + .btn-outline-success, .btn-outline-success:focus {\n box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);\n}\n.btn-check:checked + .btn-outline-success, .btn-check:active + .btn-outline-success, .btn-outline-success:active, .btn-outline-success.active, .btn-outline-success.dropdown-toggle.show {\n color: #fff;\n background-color: #198754;\n border-color: #198754;\n}\n.btn-check:checked + .btn-outline-success:focus, .btn-check:active + .btn-outline-success:focus, .btn-outline-success:active:focus, .btn-outline-success.active:focus, .btn-outline-success.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(25, 135, 84, 0.5);\n}\n.btn-outline-success:disabled, .btn-outline-success.disabled {\n color: #198754;\n background-color: transparent;\n}\n\n.btn-outline-info {\n color: #0dcaf0;\n border-color: #0dcaf0;\n}\n.btn-outline-info:hover {\n color: #000;\n background-color: #0dcaf0;\n border-color: #0dcaf0;\n}\n.btn-check:focus + .btn-outline-info, .btn-outline-info:focus {\n box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);\n}\n.btn-check:checked + .btn-outline-info, .btn-check:active + .btn-outline-info, .btn-outline-info:active, .btn-outline-info.active, .btn-outline-info.dropdown-toggle.show {\n color: #000;\n background-color: #0dcaf0;\n border-color: #0dcaf0;\n}\n.btn-check:checked + .btn-outline-info:focus, .btn-check:active + .btn-outline-info:focus, .btn-outline-info:active:focus, .btn-outline-info.active:focus, .btn-outline-info.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(13, 202, 240, 0.5);\n}\n.btn-outline-info:disabled, .btn-outline-info.disabled {\n color: #0dcaf0;\n background-color: transparent;\n}\n\n.btn-outline-warning {\n color: #ffc107;\n border-color: #ffc107;\n}\n.btn-outline-warning:hover {\n color: #000;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n.btn-check:focus + .btn-outline-warning, .btn-outline-warning:focus {\n box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);\n}\n.btn-check:checked + .btn-outline-warning, .btn-check:active + .btn-outline-warning, .btn-outline-warning:active, .btn-outline-warning.active, .btn-outline-warning.dropdown-toggle.show {\n color: #000;\n background-color: #ffc107;\n border-color: #ffc107;\n}\n.btn-check:checked + .btn-outline-warning:focus, .btn-check:active + .btn-outline-warning:focus, .btn-outline-warning:active:focus, .btn-outline-warning.active:focus, .btn-outline-warning.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(255, 193, 7, 0.5);\n}\n.btn-outline-warning:disabled, .btn-outline-warning.disabled {\n color: #ffc107;\n background-color: transparent;\n}\n\n.btn-outline-danger {\n color: #dc3545;\n border-color: #dc3545;\n}\n.btn-outline-danger:hover {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n.btn-check:focus + .btn-outline-danger, .btn-outline-danger:focus {\n box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);\n}\n.btn-check:checked + .btn-outline-danger, .btn-check:active + .btn-outline-danger, .btn-outline-danger:active, .btn-outline-danger.active, .btn-outline-danger.dropdown-toggle.show {\n color: #fff;\n background-color: #dc3545;\n border-color: #dc3545;\n}\n.btn-check:checked + .btn-outline-danger:focus, .btn-check:active + .btn-outline-danger:focus, .btn-outline-danger:active:focus, .btn-outline-danger.active:focus, .btn-outline-danger.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(220, 53, 69, 0.5);\n}\n.btn-outline-danger:disabled, .btn-outline-danger.disabled {\n color: #dc3545;\n background-color: transparent;\n}\n\n.btn-outline-light {\n color: #f8f9fa;\n border-color: #f8f9fa;\n}\n.btn-outline-light:hover {\n color: #000;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n.btn-check:focus + .btn-outline-light, .btn-outline-light:focus {\n box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);\n}\n.btn-check:checked + .btn-outline-light, .btn-check:active + .btn-outline-light, .btn-outline-light:active, .btn-outline-light.active, .btn-outline-light.dropdown-toggle.show {\n color: #000;\n background-color: #f8f9fa;\n border-color: #f8f9fa;\n}\n.btn-check:checked + .btn-outline-light:focus, .btn-check:active + .btn-outline-light:focus, .btn-outline-light:active:focus, .btn-outline-light.active:focus, .btn-outline-light.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(248, 249, 250, 0.5);\n}\n.btn-outline-light:disabled, .btn-outline-light.disabled {\n color: #f8f9fa;\n background-color: transparent;\n}\n\n.btn-outline-dark {\n color: #212529;\n border-color: #212529;\n}\n.btn-outline-dark:hover {\n color: #fff;\n background-color: #212529;\n border-color: #212529;\n}\n.btn-check:focus + .btn-outline-dark, .btn-outline-dark:focus {\n box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);\n}\n.btn-check:checked + .btn-outline-dark, .btn-check:active + .btn-outline-dark, .btn-outline-dark:active, .btn-outline-dark.active, .btn-outline-dark.dropdown-toggle.show {\n color: #fff;\n background-color: #212529;\n border-color: #212529;\n}\n.btn-check:checked + .btn-outline-dark:focus, .btn-check:active + .btn-outline-dark:focus, .btn-outline-dark:active:focus, .btn-outline-dark.active:focus, .btn-outline-dark.dropdown-toggle.show:focus {\n box-shadow: 0 0 0 0.25rem rgba(33, 37, 41, 0.5);\n}\n.btn-outline-dark:disabled, .btn-outline-dark.disabled {\n color: #212529;\n background-color: transparent;\n}\n\n.btn-link {\n font-weight: 400;\n color: #0d6efd;\n text-decoration: underline;\n}\n.btn-link:hover {\n color: #0a58ca;\n}\n.btn-link:disabled, .btn-link.disabled {\n color: #6c757d;\n}\n\n.btn-lg, .btn-group-lg > .btn {\n padding: 0.5rem 1rem;\n font-size: 1.25rem;\n border-radius: 0.3rem;\n}\n\n.btn-sm, .btn-group-sm > .btn {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n border-radius: 0.2rem;\n}\n\n.fade {\n transition: opacity 0.15s linear;\n}\n@media (prefers-reduced-motion: reduce) {\n .fade {\n transition: none;\n }\n}\n.fade:not(.show) {\n opacity: 0;\n}\n\n.collapse:not(.show) {\n display: none;\n}\n\n.collapsing {\n height: 0;\n overflow: hidden;\n transition: height 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing {\n transition: none;\n }\n}\n.collapsing.collapse-horizontal {\n width: 0;\n height: auto;\n transition: width 0.35s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .collapsing.collapse-horizontal {\n transition: none;\n }\n}\n\n.dropup,\n.dropend,\n.dropdown,\n.dropstart {\n position: relative;\n}\n\n.dropdown-toggle {\n white-space: nowrap;\n}\n.dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid;\n border-right: 0.3em solid transparent;\n border-bottom: 0;\n border-left: 0.3em solid transparent;\n}\n.dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropdown-menu {\n position: absolute;\n z-index: 1000;\n display: none;\n min-width: 10rem;\n padding: 0.5rem 0;\n margin: 0;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n list-style: none;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.15);\n border-radius: 0.25rem;\n}\n.dropdown-menu[data-bs-popper] {\n top: 100%;\n left: 0;\n margin-top: 0.125rem;\n}\n\n.dropdown-menu-start {\n --bs-position: start;\n}\n.dropdown-menu-start[data-bs-popper] {\n right: auto;\n left: 0;\n}\n\n.dropdown-menu-end {\n --bs-position: end;\n}\n.dropdown-menu-end[data-bs-popper] {\n right: 0;\n left: auto;\n}\n\n@media (min-width: 576px) {\n .dropdown-menu-sm-start {\n --bs-position: start;\n }\n .dropdown-menu-sm-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n\n .dropdown-menu-sm-end {\n --bs-position: end;\n }\n .dropdown-menu-sm-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 768px) {\n .dropdown-menu-md-start {\n --bs-position: start;\n }\n .dropdown-menu-md-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n\n .dropdown-menu-md-end {\n --bs-position: end;\n }\n .dropdown-menu-md-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 992px) {\n .dropdown-menu-lg-start {\n --bs-position: start;\n }\n .dropdown-menu-lg-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n\n .dropdown-menu-lg-end {\n --bs-position: end;\n }\n .dropdown-menu-lg-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1200px) {\n .dropdown-menu-xl-start {\n --bs-position: start;\n }\n .dropdown-menu-xl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n\n .dropdown-menu-xl-end {\n --bs-position: end;\n }\n .dropdown-menu-xl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n@media (min-width: 1400px) {\n .dropdown-menu-xxl-start {\n --bs-position: start;\n }\n .dropdown-menu-xxl-start[data-bs-popper] {\n right: auto;\n left: 0;\n }\n\n .dropdown-menu-xxl-end {\n --bs-position: end;\n }\n .dropdown-menu-xxl-end[data-bs-popper] {\n right: 0;\n left: auto;\n }\n}\n.dropup .dropdown-menu[data-bs-popper] {\n top: auto;\n bottom: 100%;\n margin-top: 0;\n margin-bottom: 0.125rem;\n}\n.dropup .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0;\n border-right: 0.3em solid transparent;\n border-bottom: 0.3em solid;\n border-left: 0.3em solid transparent;\n}\n.dropup .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n\n.dropend .dropdown-menu[data-bs-popper] {\n top: 0;\n right: auto;\n left: 100%;\n margin-top: 0;\n margin-left: 0.125rem;\n}\n.dropend .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0;\n border-bottom: 0.3em solid transparent;\n border-left: 0.3em solid;\n}\n.dropend .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropend .dropdown-toggle::after {\n vertical-align: 0;\n}\n\n.dropstart .dropdown-menu[data-bs-popper] {\n top: 0;\n right: 100%;\n left: auto;\n margin-top: 0;\n margin-right: 0.125rem;\n}\n.dropstart .dropdown-toggle::after {\n display: inline-block;\n margin-left: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n}\n.dropstart .dropdown-toggle::after {\n display: none;\n}\n.dropstart .dropdown-toggle::before {\n display: inline-block;\n margin-right: 0.255em;\n vertical-align: 0.255em;\n content: \"\";\n border-top: 0.3em solid transparent;\n border-right: 0.3em solid;\n border-bottom: 0.3em solid transparent;\n}\n.dropstart .dropdown-toggle:empty::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle::before {\n vertical-align: 0;\n}\n\n.dropdown-divider {\n height: 0;\n margin: 0.5rem 0;\n overflow: hidden;\n border-top: 1px solid rgba(0, 0, 0, 0.15);\n}\n\n.dropdown-item {\n display: block;\n width: 100%;\n padding: 0.25rem 1rem;\n clear: both;\n font-weight: 400;\n color: #212529;\n text-align: inherit;\n text-decoration: none;\n white-space: nowrap;\n background-color: transparent;\n border: 0;\n}\n.dropdown-item:hover, .dropdown-item:focus {\n color: #1e2125;\n background-color: #e9ecef;\n}\n.dropdown-item.active, .dropdown-item:active {\n color: #fff;\n text-decoration: none;\n background-color: #0d6efd;\n}\n.dropdown-item.disabled, .dropdown-item:disabled {\n color: #adb5bd;\n pointer-events: none;\n background-color: transparent;\n}\n\n.dropdown-menu.show {\n display: block;\n}\n\n.dropdown-header {\n display: block;\n padding: 0.5rem 1rem;\n margin-bottom: 0;\n font-size: 0.875rem;\n color: #6c757d;\n white-space: nowrap;\n}\n\n.dropdown-item-text {\n display: block;\n padding: 0.25rem 1rem;\n color: #212529;\n}\n\n.dropdown-menu-dark {\n color: #dee2e6;\n background-color: #343a40;\n border-color: rgba(0, 0, 0, 0.15);\n}\n.dropdown-menu-dark .dropdown-item {\n color: #dee2e6;\n}\n.dropdown-menu-dark .dropdown-item:hover, .dropdown-menu-dark .dropdown-item:focus {\n color: #fff;\n background-color: rgba(255, 255, 255, 0.15);\n}\n.dropdown-menu-dark .dropdown-item.active, .dropdown-menu-dark .dropdown-item:active {\n color: #fff;\n background-color: #0d6efd;\n}\n.dropdown-menu-dark .dropdown-item.disabled, .dropdown-menu-dark .dropdown-item:disabled {\n color: #adb5bd;\n}\n.dropdown-menu-dark .dropdown-divider {\n border-color: rgba(0, 0, 0, 0.15);\n}\n.dropdown-menu-dark .dropdown-item-text {\n color: #dee2e6;\n}\n.dropdown-menu-dark .dropdown-header {\n color: #adb5bd;\n}\n\n.btn-group,\n.btn-group-vertical {\n position: relative;\n display: inline-flex;\n vertical-align: middle;\n}\n.btn-group > .btn,\n.btn-group-vertical > .btn {\n position: relative;\n flex: 1 1 auto;\n}\n.btn-group > .btn-check:checked + .btn,\n.btn-group > .btn-check:focus + .btn,\n.btn-group > .btn:hover,\n.btn-group > .btn:focus,\n.btn-group > .btn:active,\n.btn-group > .btn.active,\n.btn-group-vertical > .btn-check:checked + .btn,\n.btn-group-vertical > .btn-check:focus + .btn,\n.btn-group-vertical > .btn:hover,\n.btn-group-vertical > .btn:focus,\n.btn-group-vertical > .btn:active,\n.btn-group-vertical > .btn.active {\n z-index: 1;\n}\n\n.btn-toolbar {\n display: flex;\n flex-wrap: wrap;\n justify-content: flex-start;\n}\n.btn-toolbar .input-group {\n width: auto;\n}\n\n.btn-group > .btn:not(:first-child),\n.btn-group > .btn-group:not(:first-child) {\n margin-left: -1px;\n}\n.btn-group > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group > .btn-group:not(:last-child) > .btn {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n}\n.btn-group > .btn:nth-child(n+3),\n.btn-group > :not(.btn-check) + .btn,\n.btn-group > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n}\n\n.dropdown-toggle-split {\n padding-right: 0.5625rem;\n padding-left: 0.5625rem;\n}\n.dropdown-toggle-split::after, .dropup .dropdown-toggle-split::after, .dropend .dropdown-toggle-split::after {\n margin-left: 0;\n}\n.dropstart .dropdown-toggle-split::before {\n margin-right: 0;\n}\n\n.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {\n padding-right: 0.375rem;\n padding-left: 0.375rem;\n}\n\n.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {\n padding-right: 0.75rem;\n padding-left: 0.75rem;\n}\n\n.btn-group-vertical {\n flex-direction: column;\n align-items: flex-start;\n justify-content: center;\n}\n.btn-group-vertical > .btn,\n.btn-group-vertical > .btn-group {\n width: 100%;\n}\n.btn-group-vertical > .btn:not(:first-child),\n.btn-group-vertical > .btn-group:not(:first-child) {\n margin-top: -1px;\n}\n.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),\n.btn-group-vertical > .btn-group:not(:last-child) > .btn {\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n}\n.btn-group-vertical > .btn ~ .btn,\n.btn-group-vertical > .btn-group:not(:first-child) > .btn {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav {\n display: flex;\n flex-wrap: wrap;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n\n.nav-link {\n display: block;\n padding: 0.5rem 1rem;\n color: #0d6efd;\n text-decoration: none;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .nav-link {\n transition: none;\n }\n}\n.nav-link:hover, .nav-link:focus {\n color: #0a58ca;\n}\n.nav-link.disabled {\n color: #6c757d;\n pointer-events: none;\n cursor: default;\n}\n\n.nav-tabs {\n border-bottom: 1px solid #dee2e6;\n}\n.nav-tabs .nav-link {\n margin-bottom: -1px;\n background: none;\n border: 1px solid transparent;\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {\n border-color: #e9ecef #e9ecef #dee2e6;\n isolation: isolate;\n}\n.nav-tabs .nav-link.disabled {\n color: #6c757d;\n background-color: transparent;\n border-color: transparent;\n}\n.nav-tabs .nav-link.active,\n.nav-tabs .nav-item.show .nav-link {\n color: #495057;\n background-color: #fff;\n border-color: #dee2e6 #dee2e6 #fff;\n}\n.nav-tabs .dropdown-menu {\n margin-top: -1px;\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n}\n\n.nav-pills .nav-link {\n background: none;\n border: 0;\n border-radius: 0.25rem;\n}\n.nav-pills .nav-link.active,\n.nav-pills .show > .nav-link {\n color: #fff;\n background-color: #0d6efd;\n}\n\n.nav-fill > .nav-link,\n.nav-fill .nav-item {\n flex: 1 1 auto;\n text-align: center;\n}\n\n.nav-justified > .nav-link,\n.nav-justified .nav-item {\n flex-basis: 0;\n flex-grow: 1;\n text-align: center;\n}\n\n.nav-fill .nav-item .nav-link,\n.nav-justified .nav-item .nav-link {\n width: 100%;\n}\n\n.tab-content > .tab-pane {\n display: none;\n}\n.tab-content > .active {\n display: block;\n}\n\n.navbar {\n position: relative;\n display: flex;\n flex-wrap: wrap;\n align-items: center;\n justify-content: space-between;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n.navbar > .container,\n.navbar > .container-fluid,\n.navbar > .container-sm,\n.navbar > .container-md,\n.navbar > .container-lg,\n.navbar > .container-xl,\n.navbar > .container-xxl {\n display: flex;\n flex-wrap: inherit;\n align-items: center;\n justify-content: space-between;\n}\n.navbar-brand {\n padding-top: 0.3125rem;\n padding-bottom: 0.3125rem;\n margin-right: 1rem;\n font-size: 1.25rem;\n text-decoration: none;\n white-space: nowrap;\n}\n.navbar-nav {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n list-style: none;\n}\n.navbar-nav .nav-link {\n padding-right: 0;\n padding-left: 0;\n}\n.navbar-nav .dropdown-menu {\n position: static;\n}\n\n.navbar-text {\n padding-top: 0.5rem;\n padding-bottom: 0.5rem;\n}\n\n.navbar-collapse {\n flex-basis: 100%;\n flex-grow: 1;\n align-items: center;\n}\n\n.navbar-toggler {\n padding: 0.25rem 0.75rem;\n font-size: 1.25rem;\n line-height: 1;\n background-color: transparent;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n transition: box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .navbar-toggler {\n transition: none;\n }\n}\n.navbar-toggler:hover {\n text-decoration: none;\n}\n.navbar-toggler:focus {\n text-decoration: none;\n outline: 0;\n box-shadow: 0 0 0 0.25rem;\n}\n\n.navbar-toggler-icon {\n display: inline-block;\n width: 1.5em;\n height: 1.5em;\n vertical-align: middle;\n background-repeat: no-repeat;\n background-position: center;\n background-size: 100%;\n}\n\n.navbar-nav-scroll {\n max-height: var(--bs-scroll-height, 75vh);\n overflow-y: auto;\n}\n\n@media (min-width: 576px) {\n .navbar-expand-sm {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-sm .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-sm .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-sm .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-sm .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-sm .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-sm .navbar-toggler {\n display: none;\n }\n .navbar-expand-sm .offcanvas-header {\n display: none;\n }\n .navbar-expand-sm .offcanvas {\n position: inherit;\n bottom: 0;\n z-index: 1000;\n flex-grow: 1;\n visibility: visible !important;\n background-color: transparent;\n border-right: 0;\n border-left: 0;\n transition: none;\n transform: none;\n }\n .navbar-expand-sm .offcanvas-top,\n.navbar-expand-sm .offcanvas-bottom {\n height: auto;\n border-top: 0;\n border-bottom: 0;\n }\n .navbar-expand-sm .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 768px) {\n .navbar-expand-md {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-md .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-md .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-md .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-md .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-md .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-md .navbar-toggler {\n display: none;\n }\n .navbar-expand-md .offcanvas-header {\n display: none;\n }\n .navbar-expand-md .offcanvas {\n position: inherit;\n bottom: 0;\n z-index: 1000;\n flex-grow: 1;\n visibility: visible !important;\n background-color: transparent;\n border-right: 0;\n border-left: 0;\n transition: none;\n transform: none;\n }\n .navbar-expand-md .offcanvas-top,\n.navbar-expand-md .offcanvas-bottom {\n height: auto;\n border-top: 0;\n border-bottom: 0;\n }\n .navbar-expand-md .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 992px) {\n .navbar-expand-lg {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-lg .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-lg .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-lg .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-lg .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-lg .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-lg .navbar-toggler {\n display: none;\n }\n .navbar-expand-lg .offcanvas-header {\n display: none;\n }\n .navbar-expand-lg .offcanvas {\n position: inherit;\n bottom: 0;\n z-index: 1000;\n flex-grow: 1;\n visibility: visible !important;\n background-color: transparent;\n border-right: 0;\n border-left: 0;\n transition: none;\n transform: none;\n }\n .navbar-expand-lg .offcanvas-top,\n.navbar-expand-lg .offcanvas-bottom {\n height: auto;\n border-top: 0;\n border-bottom: 0;\n }\n .navbar-expand-lg .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1200px) {\n .navbar-expand-xl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xl .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-xl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xl .offcanvas-header {\n display: none;\n }\n .navbar-expand-xl .offcanvas {\n position: inherit;\n bottom: 0;\n z-index: 1000;\n flex-grow: 1;\n visibility: visible !important;\n background-color: transparent;\n border-right: 0;\n border-left: 0;\n transition: none;\n transform: none;\n }\n .navbar-expand-xl .offcanvas-top,\n.navbar-expand-xl .offcanvas-bottom {\n height: auto;\n border-top: 0;\n border-bottom: 0;\n }\n .navbar-expand-xl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n@media (min-width: 1400px) {\n .navbar-expand-xxl {\n flex-wrap: nowrap;\n justify-content: flex-start;\n }\n .navbar-expand-xxl .navbar-nav {\n flex-direction: row;\n }\n .navbar-expand-xxl .navbar-nav .dropdown-menu {\n position: absolute;\n }\n .navbar-expand-xxl .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n }\n .navbar-expand-xxl .navbar-nav-scroll {\n overflow: visible;\n }\n .navbar-expand-xxl .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n }\n .navbar-expand-xxl .navbar-toggler {\n display: none;\n }\n .navbar-expand-xxl .offcanvas-header {\n display: none;\n }\n .navbar-expand-xxl .offcanvas {\n position: inherit;\n bottom: 0;\n z-index: 1000;\n flex-grow: 1;\n visibility: visible !important;\n background-color: transparent;\n border-right: 0;\n border-left: 0;\n transition: none;\n transform: none;\n }\n .navbar-expand-xxl .offcanvas-top,\n.navbar-expand-xxl .offcanvas-bottom {\n height: auto;\n border-top: 0;\n border-bottom: 0;\n }\n .navbar-expand-xxl .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n }\n}\n.navbar-expand {\n flex-wrap: nowrap;\n justify-content: flex-start;\n}\n.navbar-expand .navbar-nav {\n flex-direction: row;\n}\n.navbar-expand .navbar-nav .dropdown-menu {\n position: absolute;\n}\n.navbar-expand .navbar-nav .nav-link {\n padding-right: 0.5rem;\n padding-left: 0.5rem;\n}\n.navbar-expand .navbar-nav-scroll {\n overflow: visible;\n}\n.navbar-expand .navbar-collapse {\n display: flex !important;\n flex-basis: auto;\n}\n.navbar-expand .navbar-toggler {\n display: none;\n}\n.navbar-expand .offcanvas-header {\n display: none;\n}\n.navbar-expand .offcanvas {\n position: inherit;\n bottom: 0;\n z-index: 1000;\n flex-grow: 1;\n visibility: visible !important;\n background-color: transparent;\n border-right: 0;\n border-left: 0;\n transition: none;\n transform: none;\n}\n.navbar-expand .offcanvas-top,\n.navbar-expand .offcanvas-bottom {\n height: auto;\n border-top: 0;\n border-bottom: 0;\n}\n.navbar-expand .offcanvas-body {\n display: flex;\n flex-grow: 0;\n padding: 0;\n overflow-y: visible;\n}\n\n.navbar-light .navbar-brand {\n color: rgba(0, 0, 0, 0.9);\n}\n.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n.navbar-light .navbar-nav .nav-link {\n color: rgba(0, 0, 0, 0.55);\n}\n.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {\n color: rgba(0, 0, 0, 0.7);\n}\n.navbar-light .navbar-nav .nav-link.disabled {\n color: rgba(0, 0, 0, 0.3);\n}\n.navbar-light .navbar-nav .show > .nav-link,\n.navbar-light .navbar-nav .nav-link.active {\n color: rgba(0, 0, 0, 0.9);\n}\n.navbar-light .navbar-toggler {\n color: rgba(0, 0, 0, 0.55);\n border-color: rgba(0, 0, 0, 0.1);\n}\n.navbar-light .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n.navbar-light .navbar-text {\n color: rgba(0, 0, 0, 0.55);\n}\n.navbar-light .navbar-text a,\n.navbar-light .navbar-text a:hover,\n.navbar-light .navbar-text a:focus {\n color: rgba(0, 0, 0, 0.9);\n}\n\n.navbar-dark .navbar-brand {\n color: #fff;\n}\n.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {\n color: #fff;\n}\n.navbar-dark .navbar-nav .nav-link {\n color: rgba(255, 255, 255, 0.55);\n}\n.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {\n color: rgba(255, 255, 255, 0.75);\n}\n.navbar-dark .navbar-nav .nav-link.disabled {\n color: rgba(255, 255, 255, 0.25);\n}\n.navbar-dark .navbar-nav .show > .nav-link,\n.navbar-dark .navbar-nav .nav-link.active {\n color: #fff;\n}\n.navbar-dark .navbar-toggler {\n color: rgba(255, 255, 255, 0.55);\n border-color: rgba(255, 255, 255, 0.1);\n}\n.navbar-dark .navbar-toggler-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e\");\n}\n.navbar-dark .navbar-text {\n color: rgba(255, 255, 255, 0.55);\n}\n.navbar-dark .navbar-text a,\n.navbar-dark .navbar-text a:hover,\n.navbar-dark .navbar-text a:focus {\n color: #fff;\n}\n\n.card {\n position: relative;\n display: flex;\n flex-direction: column;\n min-width: 0;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: border-box;\n border: 1px solid rgba(0, 0, 0, 0.125);\n border-radius: 0.25rem;\n}\n.card > hr {\n margin-right: 0;\n margin-left: 0;\n}\n.card > .list-group {\n border-top: inherit;\n border-bottom: inherit;\n}\n.card > .list-group:first-child {\n border-top-width: 0;\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n.card > .list-group:last-child {\n border-bottom-width: 0;\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n.card > .card-header + .list-group,\n.card > .list-group + .card-footer {\n border-top: 0;\n}\n\n.card-body {\n flex: 1 1 auto;\n padding: 1rem 1rem;\n}\n\n.card-title {\n margin-bottom: 0.5rem;\n}\n\n.card-subtitle {\n margin-top: -0.25rem;\n margin-bottom: 0;\n}\n\n.card-text:last-child {\n margin-bottom: 0;\n}\n\n.card-link + .card-link {\n margin-left: 1rem;\n}\n\n.card-header {\n padding: 0.5rem 1rem;\n margin-bottom: 0;\n background-color: rgba(0, 0, 0, 0.03);\n border-bottom: 1px solid rgba(0, 0, 0, 0.125);\n}\n.card-header:first-child {\n border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;\n}\n\n.card-footer {\n padding: 0.5rem 1rem;\n background-color: rgba(0, 0, 0, 0.03);\n border-top: 1px solid rgba(0, 0, 0, 0.125);\n}\n.card-footer:last-child {\n border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);\n}\n\n.card-header-tabs {\n margin-right: -0.5rem;\n margin-bottom: -0.5rem;\n margin-left: -0.5rem;\n border-bottom: 0;\n}\n\n.card-header-pills {\n margin-right: -0.5rem;\n margin-left: -0.5rem;\n}\n\n.card-img-overlay {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n padding: 1rem;\n border-radius: calc(0.25rem - 1px);\n}\n\n.card-img,\n.card-img-top,\n.card-img-bottom {\n width: 100%;\n}\n\n.card-img,\n.card-img-top {\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n\n.card-img,\n.card-img-bottom {\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n\n.card-group > .card {\n margin-bottom: 0.75rem;\n}\n@media (min-width: 576px) {\n .card-group {\n display: flex;\n flex-flow: row wrap;\n }\n .card-group > .card {\n flex: 1 0 0%;\n margin-bottom: 0;\n }\n .card-group > .card + .card {\n margin-left: 0;\n border-left: 0;\n }\n .card-group > .card:not(:last-child) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-top,\n.card-group > .card:not(:last-child) .card-header {\n border-top-right-radius: 0;\n }\n .card-group > .card:not(:last-child) .card-img-bottom,\n.card-group > .card:not(:last-child) .card-footer {\n border-bottom-right-radius: 0;\n }\n .card-group > .card:not(:first-child) {\n border-top-left-radius: 0;\n border-bottom-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-top,\n.card-group > .card:not(:first-child) .card-header {\n border-top-left-radius: 0;\n }\n .card-group > .card:not(:first-child) .card-img-bottom,\n.card-group > .card:not(:first-child) .card-footer {\n border-bottom-left-radius: 0;\n }\n}\n\n.accordion-button {\n position: relative;\n display: flex;\n align-items: center;\n width: 100%;\n padding: 1rem 1.25rem;\n font-size: 1rem;\n color: #212529;\n text-align: left;\n background-color: #fff;\n border: 0;\n border-radius: 0;\n overflow-anchor: none;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, border-radius 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button {\n transition: none;\n }\n}\n.accordion-button:not(.collapsed) {\n color: #0c63e4;\n background-color: #e7f1ff;\n box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.125);\n}\n.accordion-button:not(.collapsed)::after {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%230c63e4'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n transform: rotate(-180deg);\n}\n.accordion-button::after {\n flex-shrink: 0;\n width: 1.25rem;\n height: 1.25rem;\n margin-left: auto;\n content: \"\";\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n background-repeat: no-repeat;\n background-size: 1.25rem;\n transition: transform 0.2s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .accordion-button::after {\n transition: none;\n }\n}\n.accordion-button:hover {\n z-index: 2;\n}\n.accordion-button:focus {\n z-index: 3;\n border-color: #86b7fe;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n\n.accordion-header {\n margin-bottom: 0;\n}\n\n.accordion-item {\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n.accordion-item:first-of-type {\n border-top-left-radius: 0.25rem;\n border-top-right-radius: 0.25rem;\n}\n.accordion-item:first-of-type .accordion-button {\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n.accordion-item:not(:first-of-type) {\n border-top: 0;\n}\n.accordion-item:last-of-type {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n.accordion-item:last-of-type .accordion-button.collapsed {\n border-bottom-right-radius: calc(0.25rem - 1px);\n border-bottom-left-radius: calc(0.25rem - 1px);\n}\n.accordion-item:last-of-type .accordion-collapse {\n border-bottom-right-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n\n.accordion-body {\n padding: 1rem 1.25rem;\n}\n\n.accordion-flush .accordion-collapse {\n border-width: 0;\n}\n.accordion-flush .accordion-item {\n border-right: 0;\n border-left: 0;\n border-radius: 0;\n}\n.accordion-flush .accordion-item:first-child {\n border-top: 0;\n}\n.accordion-flush .accordion-item:last-child {\n border-bottom: 0;\n}\n.accordion-flush .accordion-item .accordion-button {\n border-radius: 0;\n}\n\n.breadcrumb {\n display: flex;\n flex-wrap: wrap;\n padding: 0 0;\n margin-bottom: 1rem;\n list-style: none;\n}\n\n.breadcrumb-item + .breadcrumb-item {\n padding-left: 0.5rem;\n}\n.breadcrumb-item + .breadcrumb-item::before {\n float: left;\n padding-right: 0.5rem;\n color: #6c757d;\n content: var(--bs-breadcrumb-divider, \"/\") /* rtl: var(--bs-breadcrumb-divider, \"/\") */;\n}\n.breadcrumb-item.active {\n color: #6c757d;\n}\n\n.pagination {\n display: flex;\n padding-left: 0;\n list-style: none;\n}\n\n.page-link {\n position: relative;\n display: block;\n color: #0d6efd;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid #dee2e6;\n transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .page-link {\n transition: none;\n }\n}\n.page-link:hover {\n z-index: 2;\n color: #0a58ca;\n background-color: #e9ecef;\n border-color: #dee2e6;\n}\n.page-link:focus {\n z-index: 3;\n color: #0a58ca;\n background-color: #e9ecef;\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n}\n\n.page-item:not(:first-child) .page-link {\n margin-left: -1px;\n}\n.page-item.active .page-link {\n z-index: 3;\n color: #fff;\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.page-item.disabled .page-link {\n color: #6c757d;\n pointer-events: none;\n background-color: #fff;\n border-color: #dee2e6;\n}\n\n.page-link {\n padding: 0.375rem 0.75rem;\n}\n\n.page-item:first-child .page-link {\n border-top-left-radius: 0.25rem;\n border-bottom-left-radius: 0.25rem;\n}\n.page-item:last-child .page-link {\n border-top-right-radius: 0.25rem;\n border-bottom-right-radius: 0.25rem;\n}\n\n.pagination-lg .page-link {\n padding: 0.75rem 1.5rem;\n font-size: 1.25rem;\n}\n.pagination-lg .page-item:first-child .page-link {\n border-top-left-radius: 0.3rem;\n border-bottom-left-radius: 0.3rem;\n}\n.pagination-lg .page-item:last-child .page-link {\n border-top-right-radius: 0.3rem;\n border-bottom-right-radius: 0.3rem;\n}\n\n.pagination-sm .page-link {\n padding: 0.25rem 0.5rem;\n font-size: 0.875rem;\n}\n.pagination-sm .page-item:first-child .page-link {\n border-top-left-radius: 0.2rem;\n border-bottom-left-radius: 0.2rem;\n}\n.pagination-sm .page-item:last-child .page-link {\n border-top-right-radius: 0.2rem;\n border-bottom-right-radius: 0.2rem;\n}\n\n.badge {\n display: inline-block;\n padding: 0.35em 0.65em;\n font-size: 0.75em;\n font-weight: 700;\n line-height: 1;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n vertical-align: baseline;\n border-radius: 0.25rem;\n}\n.badge:empty {\n display: none;\n}\n\n.btn .badge {\n position: relative;\n top: -1px;\n}\n\n.alert {\n position: relative;\n padding: 1rem 1rem;\n margin-bottom: 1rem;\n border: 1px solid transparent;\n border-radius: 0.25rem;\n}\n\n.alert-heading {\n color: inherit;\n}\n\n.alert-link {\n font-weight: 700;\n}\n\n.alert-dismissible {\n padding-right: 3rem;\n}\n.alert-dismissible .btn-close {\n position: absolute;\n top: 0;\n right: 0;\n z-index: 2;\n padding: 1.25rem 1rem;\n}\n\n.alert-primary {\n color: #084298;\n background-color: #cfe2ff;\n border-color: #b6d4fe;\n}\n.alert-primary .alert-link {\n color: #06357a;\n}\n\n.alert-secondary {\n color: #41464b;\n background-color: #e2e3e5;\n border-color: #d3d6d8;\n}\n.alert-secondary .alert-link {\n color: #34383c;\n}\n\n.alert-success {\n color: #0f5132;\n background-color: #d1e7dd;\n border-color: #badbcc;\n}\n.alert-success .alert-link {\n color: #0c4128;\n}\n\n.alert-info {\n color: #055160;\n background-color: #cff4fc;\n border-color: #b6effb;\n}\n.alert-info .alert-link {\n color: #04414d;\n}\n\n.alert-warning {\n color: #664d03;\n background-color: #fff3cd;\n border-color: #ffecb5;\n}\n.alert-warning .alert-link {\n color: #523e02;\n}\n\n.alert-danger {\n color: #842029;\n background-color: #f8d7da;\n border-color: #f5c2c7;\n}\n.alert-danger .alert-link {\n color: #6a1a21;\n}\n\n.alert-light {\n color: #636464;\n background-color: #fefefe;\n border-color: #fdfdfe;\n}\n.alert-light .alert-link {\n color: #4f5050;\n}\n\n.alert-dark {\n color: #141619;\n background-color: #d3d3d4;\n border-color: #bcbebf;\n}\n.alert-dark .alert-link {\n color: #101214;\n}\n\n@-webkit-keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n\n@keyframes progress-bar-stripes {\n 0% {\n background-position-x: 1rem;\n }\n}\n.progress {\n display: flex;\n height: 1rem;\n overflow: hidden;\n font-size: 0.75rem;\n background-color: #e9ecef;\n border-radius: 0.25rem;\n}\n\n.progress-bar {\n display: flex;\n flex-direction: column;\n justify-content: center;\n overflow: hidden;\n color: #fff;\n text-align: center;\n white-space: nowrap;\n background-color: #0d6efd;\n transition: width 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar {\n transition: none;\n }\n}\n\n.progress-bar-striped {\n background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);\n background-size: 1rem 1rem;\n}\n\n.progress-bar-animated {\n -webkit-animation: 1s linear infinite progress-bar-stripes;\n animation: 1s linear infinite progress-bar-stripes;\n}\n@media (prefers-reduced-motion: reduce) {\n .progress-bar-animated {\n -webkit-animation: none;\n animation: none;\n }\n}\n\n.list-group {\n display: flex;\n flex-direction: column;\n padding-left: 0;\n margin-bottom: 0;\n border-radius: 0.25rem;\n}\n\n.list-group-numbered {\n list-style-type: none;\n counter-reset: section;\n}\n.list-group-numbered > li::before {\n content: counters(section, \".\") \". \";\n counter-increment: section;\n}\n\n.list-group-item-action {\n width: 100%;\n color: #495057;\n text-align: inherit;\n}\n.list-group-item-action:hover, .list-group-item-action:focus {\n z-index: 1;\n color: #495057;\n text-decoration: none;\n background-color: #f8f9fa;\n}\n.list-group-item-action:active {\n color: #212529;\n background-color: #e9ecef;\n}\n\n.list-group-item {\n position: relative;\n display: block;\n padding: 0.5rem 1rem;\n color: #212529;\n text-decoration: none;\n background-color: #fff;\n border: 1px solid rgba(0, 0, 0, 0.125);\n}\n.list-group-item:first-child {\n border-top-left-radius: inherit;\n border-top-right-radius: inherit;\n}\n.list-group-item:last-child {\n border-bottom-right-radius: inherit;\n border-bottom-left-radius: inherit;\n}\n.list-group-item.disabled, .list-group-item:disabled {\n color: #6c757d;\n pointer-events: none;\n background-color: #fff;\n}\n.list-group-item.active {\n z-index: 2;\n color: #fff;\n background-color: #0d6efd;\n border-color: #0d6efd;\n}\n.list-group-item + .list-group-item {\n border-top-width: 0;\n}\n.list-group-item + .list-group-item.active {\n margin-top: -1px;\n border-top-width: 1px;\n}\n\n.list-group-horizontal {\n flex-direction: row;\n}\n.list-group-horizontal > .list-group-item:first-child {\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n}\n.list-group-horizontal > .list-group-item:last-child {\n border-top-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n}\n.list-group-horizontal > .list-group-item.active {\n margin-top: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item {\n border-top-width: 1px;\n border-left-width: 0;\n}\n.list-group-horizontal > .list-group-item + .list-group-item.active {\n margin-left: -1px;\n border-left-width: 1px;\n}\n\n@media (min-width: 576px) {\n .list-group-horizontal-sm {\n flex-direction: row;\n }\n .list-group-horizontal-sm > .list-group-item:first-child {\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item:last-child {\n border-top-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-sm > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item {\n border-top-width: 1px;\n border-left-width: 0;\n }\n .list-group-horizontal-sm > .list-group-item + .list-group-item.active {\n margin-left: -1px;\n border-left-width: 1px;\n }\n}\n@media (min-width: 768px) {\n .list-group-horizontal-md {\n flex-direction: row;\n }\n .list-group-horizontal-md > .list-group-item:first-child {\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item:last-child {\n border-top-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-md > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item {\n border-top-width: 1px;\n border-left-width: 0;\n }\n .list-group-horizontal-md > .list-group-item + .list-group-item.active {\n margin-left: -1px;\n border-left-width: 1px;\n }\n}\n@media (min-width: 992px) {\n .list-group-horizontal-lg {\n flex-direction: row;\n }\n .list-group-horizontal-lg > .list-group-item:first-child {\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item:last-child {\n border-top-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-lg > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item {\n border-top-width: 1px;\n border-left-width: 0;\n }\n .list-group-horizontal-lg > .list-group-item + .list-group-item.active {\n margin-left: -1px;\n border-left-width: 1px;\n }\n}\n@media (min-width: 1200px) {\n .list-group-horizontal-xl {\n flex-direction: row;\n }\n .list-group-horizontal-xl > .list-group-item:first-child {\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item:last-child {\n border-top-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item {\n border-top-width: 1px;\n border-left-width: 0;\n }\n .list-group-horizontal-xl > .list-group-item + .list-group-item.active {\n margin-left: -1px;\n border-left-width: 1px;\n }\n}\n@media (min-width: 1400px) {\n .list-group-horizontal-xxl {\n flex-direction: row;\n }\n .list-group-horizontal-xxl > .list-group-item:first-child {\n border-bottom-left-radius: 0.25rem;\n border-top-right-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item:last-child {\n border-top-right-radius: 0.25rem;\n border-bottom-left-radius: 0;\n }\n .list-group-horizontal-xxl > .list-group-item.active {\n margin-top: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item {\n border-top-width: 1px;\n border-left-width: 0;\n }\n .list-group-horizontal-xxl > .list-group-item + .list-group-item.active {\n margin-left: -1px;\n border-left-width: 1px;\n }\n}\n.list-group-flush {\n border-radius: 0;\n}\n.list-group-flush > .list-group-item {\n border-width: 0 0 1px;\n}\n.list-group-flush > .list-group-item:last-child {\n border-bottom-width: 0;\n}\n\n.list-group-item-primary {\n color: #084298;\n background-color: #cfe2ff;\n}\n.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {\n color: #084298;\n background-color: #bacbe6;\n}\n.list-group-item-primary.list-group-item-action.active {\n color: #fff;\n background-color: #084298;\n border-color: #084298;\n}\n\n.list-group-item-secondary {\n color: #41464b;\n background-color: #e2e3e5;\n}\n.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {\n color: #41464b;\n background-color: #cbccce;\n}\n.list-group-item-secondary.list-group-item-action.active {\n color: #fff;\n background-color: #41464b;\n border-color: #41464b;\n}\n\n.list-group-item-success {\n color: #0f5132;\n background-color: #d1e7dd;\n}\n.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {\n color: #0f5132;\n background-color: #bcd0c7;\n}\n.list-group-item-success.list-group-item-action.active {\n color: #fff;\n background-color: #0f5132;\n border-color: #0f5132;\n}\n\n.list-group-item-info {\n color: #055160;\n background-color: #cff4fc;\n}\n.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {\n color: #055160;\n background-color: #badce3;\n}\n.list-group-item-info.list-group-item-action.active {\n color: #fff;\n background-color: #055160;\n border-color: #055160;\n}\n\n.list-group-item-warning {\n color: #664d03;\n background-color: #fff3cd;\n}\n.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {\n color: #664d03;\n background-color: #e6dbb9;\n}\n.list-group-item-warning.list-group-item-action.active {\n color: #fff;\n background-color: #664d03;\n border-color: #664d03;\n}\n\n.list-group-item-danger {\n color: #842029;\n background-color: #f8d7da;\n}\n.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {\n color: #842029;\n background-color: #dfc2c4;\n}\n.list-group-item-danger.list-group-item-action.active {\n color: #fff;\n background-color: #842029;\n border-color: #842029;\n}\n\n.list-group-item-light {\n color: #636464;\n background-color: #fefefe;\n}\n.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {\n color: #636464;\n background-color: #e5e5e5;\n}\n.list-group-item-light.list-group-item-action.active {\n color: #fff;\n background-color: #636464;\n border-color: #636464;\n}\n\n.list-group-item-dark {\n color: #141619;\n background-color: #d3d3d4;\n}\n.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {\n color: #141619;\n background-color: #bebebf;\n}\n.list-group-item-dark.list-group-item-action.active {\n color: #fff;\n background-color: #141619;\n border-color: #141619;\n}\n\n.btn-close {\n box-sizing: content-box;\n width: 1em;\n height: 1em;\n padding: 0.25em 0.25em;\n color: #000;\n background: transparent url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e\") center/1em auto no-repeat;\n border: 0;\n border-radius: 0.25rem;\n opacity: 0.5;\n}\n.btn-close:hover {\n color: #000;\n text-decoration: none;\n opacity: 0.75;\n}\n.btn-close:focus {\n outline: 0;\n box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);\n opacity: 1;\n}\n.btn-close:disabled, .btn-close.disabled {\n pointer-events: none;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n opacity: 0.25;\n}\n\n.btn-close-white {\n filter: invert(1) grayscale(100%) brightness(200%);\n}\n\n.toast {\n width: 350px;\n max-width: 100%;\n font-size: 0.875rem;\n pointer-events: auto;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.1);\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);\n border-radius: 0.25rem;\n}\n.toast.showing {\n opacity: 0;\n}\n.toast:not(.show) {\n display: none;\n}\n\n.toast-container {\n width: -webkit-max-content;\n width: -moz-max-content;\n width: max-content;\n max-width: 100%;\n pointer-events: none;\n}\n.toast-container > :not(:last-child) {\n margin-bottom: 0.75rem;\n}\n\n.toast-header {\n display: flex;\n align-items: center;\n padding: 0.5rem 0.75rem;\n color: #6c757d;\n background-color: rgba(255, 255, 255, 0.85);\n background-clip: padding-box;\n border-bottom: 1px solid rgba(0, 0, 0, 0.05);\n border-top-left-radius: calc(0.25rem - 1px);\n border-top-right-radius: calc(0.25rem - 1px);\n}\n.toast-header .btn-close {\n margin-right: -0.375rem;\n margin-left: 0.75rem;\n}\n\n.toast-body {\n padding: 0.75rem;\n word-wrap: break-word;\n}\n\n.modal {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1055;\n display: none;\n width: 100%;\n height: 100%;\n overflow-x: hidden;\n overflow-y: auto;\n outline: 0;\n}\n\n.modal-dialog {\n position: relative;\n width: auto;\n margin: 0.5rem;\n pointer-events: none;\n}\n.modal.fade .modal-dialog {\n transition: transform 0.3s ease-out;\n transform: translate(0, -50px);\n}\n@media (prefers-reduced-motion: reduce) {\n .modal.fade .modal-dialog {\n transition: none;\n }\n}\n.modal.show .modal-dialog {\n transform: none;\n}\n.modal.modal-static .modal-dialog {\n transform: scale(1.02);\n}\n\n.modal-dialog-scrollable {\n height: calc(100% - 1rem);\n}\n.modal-dialog-scrollable .modal-content {\n max-height: 100%;\n overflow: hidden;\n}\n.modal-dialog-scrollable .modal-body {\n overflow-y: auto;\n}\n\n.modal-dialog-centered {\n display: flex;\n align-items: center;\n min-height: calc(100% - 1rem);\n}\n\n.modal-content {\n position: relative;\n display: flex;\n flex-direction: column;\n width: 100%;\n pointer-events: auto;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n outline: 0;\n}\n\n.modal-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1050;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n.modal-backdrop.fade {\n opacity: 0;\n}\n.modal-backdrop.show {\n opacity: 0.5;\n}\n\n.modal-header {\n display: flex;\n flex-shrink: 0;\n align-items: center;\n justify-content: space-between;\n padding: 1rem 1rem;\n border-bottom: 1px solid #dee2e6;\n border-top-left-radius: calc(0.3rem - 1px);\n border-top-right-radius: calc(0.3rem - 1px);\n}\n.modal-header .btn-close {\n padding: 0.5rem 0.5rem;\n margin: -0.5rem -0.5rem -0.5rem auto;\n}\n\n.modal-title {\n margin-bottom: 0;\n line-height: 1.5;\n}\n\n.modal-body {\n position: relative;\n flex: 1 1 auto;\n padding: 1rem;\n}\n\n.modal-footer {\n display: flex;\n flex-wrap: wrap;\n flex-shrink: 0;\n align-items: center;\n justify-content: flex-end;\n padding: 0.75rem;\n border-top: 1px solid #dee2e6;\n border-bottom-right-radius: calc(0.3rem - 1px);\n border-bottom-left-radius: calc(0.3rem - 1px);\n}\n.modal-footer > * {\n margin: 0.25rem;\n}\n\n@media (min-width: 576px) {\n .modal-dialog {\n max-width: 500px;\n margin: 1.75rem auto;\n }\n\n .modal-dialog-scrollable {\n height: calc(100% - 3.5rem);\n }\n\n .modal-dialog-centered {\n min-height: calc(100% - 3.5rem);\n }\n\n .modal-sm {\n max-width: 300px;\n }\n}\n@media (min-width: 992px) {\n .modal-lg,\n.modal-xl {\n max-width: 800px;\n }\n}\n@media (min-width: 1200px) {\n .modal-xl {\n max-width: 1140px;\n }\n}\n.modal-fullscreen {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n}\n.modal-fullscreen .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n}\n.modal-fullscreen .modal-header {\n border-radius: 0;\n}\n.modal-fullscreen .modal-body {\n overflow-y: auto;\n}\n.modal-fullscreen .modal-footer {\n border-radius: 0;\n}\n\n@media (max-width: 575.98px) {\n .modal-fullscreen-sm-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-sm-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-header {\n border-radius: 0;\n }\n .modal-fullscreen-sm-down .modal-body {\n overflow-y: auto;\n }\n .modal-fullscreen-sm-down .modal-footer {\n border-radius: 0;\n }\n}\n@media (max-width: 767.98px) {\n .modal-fullscreen-md-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-md-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-header {\n border-radius: 0;\n }\n .modal-fullscreen-md-down .modal-body {\n overflow-y: auto;\n }\n .modal-fullscreen-md-down .modal-footer {\n border-radius: 0;\n }\n}\n@media (max-width: 991.98px) {\n .modal-fullscreen-lg-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-lg-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-header {\n border-radius: 0;\n }\n .modal-fullscreen-lg-down .modal-body {\n overflow-y: auto;\n }\n .modal-fullscreen-lg-down .modal-footer {\n border-radius: 0;\n }\n}\n@media (max-width: 1199.98px) {\n .modal-fullscreen-xl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-header {\n border-radius: 0;\n }\n .modal-fullscreen-xl-down .modal-body {\n overflow-y: auto;\n }\n .modal-fullscreen-xl-down .modal-footer {\n border-radius: 0;\n }\n}\n@media (max-width: 1399.98px) {\n .modal-fullscreen-xxl-down {\n width: 100vw;\n max-width: none;\n height: 100%;\n margin: 0;\n }\n .modal-fullscreen-xxl-down .modal-content {\n height: 100%;\n border: 0;\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-header {\n border-radius: 0;\n }\n .modal-fullscreen-xxl-down .modal-body {\n overflow-y: auto;\n }\n .modal-fullscreen-xxl-down .modal-footer {\n border-radius: 0;\n }\n}\n.tooltip {\n position: absolute;\n z-index: 1080;\n display: block;\n margin: 0;\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n opacity: 0;\n}\n.tooltip.show {\n opacity: 0.9;\n}\n.tooltip .tooltip-arrow {\n position: absolute;\n display: block;\n width: 0.8rem;\n height: 0.4rem;\n}\n.tooltip .tooltip-arrow::before {\n position: absolute;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-tooltip-top, .bs-tooltip-auto[data-popper-placement^=top] {\n padding: 0.4rem 0;\n}\n.bs-tooltip-top .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow {\n bottom: 0;\n}\n.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=top] .tooltip-arrow::before {\n top: -1px;\n border-width: 0.4rem 0.4rem 0;\n border-top-color: #000;\n}\n\n.bs-tooltip-end, .bs-tooltip-auto[data-popper-placement^=right] {\n padding: 0 0.4rem;\n}\n.bs-tooltip-end .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow {\n left: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=right] .tooltip-arrow::before {\n right: -1px;\n border-width: 0.4rem 0.4rem 0.4rem 0;\n border-right-color: #000;\n}\n\n.bs-tooltip-bottom, .bs-tooltip-auto[data-popper-placement^=bottom] {\n padding: 0.4rem 0;\n}\n.bs-tooltip-bottom .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow {\n top: 0;\n}\n.bs-tooltip-bottom .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=bottom] .tooltip-arrow::before {\n bottom: -1px;\n border-width: 0 0.4rem 0.4rem;\n border-bottom-color: #000;\n}\n\n.bs-tooltip-start, .bs-tooltip-auto[data-popper-placement^=left] {\n padding: 0 0.4rem;\n}\n.bs-tooltip-start .tooltip-arrow, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow {\n right: 0;\n width: 0.4rem;\n height: 0.8rem;\n}\n.bs-tooltip-start .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^=left] .tooltip-arrow::before {\n left: -1px;\n border-width: 0.4rem 0 0.4rem 0.4rem;\n border-left-color: #000;\n}\n\n.tooltip-inner {\n max-width: 200px;\n padding: 0.25rem 0.5rem;\n color: #fff;\n text-align: center;\n background-color: #000;\n border-radius: 0.25rem;\n}\n\n.popover {\n position: absolute;\n top: 0;\n left: 0 /* rtl:ignore */;\n z-index: 1070;\n display: block;\n max-width: 276px;\n font-family: var(--bs-font-sans-serif);\n font-style: normal;\n font-weight: 400;\n line-height: 1.5;\n text-align: left;\n text-align: start;\n text-decoration: none;\n text-shadow: none;\n text-transform: none;\n letter-spacing: normal;\n word-break: normal;\n word-spacing: normal;\n white-space: normal;\n line-break: auto;\n font-size: 0.875rem;\n word-wrap: break-word;\n background-color: #fff;\n background-clip: padding-box;\n border: 1px solid rgba(0, 0, 0, 0.2);\n border-radius: 0.3rem;\n}\n.popover .popover-arrow {\n position: absolute;\n display: block;\n width: 1rem;\n height: 0.5rem;\n}\n.popover .popover-arrow::before, .popover .popover-arrow::after {\n position: absolute;\n display: block;\n content: \"\";\n border-color: transparent;\n border-style: solid;\n}\n\n.bs-popover-top > .popover-arrow, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow {\n bottom: calc(-0.5rem - 1px);\n}\n.bs-popover-top > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::before {\n bottom: 0;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: rgba(0, 0, 0, 0.25);\n}\n.bs-popover-top > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=top] > .popover-arrow::after {\n bottom: 1px;\n border-width: 0.5rem 0.5rem 0;\n border-top-color: #fff;\n}\n\n.bs-popover-end > .popover-arrow, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow {\n left: calc(-0.5rem - 1px);\n width: 0.5rem;\n height: 1rem;\n}\n.bs-popover-end > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::before {\n left: 0;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: rgba(0, 0, 0, 0.25);\n}\n.bs-popover-end > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=right] > .popover-arrow::after {\n left: 1px;\n border-width: 0.5rem 0.5rem 0.5rem 0;\n border-right-color: #fff;\n}\n\n.bs-popover-bottom > .popover-arrow, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow {\n top: calc(-0.5rem - 1px);\n}\n.bs-popover-bottom > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::before {\n top: 0;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: rgba(0, 0, 0, 0.25);\n}\n.bs-popover-bottom > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=bottom] > .popover-arrow::after {\n top: 1px;\n border-width: 0 0.5rem 0.5rem 0.5rem;\n border-bottom-color: #fff;\n}\n.bs-popover-bottom .popover-header::before, .bs-popover-auto[data-popper-placement^=bottom] .popover-header::before {\n position: absolute;\n top: 0;\n left: 50%;\n display: block;\n width: 1rem;\n margin-left: -0.5rem;\n content: \"\";\n border-bottom: 1px solid #f0f0f0;\n}\n\n.bs-popover-start > .popover-arrow, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow {\n right: calc(-0.5rem - 1px);\n width: 0.5rem;\n height: 1rem;\n}\n.bs-popover-start > .popover-arrow::before, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::before {\n right: 0;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: rgba(0, 0, 0, 0.25);\n}\n.bs-popover-start > .popover-arrow::after, .bs-popover-auto[data-popper-placement^=left] > .popover-arrow::after {\n right: 1px;\n border-width: 0.5rem 0 0.5rem 0.5rem;\n border-left-color: #fff;\n}\n\n.popover-header {\n padding: 0.5rem 1rem;\n margin-bottom: 0;\n font-size: 1rem;\n background-color: #f0f0f0;\n border-bottom: 1px solid rgba(0, 0, 0, 0.2);\n border-top-left-radius: calc(0.3rem - 1px);\n border-top-right-radius: calc(0.3rem - 1px);\n}\n.popover-header:empty {\n display: none;\n}\n\n.popover-body {\n padding: 1rem 1rem;\n color: #212529;\n}\n\n.carousel {\n position: relative;\n}\n\n.carousel.pointer-event {\n touch-action: pan-y;\n}\n\n.carousel-inner {\n position: relative;\n width: 100%;\n overflow: hidden;\n}\n.carousel-inner::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.carousel-item {\n position: relative;\n display: none;\n float: left;\n width: 100%;\n margin-right: -100%;\n -webkit-backface-visibility: hidden;\n backface-visibility: hidden;\n transition: transform 0.6s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-item {\n transition: none;\n }\n}\n\n.carousel-item.active,\n.carousel-item-next,\n.carousel-item-prev {\n display: block;\n}\n\n/* rtl:begin:ignore */\n.carousel-item-next:not(.carousel-item-start),\n.active.carousel-item-end {\n transform: translateX(100%);\n}\n\n.carousel-item-prev:not(.carousel-item-end),\n.active.carousel-item-start {\n transform: translateX(-100%);\n}\n\n/* rtl:end:ignore */\n.carousel-fade .carousel-item {\n opacity: 0;\n transition-property: opacity;\n transform: none;\n}\n.carousel-fade .carousel-item.active,\n.carousel-fade .carousel-item-next.carousel-item-start,\n.carousel-fade .carousel-item-prev.carousel-item-end {\n z-index: 1;\n opacity: 1;\n}\n.carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n z-index: 0;\n opacity: 0;\n transition: opacity 0s 0.6s;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-fade .active.carousel-item-start,\n.carousel-fade .active.carousel-item-end {\n transition: none;\n }\n}\n\n.carousel-control-prev,\n.carousel-control-next {\n position: absolute;\n top: 0;\n bottom: 0;\n z-index: 1;\n display: flex;\n align-items: center;\n justify-content: center;\n width: 15%;\n padding: 0;\n color: #fff;\n text-align: center;\n background: none;\n border: 0;\n opacity: 0.5;\n transition: opacity 0.15s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-control-prev,\n.carousel-control-next {\n transition: none;\n }\n}\n.carousel-control-prev:hover, .carousel-control-prev:focus,\n.carousel-control-next:hover,\n.carousel-control-next:focus {\n color: #fff;\n text-decoration: none;\n outline: 0;\n opacity: 0.9;\n}\n\n.carousel-control-prev {\n left: 0;\n}\n\n.carousel-control-next {\n right: 0;\n}\n\n.carousel-control-prev-icon,\n.carousel-control-next-icon {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n background-repeat: no-repeat;\n background-position: 50%;\n background-size: 100% 100%;\n}\n\n/* rtl:options: {\n \"autoRename\": true,\n \"stringMap\":[ {\n \"name\" : \"prev-next\",\n \"search\" : \"prev\",\n \"replace\" : \"next\"\n } ]\n} */\n.carousel-control-prev-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3e%3c/svg%3e\");\n}\n\n.carousel-control-next-icon {\n background-image: url(\"data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23fff'%3e%3cpath d='M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e\");\n}\n\n.carousel-indicators {\n position: absolute;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 2;\n display: flex;\n justify-content: center;\n padding: 0;\n margin-right: 15%;\n margin-bottom: 1rem;\n margin-left: 15%;\n list-style: none;\n}\n.carousel-indicators [data-bs-target] {\n box-sizing: content-box;\n flex: 0 1 auto;\n width: 30px;\n height: 3px;\n padding: 0;\n margin-right: 3px;\n margin-left: 3px;\n text-indent: -999px;\n cursor: pointer;\n background-color: #fff;\n background-clip: padding-box;\n border: 0;\n border-top: 10px solid transparent;\n border-bottom: 10px solid transparent;\n opacity: 0.5;\n transition: opacity 0.6s ease;\n}\n@media (prefers-reduced-motion: reduce) {\n .carousel-indicators [data-bs-target] {\n transition: none;\n }\n}\n.carousel-indicators .active {\n opacity: 1;\n}\n\n.carousel-caption {\n position: absolute;\n right: 15%;\n bottom: 1.25rem;\n left: 15%;\n padding-top: 1.25rem;\n padding-bottom: 1.25rem;\n color: #fff;\n text-align: center;\n}\n\n.carousel-dark .carousel-control-prev-icon,\n.carousel-dark .carousel-control-next-icon {\n filter: invert(1) grayscale(100);\n}\n.carousel-dark .carousel-indicators [data-bs-target] {\n background-color: #000;\n}\n.carousel-dark .carousel-caption {\n color: #000;\n}\n\n@-webkit-keyframes spinner-border {\n to {\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n\n@keyframes spinner-border {\n to {\n transform: rotate(360deg) /* rtl:ignore */;\n }\n}\n.spinner-border {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: -0.125em;\n border: 0.25em solid currentColor;\n border-right-color: transparent;\n border-radius: 50%;\n -webkit-animation: 0.75s linear infinite spinner-border;\n animation: 0.75s linear infinite spinner-border;\n}\n\n.spinner-border-sm {\n width: 1rem;\n height: 1rem;\n border-width: 0.2em;\n}\n\n@-webkit-keyframes spinner-grow {\n 0% {\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n transform: none;\n }\n}\n\n@keyframes spinner-grow {\n 0% {\n transform: scale(0);\n }\n 50% {\n opacity: 1;\n transform: none;\n }\n}\n.spinner-grow {\n display: inline-block;\n width: 2rem;\n height: 2rem;\n vertical-align: -0.125em;\n background-color: currentColor;\n border-radius: 50%;\n opacity: 0;\n -webkit-animation: 0.75s linear infinite spinner-grow;\n animation: 0.75s linear infinite spinner-grow;\n}\n\n.spinner-grow-sm {\n width: 1rem;\n height: 1rem;\n}\n\n@media (prefers-reduced-motion: reduce) {\n .spinner-border,\n.spinner-grow {\n -webkit-animation-duration: 1.5s;\n animation-duration: 1.5s;\n }\n}\n.offcanvas {\n position: fixed;\n bottom: 0;\n z-index: 1045;\n display: flex;\n flex-direction: column;\n max-width: 100%;\n visibility: hidden;\n background-color: #fff;\n background-clip: padding-box;\n outline: 0;\n transition: transform 0.3s ease-in-out;\n}\n@media (prefers-reduced-motion: reduce) {\n .offcanvas {\n transition: none;\n }\n}\n\n.offcanvas-backdrop {\n position: fixed;\n top: 0;\n left: 0;\n z-index: 1040;\n width: 100vw;\n height: 100vh;\n background-color: #000;\n}\n.offcanvas-backdrop.fade {\n opacity: 0;\n}\n.offcanvas-backdrop.show {\n opacity: 0.5;\n}\n\n.offcanvas-header {\n display: flex;\n align-items: center;\n justify-content: space-between;\n padding: 1rem 1rem;\n}\n.offcanvas-header .btn-close {\n padding: 0.5rem 0.5rem;\n margin-top: -0.5rem;\n margin-right: -0.5rem;\n margin-bottom: -0.5rem;\n}\n\n.offcanvas-title {\n margin-bottom: 0;\n line-height: 1.5;\n}\n\n.offcanvas-body {\n flex-grow: 1;\n padding: 1rem 1rem;\n overflow-y: auto;\n}\n\n.offcanvas-start {\n top: 0;\n left: 0;\n width: 400px;\n border-right: 1px solid rgba(0, 0, 0, 0.2);\n transform: translateX(-100%);\n}\n\n.offcanvas-end {\n top: 0;\n right: 0;\n width: 400px;\n border-left: 1px solid rgba(0, 0, 0, 0.2);\n transform: translateX(100%);\n}\n\n.offcanvas-top {\n top: 0;\n right: 0;\n left: 0;\n height: 30vh;\n max-height: 100%;\n border-bottom: 1px solid rgba(0, 0, 0, 0.2);\n transform: translateY(-100%);\n}\n\n.offcanvas-bottom {\n right: 0;\n left: 0;\n height: 30vh;\n max-height: 100%;\n border-top: 1px solid rgba(0, 0, 0, 0.2);\n transform: translateY(100%);\n}\n\n.offcanvas.show {\n transform: none;\n}\n\n.placeholder {\n display: inline-block;\n min-height: 1em;\n vertical-align: middle;\n cursor: wait;\n background-color: currentColor;\n opacity: 0.5;\n}\n.placeholder.btn::before {\n display: inline-block;\n content: \"\";\n}\n\n.placeholder-xs {\n min-height: 0.6em;\n}\n\n.placeholder-sm {\n min-height: 0.8em;\n}\n\n.placeholder-lg {\n min-height: 1.2em;\n}\n\n.placeholder-glow .placeholder {\n -webkit-animation: placeholder-glow 2s ease-in-out infinite;\n animation: placeholder-glow 2s ease-in-out infinite;\n}\n\n@-webkit-keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n\n@keyframes placeholder-glow {\n 50% {\n opacity: 0.2;\n }\n}\n.placeholder-wave {\n -webkit-mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n mask-image: linear-gradient(130deg, #000 55%, rgba(0, 0, 0, 0.8) 75%, #000 95%);\n -webkit-mask-size: 200% 100%;\n mask-size: 200% 100%;\n -webkit-animation: placeholder-wave 2s linear infinite;\n animation: placeholder-wave 2s linear infinite;\n}\n\n@-webkit-keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n\n@keyframes placeholder-wave {\n 100% {\n -webkit-mask-position: -200% 0%;\n mask-position: -200% 0%;\n }\n}\n.clearfix::after {\n display: block;\n clear: both;\n content: \"\";\n}\n\n.link-primary {\n color: #0d6efd;\n}\n.link-primary:hover, .link-primary:focus {\n color: #0a58ca;\n}\n\n.link-secondary {\n color: #6c757d;\n}\n.link-secondary:hover, .link-secondary:focus {\n color: #565e64;\n}\n\n.link-success {\n color: #198754;\n}\n.link-success:hover, .link-success:focus {\n color: #146c43;\n}\n\n.link-info {\n color: #0dcaf0;\n}\n.link-info:hover, .link-info:focus {\n color: #3dd5f3;\n}\n\n.link-warning {\n color: #ffc107;\n}\n.link-warning:hover, .link-warning:focus {\n color: #ffcd39;\n}\n\n.link-danger {\n color: #dc3545;\n}\n.link-danger:hover, .link-danger:focus {\n color: #b02a37;\n}\n\n.link-light {\n color: #f8f9fa;\n}\n.link-light:hover, .link-light:focus {\n color: #f9fafb;\n}\n\n.link-dark {\n color: #212529;\n}\n.link-dark:hover, .link-dark:focus {\n color: #1a1e21;\n}\n\n.ratio {\n position: relative;\n width: 100%;\n}\n.ratio::before {\n display: block;\n padding-top: var(--bs-aspect-ratio);\n content: \"\";\n}\n.ratio > * {\n position: absolute;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n}\n\n.ratio-1x1 {\n --bs-aspect-ratio: 100%;\n}\n\n.ratio-4x3 {\n --bs-aspect-ratio: 75%;\n}\n\n.ratio-16x9 {\n --bs-aspect-ratio: 56.25%;\n}\n\n.ratio-21x9 {\n --bs-aspect-ratio: 42.8571428571%;\n}\n\n.fixed-top {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n z-index: 1030;\n}\n\n.fixed-bottom {\n position: fixed;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1030;\n}\n\n.sticky-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n}\n\n@media (min-width: 576px) {\n .sticky-sm-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 768px) {\n .sticky-md-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 992px) {\n .sticky-lg-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1200px) {\n .sticky-xl-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n@media (min-width: 1400px) {\n .sticky-xxl-top {\n position: -webkit-sticky;\n position: sticky;\n top: 0;\n z-index: 1020;\n }\n}\n.hstack {\n display: flex;\n flex-direction: row;\n align-items: center;\n align-self: stretch;\n}\n\n.vstack {\n display: flex;\n flex: 1 1 auto;\n flex-direction: column;\n align-self: stretch;\n}\n\n.visually-hidden,\n.visually-hidden-focusable:not(:focus):not(:focus-within) {\n position: absolute !important;\n width: 1px !important;\n height: 1px !important;\n padding: 0 !important;\n margin: -1px !important;\n overflow: hidden !important;\n clip: rect(0, 0, 0, 0) !important;\n white-space: nowrap !important;\n border: 0 !important;\n}\n\n.stretched-link::after {\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n z-index: 1;\n content: \"\";\n}\n\n.text-truncate {\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.vr {\n display: inline-block;\n align-self: stretch;\n width: 1px;\n min-height: 1em;\n background-color: currentColor;\n opacity: 0.25;\n}\n\n.align-baseline {\n vertical-align: baseline !important;\n}\n\n.align-top {\n vertical-align: top !important;\n}\n\n.align-middle {\n vertical-align: middle !important;\n}\n\n.align-bottom {\n vertical-align: bottom !important;\n}\n\n.align-text-bottom {\n vertical-align: text-bottom !important;\n}\n\n.align-text-top {\n vertical-align: text-top !important;\n}\n\n.float-start {\n float: left !important;\n}\n\n.float-end {\n float: right !important;\n}\n\n.float-none {\n float: none !important;\n}\n\n.opacity-0 {\n opacity: 0 !important;\n}\n\n.opacity-25 {\n opacity: 0.25 !important;\n}\n\n.opacity-50 {\n opacity: 0.5 !important;\n}\n\n.opacity-75 {\n opacity: 0.75 !important;\n}\n\n.opacity-100 {\n opacity: 1 !important;\n}\n\n.overflow-auto {\n overflow: auto !important;\n}\n\n.overflow-hidden {\n overflow: hidden !important;\n}\n\n.overflow-visible {\n overflow: visible !important;\n}\n\n.overflow-scroll {\n overflow: scroll !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-grid {\n display: grid !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n.d-none {\n display: none !important;\n}\n\n.shadow {\n box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;\n}\n\n.shadow-sm {\n box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;\n}\n\n.shadow-lg {\n box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;\n}\n\n.shadow-none {\n box-shadow: none !important;\n}\n\n.position-static {\n position: static !important;\n}\n\n.position-relative {\n position: relative !important;\n}\n\n.position-absolute {\n position: absolute !important;\n}\n\n.position-fixed {\n position: fixed !important;\n}\n\n.position-sticky {\n position: -webkit-sticky !important;\n position: sticky !important;\n}\n\n.top-0 {\n top: 0 !important;\n}\n\n.top-50 {\n top: 50% !important;\n}\n\n.top-100 {\n top: 100% !important;\n}\n\n.bottom-0 {\n bottom: 0 !important;\n}\n\n.bottom-50 {\n bottom: 50% !important;\n}\n\n.bottom-100 {\n bottom: 100% !important;\n}\n\n.start-0 {\n left: 0 !important;\n}\n\n.start-50 {\n left: 50% !important;\n}\n\n.start-100 {\n left: 100% !important;\n}\n\n.end-0 {\n right: 0 !important;\n}\n\n.end-50 {\n right: 50% !important;\n}\n\n.end-100 {\n right: 100% !important;\n}\n\n.translate-middle {\n transform: translate(-50%, -50%) !important;\n}\n\n.translate-middle-x {\n transform: translateX(-50%) !important;\n}\n\n.translate-middle-y {\n transform: translateY(-50%) !important;\n}\n\n.border {\n border: 1px solid #dee2e6 !important;\n}\n\n.border-0 {\n border: 0 !important;\n}\n\n.border-top {\n border-top: 1px solid #dee2e6 !important;\n}\n\n.border-top-0 {\n border-top: 0 !important;\n}\n\n.border-end {\n border-right: 1px solid #dee2e6 !important;\n}\n\n.border-end-0 {\n border-right: 0 !important;\n}\n\n.border-bottom {\n border-bottom: 1px solid #dee2e6 !important;\n}\n\n.border-bottom-0 {\n border-bottom: 0 !important;\n}\n\n.border-start {\n border-left: 1px solid #dee2e6 !important;\n}\n\n.border-start-0 {\n border-left: 0 !important;\n}\n\n.border-primary {\n border-color: #0d6efd !important;\n}\n\n.border-secondary {\n border-color: #6c757d !important;\n}\n\n.border-success {\n border-color: #198754 !important;\n}\n\n.border-info {\n border-color: #0dcaf0 !important;\n}\n\n.border-warning {\n border-color: #ffc107 !important;\n}\n\n.border-danger {\n border-color: #dc3545 !important;\n}\n\n.border-light {\n border-color: #f8f9fa !important;\n}\n\n.border-dark {\n border-color: #212529 !important;\n}\n\n.border-white {\n border-color: #fff !important;\n}\n\n.border-1 {\n border-width: 1px !important;\n}\n\n.border-2 {\n border-width: 2px !important;\n}\n\n.border-3 {\n border-width: 3px !important;\n}\n\n.border-4 {\n border-width: 4px !important;\n}\n\n.border-5 {\n border-width: 5px !important;\n}\n\n.w-25 {\n width: 25% !important;\n}\n\n.w-50 {\n width: 50% !important;\n}\n\n.w-75 {\n width: 75% !important;\n}\n\n.w-100 {\n width: 100% !important;\n}\n\n.w-auto {\n width: auto !important;\n}\n\n.mw-100 {\n max-width: 100% !important;\n}\n\n.vw-100 {\n width: 100vw !important;\n}\n\n.min-vw-100 {\n min-width: 100vw !important;\n}\n\n.h-25 {\n height: 25% !important;\n}\n\n.h-50 {\n height: 50% !important;\n}\n\n.h-75 {\n height: 75% !important;\n}\n\n.h-100 {\n height: 100% !important;\n}\n\n.h-auto {\n height: auto !important;\n}\n\n.mh-100 {\n max-height: 100% !important;\n}\n\n.vh-100 {\n height: 100vh !important;\n}\n\n.min-vh-100 {\n min-height: 100vh !important;\n}\n\n.flex-fill {\n flex: 1 1 auto !important;\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-grow-0 {\n flex-grow: 0 !important;\n}\n\n.flex-grow-1 {\n flex-grow: 1 !important;\n}\n\n.flex-shrink-0 {\n flex-shrink: 0 !important;\n}\n\n.flex-shrink-1 {\n flex-shrink: 1 !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.gap-0 {\n gap: 0 !important;\n}\n\n.gap-1 {\n gap: 0.25rem !important;\n}\n\n.gap-2 {\n gap: 0.5rem !important;\n}\n\n.gap-3 {\n gap: 1rem !important;\n}\n\n.gap-4 {\n gap: 1.5rem !important;\n}\n\n.gap-5 {\n gap: 3rem !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.justify-content-evenly {\n justify-content: space-evenly !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n.order-first {\n order: -1 !important;\n}\n\n.order-0 {\n order: 0 !important;\n}\n\n.order-1 {\n order: 1 !important;\n}\n\n.order-2 {\n order: 2 !important;\n}\n\n.order-3 {\n order: 3 !important;\n}\n\n.order-4 {\n order: 4 !important;\n}\n\n.order-5 {\n order: 5 !important;\n}\n\n.order-last {\n order: 6 !important;\n}\n\n.m-0 {\n margin: 0 !important;\n}\n\n.m-1 {\n margin: 0.25rem !important;\n}\n\n.m-2 {\n margin: 0.5rem !important;\n}\n\n.m-3 {\n margin: 1rem !important;\n}\n\n.m-4 {\n margin: 1.5rem !important;\n}\n\n.m-5 {\n margin: 3rem !important;\n}\n\n.m-auto {\n margin: auto !important;\n}\n\n.mx-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n}\n\n.mx-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n}\n\n.mx-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n}\n\n.mx-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n}\n\n.mx-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n}\n\n.mx-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n}\n\n.mx-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n}\n\n.my-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n}\n\n.my-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n}\n\n.my-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n}\n\n.my-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n}\n\n.my-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n}\n\n.my-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n}\n\n.my-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n}\n\n.mt-0 {\n margin-top: 0 !important;\n}\n\n.mt-1 {\n margin-top: 0.25rem !important;\n}\n\n.mt-2 {\n margin-top: 0.5rem !important;\n}\n\n.mt-3 {\n margin-top: 1rem !important;\n}\n\n.mt-4 {\n margin-top: 1.5rem !important;\n}\n\n.mt-5 {\n margin-top: 3rem !important;\n}\n\n.mt-auto {\n margin-top: auto !important;\n}\n\n.me-0 {\n margin-right: 0 !important;\n}\n\n.me-1 {\n margin-right: 0.25rem !important;\n}\n\n.me-2 {\n margin-right: 0.5rem !important;\n}\n\n.me-3 {\n margin-right: 1rem !important;\n}\n\n.me-4 {\n margin-right: 1.5rem !important;\n}\n\n.me-5 {\n margin-right: 3rem !important;\n}\n\n.me-auto {\n margin-right: auto !important;\n}\n\n.mb-0 {\n margin-bottom: 0 !important;\n}\n\n.mb-1 {\n margin-bottom: 0.25rem !important;\n}\n\n.mb-2 {\n margin-bottom: 0.5rem !important;\n}\n\n.mb-3 {\n margin-bottom: 1rem !important;\n}\n\n.mb-4 {\n margin-bottom: 1.5rem !important;\n}\n\n.mb-5 {\n margin-bottom: 3rem !important;\n}\n\n.mb-auto {\n margin-bottom: auto !important;\n}\n\n.ms-0 {\n margin-left: 0 !important;\n}\n\n.ms-1 {\n margin-left: 0.25rem !important;\n}\n\n.ms-2 {\n margin-left: 0.5rem !important;\n}\n\n.ms-3 {\n margin-left: 1rem !important;\n}\n\n.ms-4 {\n margin-left: 1.5rem !important;\n}\n\n.ms-5 {\n margin-left: 3rem !important;\n}\n\n.ms-auto {\n margin-left: auto !important;\n}\n\n.p-0 {\n padding: 0 !important;\n}\n\n.p-1 {\n padding: 0.25rem !important;\n}\n\n.p-2 {\n padding: 0.5rem !important;\n}\n\n.p-3 {\n padding: 1rem !important;\n}\n\n.p-4 {\n padding: 1.5rem !important;\n}\n\n.p-5 {\n padding: 3rem !important;\n}\n\n.px-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n}\n\n.px-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n}\n\n.px-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n}\n\n.px-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n}\n\n.px-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n}\n\n.px-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n}\n\n.py-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n}\n\n.py-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n}\n\n.py-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n}\n\n.py-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n}\n\n.py-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n}\n\n.py-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n}\n\n.pt-0 {\n padding-top: 0 !important;\n}\n\n.pt-1 {\n padding-top: 0.25rem !important;\n}\n\n.pt-2 {\n padding-top: 0.5rem !important;\n}\n\n.pt-3 {\n padding-top: 1rem !important;\n}\n\n.pt-4 {\n padding-top: 1.5rem !important;\n}\n\n.pt-5 {\n padding-top: 3rem !important;\n}\n\n.pe-0 {\n padding-right: 0 !important;\n}\n\n.pe-1 {\n padding-right: 0.25rem !important;\n}\n\n.pe-2 {\n padding-right: 0.5rem !important;\n}\n\n.pe-3 {\n padding-right: 1rem !important;\n}\n\n.pe-4 {\n padding-right: 1.5rem !important;\n}\n\n.pe-5 {\n padding-right: 3rem !important;\n}\n\n.pb-0 {\n padding-bottom: 0 !important;\n}\n\n.pb-1 {\n padding-bottom: 0.25rem !important;\n}\n\n.pb-2 {\n padding-bottom: 0.5rem !important;\n}\n\n.pb-3 {\n padding-bottom: 1rem !important;\n}\n\n.pb-4 {\n padding-bottom: 1.5rem !important;\n}\n\n.pb-5 {\n padding-bottom: 3rem !important;\n}\n\n.ps-0 {\n padding-left: 0 !important;\n}\n\n.ps-1 {\n padding-left: 0.25rem !important;\n}\n\n.ps-2 {\n padding-left: 0.5rem !important;\n}\n\n.ps-3 {\n padding-left: 1rem !important;\n}\n\n.ps-4 {\n padding-left: 1.5rem !important;\n}\n\n.ps-5 {\n padding-left: 3rem !important;\n}\n\n.font-monospace {\n font-family: var(--bs-font-monospace) !important;\n}\n\n.fs-1 {\n font-size: calc(1.375rem + 1.5vw) !important;\n}\n\n.fs-2 {\n font-size: calc(1.325rem + 0.9vw) !important;\n}\n\n.fs-3 {\n font-size: calc(1.3rem + 0.6vw) !important;\n}\n\n.fs-4 {\n font-size: calc(1.275rem + 0.3vw) !important;\n}\n\n.fs-5 {\n font-size: 1.25rem !important;\n}\n\n.fs-6 {\n font-size: 1rem !important;\n}\n\n.fst-italic {\n font-style: italic !important;\n}\n\n.fst-normal {\n font-style: normal !important;\n}\n\n.fw-light {\n font-weight: 300 !important;\n}\n\n.fw-lighter {\n font-weight: lighter !important;\n}\n\n.fw-normal {\n font-weight: 400 !important;\n}\n\n.fw-bold {\n font-weight: 700 !important;\n}\n\n.fw-bolder {\n font-weight: bolder !important;\n}\n\n.lh-1 {\n line-height: 1 !important;\n}\n\n.lh-sm {\n line-height: 1.25 !important;\n}\n\n.lh-base {\n line-height: 1.5 !important;\n}\n\n.lh-lg {\n line-height: 2 !important;\n}\n\n.text-start {\n text-align: left !important;\n}\n\n.text-end {\n text-align: right !important;\n}\n\n.text-center {\n text-align: center !important;\n}\n\n.text-decoration-none {\n text-decoration: none !important;\n}\n\n.text-decoration-underline {\n text-decoration: underline !important;\n}\n\n.text-decoration-line-through {\n text-decoration: line-through !important;\n}\n\n.text-lowercase {\n text-transform: lowercase !important;\n}\n\n.text-uppercase {\n text-transform: uppercase !important;\n}\n\n.text-capitalize {\n text-transform: capitalize !important;\n}\n\n.text-wrap {\n white-space: normal !important;\n}\n\n.text-nowrap {\n white-space: nowrap !important;\n}\n\n/* rtl:begin:remove */\n.text-break {\n word-wrap: break-word !important;\n word-break: break-word !important;\n}\n\n/* rtl:end:remove */\n.text-primary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-primary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-secondary {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-secondary-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-success {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-success-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-info {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-info-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-warning {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-warning-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-danger {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-danger-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-light {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-light-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-dark {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-dark-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-black {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-black-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-white {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-white-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-body {\n --bs-text-opacity: 1;\n color: rgba(var(--bs-body-color-rgb), var(--bs-text-opacity)) !important;\n}\n\n.text-muted {\n --bs-text-opacity: 1;\n color: #6c757d !important;\n}\n\n.text-black-50 {\n --bs-text-opacity: 1;\n color: rgba(0, 0, 0, 0.5) !important;\n}\n\n.text-white-50 {\n --bs-text-opacity: 1;\n color: rgba(255, 255, 255, 0.5) !important;\n}\n\n.text-reset {\n --bs-text-opacity: 1;\n color: inherit !important;\n}\n\n.text-opacity-25 {\n --bs-text-opacity: 0.25;\n}\n\n.text-opacity-50 {\n --bs-text-opacity: 0.5;\n}\n\n.text-opacity-75 {\n --bs-text-opacity: 0.75;\n}\n\n.text-opacity-100 {\n --bs-text-opacity: 1;\n}\n\n.bg-primary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-primary-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-secondary {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-secondary-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-success {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-success-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-info {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-info-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-warning {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-warning-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-danger {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-danger-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-light {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-light-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-dark {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-dark-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-black {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-black-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-white {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-white-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-body {\n --bs-bg-opacity: 1;\n background-color: rgba(var(--bs-body-bg-rgb), var(--bs-bg-opacity)) !important;\n}\n\n.bg-transparent {\n --bs-bg-opacity: 1;\n background-color: transparent !important;\n}\n\n.bg-opacity-10 {\n --bs-bg-opacity: 0.1;\n}\n\n.bg-opacity-25 {\n --bs-bg-opacity: 0.25;\n}\n\n.bg-opacity-50 {\n --bs-bg-opacity: 0.5;\n}\n\n.bg-opacity-75 {\n --bs-bg-opacity: 0.75;\n}\n\n.bg-opacity-100 {\n --bs-bg-opacity: 1;\n}\n\n.bg-gradient {\n background-image: var(--bs-gradient) !important;\n}\n\n.user-select-all {\n -webkit-user-select: all !important;\n -moz-user-select: all !important;\n user-select: all !important;\n}\n\n.user-select-auto {\n -webkit-user-select: auto !important;\n -moz-user-select: auto !important;\n user-select: auto !important;\n}\n\n.user-select-none {\n -webkit-user-select: none !important;\n -moz-user-select: none !important;\n user-select: none !important;\n}\n\n.pe-none {\n pointer-events: none !important;\n}\n\n.pe-auto {\n pointer-events: auto !important;\n}\n\n.rounded {\n border-radius: 0.25rem !important;\n}\n\n.rounded-0 {\n border-radius: 0 !important;\n}\n\n.rounded-1 {\n border-radius: 0.2rem !important;\n}\n\n.rounded-2 {\n border-radius: 0.25rem !important;\n}\n\n.rounded-3 {\n border-radius: 0.3rem !important;\n}\n\n.rounded-circle {\n border-radius: 50% !important;\n}\n\n.rounded-pill {\n border-radius: 50rem !important;\n}\n\n.rounded-top {\n border-top-left-radius: 0.25rem !important;\n border-top-right-radius: 0.25rem !important;\n}\n\n.rounded-end {\n border-top-right-radius: 0.25rem !important;\n border-bottom-right-radius: 0.25rem !important;\n}\n\n.rounded-bottom {\n border-bottom-right-radius: 0.25rem !important;\n border-bottom-left-radius: 0.25rem !important;\n}\n\n.rounded-start {\n border-bottom-left-radius: 0.25rem !important;\n border-top-left-radius: 0.25rem !important;\n}\n\n.visible {\n visibility: visible !important;\n}\n\n.invisible {\n visibility: hidden !important;\n}\n\n@media (min-width: 576px) {\n .float-sm-start {\n float: left !important;\n }\n\n .float-sm-end {\n float: right !important;\n }\n\n .float-sm-none {\n float: none !important;\n }\n\n .d-sm-inline {\n display: inline !important;\n }\n\n .d-sm-inline-block {\n display: inline-block !important;\n }\n\n .d-sm-block {\n display: block !important;\n }\n\n .d-sm-grid {\n display: grid !important;\n }\n\n .d-sm-table {\n display: table !important;\n }\n\n .d-sm-table-row {\n display: table-row !important;\n }\n\n .d-sm-table-cell {\n display: table-cell !important;\n }\n\n .d-sm-flex {\n display: flex !important;\n }\n\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n\n .d-sm-none {\n display: none !important;\n }\n\n .flex-sm-fill {\n flex: 1 1 auto !important;\n }\n\n .flex-sm-row {\n flex-direction: row !important;\n }\n\n .flex-sm-column {\n flex-direction: column !important;\n }\n\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n\n .flex-sm-grow-0 {\n flex-grow: 0 !important;\n }\n\n .flex-sm-grow-1 {\n flex-grow: 1 !important;\n }\n\n .flex-sm-shrink-0 {\n flex-shrink: 0 !important;\n }\n\n .flex-sm-shrink-1 {\n flex-shrink: 1 !important;\n }\n\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n\n .gap-sm-0 {\n gap: 0 !important;\n }\n\n .gap-sm-1 {\n gap: 0.25rem !important;\n }\n\n .gap-sm-2 {\n gap: 0.5rem !important;\n }\n\n .gap-sm-3 {\n gap: 1rem !important;\n }\n\n .gap-sm-4 {\n gap: 1.5rem !important;\n }\n\n .gap-sm-5 {\n gap: 3rem !important;\n }\n\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n\n .justify-content-sm-center {\n justify-content: center !important;\n }\n\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n\n .justify-content-sm-evenly {\n justify-content: space-evenly !important;\n }\n\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n\n .align-items-sm-center {\n align-items: center !important;\n }\n\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n\n .align-content-sm-center {\n align-content: center !important;\n }\n\n .align-content-sm-between {\n align-content: space-between !important;\n }\n\n .align-content-sm-around {\n align-content: space-around !important;\n }\n\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n\n .align-self-sm-auto {\n align-self: auto !important;\n }\n\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n\n .align-self-sm-center {\n align-self: center !important;\n }\n\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n\n .order-sm-first {\n order: -1 !important;\n }\n\n .order-sm-0 {\n order: 0 !important;\n }\n\n .order-sm-1 {\n order: 1 !important;\n }\n\n .order-sm-2 {\n order: 2 !important;\n }\n\n .order-sm-3 {\n order: 3 !important;\n }\n\n .order-sm-4 {\n order: 4 !important;\n }\n\n .order-sm-5 {\n order: 5 !important;\n }\n\n .order-sm-last {\n order: 6 !important;\n }\n\n .m-sm-0 {\n margin: 0 !important;\n }\n\n .m-sm-1 {\n margin: 0.25rem !important;\n }\n\n .m-sm-2 {\n margin: 0.5rem !important;\n }\n\n .m-sm-3 {\n margin: 1rem !important;\n }\n\n .m-sm-4 {\n margin: 1.5rem !important;\n }\n\n .m-sm-5 {\n margin: 3rem !important;\n }\n\n .m-sm-auto {\n margin: auto !important;\n }\n\n .mx-sm-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n\n .mx-sm-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n\n .mx-sm-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n\n .mx-sm-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n\n .mx-sm-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n\n .mx-sm-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n\n .mx-sm-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n\n .my-sm-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n\n .my-sm-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n\n .my-sm-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n\n .my-sm-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n\n .my-sm-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n\n .my-sm-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n\n .my-sm-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n\n .mt-sm-0 {\n margin-top: 0 !important;\n }\n\n .mt-sm-1 {\n margin-top: 0.25rem !important;\n }\n\n .mt-sm-2 {\n margin-top: 0.5rem !important;\n }\n\n .mt-sm-3 {\n margin-top: 1rem !important;\n }\n\n .mt-sm-4 {\n margin-top: 1.5rem !important;\n }\n\n .mt-sm-5 {\n margin-top: 3rem !important;\n }\n\n .mt-sm-auto {\n margin-top: auto !important;\n }\n\n .me-sm-0 {\n margin-right: 0 !important;\n }\n\n .me-sm-1 {\n margin-right: 0.25rem !important;\n }\n\n .me-sm-2 {\n margin-right: 0.5rem !important;\n }\n\n .me-sm-3 {\n margin-right: 1rem !important;\n }\n\n .me-sm-4 {\n margin-right: 1.5rem !important;\n }\n\n .me-sm-5 {\n margin-right: 3rem !important;\n }\n\n .me-sm-auto {\n margin-right: auto !important;\n }\n\n .mb-sm-0 {\n margin-bottom: 0 !important;\n }\n\n .mb-sm-1 {\n margin-bottom: 0.25rem !important;\n }\n\n .mb-sm-2 {\n margin-bottom: 0.5rem !important;\n }\n\n .mb-sm-3 {\n margin-bottom: 1rem !important;\n }\n\n .mb-sm-4 {\n margin-bottom: 1.5rem !important;\n }\n\n .mb-sm-5 {\n margin-bottom: 3rem !important;\n }\n\n .mb-sm-auto {\n margin-bottom: auto !important;\n }\n\n .ms-sm-0 {\n margin-left: 0 !important;\n }\n\n .ms-sm-1 {\n margin-left: 0.25rem !important;\n }\n\n .ms-sm-2 {\n margin-left: 0.5rem !important;\n }\n\n .ms-sm-3 {\n margin-left: 1rem !important;\n }\n\n .ms-sm-4 {\n margin-left: 1.5rem !important;\n }\n\n .ms-sm-5 {\n margin-left: 3rem !important;\n }\n\n .ms-sm-auto {\n margin-left: auto !important;\n }\n\n .p-sm-0 {\n padding: 0 !important;\n }\n\n .p-sm-1 {\n padding: 0.25rem !important;\n }\n\n .p-sm-2 {\n padding: 0.5rem !important;\n }\n\n .p-sm-3 {\n padding: 1rem !important;\n }\n\n .p-sm-4 {\n padding: 1.5rem !important;\n }\n\n .p-sm-5 {\n padding: 3rem !important;\n }\n\n .px-sm-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n\n .px-sm-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n\n .px-sm-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n\n .px-sm-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n\n .px-sm-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n\n .px-sm-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n\n .py-sm-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n\n .py-sm-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n\n .py-sm-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n\n .py-sm-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n\n .py-sm-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n\n .py-sm-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n\n .pt-sm-0 {\n padding-top: 0 !important;\n }\n\n .pt-sm-1 {\n padding-top: 0.25rem !important;\n }\n\n .pt-sm-2 {\n padding-top: 0.5rem !important;\n }\n\n .pt-sm-3 {\n padding-top: 1rem !important;\n }\n\n .pt-sm-4 {\n padding-top: 1.5rem !important;\n }\n\n .pt-sm-5 {\n padding-top: 3rem !important;\n }\n\n .pe-sm-0 {\n padding-right: 0 !important;\n }\n\n .pe-sm-1 {\n padding-right: 0.25rem !important;\n }\n\n .pe-sm-2 {\n padding-right: 0.5rem !important;\n }\n\n .pe-sm-3 {\n padding-right: 1rem !important;\n }\n\n .pe-sm-4 {\n padding-right: 1.5rem !important;\n }\n\n .pe-sm-5 {\n padding-right: 3rem !important;\n }\n\n .pb-sm-0 {\n padding-bottom: 0 !important;\n }\n\n .pb-sm-1 {\n padding-bottom: 0.25rem !important;\n }\n\n .pb-sm-2 {\n padding-bottom: 0.5rem !important;\n }\n\n .pb-sm-3 {\n padding-bottom: 1rem !important;\n }\n\n .pb-sm-4 {\n padding-bottom: 1.5rem !important;\n }\n\n .pb-sm-5 {\n padding-bottom: 3rem !important;\n }\n\n .ps-sm-0 {\n padding-left: 0 !important;\n }\n\n .ps-sm-1 {\n padding-left: 0.25rem !important;\n }\n\n .ps-sm-2 {\n padding-left: 0.5rem !important;\n }\n\n .ps-sm-3 {\n padding-left: 1rem !important;\n }\n\n .ps-sm-4 {\n padding-left: 1.5rem !important;\n }\n\n .ps-sm-5 {\n padding-left: 3rem !important;\n }\n\n .text-sm-start {\n text-align: left !important;\n }\n\n .text-sm-end {\n text-align: right !important;\n }\n\n .text-sm-center {\n text-align: center !important;\n }\n}\n@media (min-width: 768px) {\n .float-md-start {\n float: left !important;\n }\n\n .float-md-end {\n float: right !important;\n }\n\n .float-md-none {\n float: none !important;\n }\n\n .d-md-inline {\n display: inline !important;\n }\n\n .d-md-inline-block {\n display: inline-block !important;\n }\n\n .d-md-block {\n display: block !important;\n }\n\n .d-md-grid {\n display: grid !important;\n }\n\n .d-md-table {\n display: table !important;\n }\n\n .d-md-table-row {\n display: table-row !important;\n }\n\n .d-md-table-cell {\n display: table-cell !important;\n }\n\n .d-md-flex {\n display: flex !important;\n }\n\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n\n .d-md-none {\n display: none !important;\n }\n\n .flex-md-fill {\n flex: 1 1 auto !important;\n }\n\n .flex-md-row {\n flex-direction: row !important;\n }\n\n .flex-md-column {\n flex-direction: column !important;\n }\n\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n\n .flex-md-grow-0 {\n flex-grow: 0 !important;\n }\n\n .flex-md-grow-1 {\n flex-grow: 1 !important;\n }\n\n .flex-md-shrink-0 {\n flex-shrink: 0 !important;\n }\n\n .flex-md-shrink-1 {\n flex-shrink: 1 !important;\n }\n\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n\n .gap-md-0 {\n gap: 0 !important;\n }\n\n .gap-md-1 {\n gap: 0.25rem !important;\n }\n\n .gap-md-2 {\n gap: 0.5rem !important;\n }\n\n .gap-md-3 {\n gap: 1rem !important;\n }\n\n .gap-md-4 {\n gap: 1.5rem !important;\n }\n\n .gap-md-5 {\n gap: 3rem !important;\n }\n\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n\n .justify-content-md-center {\n justify-content: center !important;\n }\n\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n\n .justify-content-md-evenly {\n justify-content: space-evenly !important;\n }\n\n .align-items-md-start {\n align-items: flex-start !important;\n }\n\n .align-items-md-end {\n align-items: flex-end !important;\n }\n\n .align-items-md-center {\n align-items: center !important;\n }\n\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n\n .align-content-md-start {\n align-content: flex-start !important;\n }\n\n .align-content-md-end {\n align-content: flex-end !important;\n }\n\n .align-content-md-center {\n align-content: center !important;\n }\n\n .align-content-md-between {\n align-content: space-between !important;\n }\n\n .align-content-md-around {\n align-content: space-around !important;\n }\n\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n\n .align-self-md-auto {\n align-self: auto !important;\n }\n\n .align-self-md-start {\n align-self: flex-start !important;\n }\n\n .align-self-md-end {\n align-self: flex-end !important;\n }\n\n .align-self-md-center {\n align-self: center !important;\n }\n\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n\n .order-md-first {\n order: -1 !important;\n }\n\n .order-md-0 {\n order: 0 !important;\n }\n\n .order-md-1 {\n order: 1 !important;\n }\n\n .order-md-2 {\n order: 2 !important;\n }\n\n .order-md-3 {\n order: 3 !important;\n }\n\n .order-md-4 {\n order: 4 !important;\n }\n\n .order-md-5 {\n order: 5 !important;\n }\n\n .order-md-last {\n order: 6 !important;\n }\n\n .m-md-0 {\n margin: 0 !important;\n }\n\n .m-md-1 {\n margin: 0.25rem !important;\n }\n\n .m-md-2 {\n margin: 0.5rem !important;\n }\n\n .m-md-3 {\n margin: 1rem !important;\n }\n\n .m-md-4 {\n margin: 1.5rem !important;\n }\n\n .m-md-5 {\n margin: 3rem !important;\n }\n\n .m-md-auto {\n margin: auto !important;\n }\n\n .mx-md-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n\n .mx-md-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n\n .mx-md-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n\n .mx-md-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n\n .mx-md-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n\n .mx-md-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n\n .mx-md-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n\n .my-md-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n\n .my-md-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n\n .my-md-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n\n .my-md-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n\n .my-md-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n\n .my-md-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n\n .my-md-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n\n .mt-md-0 {\n margin-top: 0 !important;\n }\n\n .mt-md-1 {\n margin-top: 0.25rem !important;\n }\n\n .mt-md-2 {\n margin-top: 0.5rem !important;\n }\n\n .mt-md-3 {\n margin-top: 1rem !important;\n }\n\n .mt-md-4 {\n margin-top: 1.5rem !important;\n }\n\n .mt-md-5 {\n margin-top: 3rem !important;\n }\n\n .mt-md-auto {\n margin-top: auto !important;\n }\n\n .me-md-0 {\n margin-right: 0 !important;\n }\n\n .me-md-1 {\n margin-right: 0.25rem !important;\n }\n\n .me-md-2 {\n margin-right: 0.5rem !important;\n }\n\n .me-md-3 {\n margin-right: 1rem !important;\n }\n\n .me-md-4 {\n margin-right: 1.5rem !important;\n }\n\n .me-md-5 {\n margin-right: 3rem !important;\n }\n\n .me-md-auto {\n margin-right: auto !important;\n }\n\n .mb-md-0 {\n margin-bottom: 0 !important;\n }\n\n .mb-md-1 {\n margin-bottom: 0.25rem !important;\n }\n\n .mb-md-2 {\n margin-bottom: 0.5rem !important;\n }\n\n .mb-md-3 {\n margin-bottom: 1rem !important;\n }\n\n .mb-md-4 {\n margin-bottom: 1.5rem !important;\n }\n\n .mb-md-5 {\n margin-bottom: 3rem !important;\n }\n\n .mb-md-auto {\n margin-bottom: auto !important;\n }\n\n .ms-md-0 {\n margin-left: 0 !important;\n }\n\n .ms-md-1 {\n margin-left: 0.25rem !important;\n }\n\n .ms-md-2 {\n margin-left: 0.5rem !important;\n }\n\n .ms-md-3 {\n margin-left: 1rem !important;\n }\n\n .ms-md-4 {\n margin-left: 1.5rem !important;\n }\n\n .ms-md-5 {\n margin-left: 3rem !important;\n }\n\n .ms-md-auto {\n margin-left: auto !important;\n }\n\n .p-md-0 {\n padding: 0 !important;\n }\n\n .p-md-1 {\n padding: 0.25rem !important;\n }\n\n .p-md-2 {\n padding: 0.5rem !important;\n }\n\n .p-md-3 {\n padding: 1rem !important;\n }\n\n .p-md-4 {\n padding: 1.5rem !important;\n }\n\n .p-md-5 {\n padding: 3rem !important;\n }\n\n .px-md-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n\n .px-md-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n\n .px-md-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n\n .px-md-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n\n .px-md-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n\n .px-md-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n\n .py-md-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n\n .py-md-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n\n .py-md-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n\n .py-md-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n\n .py-md-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n\n .py-md-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n\n .pt-md-0 {\n padding-top: 0 !important;\n }\n\n .pt-md-1 {\n padding-top: 0.25rem !important;\n }\n\n .pt-md-2 {\n padding-top: 0.5rem !important;\n }\n\n .pt-md-3 {\n padding-top: 1rem !important;\n }\n\n .pt-md-4 {\n padding-top: 1.5rem !important;\n }\n\n .pt-md-5 {\n padding-top: 3rem !important;\n }\n\n .pe-md-0 {\n padding-right: 0 !important;\n }\n\n .pe-md-1 {\n padding-right: 0.25rem !important;\n }\n\n .pe-md-2 {\n padding-right: 0.5rem !important;\n }\n\n .pe-md-3 {\n padding-right: 1rem !important;\n }\n\n .pe-md-4 {\n padding-right: 1.5rem !important;\n }\n\n .pe-md-5 {\n padding-right: 3rem !important;\n }\n\n .pb-md-0 {\n padding-bottom: 0 !important;\n }\n\n .pb-md-1 {\n padding-bottom: 0.25rem !important;\n }\n\n .pb-md-2 {\n padding-bottom: 0.5rem !important;\n }\n\n .pb-md-3 {\n padding-bottom: 1rem !important;\n }\n\n .pb-md-4 {\n padding-bottom: 1.5rem !important;\n }\n\n .pb-md-5 {\n padding-bottom: 3rem !important;\n }\n\n .ps-md-0 {\n padding-left: 0 !important;\n }\n\n .ps-md-1 {\n padding-left: 0.25rem !important;\n }\n\n .ps-md-2 {\n padding-left: 0.5rem !important;\n }\n\n .ps-md-3 {\n padding-left: 1rem !important;\n }\n\n .ps-md-4 {\n padding-left: 1.5rem !important;\n }\n\n .ps-md-5 {\n padding-left: 3rem !important;\n }\n\n .text-md-start {\n text-align: left !important;\n }\n\n .text-md-end {\n text-align: right !important;\n }\n\n .text-md-center {\n text-align: center !important;\n }\n}\n@media (min-width: 992px) {\n .float-lg-start {\n float: left !important;\n }\n\n .float-lg-end {\n float: right !important;\n }\n\n .float-lg-none {\n float: none !important;\n }\n\n .d-lg-inline {\n display: inline !important;\n }\n\n .d-lg-inline-block {\n display: inline-block !important;\n }\n\n .d-lg-block {\n display: block !important;\n }\n\n .d-lg-grid {\n display: grid !important;\n }\n\n .d-lg-table {\n display: table !important;\n }\n\n .d-lg-table-row {\n display: table-row !important;\n }\n\n .d-lg-table-cell {\n display: table-cell !important;\n }\n\n .d-lg-flex {\n display: flex !important;\n }\n\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n\n .d-lg-none {\n display: none !important;\n }\n\n .flex-lg-fill {\n flex: 1 1 auto !important;\n }\n\n .flex-lg-row {\n flex-direction: row !important;\n }\n\n .flex-lg-column {\n flex-direction: column !important;\n }\n\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n\n .flex-lg-grow-0 {\n flex-grow: 0 !important;\n }\n\n .flex-lg-grow-1 {\n flex-grow: 1 !important;\n }\n\n .flex-lg-shrink-0 {\n flex-shrink: 0 !important;\n }\n\n .flex-lg-shrink-1 {\n flex-shrink: 1 !important;\n }\n\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n\n .gap-lg-0 {\n gap: 0 !important;\n }\n\n .gap-lg-1 {\n gap: 0.25rem !important;\n }\n\n .gap-lg-2 {\n gap: 0.5rem !important;\n }\n\n .gap-lg-3 {\n gap: 1rem !important;\n }\n\n .gap-lg-4 {\n gap: 1.5rem !important;\n }\n\n .gap-lg-5 {\n gap: 3rem !important;\n }\n\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n\n .justify-content-lg-center {\n justify-content: center !important;\n }\n\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n\n .justify-content-lg-evenly {\n justify-content: space-evenly !important;\n }\n\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n\n .align-items-lg-center {\n align-items: center !important;\n }\n\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n\n .align-content-lg-center {\n align-content: center !important;\n }\n\n .align-content-lg-between {\n align-content: space-between !important;\n }\n\n .align-content-lg-around {\n align-content: space-around !important;\n }\n\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n\n .align-self-lg-auto {\n align-self: auto !important;\n }\n\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n\n .align-self-lg-center {\n align-self: center !important;\n }\n\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n\n .order-lg-first {\n order: -1 !important;\n }\n\n .order-lg-0 {\n order: 0 !important;\n }\n\n .order-lg-1 {\n order: 1 !important;\n }\n\n .order-lg-2 {\n order: 2 !important;\n }\n\n .order-lg-3 {\n order: 3 !important;\n }\n\n .order-lg-4 {\n order: 4 !important;\n }\n\n .order-lg-5 {\n order: 5 !important;\n }\n\n .order-lg-last {\n order: 6 !important;\n }\n\n .m-lg-0 {\n margin: 0 !important;\n }\n\n .m-lg-1 {\n margin: 0.25rem !important;\n }\n\n .m-lg-2 {\n margin: 0.5rem !important;\n }\n\n .m-lg-3 {\n margin: 1rem !important;\n }\n\n .m-lg-4 {\n margin: 1.5rem !important;\n }\n\n .m-lg-5 {\n margin: 3rem !important;\n }\n\n .m-lg-auto {\n margin: auto !important;\n }\n\n .mx-lg-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n\n .mx-lg-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n\n .mx-lg-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n\n .mx-lg-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n\n .mx-lg-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n\n .mx-lg-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n\n .mx-lg-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n\n .my-lg-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n\n .my-lg-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n\n .my-lg-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n\n .my-lg-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n\n .my-lg-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n\n .my-lg-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n\n .my-lg-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n\n .mt-lg-0 {\n margin-top: 0 !important;\n }\n\n .mt-lg-1 {\n margin-top: 0.25rem !important;\n }\n\n .mt-lg-2 {\n margin-top: 0.5rem !important;\n }\n\n .mt-lg-3 {\n margin-top: 1rem !important;\n }\n\n .mt-lg-4 {\n margin-top: 1.5rem !important;\n }\n\n .mt-lg-5 {\n margin-top: 3rem !important;\n }\n\n .mt-lg-auto {\n margin-top: auto !important;\n }\n\n .me-lg-0 {\n margin-right: 0 !important;\n }\n\n .me-lg-1 {\n margin-right: 0.25rem !important;\n }\n\n .me-lg-2 {\n margin-right: 0.5rem !important;\n }\n\n .me-lg-3 {\n margin-right: 1rem !important;\n }\n\n .me-lg-4 {\n margin-right: 1.5rem !important;\n }\n\n .me-lg-5 {\n margin-right: 3rem !important;\n }\n\n .me-lg-auto {\n margin-right: auto !important;\n }\n\n .mb-lg-0 {\n margin-bottom: 0 !important;\n }\n\n .mb-lg-1 {\n margin-bottom: 0.25rem !important;\n }\n\n .mb-lg-2 {\n margin-bottom: 0.5rem !important;\n }\n\n .mb-lg-3 {\n margin-bottom: 1rem !important;\n }\n\n .mb-lg-4 {\n margin-bottom: 1.5rem !important;\n }\n\n .mb-lg-5 {\n margin-bottom: 3rem !important;\n }\n\n .mb-lg-auto {\n margin-bottom: auto !important;\n }\n\n .ms-lg-0 {\n margin-left: 0 !important;\n }\n\n .ms-lg-1 {\n margin-left: 0.25rem !important;\n }\n\n .ms-lg-2 {\n margin-left: 0.5rem !important;\n }\n\n .ms-lg-3 {\n margin-left: 1rem !important;\n }\n\n .ms-lg-4 {\n margin-left: 1.5rem !important;\n }\n\n .ms-lg-5 {\n margin-left: 3rem !important;\n }\n\n .ms-lg-auto {\n margin-left: auto !important;\n }\n\n .p-lg-0 {\n padding: 0 !important;\n }\n\n .p-lg-1 {\n padding: 0.25rem !important;\n }\n\n .p-lg-2 {\n padding: 0.5rem !important;\n }\n\n .p-lg-3 {\n padding: 1rem !important;\n }\n\n .p-lg-4 {\n padding: 1.5rem !important;\n }\n\n .p-lg-5 {\n padding: 3rem !important;\n }\n\n .px-lg-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n\n .px-lg-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n\n .px-lg-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n\n .px-lg-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n\n .px-lg-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n\n .px-lg-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n\n .py-lg-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n\n .py-lg-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n\n .py-lg-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n\n .py-lg-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n\n .py-lg-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n\n .py-lg-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n\n .pt-lg-0 {\n padding-top: 0 !important;\n }\n\n .pt-lg-1 {\n padding-top: 0.25rem !important;\n }\n\n .pt-lg-2 {\n padding-top: 0.5rem !important;\n }\n\n .pt-lg-3 {\n padding-top: 1rem !important;\n }\n\n .pt-lg-4 {\n padding-top: 1.5rem !important;\n }\n\n .pt-lg-5 {\n padding-top: 3rem !important;\n }\n\n .pe-lg-0 {\n padding-right: 0 !important;\n }\n\n .pe-lg-1 {\n padding-right: 0.25rem !important;\n }\n\n .pe-lg-2 {\n padding-right: 0.5rem !important;\n }\n\n .pe-lg-3 {\n padding-right: 1rem !important;\n }\n\n .pe-lg-4 {\n padding-right: 1.5rem !important;\n }\n\n .pe-lg-5 {\n padding-right: 3rem !important;\n }\n\n .pb-lg-0 {\n padding-bottom: 0 !important;\n }\n\n .pb-lg-1 {\n padding-bottom: 0.25rem !important;\n }\n\n .pb-lg-2 {\n padding-bottom: 0.5rem !important;\n }\n\n .pb-lg-3 {\n padding-bottom: 1rem !important;\n }\n\n .pb-lg-4 {\n padding-bottom: 1.5rem !important;\n }\n\n .pb-lg-5 {\n padding-bottom: 3rem !important;\n }\n\n .ps-lg-0 {\n padding-left: 0 !important;\n }\n\n .ps-lg-1 {\n padding-left: 0.25rem !important;\n }\n\n .ps-lg-2 {\n padding-left: 0.5rem !important;\n }\n\n .ps-lg-3 {\n padding-left: 1rem !important;\n }\n\n .ps-lg-4 {\n padding-left: 1.5rem !important;\n }\n\n .ps-lg-5 {\n padding-left: 3rem !important;\n }\n\n .text-lg-start {\n text-align: left !important;\n }\n\n .text-lg-end {\n text-align: right !important;\n }\n\n .text-lg-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .float-xl-start {\n float: left !important;\n }\n\n .float-xl-end {\n float: right !important;\n }\n\n .float-xl-none {\n float: none !important;\n }\n\n .d-xl-inline {\n display: inline !important;\n }\n\n .d-xl-inline-block {\n display: inline-block !important;\n }\n\n .d-xl-block {\n display: block !important;\n }\n\n .d-xl-grid {\n display: grid !important;\n }\n\n .d-xl-table {\n display: table !important;\n }\n\n .d-xl-table-row {\n display: table-row !important;\n }\n\n .d-xl-table-cell {\n display: table-cell !important;\n }\n\n .d-xl-flex {\n display: flex !important;\n }\n\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n\n .d-xl-none {\n display: none !important;\n }\n\n .flex-xl-fill {\n flex: 1 1 auto !important;\n }\n\n .flex-xl-row {\n flex-direction: row !important;\n }\n\n .flex-xl-column {\n flex-direction: column !important;\n }\n\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n\n .flex-xl-grow-0 {\n flex-grow: 0 !important;\n }\n\n .flex-xl-grow-1 {\n flex-grow: 1 !important;\n }\n\n .flex-xl-shrink-0 {\n flex-shrink: 0 !important;\n }\n\n .flex-xl-shrink-1 {\n flex-shrink: 1 !important;\n }\n\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n\n .gap-xl-0 {\n gap: 0 !important;\n }\n\n .gap-xl-1 {\n gap: 0.25rem !important;\n }\n\n .gap-xl-2 {\n gap: 0.5rem !important;\n }\n\n .gap-xl-3 {\n gap: 1rem !important;\n }\n\n .gap-xl-4 {\n gap: 1.5rem !important;\n }\n\n .gap-xl-5 {\n gap: 3rem !important;\n }\n\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n\n .justify-content-xl-center {\n justify-content: center !important;\n }\n\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n\n .justify-content-xl-evenly {\n justify-content: space-evenly !important;\n }\n\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n\n .align-items-xl-center {\n align-items: center !important;\n }\n\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n\n .align-content-xl-center {\n align-content: center !important;\n }\n\n .align-content-xl-between {\n align-content: space-between !important;\n }\n\n .align-content-xl-around {\n align-content: space-around !important;\n }\n\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n\n .align-self-xl-auto {\n align-self: auto !important;\n }\n\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n\n .align-self-xl-center {\n align-self: center !important;\n }\n\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n\n .order-xl-first {\n order: -1 !important;\n }\n\n .order-xl-0 {\n order: 0 !important;\n }\n\n .order-xl-1 {\n order: 1 !important;\n }\n\n .order-xl-2 {\n order: 2 !important;\n }\n\n .order-xl-3 {\n order: 3 !important;\n }\n\n .order-xl-4 {\n order: 4 !important;\n }\n\n .order-xl-5 {\n order: 5 !important;\n }\n\n .order-xl-last {\n order: 6 !important;\n }\n\n .m-xl-0 {\n margin: 0 !important;\n }\n\n .m-xl-1 {\n margin: 0.25rem !important;\n }\n\n .m-xl-2 {\n margin: 0.5rem !important;\n }\n\n .m-xl-3 {\n margin: 1rem !important;\n }\n\n .m-xl-4 {\n margin: 1.5rem !important;\n }\n\n .m-xl-5 {\n margin: 3rem !important;\n }\n\n .m-xl-auto {\n margin: auto !important;\n }\n\n .mx-xl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n\n .mx-xl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n\n .mx-xl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n\n .mx-xl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n\n .mx-xl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n\n .mx-xl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n\n .mx-xl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n\n .my-xl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n\n .my-xl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n\n .my-xl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n\n .my-xl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n\n .my-xl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n\n .my-xl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n\n .my-xl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n\n .mt-xl-0 {\n margin-top: 0 !important;\n }\n\n .mt-xl-1 {\n margin-top: 0.25rem !important;\n }\n\n .mt-xl-2 {\n margin-top: 0.5rem !important;\n }\n\n .mt-xl-3 {\n margin-top: 1rem !important;\n }\n\n .mt-xl-4 {\n margin-top: 1.5rem !important;\n }\n\n .mt-xl-5 {\n margin-top: 3rem !important;\n }\n\n .mt-xl-auto {\n margin-top: auto !important;\n }\n\n .me-xl-0 {\n margin-right: 0 !important;\n }\n\n .me-xl-1 {\n margin-right: 0.25rem !important;\n }\n\n .me-xl-2 {\n margin-right: 0.5rem !important;\n }\n\n .me-xl-3 {\n margin-right: 1rem !important;\n }\n\n .me-xl-4 {\n margin-right: 1.5rem !important;\n }\n\n .me-xl-5 {\n margin-right: 3rem !important;\n }\n\n .me-xl-auto {\n margin-right: auto !important;\n }\n\n .mb-xl-0 {\n margin-bottom: 0 !important;\n }\n\n .mb-xl-1 {\n margin-bottom: 0.25rem !important;\n }\n\n .mb-xl-2 {\n margin-bottom: 0.5rem !important;\n }\n\n .mb-xl-3 {\n margin-bottom: 1rem !important;\n }\n\n .mb-xl-4 {\n margin-bottom: 1.5rem !important;\n }\n\n .mb-xl-5 {\n margin-bottom: 3rem !important;\n }\n\n .mb-xl-auto {\n margin-bottom: auto !important;\n }\n\n .ms-xl-0 {\n margin-left: 0 !important;\n }\n\n .ms-xl-1 {\n margin-left: 0.25rem !important;\n }\n\n .ms-xl-2 {\n margin-left: 0.5rem !important;\n }\n\n .ms-xl-3 {\n margin-left: 1rem !important;\n }\n\n .ms-xl-4 {\n margin-left: 1.5rem !important;\n }\n\n .ms-xl-5 {\n margin-left: 3rem !important;\n }\n\n .ms-xl-auto {\n margin-left: auto !important;\n }\n\n .p-xl-0 {\n padding: 0 !important;\n }\n\n .p-xl-1 {\n padding: 0.25rem !important;\n }\n\n .p-xl-2 {\n padding: 0.5rem !important;\n }\n\n .p-xl-3 {\n padding: 1rem !important;\n }\n\n .p-xl-4 {\n padding: 1.5rem !important;\n }\n\n .p-xl-5 {\n padding: 3rem !important;\n }\n\n .px-xl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n\n .px-xl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n\n .px-xl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n\n .px-xl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n\n .px-xl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n\n .px-xl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n\n .py-xl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n\n .py-xl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n\n .py-xl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n\n .py-xl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n\n .py-xl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n\n .py-xl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n\n .pt-xl-0 {\n padding-top: 0 !important;\n }\n\n .pt-xl-1 {\n padding-top: 0.25rem !important;\n }\n\n .pt-xl-2 {\n padding-top: 0.5rem !important;\n }\n\n .pt-xl-3 {\n padding-top: 1rem !important;\n }\n\n .pt-xl-4 {\n padding-top: 1.5rem !important;\n }\n\n .pt-xl-5 {\n padding-top: 3rem !important;\n }\n\n .pe-xl-0 {\n padding-right: 0 !important;\n }\n\n .pe-xl-1 {\n padding-right: 0.25rem !important;\n }\n\n .pe-xl-2 {\n padding-right: 0.5rem !important;\n }\n\n .pe-xl-3 {\n padding-right: 1rem !important;\n }\n\n .pe-xl-4 {\n padding-right: 1.5rem !important;\n }\n\n .pe-xl-5 {\n padding-right: 3rem !important;\n }\n\n .pb-xl-0 {\n padding-bottom: 0 !important;\n }\n\n .pb-xl-1 {\n padding-bottom: 0.25rem !important;\n }\n\n .pb-xl-2 {\n padding-bottom: 0.5rem !important;\n }\n\n .pb-xl-3 {\n padding-bottom: 1rem !important;\n }\n\n .pb-xl-4 {\n padding-bottom: 1.5rem !important;\n }\n\n .pb-xl-5 {\n padding-bottom: 3rem !important;\n }\n\n .ps-xl-0 {\n padding-left: 0 !important;\n }\n\n .ps-xl-1 {\n padding-left: 0.25rem !important;\n }\n\n .ps-xl-2 {\n padding-left: 0.5rem !important;\n }\n\n .ps-xl-3 {\n padding-left: 1rem !important;\n }\n\n .ps-xl-4 {\n padding-left: 1.5rem !important;\n }\n\n .ps-xl-5 {\n padding-left: 3rem !important;\n }\n\n .text-xl-start {\n text-align: left !important;\n }\n\n .text-xl-end {\n text-align: right !important;\n }\n\n .text-xl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1400px) {\n .float-xxl-start {\n float: left !important;\n }\n\n .float-xxl-end {\n float: right !important;\n }\n\n .float-xxl-none {\n float: none !important;\n }\n\n .d-xxl-inline {\n display: inline !important;\n }\n\n .d-xxl-inline-block {\n display: inline-block !important;\n }\n\n .d-xxl-block {\n display: block !important;\n }\n\n .d-xxl-grid {\n display: grid !important;\n }\n\n .d-xxl-table {\n display: table !important;\n }\n\n .d-xxl-table-row {\n display: table-row !important;\n }\n\n .d-xxl-table-cell {\n display: table-cell !important;\n }\n\n .d-xxl-flex {\n display: flex !important;\n }\n\n .d-xxl-inline-flex {\n display: inline-flex !important;\n }\n\n .d-xxl-none {\n display: none !important;\n }\n\n .flex-xxl-fill {\n flex: 1 1 auto !important;\n }\n\n .flex-xxl-row {\n flex-direction: row !important;\n }\n\n .flex-xxl-column {\n flex-direction: column !important;\n }\n\n .flex-xxl-row-reverse {\n flex-direction: row-reverse !important;\n }\n\n .flex-xxl-column-reverse {\n flex-direction: column-reverse !important;\n }\n\n .flex-xxl-grow-0 {\n flex-grow: 0 !important;\n }\n\n .flex-xxl-grow-1 {\n flex-grow: 1 !important;\n }\n\n .flex-xxl-shrink-0 {\n flex-shrink: 0 !important;\n }\n\n .flex-xxl-shrink-1 {\n flex-shrink: 1 !important;\n }\n\n .flex-xxl-wrap {\n flex-wrap: wrap !important;\n }\n\n .flex-xxl-nowrap {\n flex-wrap: nowrap !important;\n }\n\n .flex-xxl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n\n .gap-xxl-0 {\n gap: 0 !important;\n }\n\n .gap-xxl-1 {\n gap: 0.25rem !important;\n }\n\n .gap-xxl-2 {\n gap: 0.5rem !important;\n }\n\n .gap-xxl-3 {\n gap: 1rem !important;\n }\n\n .gap-xxl-4 {\n gap: 1.5rem !important;\n }\n\n .gap-xxl-5 {\n gap: 3rem !important;\n }\n\n .justify-content-xxl-start {\n justify-content: flex-start !important;\n }\n\n .justify-content-xxl-end {\n justify-content: flex-end !important;\n }\n\n .justify-content-xxl-center {\n justify-content: center !important;\n }\n\n .justify-content-xxl-between {\n justify-content: space-between !important;\n }\n\n .justify-content-xxl-around {\n justify-content: space-around !important;\n }\n\n .justify-content-xxl-evenly {\n justify-content: space-evenly !important;\n }\n\n .align-items-xxl-start {\n align-items: flex-start !important;\n }\n\n .align-items-xxl-end {\n align-items: flex-end !important;\n }\n\n .align-items-xxl-center {\n align-items: center !important;\n }\n\n .align-items-xxl-baseline {\n align-items: baseline !important;\n }\n\n .align-items-xxl-stretch {\n align-items: stretch !important;\n }\n\n .align-content-xxl-start {\n align-content: flex-start !important;\n }\n\n .align-content-xxl-end {\n align-content: flex-end !important;\n }\n\n .align-content-xxl-center {\n align-content: center !important;\n }\n\n .align-content-xxl-between {\n align-content: space-between !important;\n }\n\n .align-content-xxl-around {\n align-content: space-around !important;\n }\n\n .align-content-xxl-stretch {\n align-content: stretch !important;\n }\n\n .align-self-xxl-auto {\n align-self: auto !important;\n }\n\n .align-self-xxl-start {\n align-self: flex-start !important;\n }\n\n .align-self-xxl-end {\n align-self: flex-end !important;\n }\n\n .align-self-xxl-center {\n align-self: center !important;\n }\n\n .align-self-xxl-baseline {\n align-self: baseline !important;\n }\n\n .align-self-xxl-stretch {\n align-self: stretch !important;\n }\n\n .order-xxl-first {\n order: -1 !important;\n }\n\n .order-xxl-0 {\n order: 0 !important;\n }\n\n .order-xxl-1 {\n order: 1 !important;\n }\n\n .order-xxl-2 {\n order: 2 !important;\n }\n\n .order-xxl-3 {\n order: 3 !important;\n }\n\n .order-xxl-4 {\n order: 4 !important;\n }\n\n .order-xxl-5 {\n order: 5 !important;\n }\n\n .order-xxl-last {\n order: 6 !important;\n }\n\n .m-xxl-0 {\n margin: 0 !important;\n }\n\n .m-xxl-1 {\n margin: 0.25rem !important;\n }\n\n .m-xxl-2 {\n margin: 0.5rem !important;\n }\n\n .m-xxl-3 {\n margin: 1rem !important;\n }\n\n .m-xxl-4 {\n margin: 1.5rem !important;\n }\n\n .m-xxl-5 {\n margin: 3rem !important;\n }\n\n .m-xxl-auto {\n margin: auto !important;\n }\n\n .mx-xxl-0 {\n margin-right: 0 !important;\n margin-left: 0 !important;\n }\n\n .mx-xxl-1 {\n margin-right: 0.25rem !important;\n margin-left: 0.25rem !important;\n }\n\n .mx-xxl-2 {\n margin-right: 0.5rem !important;\n margin-left: 0.5rem !important;\n }\n\n .mx-xxl-3 {\n margin-right: 1rem !important;\n margin-left: 1rem !important;\n }\n\n .mx-xxl-4 {\n margin-right: 1.5rem !important;\n margin-left: 1.5rem !important;\n }\n\n .mx-xxl-5 {\n margin-right: 3rem !important;\n margin-left: 3rem !important;\n }\n\n .mx-xxl-auto {\n margin-right: auto !important;\n margin-left: auto !important;\n }\n\n .my-xxl-0 {\n margin-top: 0 !important;\n margin-bottom: 0 !important;\n }\n\n .my-xxl-1 {\n margin-top: 0.25rem !important;\n margin-bottom: 0.25rem !important;\n }\n\n .my-xxl-2 {\n margin-top: 0.5rem !important;\n margin-bottom: 0.5rem !important;\n }\n\n .my-xxl-3 {\n margin-top: 1rem !important;\n margin-bottom: 1rem !important;\n }\n\n .my-xxl-4 {\n margin-top: 1.5rem !important;\n margin-bottom: 1.5rem !important;\n }\n\n .my-xxl-5 {\n margin-top: 3rem !important;\n margin-bottom: 3rem !important;\n }\n\n .my-xxl-auto {\n margin-top: auto !important;\n margin-bottom: auto !important;\n }\n\n .mt-xxl-0 {\n margin-top: 0 !important;\n }\n\n .mt-xxl-1 {\n margin-top: 0.25rem !important;\n }\n\n .mt-xxl-2 {\n margin-top: 0.5rem !important;\n }\n\n .mt-xxl-3 {\n margin-top: 1rem !important;\n }\n\n .mt-xxl-4 {\n margin-top: 1.5rem !important;\n }\n\n .mt-xxl-5 {\n margin-top: 3rem !important;\n }\n\n .mt-xxl-auto {\n margin-top: auto !important;\n }\n\n .me-xxl-0 {\n margin-right: 0 !important;\n }\n\n .me-xxl-1 {\n margin-right: 0.25rem !important;\n }\n\n .me-xxl-2 {\n margin-right: 0.5rem !important;\n }\n\n .me-xxl-3 {\n margin-right: 1rem !important;\n }\n\n .me-xxl-4 {\n margin-right: 1.5rem !important;\n }\n\n .me-xxl-5 {\n margin-right: 3rem !important;\n }\n\n .me-xxl-auto {\n margin-right: auto !important;\n }\n\n .mb-xxl-0 {\n margin-bottom: 0 !important;\n }\n\n .mb-xxl-1 {\n margin-bottom: 0.25rem !important;\n }\n\n .mb-xxl-2 {\n margin-bottom: 0.5rem !important;\n }\n\n .mb-xxl-3 {\n margin-bottom: 1rem !important;\n }\n\n .mb-xxl-4 {\n margin-bottom: 1.5rem !important;\n }\n\n .mb-xxl-5 {\n margin-bottom: 3rem !important;\n }\n\n .mb-xxl-auto {\n margin-bottom: auto !important;\n }\n\n .ms-xxl-0 {\n margin-left: 0 !important;\n }\n\n .ms-xxl-1 {\n margin-left: 0.25rem !important;\n }\n\n .ms-xxl-2 {\n margin-left: 0.5rem !important;\n }\n\n .ms-xxl-3 {\n margin-left: 1rem !important;\n }\n\n .ms-xxl-4 {\n margin-left: 1.5rem !important;\n }\n\n .ms-xxl-5 {\n margin-left: 3rem !important;\n }\n\n .ms-xxl-auto {\n margin-left: auto !important;\n }\n\n .p-xxl-0 {\n padding: 0 !important;\n }\n\n .p-xxl-1 {\n padding: 0.25rem !important;\n }\n\n .p-xxl-2 {\n padding: 0.5rem !important;\n }\n\n .p-xxl-3 {\n padding: 1rem !important;\n }\n\n .p-xxl-4 {\n padding: 1.5rem !important;\n }\n\n .p-xxl-5 {\n padding: 3rem !important;\n }\n\n .px-xxl-0 {\n padding-right: 0 !important;\n padding-left: 0 !important;\n }\n\n .px-xxl-1 {\n padding-right: 0.25rem !important;\n padding-left: 0.25rem !important;\n }\n\n .px-xxl-2 {\n padding-right: 0.5rem !important;\n padding-left: 0.5rem !important;\n }\n\n .px-xxl-3 {\n padding-right: 1rem !important;\n padding-left: 1rem !important;\n }\n\n .px-xxl-4 {\n padding-right: 1.5rem !important;\n padding-left: 1.5rem !important;\n }\n\n .px-xxl-5 {\n padding-right: 3rem !important;\n padding-left: 3rem !important;\n }\n\n .py-xxl-0 {\n padding-top: 0 !important;\n padding-bottom: 0 !important;\n }\n\n .py-xxl-1 {\n padding-top: 0.25rem !important;\n padding-bottom: 0.25rem !important;\n }\n\n .py-xxl-2 {\n padding-top: 0.5rem !important;\n padding-bottom: 0.5rem !important;\n }\n\n .py-xxl-3 {\n padding-top: 1rem !important;\n padding-bottom: 1rem !important;\n }\n\n .py-xxl-4 {\n padding-top: 1.5rem !important;\n padding-bottom: 1.5rem !important;\n }\n\n .py-xxl-5 {\n padding-top: 3rem !important;\n padding-bottom: 3rem !important;\n }\n\n .pt-xxl-0 {\n padding-top: 0 !important;\n }\n\n .pt-xxl-1 {\n padding-top: 0.25rem !important;\n }\n\n .pt-xxl-2 {\n padding-top: 0.5rem !important;\n }\n\n .pt-xxl-3 {\n padding-top: 1rem !important;\n }\n\n .pt-xxl-4 {\n padding-top: 1.5rem !important;\n }\n\n .pt-xxl-5 {\n padding-top: 3rem !important;\n }\n\n .pe-xxl-0 {\n padding-right: 0 !important;\n }\n\n .pe-xxl-1 {\n padding-right: 0.25rem !important;\n }\n\n .pe-xxl-2 {\n padding-right: 0.5rem !important;\n }\n\n .pe-xxl-3 {\n padding-right: 1rem !important;\n }\n\n .pe-xxl-4 {\n padding-right: 1.5rem !important;\n }\n\n .pe-xxl-5 {\n padding-right: 3rem !important;\n }\n\n .pb-xxl-0 {\n padding-bottom: 0 !important;\n }\n\n .pb-xxl-1 {\n padding-bottom: 0.25rem !important;\n }\n\n .pb-xxl-2 {\n padding-bottom: 0.5rem !important;\n }\n\n .pb-xxl-3 {\n padding-bottom: 1rem !important;\n }\n\n .pb-xxl-4 {\n padding-bottom: 1.5rem !important;\n }\n\n .pb-xxl-5 {\n padding-bottom: 3rem !important;\n }\n\n .ps-xxl-0 {\n padding-left: 0 !important;\n }\n\n .ps-xxl-1 {\n padding-left: 0.25rem !important;\n }\n\n .ps-xxl-2 {\n padding-left: 0.5rem !important;\n }\n\n .ps-xxl-3 {\n padding-left: 1rem !important;\n }\n\n .ps-xxl-4 {\n padding-left: 1.5rem !important;\n }\n\n .ps-xxl-5 {\n padding-left: 3rem !important;\n }\n\n .text-xxl-start {\n text-align: left !important;\n }\n\n .text-xxl-end {\n text-align: right !important;\n }\n\n .text-xxl-center {\n text-align: center !important;\n }\n}\n@media (min-width: 1200px) {\n .fs-1 {\n font-size: 2.5rem !important;\n }\n\n .fs-2 {\n font-size: 2rem !important;\n }\n\n .fs-3 {\n font-size: 1.75rem !important;\n }\n\n .fs-4 {\n font-size: 1.5rem !important;\n }\n}\n@media print {\n .d-print-inline {\n display: inline !important;\n }\n\n .d-print-inline-block {\n display: inline-block !important;\n }\n\n .d-print-block {\n display: block !important;\n }\n\n .d-print-grid {\n display: grid !important;\n }\n\n .d-print-table {\n display: table !important;\n }\n\n .d-print-table-row {\n display: table-row !important;\n }\n\n .d-print-table-cell {\n display: table-cell !important;\n }\n\n .d-print-flex {\n display: flex !important;\n }\n\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n\n .d-print-none {\n display: none !important;\n }\n}\n\n/*# sourceMappingURL=bootstrap.css.map */",'// stylelint-disable declaration-no-important, selector-no-qualifying-type, property-no-vendor-prefix\n\n\n// Reboot\n//\n// Normalization of HTML elements, manually forked from Normalize.css to remove\n// styles targeting irrelevant browsers while applying new styles.\n//\n// Normalize is licensed MIT. https://github.com/necolas/normalize.css\n\n\n// Document\n//\n// Change from `box-sizing: content-box` so that `width` is not affected by `padding` or `border`.\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n}\n\n\n// Root\n//\n// Ability to the value of the root font sizes, affecting the value of `rem`.\n// null by default, thus nothing is generated.\n\n:root {\n @if $font-size-root != null {\n font-size: var(--#{$variable-prefix}root-font-size);\n }\n\n @if $enable-smooth-scroll {\n @media (prefers-reduced-motion: no-preference) {\n scroll-behavior: smooth;\n }\n }\n}\n\n\n// Body\n//\n// 1. Remove the margin in all browsers.\n// 2. As a best practice, apply a default `background-color`.\n// 3. Prevent adjustments of font size after orientation changes in iOS.\n// 4. Change the default tap highlight to be completely transparent in iOS.\n\n// scss-docs-start reboot-body-rules\nbody {\n margin: 0; // 1\n font-family: var(--#{$variable-prefix}body-font-family);\n @include font-size(var(--#{$variable-prefix}body-font-size));\n font-weight: var(--#{$variable-prefix}body-font-weight);\n line-height: var(--#{$variable-prefix}body-line-height);\n color: var(--#{$variable-prefix}body-color);\n text-align: var(--#{$variable-prefix}body-text-align);\n background-color: var(--#{$variable-prefix}body-bg); // 2\n -webkit-text-size-adjust: 100%; // 3\n -webkit-tap-highlight-color: rgba($black, 0); // 4\n}\n// scss-docs-end reboot-body-rules\n\n\n// Content grouping\n//\n// 1. Reset Firefox\'s gray color\n// 2. Set correct height and prevent the `size` attribute to make the `hr` look like an input field\n\nhr {\n margin: $hr-margin-y 0;\n color: $hr-color; // 1\n background-color: currentColor;\n border: 0;\n opacity: $hr-opacity;\n}\n\nhr:not([size]) {\n height: $hr-height; // 2\n}\n\n\n// Typography\n//\n// 1. Remove top margins from headings\n// By default, `

`-`

` all receive top and bottom margins. We nuke the top\n// margin for easier control within type scales as it avoids margin collapsing.\n\n%heading {\n margin-top: 0; // 1\n margin-bottom: $headings-margin-bottom;\n font-family: $headings-font-family;\n font-style: $headings-font-style;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n color: $headings-color;\n}\n\nh1 {\n @extend %heading;\n @include font-size($h1-font-size);\n}\n\nh2 {\n @extend %heading;\n @include font-size($h2-font-size);\n}\n\nh3 {\n @extend %heading;\n @include font-size($h3-font-size);\n}\n\nh4 {\n @extend %heading;\n @include font-size($h4-font-size);\n}\n\nh5 {\n @extend %heading;\n @include font-size($h5-font-size);\n}\n\nh6 {\n @extend %heading;\n @include font-size($h6-font-size);\n}\n\n\n// Reset margins on paragraphs\n//\n// Similarly, the top margin on `

`s get reset. However, we also reset the\n// bottom margin to use `rem` units instead of `em`.\n\np {\n margin-top: 0;\n margin-bottom: $paragraph-margin-bottom;\n}\n\n\n// Abbreviations\n//\n// 1. Duplicate behavior to the data-bs-* attribute for our tooltip plugin\n// 2. Add the correct text decoration in Chrome, Edge, Opera, and Safari.\n// 3. Add explicit cursor to indicate changed behavior.\n// 4. Prevent the text-decoration to be skipped.\n\nabbr[title],\nabbr[data-bs-original-title] { // 1\n text-decoration: underline dotted; // 2\n cursor: help; // 3\n text-decoration-skip-ink: none; // 4\n}\n\n\n// Address\n\naddress {\n margin-bottom: 1rem;\n font-style: normal;\n line-height: inherit;\n}\n\n\n// Lists\n\nol,\nul {\n padding-left: 2rem;\n}\n\nol,\nul,\ndl {\n margin-top: 0;\n margin-bottom: 1rem;\n}\n\nol ol,\nul ul,\nol ul,\nul ol {\n margin-bottom: 0;\n}\n\ndt {\n font-weight: $dt-font-weight;\n}\n\n// 1. Undo browser default\n\ndd {\n margin-bottom: .5rem;\n margin-left: 0; // 1\n}\n\n\n// Blockquote\n\nblockquote {\n margin: 0 0 1rem;\n}\n\n\n// Strong\n//\n// Add the correct font weight in Chrome, Edge, and Safari\n\nb,\nstrong {\n font-weight: $font-weight-bolder;\n}\n\n\n// Small\n//\n// Add the correct font size in all browsers\n\nsmall {\n @include font-size($small-font-size);\n}\n\n\n// Mark\n\nmark {\n padding: $mark-padding;\n background-color: $mark-bg;\n}\n\n\n// Sub and Sup\n//\n// Prevent `sub` and `sup` elements from affecting the line height in\n// all browsers.\n\nsub,\nsup {\n position: relative;\n @include font-size($sub-sup-font-size);\n line-height: 0;\n vertical-align: baseline;\n}\n\nsub { bottom: -.25em; }\nsup { top: -.5em; }\n\n\n// Links\n\na {\n color: $link-color;\n text-decoration: $link-decoration;\n\n &:hover {\n color: $link-hover-color;\n text-decoration: $link-hover-decoration;\n }\n}\n\n// And undo these styles for placeholder links/named anchors (without href).\n// It would be more straightforward to just use a[href] in previous block, but that\n// causes specificity issues in many other styles that are too complex to fix.\n// See https://github.com/twbs/bootstrap/issues/19402\n\na:not([href]):not([class]) {\n &,\n &:hover {\n color: inherit;\n text-decoration: none;\n }\n}\n\n\n// Code\n\npre,\ncode,\nkbd,\nsamp {\n font-family: $font-family-code;\n @include font-size(1em); // Correct the odd `em` font sizing in all browsers.\n direction: ltr #{"/* rtl:ignore */"};\n unicode-bidi: bidi-override;\n}\n\n// 1. Remove browser default top margin\n// 2. Reset browser default of `1em` to use `rem`s\n// 3. Don\'t allow content to break outside\n\npre {\n display: block;\n margin-top: 0; // 1\n margin-bottom: 1rem; // 2\n overflow: auto; // 3\n @include font-size($code-font-size);\n color: $pre-color;\n\n // Account for some code outputs that place code tags in pre tags\n code {\n @include font-size(inherit);\n color: inherit;\n word-break: normal;\n }\n}\n\ncode {\n @include font-size($code-font-size);\n color: $code-color;\n word-wrap: break-word;\n\n // Streamline the style when inside anchors to avoid broken underline and more\n a > & {\n color: inherit;\n }\n}\n\nkbd {\n padding: $kbd-padding-y $kbd-padding-x;\n @include font-size($kbd-font-size);\n color: $kbd-color;\n background-color: $kbd-bg;\n @include border-radius($border-radius-sm);\n\n kbd {\n padding: 0;\n @include font-size(1em);\n font-weight: $nested-kbd-font-weight;\n }\n}\n\n\n// Figures\n//\n// Apply a consistent margin strategy (matches our type styles).\n\nfigure {\n margin: 0 0 1rem;\n}\n\n\n// Images and content\n\nimg,\nsvg {\n vertical-align: middle;\n}\n\n\n// Tables\n//\n// Prevent double borders\n\ntable {\n caption-side: bottom;\n border-collapse: collapse;\n}\n\ncaption {\n padding-top: $table-cell-padding-y;\n padding-bottom: $table-cell-padding-y;\n color: $table-caption-color;\n text-align: left;\n}\n\n// 1. Removes font-weight bold by inheriting\n// 2. Matches default `` alignment by inheriting `text-align`.\n// 3. Fix alignment for Safari\n\nth {\n font-weight: $table-th-font-weight; // 1\n text-align: inherit; // 2\n text-align: -webkit-match-parent; // 3\n}\n\nthead,\ntbody,\ntfoot,\ntr,\ntd,\nth {\n border-color: inherit;\n border-style: solid;\n border-width: 0;\n}\n\n\n// Forms\n//\n// 1. Allow labels to use `margin` for spacing.\n\nlabel {\n display: inline-block; // 1\n}\n\n// Remove the default `border-radius` that macOS Chrome adds.\n// See https://github.com/twbs/bootstrap/issues/24093\n\nbutton {\n // stylelint-disable-next-line property-disallowed-list\n border-radius: 0;\n}\n\n// Explicitly remove focus outline in Chromium when it shouldn\'t be\n// visible (e.g. as result of mouse click or touch tap). It already\n// should be doing this automatically, but seems to currently be\n// confused and applies its very visible two-tone outline anyway.\n\nbutton:focus:not(:focus-visible) {\n outline: 0;\n}\n\n// 1. Remove the margin in Firefox and Safari\n\ninput,\nbutton,\nselect,\noptgroup,\ntextarea {\n margin: 0; // 1\n font-family: inherit;\n @include font-size(inherit);\n line-height: inherit;\n}\n\n// Remove the inheritance of text transform in Firefox\nbutton,\nselect {\n text-transform: none;\n}\n// Set the cursor for non-`